com.pushwoosh.plugins.pushwoosh 3.6.15 粉碎应用
Posted
技术标签:
【中文标题】com.pushwoosh.plugins.pushwoosh 3.6.15 粉碎应用【英文标题】:com.pushwoosh.plugins.pushwoosh 3.6.15 crushes the app 【发布时间】:2015-11-11 11:15:39 【问题描述】:我正在使用 Intel-XDK 开发应用程序,我想实现推送通知。 我正在使用 pushwoosh cordova 插件 3.6.15 成功构建后,我将其安装在我的设备上,但应用程序崩溃了。 当我添加插件但不使用它时,它不会崩溃 这是我为了使用插件而添加的代码行:
try
if (/(android)/i.test(navigator.userAgent))
registerPushwooshAndroid();
else if (/(iphone|ipad)/i.test(navigator.userAgent))
catch (err)
alert(err.message);
This is the implementation of PushwooshAndroid.js:
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
function registerPushwooshAndroid()
var pushNotification = cordova.require("com.pushwoosh.plugins.pushwoosh.PushNotification");
//set push notifications handler
document.addEventListener('push-notification',
function(event)
var title = event.notification.title;
var userData = event.notification.userdata;
//dump custom data to the console if it exists
if (typeof(userData) != "undefined")
console.warn('user data: ' + JSON.stringify(userData));
//and show alert
alert(title);
//stopping geopushes
//pushNotification.stopGeoPushes();
);
//initialize Pushwoosh with projectid: "GOOGLE_PROJECT_ID", appid : "PUSHWOOSH_APP_ID". This will trigger all pending push notifications on start.
pushNotification.onDeviceReady(
projectid: "My ProjectID",
pw_appid: "My pw_appid"
);
//register for push notifications
pushNotification.registerDevice(
function(token)
alert(token);
//callback when pushwoosh is ready
onPushwooshAndroidInitialized(token);
,
function(status)
alert("failed to register: " + status);
console.warn(JSON.stringify(['failed to register ', status]));
);
function onPushwooshAndroidInitialized(pushToken)
//output the token to the console
console.warn('push token: ' + pushToken);
var pushNotification = cordova.require("com.pushwoosh.plugins.pushwoosh.PushNotification");
//if you need push token at a later time you can always get it from Pushwoosh plugin
pushNotification.getPushToken(
function(token)
console.warn('push token: ' + token);
);
//and HWID if you want to communicate with Pushwoosh API
pushNotification.getPushwooshHWID(
function(token)
console.warn('Pushwoosh HWID: ' + token);
);
pushNotification.getTags(
function(tags)
console.warn('tags for the device: ' + JSON.stringify(tags));
,
function(error)
console.warn('get tags error: ' + JSON.stringify(error));
);
//set multi notificaiton mode
//pushNotification.setMultiNotificationMode();
//pushNotification.setEnableLED(true);
//set single notification mode
//pushNotification.setSingleNotificationMode();
//disable sound and vibration
//pushNotification.setSoundType(1);
//pushNotification.setVibrateType(1);
pushNotification.setLightScreenOnNotification(false);
//setting list tags
//pushNotification.setTags("MyTag":["hello", "world"]);
//settings tags
pushNotification.setTags(
deviceName: "hello",
deviceId: 10
,
function(status)
console.warn('setTags success');
,
function(status)
console.warn('setTags failed');
);
//Pushwoosh Android specific method that cares for the battery
//pushNotification.startGeoPushes();
Please assist me
I would have sent the APK but I cant becuase its size is 47M
Another thing, I tried the pushwoosh tutorial project and it did not fail, I don't know why
Thanks for your help
【问题讨论】:
我的 index.html 代码中也包含了这些 js 脚本: 【参考方案1】:请确保您按照文档添加 Pushwoosh XDK 插件: http://docs.pushwoosh.com/docs/cordova-phonegap
对于 Intel XDK:添加 pushwoosh-intel-xdk-plugin 作为第三方插件
【讨论】:
嗨,我完全按照文档中的方式添加了它。它只是不起作用。它与 admob 插件有关,它们不能很好地相处。我需要帮助来通过 pushwoosh 或其他使用 intel-xdk 的方式实现推送通知,但我不知道如何 可能 admob 使用旧的 Google Play 服务库。你能附上应用程序的崩溃日志吗?真的很难猜。以上是关于com.pushwoosh.plugins.pushwoosh 3.6.15 粉碎应用的主要内容,如果未能解决你的问题,请参考以下文章