Compare commits

...

25 Commits

Author SHA1 Message Date
JoshLipan
bc12d3c606 Merge pull request #398 from jpush/dev
Dev
2019-03-22 16:32:04 +08:00
JoshLi
9b1bff2ce1 Release v3.6.4 2019-03-22 16:28:06 +08:00
JoshLi
3b5fc629dd Update Android SDK to v3.2.0 2019-03-22 16:27:31 +08:00
JoshLipan
fa4f3ac0d7 Merge pull request #397 from jpush/dev
Dev
2019-02-28 16:28:58 +08:00
JoshLi
3ad9a415e9 Release v3.6.3 2019-02-28 16:27:47 +08:00
JoshLi
d76d01c856 Set exported false for custom Receiver 2019-02-28 16:27:21 +08:00
HuminiOS
b7d4ba5111 Merge pull request #396 from jpush/dev
update readme
2019-02-25 10:13:55 +08:00
huangminlinux
7c326599aa update readme 2019-02-25 10:09:10 +08:00
HuminiOS
2adbba2943 Merge pull request #395 from jpush/dev
update readme
2019-02-24 22:26:35 +08:00
huangminlinux
5b22d798cb update readme 2019-02-24 22:25:01 +08:00
HuminiOS
eb624a7bb2 Merge pull request #394 from jpush/dev
Dev
2019-02-24 00:03:44 +08:00
huangminlinux
e29f00f77f delete file 2019-02-24 00:00:18 +08:00
huangminlinux
1ecb2b273a the adaption to ionic4 project and udpate ionic plugin to 2.0.0 version 2019-02-23 23:58:23 +08:00
huangminlinux
6767af7488 udpate jpush plugin to 3.6.2 2019-01-11 14:34:09 +08:00
huangminlinux
03eab0c59e update iOS SDK to 3.1.2 2019-01-11 14:31:56 +08:00
JoshLipan
23ae6ad342 Merge pull request #390 from jpush/dev
Dev
2018-12-28 17:32:40 +08:00
JoshLi
ccfffc9a69 Release v3.6.1 2018-12-28 17:28:12 +08:00
JoshLi
16c3c96844 Add API setGeofenceInterval for Android 2018-12-28 17:27:31 +08:00
JoshLipan
b2e818e88d Merge pull request #387 from jpush/dev
Dev
2018-12-20 16:27:34 +08:00
HuminiOS
30fc85fc8d Merge pull request #381 from jpush/dev
update readme add xcode10 fq
2018-11-14 14:35:16 +08:00
JoshLipan
8de93a3a07 Merge pull request #380 from jpush/dev
Dev
2018-11-13 16:48:32 +08:00
HuminiOS
387eaa1aff Merge pull request #376 from jpush/dev
update to ios sdk to 3.1.1
2018-10-26 10:41:16 +08:00
HuminiOS
0c8a6d25a6 Merge pull request #374 from jpush/dev
Dev
2018-10-23 18:17:22 +08:00
JoshLipan
894c7d7ac1 Merge pull request #373 from jpush/dev
Dev
2018-10-18 14:33:58 +08:00
huangminlinux
82d68c3562 Merge pull request #364 from jpush/dev
Dev
2018-07-31 17:13:54 +08:00
20 changed files with 474 additions and 397 deletions

View File

@@ -69,12 +69,18 @@
```shell
npm install --save @jiguang-ionic/jpush
# npm install --save @jiguang-ionic/jpush@2.0.0 for ionic4+
```
然后在 *app.module.ts* 中增加:
```js
// @jiguang-ionic/jpush@1.0.0+
import { JPush } from '@jiguang-ionic/jpush';
// @jiguang-ionic/jpush@2.0.0+
import { JPush } from '@jiguang-ionic/jpush/ngx';
...
providers: [
...

View File

@@ -7,7 +7,7 @@
- [设置保留最近通知条数](#设置保留最近通知条数)
- [本地通知](#本地通知)
- [获取推送连接状态](#获取推送连接状态)
- [地理围栏](#地理围栏)
## 获取集成日志(同时适用于 iOS
@@ -215,4 +215,34 @@ window.JPush.getConnectionState(function (result) {
// 断开状态
}
})
```
```
## 地理围栏
### API - setGeofenceInterval
设置地理围栏监控周期最小3分钟最大1天。默认为15分钟当距离地理围栏边界小于1000米周期自动调整为3分钟。设置成功后一直使用设置周期不会进行调整。
#### 接口定义
```js
window.JPush.setGeofenceInterval(interval)
```
#### 参数说明
- interval: 监控周期,单位是毫秒。
### API - setMaxGeofenceNumber
设置最多允许保存的地理围栏数量超过最大限制后如果继续创建先删除最早创建的地理围栏。默认数量为10个允许设置最小1个最大100个。
#### 接口定义
```js
window.JPush.setMaxGeofenceNumber(maxNumber)
```
#### 参数说明
- maxNumber: 最多允许保存的地理围栏个数

View File

@@ -23,11 +23,17 @@ export interface AliasOptions {
@Injectable()
export class JPush extends IonicNativePlugin {
@Cordova()
init(): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS', 'Android']
})
init(): void { }
@Cordova()
setDebugMode(enable: boolean): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS', 'Android']
})
setDebugMode(enable: boolean): void { }
@Cordova()
getRegistrationID(): Promise<any> { return; }
@@ -91,41 +97,74 @@ export class JPush extends IonicNativePlugin {
// iOS API - start
@Cordova()
setBadge(badge: number): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
setBadge(badge: number): void { }
@Cordova()
resetBadge(): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
resetBadge(): void { }
@Cordova()
setApplicationIconBadgeNumber(badge: number): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
setApplicationIconBadgeNumber(badge: number): void { }
@Cordova()
getApplicationIconBadgeNumber(): Promise<any> { return; }
@Cordova()
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): void { }
@Cordova()
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): void { }
@Cordova()
addDismissActions(actions: Array<object>, categoryId: string): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
addDismissActions(actions: Array<object>, categoryId: string): void { }
@Cordova()
addNotificationActions(actions: Array<object>, categoryId: string): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
addNotificationActions(actions: Array<object>, categoryId: string): void { }
@Cordova()
setLocation(latitude: number, longitude: number): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
setLocation(latitude: number, longitude: number): void { }
@Cordova()
startLogPageView(pageName: string): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
startLogPageView(pageName: string): void { return; }
@Cordova()
stopLogPageView(pageName: string): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
stopLogPageView(pageName: string): void { return; }
@Cordova()
beginLogPageView(pageName: string, duration: number): Promise<any> { return; }
@Cordova({
sync: true,
platforms: ['iOS']
})
beginLogPageView(pageName: string, duration: number): void { return; }
// iOS API - end

View File

@@ -7,9 +7,37 @@ export interface AliasOptions {
sequence: number;
alias?: string;
}
export declare class JPush extends IonicNativePlugin {
init(): Promise<any>;
setDebugMode(enable: boolean): Promise<any>;
/**
* @name jpush
* @description
* This plugin does something
*
* @usage
* ```typescript
* import { jpush } from '@ionic-native/jpush';
*
*
* constructor(private jpush: jpush) { }
*
* ...
*
*
* this.jpush.functionName('Hello', 123)
* .then((res: any) => console.log(res))
* .catch((error: any) => console.error(error));
*
* ```
*/
export declare class JPushOriginal extends IonicNativePlugin {
/**
* This function does something
* @param arg1 {string} Some param to configure something
* @param arg2 {number} Another param to configure something
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
functionName(arg1: string, arg2: number): Promise<any>;
init(): void;
setDebugMode(enable: boolean): void;
getRegistrationID(): Promise<any>;
stopPush(): Promise<any>;
resumePush(): Promise<any>;
@@ -40,18 +68,18 @@ export declare class JPush extends IonicNativePlugin {
*/
getUserNotificationSettings(): Promise<any>;
clearLocalNotifications(): Promise<any>;
setBadge(badge: number): Promise<any>;
resetBadge(): Promise<any>;
setApplicationIconBadgeNumber(badge: number): Promise<any>;
setBadge(badge: number): void;
resetBadge(): void;
setApplicationIconBadgeNumber(badge: number): void;
getApplicationIconBadgeNumber(): Promise<any>;
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): Promise<any>;
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): Promise<any>;
addDismissActions(actions: Array<object>, categoryId: string): Promise<any>;
addNotificationActions(actions: Array<object>, categoryId: string): Promise<any>;
setLocation(latitude: number, longitude: number): Promise<any>;
startLogPageView(pageName: string): Promise<any>;
stopLogPageView(pageName: string): Promise<any>;
beginLogPageView(pageName: string, duration: number): Promise<any>;
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): void;
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): void;
addDismissActions(actions: Array<object>, categoryId: string): void;
addNotificationActions(actions: Array<object>, categoryId: string): void;
setLocation(latitude: number, longitude: number): void;
startLogPageView(pageName: string): void;
stopLogPageView(pageName: string): void;
beginLogPageView(pageName: string, duration: number): void;
getConnectionState(): Promise<any>;
setBasicPushNotificationBuilder(): Promise<any>;
setCustomPushNotificationBuilder(): Promise<any>;
@@ -65,3 +93,5 @@ export declare class JPush extends IonicNativePlugin {
setSilenceTime(startHour: number, startMinute: number, endHour: number, endMinute: number): Promise<any>;
setPushTime(weekdays: Array<string>, startHour: number, endHour: number): Promise<any>;
}
export declare const JPush: JPushOriginal;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

95
ionic/jpush/ngx/index.d.ts vendored Normal file
View File

@@ -0,0 +1,95 @@
import { IonicNativePlugin } from '@ionic-native/core';
export interface TagOptions {
sequence: number;
tags?: Array<string>;
}
export interface AliasOptions {
sequence: number;
alias?: string;
}
/**
* @name jpush
* @description
* This plugin does something
*
* @usage
* ```typescript
* import { jpush } from '@ionic-native/jpush';
*
*
* constructor(private jpush: jpush) { }
*
* ...
*
*
* this.jpush.functionName('Hello', 123)
* .then((res: any) => console.log(res))
* .catch((error: any) => console.error(error));
*
* ```
*/
export declare class JPush extends IonicNativePlugin {
/**
* This function does something
* @param arg1 {string} Some param to configure something
* @param arg2 {number} Another param to configure something
* @return {Promise<any>} Returns a promise that resolves when something happens
*/
functionName(arg1: string, arg2: number): Promise<any>;
init(): void;
setDebugMode(enable: boolean): void;
getRegistrationID(): Promise<any>;
stopPush(): Promise<any>;
resumePush(): Promise<any>;
isPushStopped(): Promise<any>;
setTags(params: TagOptions): Promise<any>;
addTags(params: TagOptions): Promise<any>;
deleteTags(params: TagOptions): Promise<any>;
cleanTags(params: TagOptions): Promise<any>;
getAllTags(params: TagOptions): Promise<any>;
/**
* @param params { sequence: number, tag: string }
*/
checkTagBindState(params: object): Promise<any>;
setAlias(params: AliasOptions): Promise<any>;
deleteAlias(params: AliasOptions): Promise<any>;
getAlias(params: AliasOptions): Promise<any>;
/**
* Determinate whether the application notification has been opened.
*
* iOS: 0: closed; >1: opened.
* UIRemoteNotificationTypeNone = 0,
* UIRemoteNotificationTypeBadge = 1 << 0,
* UIRemoteNotificationTypeSound = 1 << 1,
* UIRemoteNotificationTypeAlert = 1 << 2,
* UIRemoteNotificationTypeNewsstandContentAvailability = 1 << 3
*
* Android: 0: closed; 1: opened.
*/
getUserNotificationSettings(): Promise<any>;
clearLocalNotifications(): Promise<any>;
setBadge(badge: number): void;
resetBadge(): void;
setApplicationIconBadgeNumber(badge: number): void;
getApplicationIconBadgeNumber(): Promise<any>;
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): void;
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): void;
addDismissActions(actions: Array<object>, categoryId: string): void;
addNotificationActions(actions: Array<object>, categoryId: string): void;
setLocation(latitude: number, longitude: number): void;
startLogPageView(pageName: string): void;
stopLogPageView(pageName: string): void;
beginLogPageView(pageName: string, duration: number): void;
getConnectionState(): Promise<any>;
setBasicPushNotificationBuilder(): Promise<any>;
setCustomPushNotificationBuilder(): Promise<any>;
clearAllNotification(): Promise<any>;
clearNotificationById(id: number): Promise<any>;
setLatestNotificationNum(num: number): Promise<any>;
addLocalNotification(builderId: number, content: string, title: string, notificationId: number, broadcastTime: number, extras?: string): Promise<any>;
removeLocalNotification(notificationId: number): Promise<any>;
reportNotificationOpened(msgId: number): Promise<any>;
requestPermission(): Promise<any>;
setSilenceTime(startHour: number, startMinute: number, endHour: number, endMinute: number): Promise<any>;
setPushTime(weekdays: Array<string>, startHour: number, endHour: number): Promise<any>;
}

95
ionic/jpush/ngx/index.js Normal file

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
[{"__symbolic":"module","version":4,"metadata":{"TagOptions":{"__symbolic":"interface"},"AliasOptions":{"__symbolic":"interface"},"JPush":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"@ionic-native/core","name":"IonicNativePlugin","line":67,"character":27},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":64,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"functionName":[{"__symbolic":"method"}],"init":[{"__symbolic":"method"}],"setDebugMode":[{"__symbolic":"method"}],"getRegistrationID":[{"__symbolic":"method"}],"stopPush":[{"__symbolic":"method"}],"resumePush":[{"__symbolic":"method"}],"isPushStopped":[{"__symbolic":"method"}],"setTags":[{"__symbolic":"method"}],"addTags":[{"__symbolic":"method"}],"deleteTags":[{"__symbolic":"method"}],"cleanTags":[{"__symbolic":"method"}],"getAllTags":[{"__symbolic":"method"}],"checkTagBindState":[{"__symbolic":"method"}],"setAlias":[{"__symbolic":"method"}],"deleteAlias":[{"__symbolic":"method"}],"getAlias":[{"__symbolic":"method"}],"getUserNotificationSettings":[{"__symbolic":"method"}],"clearLocalNotifications":[{"__symbolic":"method"}],"setBadge":[{"__symbolic":"method"}],"resetBadge":[{"__symbolic":"method"}],"setApplicationIconBadgeNumber":[{"__symbolic":"method"}],"getApplicationIconBadgeNumber":[{"__symbolic":"method"}],"addLocalNotificationForIOS":[{"__symbolic":"method"}],"deleteLocalNotificationWithIdentifierKeyInIOS":[{"__symbolic":"method"}],"addDismissActions":[{"__symbolic":"method"}],"addNotificationActions":[{"__symbolic":"method"}],"setLocation":[{"__symbolic":"method"}],"startLogPageView":[{"__symbolic":"method"}],"stopLogPageView":[{"__symbolic":"method"}],"beginLogPageView":[{"__symbolic":"method"}],"getConnectionState":[{"__symbolic":"method"}],"setBasicPushNotificationBuilder":[{"__symbolic":"method"}],"setCustomPushNotificationBuilder":[{"__symbolic":"method"}],"clearAllNotification":[{"__symbolic":"method"}],"clearNotificationById":[{"__symbolic":"method"}],"setLatestNotificationNum":[{"__symbolic":"method"}],"addLocalNotification":[{"__symbolic":"method"}],"removeLocalNotification":[{"__symbolic":"method"}],"reportNotificationOpened":[{"__symbolic":"method"}],"requestPermission":[{"__symbolic":"method"}],"setSilenceTime":[{"__symbolic":"method"}],"setPushTime":[{"__symbolic":"method"}]}}}}]

View File

@@ -1,15 +1,15 @@
{
"name": "@jiguang-ionic/jpush",
"version": "1.0.2",
"version": "2.0.0",
"description": "JPush support for ionic-native",
"module": "index.js",
"typings": "index.d.ts",
"author": "hevin",
"license": "MIT",
"peerDependencies": {
"@ionic-native/core": "^4.2.0",
"@ionic-native/core": "^5.1.0",
"@angular/core": "*",
"rxjs": "^5.0.1"
"rxjs": "^6.3.0"
},
"repository": {
"type": "git",

View File

@@ -1,6 +1,6 @@
{
"name": "jpush-phonegap-plugin",
"version": "3.6.0",
"version": "3.6.4",
"description": "JPush for cordova plugin",
"cordova": {
"id": "jpush-phonegap-plugin",
@@ -23,7 +23,7 @@
],
"devDependencies": {
"cordova-plugin-device": "*",
"cordova-plugin-jcore": ">=1.2.0"
"cordova-plugin-jcore": ">=1.2.8"
},
"author": "JiGuang",
"license": "MIT",

View File

@@ -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.6.0">
version="3.6.4">
<name>JPush</name>
<description>JPush for cordova plugin</description>
@@ -49,7 +49,7 @@
<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.1.1.a" framework="true" />
<source-file src="src/ios/lib/jpush-ios-3.1.2.a" framework="true" />
<resource-file src="src/ios/JPushConfig.plist" />
<framework src="CFNetwork.framework" weak="true" />
@@ -190,7 +190,9 @@
<!-- Required SDK核心功能-->
<receiver android:name="cn.jpush.android.service.AlarmReceiver" />
<receiver android:name="cn.jiguang.cordova.push.JPushEventReceiver">
<receiver android:name="cn.jiguang.cordova.push.JPushEventReceiver"
android:enabled="true"
android:exported="false">
<intent-filter>
<action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" />
<category android:name="$PACKAGE_NAME" />
@@ -200,7 +202,8 @@
<!-- 插件通知广播接收器 -->
<receiver
android:name="cn.jiguang.cordova.push.JPushReceiver"
android:enabled="true">
android:enabled="true"
android:exported="false">
<intent-filter>
<action android:name="cn.jpush.android.intent.REGISTRATION" />
<action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" />
@@ -217,7 +220,7 @@
<meta-data android:name="JPUSH_APPKEY" android:value="$APP_KEY" />
</config-file>
<lib-file src="src/android/libs/jpush-android-3.1.8.jar" />
<lib-file src="src/android/libs/jpush-android-3.2.0.jar" />
<source-file src="src/android/JPushReceiver.java" target-dir="src/cn/jiguang/cordova/push" />
<source-file src="src/android/JPushPlugin.java" target-dir="src/cn/jiguang/cordova/push" />

View File

@@ -627,6 +627,16 @@ public class JPushPlugin extends CordovaPlugin {
}
}
void setGeofenceInterval(JSONArray data, CallbackContext callbackContext) throws JSONException {
long interval = data.getLong(0);
JPushInterface.setGeofenceInterval(this.cordova.getActivity(), interval);
}
void setMaxGeofenceNumber(JSONArray data, CallbackContext callbackContext) throws JSONException {
int maxNumber = data.getInt(0);
JPushInterface.setMaxGeofenceNumber(mContext, maxNumber);
}
private boolean isValidHour(int hour) {
return !(hour < 0 || hour > 23);
}
@@ -706,4 +716,5 @@ public class JPushPlugin extends CordovaPlugin {
return false;
}
}

View File

@@ -14,7 +14,7 @@ import cn.jpush.android.api.JPushInterface;
public class JPushReceiver extends BroadcastReceiver {
private static final List<String> IGNORED_EXTRAS_KEYS = Arrays.asList("cn.jpush.android.TITLE",
"cn.jpush.android.MESSAGE", "cn.jpush.android.APPKEY", "cn.jpush.android.NOTIFICATION_CONTENT_TITLE");
"cn.jpush.android.MESSAGE", "cn.jpush.android.APPKEY", "cn.jpush.android.NOTIFICATION_CONTENT_TITLE","key_show_entity","platform");
@Override
public void onReceive(Context context, Intent intent) {

Binary file not shown.

View File

@@ -9,7 +9,7 @@
* Copyright (c) 2011 ~ 2017 Shenzhen HXHG. All rights reserved.
*/
#define JPUSH_VERSION_NUMBER 3.1.1
#define JPUSH_VERSION_NUMBER 3.1.2
#import <Foundation/Foundation.h>
@@ -21,6 +21,7 @@
@class UNNotificationRequest;
@class UNNotification;
@protocol JPUSHRegisterDelegate;
@protocol JPUSHGeofenceDelegate;
typedef void (^JPUSHTagsOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq);
typedef void (^JPUSHTagValidOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq, BOOL isBind);
@@ -370,6 +371,19 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
*/
+ (void)setLocation:(CLLocation *)location;
/**
设置地理围栏的最大个数
默认值为 10 iOS系统默认地理围栏最大个数为20
@param count 个数 count
*/
+ (void)setGeofenecMaxCount:(NSInteger)count;
/**
注册地理围栏的代理
@param delegate 代理
@param launchOptions app启动完成是收到的字段参数
*/
+ (void)registerLbsGeofenceDelegate:(id<JPUSHGeofenceDelegate>)delegate withLaunchOptions:(NSDictionary *)launchOptions;
///----------------------------------------------------
/// @name Local Notification 本地通知
@@ -636,3 +650,25 @@ callbackSelector:(SEL)cbSelector
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(nullable UNNotification *)notification NS_AVAILABLE_IOS(12.0);
@end
@protocol JPUSHGeofenceDelegate <NSObject>
/**
进入地理围栏区域
@param geofenceId 地理围栏id
@param userInfo 地理围栏触发时返回的信息
@param error 错误信息
*/
- (void)jpushGeofenceIdentifer:(NSString * _Nonnull)geofenceId didEnterRegion:(NSDictionary * _Nullable)userInfo error:(NSError * _Nullable)error;
/**
离开地理围栏区域
@param geofenceId 地理围栏id
@param userInfo 地理围栏触发时返回的信息
@param error 错误信息
*/
- (void)jpushGeofenceIdentifer:(NSString * _Nonnull)geofenceId didExitRegion:(NSDictionary * _Nullable)userInfo error:(NSError * _Nullable)error;
@end

View File

@@ -463,6 +463,18 @@ JPushPlugin.prototype.setPushTime = function(weekdays, startHour, endHour) {
}
};
JPushPlugin.prototype.setGeofenceInterval = function(interval) {
if (device.platform === "Android") {
this.callNative("setGeofenceInterval", [interval], null);
}
};
JPushPlugin.prototype.setMaxGeofenceNumber = function(maxNumber) {
if (device.platform === "Android") {
this.callNative("setMaxGeofenceNumber", [maxNumber], null);
}
};
if (!window.plugins) {
window.plugins = {};
}