1.

package your.packages.namespaces;  
import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.widget.RemoteViews;public class examo extends AppWidgetProvider {
 final static String TAG = "exam";
 final static String PREF = "your.packages.namespaces";
 
 @Override
 public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds){
        final int N = appWidgetIds.length;        for (int i=0; i<N; i++) {
            int appWidgetId = appWidgetIds[i];
            RemoteViews views = buildViews(context,appWidgetIds[i]);
            appWidgetManager.updateAppWidget(appWidgetId, views);
            
        }
 }
 
 
  
 
 
 private PendingIntent buildActivityIntent(Context context){
  
  SharedPreferences prefs = context.getSharedPreferences(PREF, 0);
  String sUri=prefs.getString("key", "???" /*여기잇는???*/ );
Uri uri= Uri.parse(sUri);
  Intent intent = new Intent(Intent.ACTION_VIEW)
         .setData(Uri.parse("http://"+uri));
  PendingIntent pi = PendingIntent.getActivity(context, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
  return pi;
 
 }
 private RemoteViews buildViews(Context context,int widgetId){
  RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.c28_fakenews);
  views.setOnClickPendingIntent(R.id.btnconfig, buildActivityIntent(context));
  return views;
 }
}

 


2.

 


 


 package your.packages.namespaces;
import android.app.Activity;
import android.appwidget.AppWidgetManager;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
public class exam extends Activity {
 final static String PREF = "your.packages.namespaces";
 CheckBox mRed;
    EditText mURI;
 int mId;
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.c28_fakenewsconfig);
  
  
  
    
  
  // 일단 실패로 가정한다.
        setResult(RESULT_CANCELED);
        mRed = (CheckBox)findViewById(R.id.chkred);
        mURI = (EditText)findViewById(R.id.URIlink);
        Intent intent = getIntent();
     mId = intent.getIntExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, 
       AppWidgetManager.INVALID_APPWIDGET_ID);
  Log.d(C28_FakeNews.TAG, "Config onCreate id = " + mId);
        // 설정값 읽어서 체크 박스에 출력.
        SharedPreferences prefs = getSharedPreferences(PREF, 0);
        String wURI = prefs.getString("uri_"+mId, "");
        mURI.setText(wURI);
 }
 
 public void mOnClick(View v) {
  switch (v.getId()) {
  case R.id.btnok:
   Log.d(C28_FakeNews.TAG, "Install id = " + mId);
   // 인스턴스의 정보에 에디트텍스트값 저장
         SharedPreferences prefs = getSharedPreferences(PREF, 0);
         SharedPreferences.Editor editor = prefs.edit();
         String sURI = mURI.getText().toString();
         editor.putString("red_" + mId, sURI);
        
         editor.commit();
        
         
         // OK 리턴 보냄
            Intent intent = new Intent();
            intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, mId);
            setResult(RESULT_OK, intent);
            finish();
       
   break;
  }
 }
}

 

 

2에서 저장한 String을  1에서 버튼을 눌렀을때 저장된 사이트로 이동하는 하려면 1의  ???에 무엇을 써넣어야하나요?

아니면 다른 방법이 있나요?

 

공지사항을 다 읽었음