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

Why I get error when I upload zip file to phonegap service?

我尝试使用 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 

知道为什么会出现上述错误以及如何解决吗?

您似乎在尝试使用 https://github.com/phonegap-build/PushPlugin,它似乎已被弃用并且已经 2 年没有发布了。

看来您应该尝试 https://github.com/phonegap/phonegap-plugin-push 而不是它的替代品

通过将源设置为节点包管理器 (source="npm"),您告诉 PhoneGap Build 从该位置检索插件,但 "com.phonegap.plugins.pushplugin, version 2.5.0" 实际上并不存在。

如果我们查看 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 版,因为这是最新版本:

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