Android アプリを作成しようとしているときに問題が発生しました。メインのアクティビティで使用するサービスを作成しました。インターネットで見つけたガイドに従って、関数のバインドを行いonStart
ます。
@Override
public void onStart() {
super.onStart();
//TextView textView = (TextView) findViewById(R.id.myText);
textView.setText("Bound??????");
if (mBound == false) {
Intent intent = new Intent(this, com.mycompany.Messenger.LocalService.class);
mBound = bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
//mBound = bindService(intent, mConnection, 0);
//startService(intent);
if (mBound == true)
{
TextView textView = (TextView) findViewById(R.id.myText);
textView.setText("Bound");
}
if (mBound == false)
{
TextView textView = (TextView) findViewById(R.id.myText);
textView.setText("UnBound");
}
boolean connected = mService.CreateConnectionNetwork();
}
}
バインドを推奨した後、まだonStart
関数内でバインド サービスのメソッドを呼び出そうとします。このメソッドは、インターネットへの接続があるかどうかをチェックします。ただし、その時点でアプリがクラッシュします。お気づきのように、バインドが成功したかどうかのチェックを追加しましたが、成功したことがわかり、問題がさらに混乱しています。
アプリに正しいアクセス許可を与えました。ボタンを押すなどのイベントを通じてサービスのメソッドを開始すると、サービスのメソッドが実際に機能します。ただし、ユーザーの操作後ではなく、アプリの起動時に自動的に実行したいタスクがあります。助言がありますか?