デバイスの起動時にアクティビティを開始しようとしています。
奇妙なことは、私のコードがエミュレーターでは機能しているが、実際のデバイスでは機能していないことです。
自動開始のオンとオフを設定するための CheckBoxPreference を持つ、preferences.xml というファイルがあります。
これが私のコードです:-
public class AutoStartUp extends BroadcastReceiver
{
private static final String TAG = "AutoStartUp";
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();
if(action.equals(Intent.ACTION_BOOT_COMPLETED))
{
SharedPreferences sp = context.getSharedPreferences("preferences", 0);
if(sp.getBoolean("autostartup", false))
{
Log.e(TAG, "I AM HERE");
Intent startupIntent = new Intent(context, CompleteTaskManager.class);
context.startActivity(startupIntent);
}
}
}
}
これがこのレシーバーのマニフェスト部分です:-
<receiver android:name=".AutoStartUp" android:enabled="true" android:exported="false" android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
助けてください!!