gpt4 book ai didi

javascript - Pushwoosh PhoneGap 插件,在 ios 上检索 hwid

转载 作者:行者123 更新时间:2023-11-29 03:37:34 25 4
gpt4 key购买 nike

我正在使用 Pushwoosh 向我的 iOS 移动应用程序发送推送通知。我想允许用户禁用应用程序内的通知。我遇到的问题是,pushwoosh api 在 ios 上使用的设备 id 与在 android 上使用的设备 id 不同。设备 ID 由插件使用 native 代码创建。它使用硬件 mac 地址并应用 md5 算法来创建一个“唯一”id,phonegap 称之为“hwid”(硬件 id)。我找到了执行此操作的 native objective-c 类,但我不知道如何从 Javascript 访问变量“hwid”。

我已经通读了phonegap documentation并创建了一个插件,允许我访问 native ios 类。我的问题是我不知道 Objective c,因此无法弄清楚如何将变量返回到回调。

pushwoosh api 需要设备 ID 才能取消注册设备,如下所示:

{
"request":{
"application":"APPLICATION_CODE",
"hwid": "hardware device id"
}
}

我见过this发布,这对我想要完成的任务没有帮助。但是,它确实显示了创建唯一 ID 的 native 代码。

我还发现这个类将 hwid 打印到控制台。如果我能找到一种方法从我的 js 代码访问下面的“hwid”,我就准备好了。

#import "PWRequest.h"

@implementation PWRequest
@synthesize appId, hwid;

- (NSString *) methodName {
return @"";
}

//Please note that all values will be processed as strings
- (NSDictionary *) requestDictionary {
return nil;
}

- (NSMutableDictionary *) baseDictionary {
NSMutableDictionary *dict = [NSMutableDictionary new];
[dict setObject:appId forKey:@"application"];
[dict setObject:hwid forKey:@"hwid"];
NSLog(@"hwid: %@", hwid);

return [dict autorelease];
}

- (void) parseResponse: (NSDictionary *) response {
}

- (void) dealloc {
self.appId = nil;
self.hwid = nil;

[super dealloc];
}

@end

有人能指出我正确的方向吗?谢谢。

最佳答案

我们刚刚为 iOS Phonegap Javascript 添加了 unregisterDevice 方法。PushNotification.prototype.unregisterDevice = function(成功, 失败) { cordova.exec(成功, 失败, "PushNotification", "unregisterDevice", []); };

它以前仅适用于 Android,现在也可在 iOS 上使用。对于 Phonegap 3.0,请参阅最新的 Pushwoosh 插件存储库: https://github.com/shaders/pushwoosh-phonegap-3.0-plugin

对于较旧的 Phonegap 版本 <= 2.9,请参阅旧版 Pushwoosh Phonegap 插件: https://github.com/shaders/phonegap-cordova-push-notifications/tree/master/iOS

希望对您有所帮助!

关于javascript - Pushwoosh PhoneGap 插件,在 ios 上检索 hwid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18948810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com