mirror of
https://github.com/jpush/jpush-phonegap-plugin.git
synced 2026-04-19 00:03:45 +08:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7d868be664 | |||
| 7b65a1f469 | |||
| 20d93c0047 | |||
| b1a77669a2 | |||
| 1cf537dacb | |||
| 575fe40faf | |||
| 6734bf9160 | |||
| fbfe621aa3 | |||
| df6adddc75 | |||
| 974838d5de | |||
| 727af516e8 |
@@ -2,7 +2,7 @@
|
||||
|
||||
[](https://travis-ci.org/jpush/jpush-phonegap-plugin)
|
||||
[]()
|
||||
[](https://github.com/jpush/jpush-phonegap-plugin/releases)
|
||||
[](https://github.com/jpush/jpush-phonegap-plugin/releases)
|
||||
[](https://github.com/jpush/jpush-phonegap-plugin)
|
||||
[](http://weibo.com/jpush?refer_flag=1001030101_&is_all=1)
|
||||
|
||||
@@ -17,15 +17,15 @@
|
||||
|
||||
- 通过 Cordova Plugins 安装,要求 Cordova CLI 5.0+:
|
||||
|
||||
cordova plugin add jpush-phonegap-plugin --variable API_KEY=your_jpush_appkey
|
||||
cordova plugin add jpush-phonegap-plugin --variable APP_KEY=your_jpush_appkey
|
||||
|
||||
- 或直接通过 url 安装:
|
||||
|
||||
cordova plugin add https://github.com/jpush/jpush-phonegap-plugin.git --variable API_KEY=your_jpush_appkey
|
||||
cordova plugin add https://github.com/jpush/jpush-phonegap-plugin.git --variable APP_KEY=your_jpush_appkey
|
||||
|
||||
- 或下载到本地安装:
|
||||
|
||||
cordova plugin add Your_Plugin_Path --variable API_KEY=your_jpush_appkey
|
||||
cordova plugin add Your_Plugin_Path --variable APP_KEY=your_jpush_appkey
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "jpush-phonegap-plugin",
|
||||
"version": "3.0.2",
|
||||
"version": "3.0.3",
|
||||
"description": "JPush for cordova plugin",
|
||||
"cordova": {
|
||||
"id": "jpush-phonegap-plugin",
|
||||
|
||||
+21
-18
@@ -2,7 +2,7 @@
|
||||
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
id="jpush-phonegap-plugin"
|
||||
version="3.0.1">
|
||||
version="3.0.3">
|
||||
|
||||
<name>JPush Plugin</name>
|
||||
<description>JPush for cordova plugin</description>
|
||||
@@ -10,7 +10,7 @@
|
||||
<keywords>JPush,push</keywords>
|
||||
<license>MIT License</license>
|
||||
|
||||
<preference name="API_KEY" />
|
||||
<preference name="APP_KEY" />
|
||||
|
||||
<engines>
|
||||
<engine name="cordova" version=">=3.0" />
|
||||
@@ -37,9 +37,9 @@
|
||||
<source-file src="src/ios/Plugins/AppDelegate+JPush.m" />
|
||||
|
||||
<header-file src="src/ios/lib/JPUSHService.h" />
|
||||
<source-file src="src/ios/lib/jpush-ios-3.0.0.a" framework="true" />
|
||||
<source-file src="src/ios/lib/jcore-ios-1.0.0.a" framework="true" />
|
||||
<resource-file src="src/ios/PushConfig.plist" />
|
||||
<source-file src="src/ios/lib/jpush-ios-3.0.1.a" framework="true" />
|
||||
<source-file src="src/ios/lib/jcore-ios-1.1.0.a" framework="true" />
|
||||
<resource-file src="src/ios/JPushConfig.plist" />
|
||||
|
||||
<framework src="CFNetwork.framework" weak="true" />
|
||||
<framework src="CoreFoundation.framework" weak="true" />
|
||||
@@ -54,9 +54,8 @@
|
||||
<framework src="UserNotifications.framework" weak="true" />
|
||||
<framework src="libresolv.tbd" weak="true" />
|
||||
|
||||
|
||||
<config-file target="*PushConfig.plist" parent="Appkey">
|
||||
<string>$API_KEY</string>
|
||||
<config-file target="*JPushConfig.plist" parent="Appkey">
|
||||
<string>$APP_KEY</string>
|
||||
</config-file>
|
||||
</platform>
|
||||
|
||||
@@ -81,8 +80,10 @@
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
|
||||
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
||||
<permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE" android:protectionLevel="signature" />
|
||||
<permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE"
|
||||
android:protectionLevel="signature" />
|
||||
</config-file>
|
||||
|
||||
<config-file target="AndroidManifest.xml" parent="/manifest/application">
|
||||
<!-- Required SDK核心功能-->
|
||||
<activity android:name="cn.jpush.android.ui.PushActivity"
|
||||
@@ -140,7 +141,9 @@
|
||||
|
||||
<!-- since 1.8.0 option 可选项。用于同一设备中不同应用的JPush服务相互拉起的功能。 -->
|
||||
<!-- 若不启用该功能可删除该组件,将不拉起其他应用也不能被其他应用拉起 -->
|
||||
<service android:name="cn.jpush.android.service.DaemonService" android:enabled="true" android:exported="true">
|
||||
<service android:name="cn.jpush.android.service.DaemonService"
|
||||
android:enabled="true"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="cn.jpush.android.intent.DaemonService" />
|
||||
<category android:name="$PACKAGE_NAME" />
|
||||
@@ -173,16 +176,16 @@
|
||||
<receiver android:name="cn.jpush.android.service.AlarmReceiver" />
|
||||
<!-- Required. Enable it you can get statistics data with channel -->
|
||||
<meta-data android:name="JPUSH_CHANNEL" android:value="developer-default" />
|
||||
<meta-data android:name="JPUSH_APPKEY" android:value="$API_KEY" />
|
||||
<meta-data android:name="JPUSH_APPKEY" android:value="$APP_KEY" />
|
||||
</config-file>
|
||||
|
||||
<source-file src="src/android/libs/jpush-android_v3.0.0.jar" target-dir="libs" />
|
||||
<source-file src="src/android/libs/jcore-android_v1.0.0.jar" target-dir="libs" />
|
||||
<source-file src="src/android/libs/armeabi/libjcore100.so" target-dir="libs/armeabi" />
|
||||
<source-file src="src/android/libs/armeabi-v7a/libjcore100.so" target-dir="libs/armeabi-v7a" />
|
||||
<source-file src="src/android/libs/arm64-v8a/libjcore100.so" target-dir="libs/arm64-v8a" />
|
||||
<source-file src="src/android/libs/x86/libjcore100.so" target-dir="libs/x86" />
|
||||
<source-file src="src/android/libs/x86_64/libjcore100.so" target-dir="libs/x86_64" />
|
||||
<source-file src="src/android/libs/jpush-android_v3.0.1.jar" target-dir="libs" />
|
||||
<source-file src="src/android/libs/jcore-android_v1.1.0.jar" target-dir="libs" />
|
||||
<source-file src="src/android/libs/armeabi/libjcore110.so" target-dir="libs/armeabi" />
|
||||
<source-file src="src/android/libs/armeabi-v7a/libjcore110.so" target-dir="libs/armeabi-v7a" />
|
||||
<source-file src="src/android/libs/arm64-v8a/libjcore110.so" target-dir="libs/arm64-v8a" />
|
||||
<source-file src="src/android/libs/x86/libjcore110.so" target-dir="libs/x86" />
|
||||
<source-file src="src/android/libs/x86_64/libjcore110.so" target-dir="libs/x86_64" />
|
||||
|
||||
<source-file src="src/android/MyReceiver.java" target-dir="src/cn/jpush/phonegap" />
|
||||
<source-file src="src/android/JPushPlugin.java" target-dir="src/cn/jpush/phonegap" />
|
||||
|
||||
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -3,9 +3,9 @@
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>Appkey</key>
|
||||
<string>1c29cb5814072b5b1f8ef829</string>
|
||||
<string></string>
|
||||
<key>Channel</key>
|
||||
<string>Subscription</string>
|
||||
<string>channel name</string>
|
||||
<key>IsProduction</key>
|
||||
<false/>
|
||||
<key>IsIDFA</key>
|
||||
@@ -31,15 +31,26 @@
|
||||
NSDictionary *_launchOptions;
|
||||
|
||||
-(void)applicationDidLaunch:(NSNotification *)notification{
|
||||
|
||||
if (notification) {
|
||||
if (notification.userInfo) {
|
||||
NSDictionary *userInfo1 = [notification.userInfo valueForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
|
||||
if (userInfo1.count > 0) {
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:JPushDocumentEvent_OpenNotification jsString:[userInfo1 toJsonString]];
|
||||
[NSTimer scheduledTimerWithTimeInterval:0.1 repeats:YES block:^(NSTimer * _Nonnull timer) {
|
||||
if (SharedJPushPlugin) {
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_OpenNotification jsString:[userInfo1 toJsonString]];
|
||||
[timer invalidate];
|
||||
}
|
||||
}];
|
||||
}
|
||||
NSDictionary *userInfo2 = [notification.userInfo valueForKey:UIApplicationLaunchOptionsLocalNotificationKey];
|
||||
if (userInfo2.count > 0) {
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:JPushDocumentEvent_StartLocalNotification jsString:[userInfo1 toJsonString]];
|
||||
[NSTimer scheduledTimerWithTimeInterval:0.1 repeats:YES block:^(NSTimer * _Nonnull timer) {
|
||||
if (SharedJPushPlugin) {
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_OpenNotification jsString:[userInfo2 toJsonString]];
|
||||
[timer invalidate];
|
||||
}
|
||||
}];
|
||||
}
|
||||
}
|
||||
[JPUSHService setDebugMode];
|
||||
@@ -91,7 +102,7 @@ NSDictionary *_launchOptions;
|
||||
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
|
||||
[JPUSHService handleRemoteNotification:userInfo];
|
||||
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:JPushDocumentEvent_ReceiveNotification jsString:[userInfo toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_ReceiveNotification jsString:[userInfo toJsonString]];
|
||||
}
|
||||
|
||||
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler{
|
||||
@@ -110,30 +121,23 @@ NSDictionary *_launchOptions;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:eventName jsString:[userInfo toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:eventName jsString:[userInfo toJsonString]];
|
||||
completionHandler(UIBackgroundFetchResultNewData);
|
||||
}
|
||||
|
||||
-(void)jpushNotificationCenter:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler{
|
||||
NSMutableDictionary *userInfo = [NSMutableDictionary dictionaryWithDictionary:notification.request.content.userInfo];
|
||||
|
||||
if ([SharedJPushPlugin respondsToSelector:@selector(jpushFireDocumentEvent:jsString:)]) {
|
||||
|
||||
}
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:JPushDocumentEvent_ReceiveNotification jsString:[userInfo toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_ReceiveNotification jsString:[userInfo toJsonString]];
|
||||
completionHandler(UNNotificationPresentationOptionBadge|UNNotificationPresentationOptionSound|UNNotificationPresentationOptionAlert);
|
||||
}
|
||||
|
||||
-(void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler{
|
||||
if ([SharedJPushPlugin respondsToSelector:@selector(jpushFireDocumentEvent:jsString:)]) {
|
||||
|
||||
}
|
||||
NSMutableDictionary *userInfo = [NSMutableDictionary dictionaryWithDictionary:response.notification.request.content.userInfo];
|
||||
@try {
|
||||
[userInfo setValue:[response valueForKey:@"userText"] forKey:@"userText"];
|
||||
} @catch (NSException *exception) { }
|
||||
[userInfo setValue:response.actionIdentifier forKey:@"actionIdentifier"];
|
||||
[SharedJPushPlugin jpushFireDocumentEvent:JPushDocumentEvent_OpenNotification jsString:[userInfo toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_OpenNotification jsString:[userInfo toJsonString]];
|
||||
completionHandler();
|
||||
}
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
|
||||
#define WEAK_SELF(weakSelf) __weak __typeof(&*self)weakSelf = self;
|
||||
|
||||
static NSString *const JPushConfig_FileName = @"PushConfig";
|
||||
static NSString *const JPushConfig_FileName = @"JPushConfig";
|
||||
static NSString *const JPushConfig_Appkey = @"Appkey";
|
||||
static NSString *const JPushConfig_Channel = @"Channel";
|
||||
static NSString *const JPushConfig_IsProduction = @"IsProduction";
|
||||
@@ -24,7 +24,7 @@ static NSString *const JPushConfig_Delay = @"Delay";
|
||||
|
||||
static NSString *const JPushDocumentEvent_ReceiveNotification = @"receiveNotification";
|
||||
static NSString *const JPushDocumentEvent_OpenNotification = @"openNotification";
|
||||
static NSString *const JPushDocumentEvent_BackgroundNotification = @"backgroundNotification";
|
||||
static NSString *const JPushDocumentEvent_BackgroundNotification = @"backgroundNotification";
|
||||
static NSString *const JPushDocumentEvent_SetTagsWithAlias = @"setTagsWithAlias";
|
||||
static NSString *const JPushDocumentEvent_ReceiveMessage = @"receiveMessage";
|
||||
static NSString *const JPushDocumentEvent_StartLocalNotification = @"startLocalNotification";
|
||||
|
||||
@@ -75,7 +75,7 @@
|
||||
|
||||
# pragma mark - private
|
||||
|
||||
-(void)jpushFireDocumentEvent:(NSString*)eventName jsString:(NSString*)jsString;
|
||||
+(void)fireDocumentEvent:(NSString*)eventName jsString:(NSString*)jsString;
|
||||
|
||||
+(void)setupJPushSDK:(NSDictionary*)userInfo;
|
||||
|
||||
|
||||
@@ -90,9 +90,9 @@
|
||||
object:nil];
|
||||
}
|
||||
|
||||
-(void)jpushFireDocumentEvent:(NSString*)eventName jsString:(NSString*)jsString{
|
||||
+(void)fireDocumentEvent:(NSString*)eventName jsString:(NSString*)jsString{
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
[self.commandDelegate evalJs:[NSString stringWithFormat:@"cordova.fireDocumentEvent('jpush.%@',%@)", eventName, jsString]];
|
||||
[SharedJPushPlugin.commandDelegate evalJs:[NSString stringWithFormat:@"cordova.fireDocumentEvent('jpush.%@',%@)", eventName, jsString]];
|
||||
});
|
||||
}
|
||||
|
||||
@@ -322,12 +322,12 @@
|
||||
@"tags" :tags == nil ? [NSNull null] : [tags allObjects],
|
||||
@"alias" :alias == nil ? [NSNull null] : alias
|
||||
};
|
||||
[self jpushFireDocumentEvent:JPushDocumentEvent_SetTagsWithAlias jsString:[dict toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_SetTagsWithAlias jsString:[dict toJsonString]];
|
||||
}
|
||||
|
||||
- (void)networkDidReceiveMessage:(NSNotification *)notification {
|
||||
if (notification && notification.userInfo) {
|
||||
[self jpushFireDocumentEvent:JPushDocumentEvent_ReceiveMessage jsString:[notification.userInfo toJsonString]];
|
||||
[JPushPlugin fireDocumentEvent:JPushDocumentEvent_ReceiveMessage jsString:[notification.userInfo toJsonString]];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
* | | | | / /\ \ | | | | \ \______| |
|
||||
* | | | | /_/ \_\ | | | | \_________|
|
||||
*
|
||||
* Copyright (c) 2011 ~ 2015 Shenzhen HXHG. All rights reserved.
|
||||
* Copyright (c) 2011 ~ 2017 Shenzhen HXHG. All rights reserved.
|
||||
*/
|
||||
|
||||
#define JPUSH_VERSION_NUMBER 3.0.0
|
||||
#define JPUSH_VERSION_NUMBER 3.0.1
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user