1

からService呼び出されて作成した を開始しようとしています。Myは a の内部クラスです。したがって、私のコードは次のようになります。MyServiceBroadcastReceiverBroadcastReceiverFragment

public class MyFragment extends Fragment {

    /*
     * Lots of code taken out
     */

    private class ServiceListener extends BroadcastReceiver{

        private Context parentContext = null;

        public ServiceListener(Context parentContext){
            this.parentContext = parentContext;
            IntentFilter intentFilter = new IntentFilter("com.example.serverListener");
            this.parentContext.registerReceiver(this, intentFilter);
        }

        @Override
        public void onReceive(Context arg0, Intent arg1) {
            Intent i = new Intent(arg0, MyService.class);
            MyFragment.this.getActivity().startService(i);
            MyFragment.this.getActivity().bindService(i, mConnection, Service.BIND_AUTO_CREATE);
        }
    }

    /** Defines callbacks for service binding, passed to bindService() */
    private ServiceConnection mConnection = new ServiceConnection() {

        @Override
        public void onServiceConnected(ComponentName className,
                IBinder service) {
            //code taken out
        }

        @Override
        public void onServiceDisconnected(ComponentName arg0) {
            //more code taken out
        }
    };

}

onReceive()のメソッドに呼び出しが入っているのを確認できますが、ServiceListenerを開始してバインドする行を調べ終わった後、内のメソッドまたはどちらかserviceのメソッドでブレークポイントにヒットすることはありません。onBind()MyServiceonServiceConnected()

誰が何が間違っている可能性があるかについての考えを持っていますか?

Ps。補足として、はを保持するBroadcastから来ています。はsを作成するものです。マイフラグメント. をからに呼び出してをトリガーし、バインドを開始する簡単な方法があれば、私はすべて耳にします。FragmentActivityTabHostTabHostFragmentFragmentFragmentActivityService

ありがとう!

編集:

service私は私の定義を持っていませんでしたManifest.xml...それはすべて今働いています! </silly>

4

0 に答える 0