PhoneGap Build不能用PushPlugin为Android构build

我们有一个PhoneGap应用程序,一旦添加PushPlugin就拒绝构build。

特别是当使用PhoneGap Build时,我们得到错误:

 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 )和PhoneGap Android平台( $ phonegap platform update android )升级到最新版本之后,我们可以偶尔使用Ripple仿真器(在Visual Studio中构build)来构build它。

我们已经包含这样的插件:

 <gap:plugin name="com.phonegap.plugins.pushplugin" /> 

或者,在Visual Studio 2015中构build时:

 <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" /> 

任何人都可以build议我们可能会出错吗?

编辑:

我们也尝试在命令行上构build,但是即使安装了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) 

Solutions Collecting From Web of "PhoneGap Build不能用PushPlugin为Android构build"

对于PhoneGap Build,使用<gap:plugin name="com.phonegap.plugins.pushplugin" version="2.4.0" />来强制它使用旧版支持的版本。

最近推出了新推送插件。 阅读(通过官方博客),并获得详细信息:
http://simonmacdonald.blogspot.com/2015/07/phonegap-plugin-push-version-111.html

更新(2015-10-24):根据2015年9月28日的Phonegap Build博客
Android默认使用Gradlebuild立 。

Ant仍然可用,并可以强制使用 – 与
<preference name="android-build-tool" value="ant" />

其他相关更改也会发生,包括自动minSdkVersion版本控制9个补丁映像的validation 。 阅读博客文章的详细信息。

注意: 在你原来的问题,gradle(不正式支持phonegap)是问题。 有些人已经解决了这个问题,迫使ant跑在这个地方。 要查找其他post,请从此postsearch30天; 主题与此类似,包括:“未能build立”。

尝试删除插件,并使用此命令通过命令行进行安装:

 cordova plugin add com.phonegap.plugins.pushplugin --save 

你会注意到这个插件会在你的config.xml中显示如下:

 <plugin name="com.phonegap.plugins.PushPlugin" spec="^2.2.1" /> 

但它不会在configurationdevise器上显示,为此,在插件标签前添加“vs:”:

 <vs:plugin name="com.phonegap.plugins.PushPlugin" spec="^2.2.1" /> 

试试这个(不是100%的工作,但为我工作)。

在platforms / android / project.properties中删除这一行

cordova.system.library.1 = com.android.support:支持-V4:+

如果你正在使用Facebook插件(像我),你可以忽略下面。

cordova插件添加android.support.v4