我将zip文件上传到phonegap服务时为什么会出错?

时间:2017-06-05 08:40:09

标签: android cordova phonegap-plugins phonegap-build phonegap-pushplugin

我尝试使用phonegap服务创建apk文件。

这是我项目中的config.xml文件:

<?xml version='1.1' encoding='utf-8'?>
<widget id="il.co.geomind.gilgalplay" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
    <name>sites</name>
    <description>
        app for sites mapping
    </description>
    <author email="jacklondon@ddd.com" href="">

    </author>
    <content src="index.html" />
    <access origin="*" />
    <preference name="Orientation" value="portrait" />
    <preference name="permissions" value="none"/>

    <feature name="http://api.phonegap.com/1.0/camera"/>
    <feature name="http://api.phonegap.com/1.0/geolocation"/>

    <icon src="images/icons/ldpi.png" gap:platform="android" gap:qualifier="ldpi" />
    <icon src="images/icons/mdpi.png" gap:platform="android" gap:qualifier="mdpi" />
    <icon src="images/icons/hdpi.png" gap:platform="android" gap:qualifier="hdpi" />
    <icon src="images/icons/xhdpi.png" gap:platform="android" gap:qualifier="xhdpi" />
    <icon src="images/icons/xxhdpi.png" gap:platform="android" gap:qualifier="xxhdpi" />
    <icon src="images/icons/xxxhdpi.png" gap:platform="android" gap:qualifier="xxxhdpi" />

    <!-- iPhone / iPod Touch  -->
    <icon src="images/icons/mdpi.png" gap:platform="ios" width="60" height="60" />
    <icon src="images/icons/xhdpi.png" gap:platform="ios" width="120" height="120" />

    <!-- Settings Icon -->
    <icon src="images/icons/ldpi.png" gap:platform="ios" width="29" height="29" />
    <icon src="images/icons/mdpi.png" gap:platform="ios" width="58" height="58" />

    <!-- Spotlight Icon -->
    <icon src="images/icons/ldpi.png" gap:platform="ios" width="40" height="40" />
    <icon src="images/icons/mdpi.png" gap:platform="ios" width="80" height="80" />

  <gap:platform name="android" />

  <gap:splash src="images/icons/screen-xhdpi.png"/>

  <gap:plugin name="cordova-plugin-whitelist" source="npm" />
  <gap:plugin name="org.apache.cordova.camera" version="0.3.6" source="npm" />
  <gap:plugin name="org.apache.cordova.device" version="0.3.0" source="npm"/>
  <gap:plugin name="com.phonegap.plugins.pushplugin" version="2.5.0" source="npm"/>
  <gap:plugin name="org.apache.cordova.geolocation" version="0.3.12" source="npm"/>

</widget>

我从项目中创建zip文件并上传到phonegap服务我收到此错误:

Error - The following plugin, plugin version or a dependancy of this plugin is not on npm: com.phonegap.plugins.pushplugin@2.5.0 

知道为什么我上面会出现错误以及如何修复它?

2 个答案:

答案 0 :(得分:1)

看起来您正在尝试使用https://github.com/phonegap-build/PushPlugin,它似乎已被弃用且未在2年内发布。

看起来你应该尝试https://github.com/phonegap/phonegap-plugin-push而不是替换它

答案 1 :(得分:1)

通过将源设置为节点包管理器(source =“npm”),您告诉PhoneGap Build从该位置检索插件,但“com.phonegap.plugins.pushplugin,版本2.5.0”isn'实际上在那里。

如果我们查看npmjs.com for the push plugin,则有两个插件搜索结果,但正如另一个答案中所述,它已超过2年未更新,甚至标记为“-deprecated”。

假设您需要推送通知插件,我建议您尝试查找正式插件。要做到这一点,请先搜索“cordova-plugin”以及您正在寻找的内容:“cordova-plugin-push”。这导致我to this one,这可能会奏效。

在config.xml文件中,添加对它的引用,如下所示:

<plugin name="cordova-plugin-push-notification" version="2.5.2" source="npm" />

我使用的是版本2.5.2,因为那是最新版本:enter image description here

如需进一步参考,请参阅我的using NPM with PhoneGap Build指南。