自动运行在Android手机启动应用程序 [英] automatically run an application on Android phone startup
本文介绍了自动运行在Android手机启动应用程序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要开始我的应用程序时,手机开机
I want to start my application when phone startup
我只是按照从这里教程,但它不T在我的设备的工作。请参阅我的方法:
I just follow tutorial from here but it doesn't work in my device. Please see my method:
public class MyStartUpReciever extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Intent ii = new Intent();
ii.setAction("com.sat.servicetrack");
context.startService(ii);
}
}
这是我的manifest.xml
and this is my manifest.xml
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".ServiceTrack"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".MyStartupReciever">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>
<service android:enabled="true" android:name=".MyService" >
<intent-filter>
<action android:name="com.sat.servicetrack" />
</intent-filter>
</service>
</application>
我缺少什么?
推荐答案
我已经做了类似的东西,但我开始活动。这是我如何做它:
I've done something similiar, but I was starting activity. Here is how I done it:
在清单:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
在Java的code:
In Java code:
public class BootUpReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
PendingIntent i = PendingIntent.getActivity(context, 0, new Intent(
context,MainActivity.class),
Intent.FLAG_ACTIVITY_NEW_TASK);
AlarmManager mgr = (AlarmManager) context
.getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 20000, i);
}
}
您code似乎是正确的,但要尽量用PendingIntent)希望它可以帮助你。
Your code seems to be correct, but try using PendingIntent ;) Hope it helps you
这篇关于自动运行在Android手机启动应用程序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文