我是 Eclipse 和 Java 开发的新手,我正在尝试在启动时启动一项活动。我已经阅读了多个讨论该主题的线程,虽然我设法在启动时启动了应用程序,但它崩溃了。
这是我的代码:
AndroidManifest.xml:
<!--
Below the <manifest> opening tag:
-->
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<!--
Inside the <application> tag:
-->
<receiver android:name="com.example.Autostart">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<service android:name="com.example.service" android:enabled="true" />
自动启动.java:
package com.example;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class Autostart extends BroadcastReceiver{
@Override
public void onReceive(Context arg0, Intent arg1)
{
Intent intent = new Intent(arg0, service.class);
arg0.startService(intent);
}
}
服务.java:
package com.example;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.widget.Toast;
public class service extends Service{
@Override
public IBinder onBind(Intent arg0) {
return null;
}
@Override
public void onStart(Intent intent, int startid)
{
Intent intents = new Intent(getBaseContext(),checker.class);
intents.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intents);
Toast.makeText(this, "My Service Started", Toast.LENGTH_LONG).show();
}
}
我的检查器类有一个 OnCreate 函数,它改变了一些设置值。
当我启动手机时,我唯一看到的是“YourAppName 已停止工作”,这意味着应用程序已崩溃。我没有看到任何 Toast 消息。
当我通常打开我的应用程序并阅读应该在启动时写入的设置时,什么都没有。