PhoneGap Build无法使用PushPlugin为Android构建
我们有一个PhoneGap应用程序,在我们添加PushPlugin
后拒绝构建。PhoneGap Build无法使用PushPlugin为Android构建
具体使用PhoneGap的时候建立我们得到的错误:
BUILD FAILED
/home/ec2-user/android-sdk/tools/ant/build.xml:573: ../../../../../../home/ec2-user/android-sdk/com.android.support:support-v4:+ resolve to a path with no project.properties file for project /project
我们偶尔可以得到它更新的PhoneGap($ npm update -g phonegap
)后使用波动模拟器(建筑在Visual Studio)来构建和PhoneGap的Android的平台( $ phonegap platform update android
)到最新版本。
这里已包括这样的插件:
<gap:plugin name="com.phonegap.plugins.pushplugin" />
或者,构建在Visual Studio 2015年时:
<vs:plugin name="com.phonegap.plugins.PushPlugin" version="2.5.0" src="https://github.com/phonegap-build/PushPlugin.git" xmlns:vs="http://schemas.microsoft.com/appx/2014/htmlapps" />
任何人都可以提出,我们可能会去错了吗?
编辑:
我们也试图建立在命令行上,但即使安装cordova-plugin-android-support-v4
,因此之后;
$ cordova plugin add cordova-plugin-android-support-v4
Fetching plugin "cordova-plugin-android-support-v4" via npm
npm http GET https://registry.npmjs.org/cordova-plugin-android-support-v4
npm http 200 https://registry.npmjs.org/cordova-plugin-android-support-v4
Installing "cordova-plugin-android-support-v4" for android
我们仍然得到错误:
C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordovaApp1>cordova build android
Running command: cmd "/s /c "C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordovaApp1\platforms\android\cordova\build.bat""
ANDROID_HOME=C:\Users\XXX\AppData\Local\Android\sdk
JAVA_HOME=C:\Program Files (x86)\java\jdk1.7.0_55
Running: C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordovaApp1\platforms\android\gradlew cdvBuildDebug -b C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordova
dle.daemon=true
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring root project 'android'.
> Could not resolve all dependencies for configuration ':_debugCompile'.
> Could not find any version that matches com.android.support:support-v4:+.
Searched in the following locations:
https://repo1.maven.org/maven2/com/android/support/support-v4/maven-metadata.xml
https://repo1.maven.org/maven2/com/android/support/support-v4/
Required by:
:android:unspecified
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 2.897 secs
C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordovaApp1\platforms\android\cordova\node_modules\q\q.js:126
throw e;
^
Error code 1 for command: cmd with args: /s /c "C:\Dev\CordovaBlank\BlankCordovaApp1\BlankCordovaApp1\platforms\android\gradlew cdvBuildDebug -b C:\Dev\Cor
latforms\android\build.gradle -Dorg.gradle.daemon=true"
ERROR building one of the platforms: Error: cmd: Command failed with exit code 1
You may not have the required environment or OS to build this project
Error: cmd: Command failed with exit code 1
at ChildProcess.whenDone (C:\Users\XXX\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\src\cordova\superspawn.js:134:23)
at ChildProcess.emit (events.js:110:17)
at maybeClose (child_process.js:1015:16)
at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
新推插件最近发布。 阅读本(通过官方博客),并获得详细信息:
http://simonmacdonald.blogspot.com/2015/07/phonegap-plugin-push-version-111.html
更新(2015年10月24日):按照PhoneGap的建设2015年9月28日
Android Builds Now Using Gradle By Default的博客。
Ant
仍然是可用的,并且可以是力投入使用 - 与发生<preference name="android-build-tool" value="ant" />
其它相关的变化,包括自动的minSdkVersion版本和9-补丁图像验证。阅读博客文章了解详情。
注意:在你原来的问题,gradle(没有官方支持phonegap)是问题。一些人已经解决了这个问题,迫使ant
运行在它的位置。要查找其他帖子,请在此帖子后30天内搜索;主题与此类似,包括:“未能建立”。
对于PhoneGap Build,请使用 <gap:plugin name="com.phonegap.plugins.pushplugin" version="2.4.0" />
强制它使用较旧的支持版本。
尝试删除插件,使用此命令通过命令行安装:
cordova plugin add com.phonegap.plugins.pushplugin --save
你会发现这个插件将在你的配置显示。这样的XML:
<plugin name="com.phonegap.plugins.PushPlugin" spec="^2.2.1" />
,但它不会显示在配置设计,要做到这一点,添加“对比:”在插件标签的前面:
<vs:plugin name="com.phonegap.plugins.PushPlugin" spec="^2.2.1" />
试试这个(不100%的工作,但为我工作)。
删除此行的平台/安卓/ project.properties
cordova.system.library.1=com.android.support:support-v4:+
如果您正在使用Facebook的插件(比如我),你可以在下面忽略。
cordova plugin add android.support.v4