想实现开机启动,关机时也能收到关机广播,但是不成功,请教是何原因
想实现开机启动,关机时也能收到关机广播,但是不成功,请问是何原因
以下是一个android程序的主要部分,想实现开机启动,关机时也能收到关机广播,但是不成功,请问是何原因
.......AndroidManifest.xml.......
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.com.hbbroadcom.hbbtPowerManagerReg">
<original-package android:name="my.com.hbbroadcom.hbbtPowerManagerReg" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application>
<service
android:process="@string/process"
android:name="MyService" >
</service>
<receiver
android:name="MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.ACTION_SHUTDOWN" />
</intent-filter>
</receiver>
</application>
</manifest>
.........MyReceiver.java.......
package my.com.hbbroadcom.hbbtPowerManagerReg;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class MyReceiver extends BroadcastReceiver {
private static final String TAG = "MyReceiver";
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.i(TAG, "changdd--action = " + action);
if ("android.intent.action.ACTION_SHUTDOWN".equals(action)) {
Log.e("BBBB", "...........power off .......... " );
}
if (action.equals(Intent.ACTION_BOOT_COMPLETED)) {
Log.i(TAG, "Start MyService...");
context.startService(new Intent(context, MyService.class));
}
}
}
------解决思路----------------------
以上代码和设置貌似是正确的.
将生成的APK 放到system/app目录下,重启机器,应可以自启动.
以下是一个android程序的主要部分,想实现开机启动,关机时也能收到关机广播,但是不成功,请问是何原因
.......AndroidManifest.xml.......
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.com.hbbroadcom.hbbtPowerManagerReg">
<original-package android:name="my.com.hbbroadcom.hbbtPowerManagerReg" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application>
<service
android:process="@string/process"
android:name="MyService" >
</service>
<receiver
android:name="MyReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<action android:name="android.intent.action.ACTION_SHUTDOWN" />
</intent-filter>
</receiver>
</application>
</manifest>
.........MyReceiver.java.......
package my.com.hbbroadcom.hbbtPowerManagerReg;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
public class MyReceiver extends BroadcastReceiver {
private static final String TAG = "MyReceiver";
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.i(TAG, "changdd--action = " + action);
if ("android.intent.action.ACTION_SHUTDOWN".equals(action)) {
Log.e("BBBB", "...........power off .......... " );
}
if (action.equals(Intent.ACTION_BOOT_COMPLETED)) {
Log.i(TAG, "Start MyService...");
context.startService(new Intent(context, MyService.class));
}
}
}
------解决思路----------------------
以上代码和设置貌似是正确的.
将生成的APK 放到system/app目录下,重启机器,应可以自启动.