Cordova实际上并没有在Android设备上安装应用程序

时间:2015-05-05 08:58:08

标签: android cordova install apk device

我在ubuntu 12.04上设置了cordova 5.0.0 + android SDK API 22(Android 5.1.1)来开发应用程序。当我运行命令

cordova run --device

它构建没有错误的APK并显示

Total time: 3.177 secs Built the following apk(s): /var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk Using apk: /var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk Installing app on device... Launching application... LAUNCH SUCCESS

但实际上并没有将APK安装到设备上。

我尝试使用

安装现成的APK文件

adb install -r /var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk

并且有效。

我尝试从网络服务器下载APK并在设备上本地安装它也有效,所以我假设APK本身没问题且设备已被识别。

当APK已经在设备上安装了命令

cordova run --device

在控制台中生成相同的输出,并在设备上启动应用程序但不安装刚刚构建的较新版本。

我的Android设备是运行Android 4.1.2的HTC Desire 500,而我的Android SDK使用的是API 22(Android 5.1.1)可能是问题吗?

最后说明:我在使用带有Android SDK API 19的cordova 4.1.2设置的单独机器上进行设置,它可以很好地构建项目并实际安装应用程序。

我很感激您对可能导致这种奇怪行为的看法。

干杯

3 个答案:

答案 0 :(得分:6)

似乎是Cordova 5.0.0中的一个错误,我遇到了同样的问题,this thread proprit 的答案为我解决了这个问题:

  

在Cordova 5.0.0上,可以在线找到安装apk的adb命令   101个文件平台\ android \ cordova \ lib \ device.js(和第311行)   用于cordova仿真的平台\ android \ cordova \ lib \ emulator.js   机器人):

     

adb -s ' + resolvedTarget.target + ' install -r -d "' + apk_path + '"

     

当前命令返回给我:"错误:未知选项-d"!如果你   只需删除" -d"选项,应用程序正常运行cordova   运行android。

答案 1 :(得分:2)

cordova build

adb push "<<project_path_here>>\platforms\android\build\outputs\apk\android-debug.apk" /sdcard/

adb shell pm install -r /sdcard/android-debug.apk

然后你可以在手机中找到你的应用并运行它; D

答案 2 :(得分:0)

cordova emulate android

适用于截至此日期的最新版本。