统一 API,规范代码格式

- setDebugMode
- clearLocalNotifications
This commit is contained in:
Hevin Lau
2017-01-17 22:59:13 +08:00
parent 7b65a1f469
commit 42790c71f3
4 changed files with 171 additions and 159 deletions
+149 -147
View File
@@ -7,51 +7,64 @@ JPushPlugin.prototype.openNotification = {}
JPushPlugin.prototype.receiveNotification = {}
JPushPlugin.prototype.isPlatformIOS = function () {
var isPlatformIOS = device.platform == 'iPhone' ||
var isPlatformIOS = (device.platform == 'iPhone' ||
device.platform == 'iPad' ||
device.platform == 'iPod touch' ||
device.platform == 'iOS'
device.platform == 'iOS')
return isPlatformIOS
}
JPushPlugin.prototype.error_callback = function (msg) {
JPushPlugin.prototype.errorCallback = function (msg) {
console.log('Javascript Callback Error: ' + msg)
}
JPushPlugin.prototype.call_native = function (name, args, callback) {
ret = cordova.exec(callback, this.error_callback, 'JPushPlugin', name, args)
return ret
JPushPlugin.prototype.callNative = function (name, args, successCallback) {
cordova.exec(successCallback, this.errorCallback, 'JPushPlugin', name, args)
}
// public methods
// Common methods
JPushPlugin.prototype.init = function () {
if (this.isPlatformIOS()) {
this.call_native('initial', [], null)
this.callNative('initial', [], null)
} else {
this.call_native('init', [], null)
this.callNative('init', [], null)
}
}
JPushPlugin.prototype.getRegistrationID = function (callback) {
this.call_native('getRegistrationID', [], callback)
JPushPlugin.prototype.setDebugMode = function (mode) {
if (device.platform === 'Android') {
this.callNative('setDebugMode', [mode], null)
} else {
if (mode === true) {
this.setDebugModeFromIos()
} else {
this.setLogOFF()
}
}
}
JPushPlugin.prototype.getRegistrationID = function (successCallback) {
this.callNative('getRegistrationID', [], successCallback)
}
JPushPlugin.prototype.stopPush = function () {
this.call_native('stopPush', [], null)
this.callNative('stopPush', [], null)
}
JPushPlugin.prototype.resumePush = function () {
this.call_native('resumePush', [], null)
this.callNative('resumePush', [], null)
}
JPushPlugin.prototype.isPushStopped = function (callback) {
this.call_native('isPushStopped', [], callback)
JPushPlugin.prototype.isPushStopped = function (successCallback) {
this.callNative('isPushStopped', [], successCallback)
}
// iOS methods
JPushPlugin.prototype.startJPushSDK = function () {
this.call_native('startJPushSDK', [] , null)
JPushPlugin.prototype.clearLocalNotifications = function () {
if (device.platform === 'Android') {
this.callNative('clearLocalNotifications', [], null)
} else {
this.clearAllLocalNotifications()
}
}
JPushPlugin.prototype.setTagsWithAlias = function (tags, alias) {
@@ -65,100 +78,15 @@ JPushPlugin.prototype.setTagsWithAlias = function (tags, alias) {
}
var arrayTagWithAlias = [tags]
arrayTagWithAlias.unshift(alias)
this.call_native('setTagsWithAlias', arrayTagWithAlias, null)
this.callNative('setTagsWithAlias', arrayTagWithAlias, null)
}
JPushPlugin.prototype.setTags = function (tags) {
this.call_native('setTags', tags, null)
this.callNative('setTags', tags, null)
}
JPushPlugin.prototype.setAlias = function (alias) {
this.call_native('setAlias', [alias], null)
}
JPushPlugin.prototype.setBadge = function (value) {
if (this.isPlatformIOS()) {
this.call_native('setBadge', [value], null)
}
}
JPushPlugin.prototype.resetBadge = function () {
if (this.isPlatformIOS()) {
this.call_native('resetBadge', [], null)
}
}
JPushPlugin.prototype.setDebugModeFromIos = function () {
if (this.isPlatformIOS()) {
this.call_native('setDebugModeFromIos', [], null)
}
}
JPushPlugin.prototype.setLogOFF = function () {
if (this.isPlatformIOS()) {
this.call_native('setLogOFF', [], null)
}
}
JPushPlugin.prototype.setCrashLogON = function () {
if (this.isPlatformIOS()) {
this.call_native('crashLogON', [], null)
}
}
JPushPlugin.prototype.addLocalNotificationForIOS = function (delayTime, content,
badge, notificationID, extras) {
if (this.isPlatformIOS()) {
this.call_native('setLocalNotification', [delayTime, content, badge, notificationID, extras], null)
}
}
JPushPlugin.prototype.deleteLocalNotificationWithIdentifierKeyInIOS = function (identifierKey) {
if (this.isPlatformIOS()) {
this.call_native('deleteLocalNotificationWithIdentifierKey', [identifierKey], null)
}
}
JPushPlugin.prototype.clearAllLocalNotifications = function () {
if (this.isPlatformIOS()) {
this.call_native('clearAllLocalNotifications', [], null)
}
}
JPushPlugin.prototype.setLocation = function (latitude, longitude) {
if (this.isPlatformIOS()) {
this.call_native('setLocation', [latitude, longitude], null)
}
}
JPushPlugin.prototype.startLogPageView = function (pageName) {
if (this.isPlatformIOS()) {
this.call_native('startLogPageView', [pageName], null)
}
}
JPushPlugin.prototype.stopLogPageView = function (pageName) {
if (this.isPlatformIOS()) {
this.call_native('stopLogPageView', [pageName], null)
}
}
JPushPlugin.prototype.beginLogPageView = function (pageName, duration) {
if (this.isPlatformIOS()) {
this.call_native('beginLogPageView', [pageName, duration], null)
}
}
JPushPlugin.prototype.setApplicationIconBadgeNumber = function (badge) {
if (this.isPlatformIOS()) {
this.call_native('setApplicationIconBadgeNumber', [badge], null)
}
}
JPushPlugin.prototype.getApplicationIconBadgeNumber = function (callback) {
if (this.isPlatformIOS()) {
this.call_native('getApplicationIconBadgeNumber', [], callback)
}
this.callNative('setAlias', [alias], null)
}
// 判断系统设置中是否对本应用启用通知。
@@ -169,38 +97,123 @@ JPushPlugin.prototype.getApplicationIconBadgeNumber = function (callback) {
// UIRemoteNotificationTypeAlert = 1 << 2,
// UIRemoteNotificationTypeNewsstandContentAvailability = 1 << 3,
// Android: 返回值 1 代表通知启用、0: 通知关闭。
JPushPlugin.prototype.getUserNotificationSettings = function (callback) {
JPushPlugin.prototype.getUserNotificationSettings = function (successCallback) {
if (this.isPlatformIOS()) {
this.call_native('getUserNotificationSettings', [], callback)
this.callNative('getUserNotificationSettings', [], successCallback)
} else if (device.platform == 'Android') {
this.call_native('areNotificationEnabled', [], callback)
this.callNative('areNotificationEnabled', [], successCallback)
}
}
// iOS methods
JPushPlugin.prototype.startJPushSDK = function () {
this.callNative('startJPushSDK', [] , null)
}
JPushPlugin.prototype.setBadge = function (value) {
if (this.isPlatformIOS()) {
this.callNative('setBadge', [value], null)
}
}
JPushPlugin.prototype.resetBadge = function () {
if (this.isPlatformIOS()) {
this.callNative('resetBadge', [], null)
}
}
JPushPlugin.prototype.setDebugModeFromIos = function () {
if (this.isPlatformIOS()) {
this.callNative('setDebugModeFromIos', [], null)
}
}
JPushPlugin.prototype.setLogOFF = function () {
if (this.isPlatformIOS()) {
this.callNative('setLogOFF', [], null)
}
}
JPushPlugin.prototype.setCrashLogON = function () {
if (this.isPlatformIOS()) {
this.callNative('crashLogON', [], null)
}
}
JPushPlugin.prototype.addLocalNotificationForIOS = function (delayTime, content,
badge, notificationID, extras) {
if (this.isPlatformIOS()) {
this.callNative('setLocalNotification', [delayTime, content, badge, notificationID, extras], null)
}
}
JPushPlugin.prototype.deleteLocalNotificationWithIdentifierKeyInIOS = function (identifierKey) {
if (this.isPlatformIOS()) {
this.callNative('deleteLocalNotificationWithIdentifierKey', [identifierKey], null)
}
}
JPushPlugin.prototype.clearAllLocalNotifications = function () {
if (this.isPlatformIOS()) {
this.callNative('clearAllLocalNotifications', [], null)
}
}
JPushPlugin.prototype.setLocation = function (latitude, longitude) {
if (this.isPlatformIOS()) {
this.callNative('setLocation', [latitude, longitude], null)
}
}
JPushPlugin.prototype.startLogPageView = function (pageName) {
if (this.isPlatformIOS()) {
this.callNative('startLogPageView', [pageName], null)
}
}
JPushPlugin.prototype.stopLogPageView = function (pageName) {
if (this.isPlatformIOS()) {
this.callNative('stopLogPageView', [pageName], null)
}
}
JPushPlugin.prototype.beginLogPageView = function (pageName, duration) {
if (this.isPlatformIOS()) {
this.callNative('beginLogPageView', [pageName, duration], null)
}
}
JPushPlugin.prototype.setApplicationIconBadgeNumber = function (badge) {
if (this.isPlatformIOS()) {
this.callNative('setApplicationIconBadgeNumber', [badge], null)
}
}
JPushPlugin.prototype.getApplicationIconBadgeNumber = function (callback) {
if (this.isPlatformIOS()) {
this.callNative('getApplicationIconBadgeNumber', [], callback)
}
}
JPushPlugin.prototype.addDismissActions = function (actions, categoryId) {
this.call_native('addDismissActions', [actions, categoryId])
this.callNative('addDismissActions', [actions, categoryId])
}
JPushPlugin.prototype.addNotificationActions = function (actions, categoryId) {
this.call_native('addNotificationActions', [actions, categoryId])
this.callNative('addNotificationActions', [actions, categoryId])
}
// Android methods
JPushPlugin.prototype.setDebugMode = function (mode) {
if (device.platform == 'Android') {
this.call_native('setDebugMode', [mode], null)
}
}
JPushPlugin.prototype.setBasicPushNotificationBuilder = function () {
if (device.platform == 'Android') {
this.call_native('setBasicPushNotificationBuilder', [], null)
this.callNative('setBasicPushNotificationBuilder', [], null)
}
}
JPushPlugin.prototype.setCustomPushNotificationBuilder = function () {
if (device.platform == 'Android') {
this.call_native('setCustomPushNotificationBuilder', [], null)
this.callNative('setCustomPushNotificationBuilder', [], null)
}
}
@@ -226,51 +239,40 @@ JPushPlugin.prototype.receiveNotificationInAndroidCallback = function (data) {
}
JPushPlugin.prototype.clearAllNotification = function () {
if (device.platform == 'Android') {
this.call_native('clearAllNotification', [], null)
if (device.platform === 'Android') {
this.callNative('clearAllNotification', [], null)
}
}
JPushPlugin.prototype.clearNotificationById = function (notificationId) {
if (device.platform == 'Android') {
this.call_native('clearNotificationById', [notificationId], null)
JPushPlugin.prototype.clearNotificationById = function (id) {
if (device.platform === 'Android') {
this.callNative('clearNotificationById', [id], null)
}
}
JPushPlugin.prototype.setLatestNotificationNum = function (num) {
if (device.platform == 'Android') {
this.call_native('setLatestNotificationNum', [num], null)
}
}
JPushPlugin.prototype.setDebugMode = function (mode) {
if (device.platform == 'Android') {
this.call_native('setDebugMode', [mode], null)
this.callNative('setLatestNotificationNum', [num], null)
}
}
JPushPlugin.prototype.addLocalNotification = function (builderId, content, title,
notificationID, broadcastTime, extras) {
if (device.platform == 'Android') {
this.call_native('addLocalNotification', [builderId, content, title, notificationID, broadcastTime, extras], null)
this.callNative('addLocalNotification',
[builderId, content, title, notificationID, broadcastTime, extras], null)
}
}
JPushPlugin.prototype.removeLocalNotification = function (notificationID) {
if (device.platform == 'Android') {
this.call_native('removeLocalNotification', [notificationID], null)
}
}
JPushPlugin.prototype.clearLocalNotifications = function () {
if (device.platform == 'Android') {
this.call_native('clearLocalNotifications', [], null)
if (device.platform === 'Android') {
this.callNative('removeLocalNotification', [notificationID], null)
}
}
JPushPlugin.prototype.reportNotificationOpened = function (msgID) {
if (device.platform == 'Android') {
this.call_native('reportNotificationOpened', [msgID], null)
if (device.platform === 'Android') {
this.callNative('reportNotificationOpened', [msgID], null)
}
}
@@ -280,7 +282,7 @@ JPushPlugin.prototype.reportNotificationOpened = function (msgID) {
*/
JPushPlugin.prototype.setStatisticsOpen = function (mode) {
if (device.platform == 'Android') {
this.call_native('setStatisticsOpen', [mode], null)
this.callNative('setStatisticsOpen', [mode], null)
}
}
@@ -290,19 +292,19 @@ JPushPlugin.prototype.setStatisticsOpen = function (mode) {
*/
JPushPlugin.prototype.requestPermission = function () {
if (device.platform == 'Android') {
this.call_native('requestPermission', [], null)
this.callNative('requestPermission', [], null)
}
}
JPushPlugin.prototype.setSilenceTime = function (startHour, startMinute, endHour, endMinute) {
if (device.platform == 'Android') {
this.call_native('setSilenceTime', [startHour, startMinute, endHour, endMinute], null)
this.callNative('setSilenceTime', [startHour, startMinute, endHour, endMinute], null)
}
}
JPushPlugin.prototype.setPushTime = function (weekdays, startHour, endHour) {
if (device.platform == 'Android') {
this.call_native('setPushTime', [weekdays, startHour, endHour], null)
this.callNative('setPushTime', [weekdays, startHour, endHour], null)
}
}