我试图让一个新的cordova项目安装工作,我无法让它在模拟器中运行。当我运行cordova emulate android
时,它会给我以下错误:
(node:4822) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Failed to execute shell command "getprop,dev.bootcomplete"" on device: Error: adb: Command failed with exit code 1 Error output: error: device still connecting
它确实启动了模拟器,但没有任何反应。我在config.xml中添加了这个首选项:
<platform name="android">
<allow-intent href="market:*" />
<preference name="loadUrlTimeoutValue" value="700000" />
</platform>
答案 0 :(得分:4)
只需在第344行或platform/android/cordova/lib/emulator.js
方法内修改(error.message.indexOf('device still connecting') > -1)
if if子句内的module.exports.wait_for_emulator
即可立即修复,以便不会终止该过程,只需保持循环直到它可以启动adb.shell。
答案 1 :(得分:0)
尝试启动模拟器(手动启动,或者只是不要从之前的尝试中关闭它),然后运行命令(再次)。