Tôi mới sử dụng chương trình Android. Tôi có một người nhận bắt đầu một dịch vụ lúc khởi động nhưng có vẻ như chưa bao giờ bắt đầu. Bạn có thể cho tôi biết tôi đang làm gì sai không? Tôi không biết cách gỡ lỗi. Bạn có thể giải thích cho tôi cách tôi có thể gỡ lỗi các dịch vụ khởi động Android không?Dịch vụ khởi động Android không bao giờ bắt đầu
Đây là mã của tôi. Cảm ơn bạn trước
Recibidor.java:
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;
public class Recibidor extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, "Iniciando Recibidor", Toast.LENGTH_LONG).show();
final String TAG = "Recibidor";
Log.i(TAG, "Iniciando Recibidor");
if (intent.getAction().equalsIgnoreCase("android.intent.action.BOOT_COMPLETED")) {
Toast.makeText(context, "Iniciando Intent", Toast.LENGTH_LONG).show();
Log.i(TAG, "Iniciando Intent");
Intent servicio = new Intent();
servicio.setAction("com.pruebas.Servicio");
context.startService(servicio);
Log.i(TAG, "Iniciando Servicio");
Toast.makeText(context, "Iniciando Servicio", Toast.LENGTH_LONG).show();
}
}
}
Servicio.java
package com.pruebas;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.util.Log;
import android.widget.Toast;
public class Servicio extends Service {
private final String TAG = "Servicio";
@Override
public IBinder onBind(Intent arg0) {
return null;
}
@Override
public void onCreate() {
super.onCreate();
Log.i(TAG, "ON CREATE");
Toast.makeText(this, "ON CREATE", Toast.LENGTH_LONG).show();
}
@Override
public void onDestroy() {
super.onDestroy();
Log.i(TAG, "ON DESTROY");
Toast.makeText(this, "ON DESTROY", Toast.LENGTH_LONG).show();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
startForeground(0, null);
Log.i(TAG, "ON START COMMAND");
Toast.makeText(this, "ON START COMMAND", Toast.LENGTH_LONG).show();
return START_STICKY;
}
}
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.pruebas"
android:versionCode="1"
android:versionName="1.0"
android:installLocation="internalOnly" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application>
<service android:name=".Servicio">
<intent-filter>
<action android:name="com.pruebas.Servicio"/>
</intent-filter>
</service>
<receiver android:name=".Recibidor" android:enabled="true" android:exported="true"
android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</receiver>
</application>
</manifest>
Bạn có nhận được ý định trong Recibidor của mình không? – Entreco
Xin chào Entreco. Bạn có thể cho tôi biết làm cách nào để biết tôi có nhận được ý định không? – eloweyn
Bạn có thể đăng nhập vào phương thứcReceiver – tundundun