在Android手机启动时自动运行应用程序
我想在手机启动时启动我的应用程序 我只是按照中的教程操作,但它在我的设备中不起作用。请参阅我的方法:在Android手机启动时自动运行应用程序,android,startup,Android,Startup,我想在手机启动时启动我的应用程序 我只是按照中的教程操作,但它在我的设备中不起作用。请参阅我的方法: public class MyStartUpReciever extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Intent ii = new
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
<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>
我遗漏了什么吗?我做了类似的事情,但我正在开始活动。我是这样做的: 在舱单中:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
您的代码似乎是正确的,但请尝试使用pendingent;)希望它能帮助你我做过类似的事情,但我正在开始活动。我是这样做的: 在舱单中:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
您的代码似乎是正确的,但请尝试使用pendingent;)希望它能帮助您您没有拨打该服务 代码是这样的
Intent objIntent= new Intent(context, MyService.class);
context.startService(objIntent);
单击了解如何从广播接收器启动服务您没有呼叫该服务
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
context.startService(new Intent(context, BootService.class));
}
}
代码是这样的
Intent objIntent= new Intent(context, MyService.class);
context.startService(objIntent);
单击了解如何从广播接收器启动服务
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED")) {
context.startService(new Intent(context, BootService.class));
}
}
接下来,您应该实现BootService类扩展服务
接下来,您应该实现BootService类扩展服务
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Intent i = new Intent(context, BootingActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
在清单文件中
<receiver android:name=".BroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
<category android:name="android.intent.category.DEFAULT"></category>
</intent-filter>
</receiver>
像这样试试
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Intent i = new Intent(context, BootingActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
在清单文件中
<receiver android:name=".BroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
<category android:name="android.intent.category.DEFAULT"></category>
</intent-filter>
</receiver>
在模拟器上运行相同的代码怎么样?我怎么知道它在模拟器中是否工作@请在onReceive方法上添加日志…关闭仿真器并重新启动。能否显示AndroidManifest.xml的全部代码?在仿真器上运行相同的代码如何?我如何知道它在仿真器中是否工作@如果在您的onReceive方法上添加日志…请关闭模拟器并重新启动。您能显示AndroidManifest.xml的全部代码吗?我已尝试输入您的代码,我重新启动了我的设备..但我的服务仍然没有运行..如何?很抱歉打扰您:)我遇到了这样的错误05-16 15:24:21.766:error/AndroidRuntime(292):原因:java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever加载程序dalvik.system.PathClassLoader[/data/app/com.sat.servicetrack-1.apk]
它是什么@Veljkotry启动一些虚拟活动,启动您的服务。我没有立即运行服务,而是遇到了这样的错误05-16 15:24:21.766:error/AndroidRuntime(292):由:java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever加载程序dalvik.system.PathClassLoader[/data/app/com.sat.servicetrack-1.apk]中的java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever引起的是什么@你刚才复制了我的代码吗?我的接受者被称为BootUpReceiver,你的接受者被称为MyStartUpReceiver。检查一下……你确实输入了一些错误。我试着输入了你的代码,重新启动了我的设备。但是我的服务仍然没有运行。怎么了?对不起打扰你:)我有这样的错误05-16 15:24:21.766:error/AndroidRuntime(292):原因:java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever加载程序dalvik.system.PathClassLoader[/data/app/com.sat.servicetrack-1.apk]
它是什么@Veljkotry启动一些虚拟活动,启动您的服务。我没有立即运行服务,而是遇到了这样的错误05-16 15:24:21.766:error/AndroidRuntime(292):由:java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever加载程序dalvik.system.PathClassLoader[/data/app/com.sat.servicetrack-1.apk]中的java.lang.ClassNotFoundException:com.sat.servicetrack.MyStartupReciever引起的是什么@你刚才复制了我的代码吗?我的接受者被称为BootUpReceiver,你的接受者被称为MyStartUpReceiver。检查一下……你肯定打错了。