我没有真正的Android手机,我想测试闹钟,但我不知道它的代码是否有错误,或者模拟器在启动方面不像真正的手机那样。
自动启动代码来自: Alarm Manager Example
代码不会给我错误,简单的报警管理器和服务都没问题,但报警的自动启动不起作用,我希望它只在emu上,希望它能在真正的手机中工作。下面的代码来自上面提到的线程,它也是我使用的代码..我会说它因为代码可能是问题
清单
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
...
<receiver android:name=".AutoStart">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"></action>
</intent-filter>
</receiver>
...
这是on-boot触发器
package YourPackage;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
public class AutoStart extends BroadcastReceiver
{
Alarm alarm = new Alarm();
@Override
public void onReceive(Context context, Intent intent)
{
if (intent.getAction().equals("android.intent.action.BOOT_COMPLETED"))
{
alarm.SetAlarm(context);
}
}
}
答案 0 :(得分:1)
通过命令行转到“android-sdk”文件夹中的“platform-tools”文件夹。输入以下命令:
adb devices
- 这里将列出您之前开始的当前模拟器。如果显示模拟器,那么将输入以下命令。
adb reboot
- 这将重启模拟器而不触及模拟器上的任何按钮。
答案 1 :(得分:1)
adb -e shell am broadcast -a android.intent.action.BOOT_COMPLETED
在通过命令行访问android sdk / platform-tools
之后键入此内容这将发送一个人为的BOOT_COMPLETED动作
答案 2 :(得分:0)
您可以长按模拟器中提供的powerOff
按钮,然后它会显示不同的选项,例如Silent Mode
,Airplane Mode
,Power Off
。在其他情况下,您可以重新启动模拟器。这样您就可以查看BOOT_COMPLETED
广播。