브로드 캐스트에서 서비스를 시작하려고하지만 어떤 이유로 서비스가 호출되지 않습니다. 이 내 수신기 :startService 메서드가 호출되었지만 아무 일도 발생하지 않습니다.
private void initReceiver() {
receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("telecom.IT.DigiCARE.REC")) {
Log.d("MainActivity", "Intent received from server!");
byte[] data = intent.getByteArrayExtra("Data");
String params = intent.getStringExtra("Params");
Intent i = new Intent(MainActivity.this, DecodeService.class);
i.putExtra("Data", data);
i.putExtra("Params", params);
startService(i);
}
}
};
registerReceiver(receiver, new IntentFilter("telecom.IT.DigiCARE.REC"));
}
이 내 서비스 :
public class DecodeService extends Service {
@Override
public void onStart(Intent intent, int startId) {
String params = intent.getStringExtra("Params");
byte[] data = intent.getByteArrayExtra("Data");
decodeMessage(params, data);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
String params = intent.getStringExtra("Params");
byte[] data = intent.getByteArrayExtra("Data");
decodeMessage(params, data);
return START_STICKY;
}
}
내가 어딘가에 매니페스트로 오류를 기다리고 있었다,하지만 난 그것을 볼 수 없습니다.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.telecomIT.digicare"
android:versionCode="1"
android:versionName="1.0" >
<services
android:name=".DecodeService"
android:enabled="true" />
방송이 작동하지 않기 때문에 startService가 호출되는 때문이 아니다, 그러나 아무 일도 발생하지 않습니다 ..
"아무 일도 없다"는 것은 무엇을 의미합니까? 무슨 일이 일어날 것으로 예상됩니까? – m0skit0
서비스의 start 메소드가 호출되기를 기대하지만 그렇게되지는 않습니다. –
당신의 logcat은 어떻게 생겼습니까? –