【问题标题】:Phonegap: Add android platform to an already built appPhonegap:将 android 平台添加到已构建的应用程序中
【发布时间】:2014-03-02 00:04:06
【问题描述】:

我为 iOS 创建了一个 phonegap,我想为 Android 构建它,但以下命令不会将其转换为 Android 项目:

phonegap platform update android
phonegap install android
phonegap build android

这是我收到的错误之一:

lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ phonegap platform update android
[phonegap] updating Android platform...
   [error] Platform "android" is not installed.
lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ phonegap install android
[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] trying to install app onto device
[phonegap] no device was found
[phonegap] trying to install app onto emulator
   [error] The provided path "/home/lucas/Dropbox/projects/ecostartup/ecometrix-app/platforms/android" is not an Android project.

这是另一个错误:

lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ phonegap build android
[phonegap] detecting Android SDK environment...
[phonegap] using the local environment
[phonegap] adding the Android platform...
   [error] An error occured during creation of android sub-project. 

/home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:126
                    throw e;
                          ^
Error: An error occurred while listing Android targets
    at /home/lucas/.cordova/lib/android/cordova/3.3.0/bin/lib/check_reqs.js:87:29
    at _rejected (/home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:808:24)
    at /home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:834:30
    at Promise.when (/home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:1079:31)
    at Promise.promise.promiseDispatch (/home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:752:41)
    at /home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:574:44
    at flush (/home/lucas/.cordova/lib/android/cordova/3.3.0/bin/node_modules/q/q.js:108:17)
    at process._tickCallback (node.js:415:13)

lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ 

这里是一些项目信息:

lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ ls
platforms  plugins  README.md  www
lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app$ ls platforms/
ios

如何将其转换为 Android?

【问题讨论】:

    标签: android ios cordova


    【解决方案1】:

    其实看你的日志,好像app已经建好了。唯一可见的错误是没有检测到手机并且无法启动模拟器。

    关于你使用的命令:

    • phonegap platform update android 这个是当你已经将android平台添加到你的项目并安装了更新版本的phonegap,所以你暂时不需要它
    • phonegap install android 在这里,您正在尝试将您的应用安装到连接到您的计算机的设备上,该设备已安装正确的驱动程序并允许调试
    • phonegap build android 给你,这是构建 android 项目并生成调试 apk 的好命令。

    运行构建后,您应该在platforms/android/bin 中找到调试apk

    如果你使用一些插件,还要检查它们是否与安卓兼容。

    【讨论】:

    • 我在运行phonegap build android 后更新了错误信息,以及其他一些项目信息。有什么建议吗?
    • 您是否安装了 Android sdk manager 并下载了 Platform for API 19?
    【解决方案2】:

    我仔细检查以确保 Android 在我的路径上:

    lucas@lucas-ThinkPad-W520:~/projects/ecostartup/ecometrix-app/platforms$ echo $PATH
    (rest of path)...:/opt/android-sdk-linux/sdk/tools:/opt/android-sdk-linux/sdk/platform-tools
    

    但我需要安装 Cordova:

    sudo npm install -g cordova
    

    我跑了phonegap build android,这给了我另一个安装Ant的错误:

    sudo apt-get install ant
    

    这都是在安装 nodejsnpmphonegap 之后完成的。

    我发现这篇文章很有帮助:

    PhoneGap/Cordova Android Development

    (我花了一段时间才找到它)

    【讨论】:

      猜你喜欢
      • 2023-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-03
      • 1970-01-01
      相关资源
      最近更新 更多