Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cordova实际上并没有在android设备上安装应用程序_Android_Cordova_Installation_Apk_Device - Fatal编程技术网

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

Cordova实际上并没有在android设备上安装应用程序,android,cordova,installation,apk,device,Android,Cordova,Installation,Apk,Device,我已经在ubuntu 12.04上安装了cordova 5.0.0+android SDK API 22(android 5.1.1)来开发一个应用程序。当我运行命令时 cordova运行--设备 它无错误地构建APK并显示 总时间:3.177秒 构建了以下apk: /var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk 使用apk:/var/www/tmp/test-app/p

我已经在ubuntu 12.04上安装了cordova 5.0.0+android SDK API 22(android 5.1.1)来开发一个应用程序。当我运行命令时

cordova运行--设备

它无错误地构建APK并显示

总时间:3.177秒
构建了以下apk:
/var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk
使用apk:/var/www/tmp/test-app/platforms/android/build/outputs/apk/android-release-unsigned.apk
正在设备上安装应用程序。。。
正在启动应用程序。。。
发射成功

但是,它实际上并没有将APK安装到设备上

我已尝试使用安装现成的APK文件

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

它成功了

我曾尝试从web服务器下载APK,并在设备上本地安装它,它也工作了,因此我假设APK本身正常,并且设备可以识别

当设备上已安装APK时,命令

cordova运行--设备

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

我的安卓设备是运行安卓4.1.2的HTC Desire 500,而我的安卓SDK使用的是API 22(安卓5.1.1),这可能是问题所在吗

最后一点注意:我在单独的机器上使用cordova 4.1.2安装程序和Android SDK API 19进行了设置,它很好地构建了项目,并实际安装了应用程序

我将非常感谢您对可能导致这种奇怪行为的原因的意见


Cheers

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

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

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

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

cordova构建
adb推送“\platforms\android\build\outputs\apk\android debug.apk”/SD卡/
adb shell pm安装-r/sdcard/android-debug.apk
然后你可以在手机中找到你的应用程序并运行它;D

cordova emulate android

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

感谢您分享手动安装apk的方法,这对我有很大帮助,因为某些原因,cordova的例程不适用于一部分设备(它适用于我的Galaxy S4,但不适用于我的Galaxy W)太棒了!为了确定科尔多瓦出了什么问题,我们进行了一次很好的疏通。我发现Cordova使用了大量的自动化功能,可以轻松修复的问题变得很难修复,因为不会显示错误消息(至少在Cordova Tools for VS2015中是这样),谢谢!似乎rogue
-d
在Cordova 5.2.0中仍然存在
emulator.js
(不确定最新版本)。
cordova emulate android