1

いくつか問題があります。メッセージを転送したい。私はcontext.sendBroadcastを使用して送信し、BroadcastReceiver-メッセージを受信します

public class GPS_module implements LocationListener {

private Context context;

public GPS_module(Context ctx) {
        context = ctx; 
        manager = (LocationManager) context
                .getSystemService(Context.LOCATION_SERVICE);

    }
.....

 public void sendMessage(String str) {
       Intent intent = new Intent("logGPS");
       intent.putExtra("Message",str);
       context.sendBroadcast(intent);
} 

}

メッセージの受信には次のソースコードを使用します

public class Fragment_1 extends Fragment{
    .......
    @Override
          public View onCreateView(LayoutInflater inflater, ViewGroup container,
              Bundle savedInstanceState) {

            View myFragmentView = inflater.inflate(R.layout.right_panel_1, null);

            BroadcastReceiver log = new BroadcastReceiver() {
                @Override
                public void onReceive(Context context, Intent intent) 
                {
                    if(intent.getAction().equals("logGPS"))
                    {
                        myLog(intent.getStringExtra("Message"));

                    }
                }
            };

            return myFragmentView ;

          }
    }
4

2 に答える 2

2

次のようなことをする必要があります。

(これは接続用です)

   registerReceiver(myReceiver,
           new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));

インテントフィルターを登録して設定する必要があります。

于 2012-09-23T11:57:17.027 に答える
0

レシーバーを登録しましたか?これはあなたのコードには見当たりません。

于 2012-09-23T11:47:40.893 に答える