【发布时间】:2012-03-03 17:48:30
【问题描述】:
好吧,我已经搜索了很多。人们说我需要关闭模拟器的窗口才能关闭它。但是,我需要重新启动模拟器才能通过我的BroadcastReceiver 捕获ACTION_BOOT_COMPLETED。
我该怎么做?
【问题讨论】:
好吧,我已经搜索了很多。人们说我需要关闭模拟器的窗口才能关闭它。但是,我需要重新启动模拟器才能通过我的BroadcastReceiver 捕获ACTION_BOOT_COMPLETED。
我该怎么做?
【问题讨论】:
在android标签上使用tubemate时,我没有成功下载error:host interupped等的视频。我使用了以下命令:
adb shell stop
adb shell start
应用程序开始下载视频。
【讨论】:
或者其他方式(也可以从命令行):
adb shell stop
adb shell start
【讨论】:
stop: must be root
要模拟广播动作,您可以通过 adb 连接到模拟器/设备并打开 shell:
adb shell
然后,你可以广播你想测试的动作:
am broadcast -a android.intent.action.BOOT_COMPLETED
请注意,在最新的 Android 版本中,广播 *android.intent.action.BOOT_COMPLETED* 操作实际上会重新启动您的模拟器/设备。
【讨论】:
java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.BOOT_COMPLETED from pid=6832, uid=2000
您可以使用 adb 中的以下命令:
adb shell am activity/service/broadcast -a ACTION -c CATEGORY -n NAME
例如:
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -c android.intent.category.HOME -n package_name/class_name
请注意,类名和包名需要与 Manifest 中定义的一致。
这将生成您想要的 Intent,仅定向到您想要的组件(否则您的系统会因为发送 BOOT_COMPLETED 而发疯......)
【讨论】:
java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.intent.action.BOOT_COMPLETED from pid=7432, uid=2000
首先,确保从模拟器中启用 USB 调试:
点击:
从命令行:
adb -e reboot
编辑:
这绝对行不通……很奇怪。我对其进行了测试,无法使模拟器重新启动。它只是挂起。
【讨论】:
adb reboot?我运行了 45 分钟,进程 emulator-arm 一直使用 50% 的 CPU。它没有响应:-(
还有另一种方式:
如果您启动模拟器并选中“擦除用户数据”复选框,您也会在启动完成时收到该通知。
【讨论】:
模拟器有开/关按钮 - 只需点击它
【讨论】: