我正在使用Cordova,Angular和Ionic开发应用程序。我有一个问题与phonegap推送插件,我搜索了很多,但没有找到解决方案。
我使用cordova 5.4.1和phonegap-plugin-push 1.5.3。当我在Xcode上运行iPad或仿真器上的应用程序时,日志会抛出此错误:
ERROR: Plugin 'PushPlugin' not found, or is not a CDVPlugin. Check your plugin mapping in config.xml.
[CDVCommandQueue executePending] [Line 159] FAILED pluginJSON = [
"PushPlugin938856013",
"PushPlugin",
"register",
[{
"ecb":"onNotificationAPN",
"alert":"true",
"badge":"true",
"sound":"true"
}]
]
我已多次重新安装该插件,删除/添加ios平台,但没有任何作用。 我还尝试添加config.xml行,如:
<feature name="PushPlugin">
<param name="ios-package" value="PushPlugin" />
</feature>
但是不起作用。
我已经阅读了在插件forlder中的Xcode和PushPlugin.h的构建阶段中包含PushPlugin.m,但两者都在进行中。我可以看到Xcode如何编译插件(并生成一些警告),一切看起来都很正常,但由于某种原因,它不能包含在应用程序中。
就像我说的那样,我浪费了大量时间搜索和尝试解决方案,但没有任何作用.. 请问有人帮帮我吗?
答案 0 :(得分:0)
https://github.com/phonegap-build/PushPlugin#description
重要 - 推送通知适用于真实设备。它们未经过WP8仿真器测试。注册过程将在iOS模拟器上失败。
但我想它的价值是什么,试试cordova plugin add phonegap-plugin-push --save
,因为phonegap/phonegap-plugin-push
是新的统一版本
答案 1 :(得分:0)
我很高兴地说,两周后,我找到了解决方案!当我以为我变得疯狂时,插件终于有效了! 我正在以错误的(和旧的)方式初始化插件。我用以下代码替换了我的初始代码:
<?php
/* Intentional file error */
$my_file = @file ('non_existent_file') or
die ("Failed opening file: error was '$php_errormsg'");
// this works for any expression, not just functions:
$value = @$cache[$key];
// will not issue a notice if the index $key doesn't exist.
?>
它有效! 非常感谢你的帮助,@ Dwardu!