mirror of
https://github.com/jpush/jpush-phonegap-plugin.git
synced 2026-04-19 00:03:45 +08:00
Compare commits
49 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 10b29611c5 | |||
| 03429474c0 | |||
| e56a05c64b | |||
| a50bafcf3e | |||
| 60176c1ea6 | |||
| c929496721 | |||
| bdd9a8beea | |||
| 511eee622f | |||
| 2f4669471f | |||
| 85e3a23f88 | |||
| 206f2ac89e | |||
| 57b9364279 | |||
| e0db803818 | |||
| e140dc3b77 | |||
| a26822b894 | |||
| 7dd7a4a86c | |||
| b7a2a74d88 | |||
| 2f8234c29f | |||
| a9b5af06a5 | |||
| ddfb952bcf | |||
| 74fea46b1c | |||
| b2f79c6234 | |||
| 9e23995555 | |||
| a7455240a1 | |||
| 07466a8718 | |||
| 2b5d59e32e | |||
| e4b70a561a | |||
| da8c6c29e9 | |||
| 2ebacad254 | |||
| 9751b15bf0 | |||
| b5fd5aa51a | |||
| ee3e6b9e75 | |||
| 72407b0b9c | |||
| 2a427c70f9 | |||
| bc12d3c606 | |||
| 9b1bff2ce1 | |||
| 3b5fc629dd | |||
| fa4f3ac0d7 | |||
| 3ad9a415e9 | |||
| d76d01c856 | |||
| b7d4ba5111 | |||
| 7c326599aa | |||
| 2adbba2943 | |||
| 5b22d798cb | |||
| eb624a7bb2 | |||
| e29f00f77f | |||
| 1ecb2b273a | |||
| 6767af7488 | |||
| 03eab0c59e |
+1
-1
@@ -1,5 +1,5 @@
|
|||||||
# Created by https://www.gitignore.io/api/macos,apachecordova
|
# Created by https://www.gitignore.io/api/macos,apachecordova
|
||||||
|
.idea
|
||||||
### ApacheCordova ###
|
### ApacheCordova ###
|
||||||
# Apache Cordova generated files and directories
|
# Apache Cordova generated files and directories
|
||||||
bin/*
|
bin/*
|
||||||
|
|||||||
@@ -68,13 +68,19 @@
|
|||||||
如果使用了 Ionic,可以再安装 @jiguang-ionic/jpush 包,适配 ionic-native:
|
如果使用了 Ionic,可以再安装 @jiguang-ionic/jpush 包,适配 ionic-native:
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
npm install --save @jiguang-ionic/jpush
|
npm install --save @jiguang-ionic/jpush@1.0.2
|
||||||
|
|
||||||
|
# npm install --save @jiguang-ionic/jpush@2.0.0 for ionic4+
|
||||||
```
|
```
|
||||||
|
|
||||||
然后在 *app.module.ts* 中增加:
|
然后在 *app.module.ts* 中增加:
|
||||||
|
|
||||||
```js
|
```js
|
||||||
|
// @jiguang-ionic/jpush@1.0.0+
|
||||||
import { JPush } from '@jiguang-ionic/jpush';
|
import { JPush } from '@jiguang-ionic/jpush';
|
||||||
|
|
||||||
|
// @jiguang-ionic/jpush@2.0.0+
|
||||||
|
import { JPush } from '@jiguang-ionic/jpush/ngx';
|
||||||
...
|
...
|
||||||
providers: [
|
providers: [
|
||||||
...
|
...
|
||||||
|
|||||||
@@ -245,4 +245,19 @@ window.JPush.setMaxGeofenceNumber(maxNumber)
|
|||||||
|
|
||||||
#### 参数说明
|
#### 参数说明
|
||||||
|
|
||||||
- maxNumber: 最多允许保存的地理围栏个数
|
- maxNumber: 最多允许保存的地理围栏个数
|
||||||
|
|
||||||
|
|
||||||
|
### API - setBadgeNumber
|
||||||
|
|
||||||
|
设置App角标,目前仅华为系手机支持。
|
||||||
|
|
||||||
|
#### 接口定义
|
||||||
|
|
||||||
|
```js
|
||||||
|
window.JPush.setBadgeNumber(badgeNumb)
|
||||||
|
```
|
||||||
|
|
||||||
|
#### 参数说明
|
||||||
|
|
||||||
|
- badgeNumb: 角标显示数字,小于或等0,角标显示数字清楚
|
||||||
@@ -577,5 +577,6 @@ window.JPush.getUserNotificationSettings(function(result) {
|
|||||||
// 系统设置中已关闭应用推送。
|
// 系统设置中已关闭应用推送。
|
||||||
} else if(result > 0) {
|
} else if(result > 0) {
|
||||||
// 系统设置中打开了应用推送。
|
// 系统设置中打开了应用推送。
|
||||||
})
|
}
|
||||||
|
})
|
||||||
```
|
```
|
||||||
|
|||||||
+38
-15
@@ -1,6 +1,6 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html>
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||||
<title>JPush Phonegap Simple Demo</title>
|
<title>JPush Phonegap Simple Demo</title>
|
||||||
@@ -18,15 +18,15 @@
|
|||||||
|
|
||||||
initiateUI();
|
initiateUI();
|
||||||
};
|
};
|
||||||
|
|
||||||
var getRegistrationID = function() {
|
var getRegistrationID = function() {
|
||||||
window.JPush.getRegistrationID(onGetRegistrationID);
|
window.JPush.getRegistrationID(onGetRegistrationID);
|
||||||
};
|
};
|
||||||
|
|
||||||
var onGetRegistrationID = function(data) {
|
var onGetRegistrationID = function(data) {
|
||||||
try {
|
try {
|
||||||
console.log("JPushPlugin:registrationID is " + data);
|
console.log("JPushPlugin:registrationID is " + data);
|
||||||
|
|
||||||
if (data.length == 0) {
|
if (data.length == 0) {
|
||||||
var t1 = window.setTimeout(getRegistrationID, 1000);
|
var t1 = window.setTimeout(getRegistrationID, 1000);
|
||||||
}
|
}
|
||||||
@@ -36,7 +36,7 @@
|
|||||||
console.log(exception);
|
console.log(exception);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
var onTagsWithAlias = function(event) {
|
var onTagsWithAlias = function(event) {
|
||||||
try {
|
try {
|
||||||
console.log("onTagsWithAlias");
|
console.log("onTagsWithAlias");
|
||||||
@@ -48,7 +48,8 @@
|
|||||||
console.log(exception)
|
console.log(exception)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var badgeNumb = 0;
|
||||||
var onOpenNotification = function(event) {
|
var onOpenNotification = function(event) {
|
||||||
try {
|
try {
|
||||||
var alertContent;
|
var alertContent;
|
||||||
@@ -57,12 +58,17 @@
|
|||||||
} else {
|
} else {
|
||||||
alertContent = event.aps.alert;
|
alertContent = event.aps.alert;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
badgeNumb = badgeNumb - 1;
|
||||||
|
badgeNumb = badgeNumb<=0 ? 0 : badgeNumb;
|
||||||
|
window.JPush.setBadgeNumber(badgeNumb);
|
||||||
|
|
||||||
alert("open Notification:" + alertContent);
|
alert("open Notification:" + alertContent);
|
||||||
} catch (exception) {
|
} catch (exception) {
|
||||||
console.log("JPushPlugin:onOpenNotification" + exception);
|
console.log("JPushPlugin:onOpenNotification" + exception);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
var onReceiveNotification = function(event) {
|
var onReceiveNotification = function(event) {
|
||||||
try {
|
try {
|
||||||
var alertContent;
|
var alertContent;
|
||||||
@@ -72,11 +78,14 @@
|
|||||||
alertContent = event.aps.alert;
|
alertContent = event.aps.alert;
|
||||||
}
|
}
|
||||||
$("#notificationResult").html(alertContent);
|
$("#notificationResult").html(alertContent);
|
||||||
|
|
||||||
|
badgeNumb = badgeNumb + 1;
|
||||||
|
window.JPush.setBadgeNumber(badgeNumb);
|
||||||
} catch (exception) {
|
} catch (exception) {
|
||||||
console.log(exception)
|
console.log(exception)
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
var onReceiveMessage = function(event) {
|
var onReceiveMessage = function(event) {
|
||||||
try {
|
try {
|
||||||
var message;
|
var message;
|
||||||
@@ -86,11 +95,24 @@
|
|||||||
message = event.content;
|
message = event.content;
|
||||||
}
|
}
|
||||||
$("#messageResult").html(message);
|
$("#messageResult").html(message);
|
||||||
|
|
||||||
|
badgeNumb = badgeNumb + 1;
|
||||||
|
window.JPush.setBadgeNumber(badgeNumb);
|
||||||
} catch (exception) {
|
} catch (exception) {
|
||||||
console.log("JPushPlugin:onReceiveMessage-->" + exception);
|
console.log("JPushPlugin:onReceiveMessage-->" + exception);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var onResume = function(event){
|
||||||
|
try {
|
||||||
|
badgeNumb = 0
|
||||||
|
window.JPush.setBadgeNumber(0);
|
||||||
|
|
||||||
|
} catch (exception) {
|
||||||
|
console.log("onResume-->" + exception);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var initiateUI = function() {
|
var initiateUI = function() {
|
||||||
try {
|
try {
|
||||||
window.JPush.init();
|
window.JPush.init();
|
||||||
@@ -110,7 +132,7 @@
|
|||||||
var tag2 = $("#tagText2").val()
|
var tag2 = $("#tagText2").val()
|
||||||
var tag3 = $("#tagText3").val()
|
var tag3 = $("#tagText3").val()
|
||||||
var tags = []
|
var tags = []
|
||||||
|
|
||||||
if (tag1) {
|
if (tag1) {
|
||||||
tags.push(tag1)
|
tags.push(tag1)
|
||||||
}
|
}
|
||||||
@@ -123,7 +145,7 @@
|
|||||||
|
|
||||||
window.JPush.setTags({ sequence: 1, tags: tags },
|
window.JPush.setTags({ sequence: 1, tags: tags },
|
||||||
function (result) {
|
function (result) {
|
||||||
$("#tagsResult").html(result.tags)
|
$("#tagsResult").html(JSON.stringify(result.tags))
|
||||||
}, function (error) {
|
}, function (error) {
|
||||||
alert(error.code)
|
alert(error.code)
|
||||||
})
|
})
|
||||||
@@ -135,7 +157,7 @@
|
|||||||
$("#getAllTags").click(function (event) {
|
$("#getAllTags").click(function (event) {
|
||||||
window.JPush.getAllTags({ sequence: 2 },
|
window.JPush.getAllTags({ sequence: 2 },
|
||||||
function (result) {
|
function (result) {
|
||||||
$("#tagsResult").html(result.tags)
|
$("#tagsResult").html(JSON.stringify(result.tags))
|
||||||
}, function (error) {
|
}, function (error) {
|
||||||
alert(error.code)
|
alert(error.code)
|
||||||
})
|
})
|
||||||
@@ -179,14 +201,15 @@
|
|||||||
})
|
})
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
document.addEventListener("deviceready", onDeviceReady, false);
|
document.addEventListener("deviceready", onDeviceReady, false);
|
||||||
document.addEventListener("jpush.openNotification", onOpenNotification, false);
|
document.addEventListener("jpush.openNotification", onOpenNotification, false);
|
||||||
document.addEventListener("jpush.receiveNotification", onReceiveNotification, false);
|
document.addEventListener("jpush.receiveNotification", onReceiveNotification, false);
|
||||||
document.addEventListener("jpush.receiveMessage", onReceiveMessage, false);
|
document.addEventListener("jpush.receiveMessage", onReceiveMessage, false);
|
||||||
|
document.addEventListener("resume", onResume, false);
|
||||||
</script>
|
</script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
<div data-role="page" id="page">
|
<div data-role="page" id="page">
|
||||||
<div data-role="content">
|
<div data-role="content">
|
||||||
@@ -235,7 +258,7 @@
|
|||||||
<input type="button" id="getAllTags" value="Get all tags" />
|
<input type="button" id="getAllTags" value="Get all tags" />
|
||||||
<input type="button" id="cleanTags" value="Clean tags" />
|
<input type="button" id="cleanTags" value="Clean tags" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div data-role="fieldcontain">
|
<div data-role="fieldcontain">
|
||||||
<input type="button" id="setAlias" value="Set alias" />
|
<input type="button" id="setAlias" value="Set alias" />
|
||||||
<input type="button" id="getAlias" value="Get alias" />
|
<input type="button" id="getAlias" value="Get alias" />
|
||||||
|
|||||||
+65
-26
@@ -23,11 +23,17 @@ export interface AliasOptions {
|
|||||||
@Injectable()
|
@Injectable()
|
||||||
export class JPush extends IonicNativePlugin {
|
export class JPush extends IonicNativePlugin {
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
init(): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS', 'Android']
|
||||||
|
})
|
||||||
|
init(): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
setDebugMode(enable: boolean): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS', 'Android']
|
||||||
|
})
|
||||||
|
setDebugMode(enable: boolean): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova()
|
||||||
getRegistrationID(): Promise<any> { return; }
|
getRegistrationID(): Promise<any> { return; }
|
||||||
@@ -91,41 +97,74 @@ export class JPush extends IonicNativePlugin {
|
|||||||
|
|
||||||
// iOS API - start
|
// iOS API - start
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
setBadge(badge: number): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
setBadge(badge: number): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
resetBadge(): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
resetBadge(): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
setApplicationIconBadgeNumber(badge: number): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
setApplicationIconBadgeNumber(badge: number): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova()
|
||||||
getApplicationIconBadgeNumber(): Promise<any> { return; }
|
getApplicationIconBadgeNumber(): Promise<any> { return; }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
addDismissActions(actions: Array<object>, categoryId: string): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
addDismissActions(actions: Array<object>, categoryId: string): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
addNotificationActions(actions: Array<object>, categoryId: string): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
addNotificationActions(actions: Array<object>, categoryId: string): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
setLocation(latitude: number, longitude: number): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
setLocation(latitude: number, longitude: number): void { }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
startLogPageView(pageName: string): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
startLogPageView(pageName: string): void { return; }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
stopLogPageView(pageName: string): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
stopLogPageView(pageName: string): void { return; }
|
||||||
|
|
||||||
@Cordova()
|
@Cordova({
|
||||||
beginLogPageView(pageName: string, duration: number): Promise<any> { return; }
|
sync: true,
|
||||||
|
platforms: ['iOS']
|
||||||
|
})
|
||||||
|
beginLogPageView(pageName: string, duration: number): void { return; }
|
||||||
|
|
||||||
// iOS API - end
|
// iOS API - end
|
||||||
|
|
||||||
|
|||||||
Vendored
+44
-14
@@ -7,9 +7,37 @@ export interface AliasOptions {
|
|||||||
sequence: number;
|
sequence: number;
|
||||||
alias?: string;
|
alias?: string;
|
||||||
}
|
}
|
||||||
export declare class JPush extends IonicNativePlugin {
|
/**
|
||||||
init(): Promise<any>;
|
* @name jpush
|
||||||
setDebugMode(enable: boolean): Promise<any>;
|
* @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>;
|
getRegistrationID(): Promise<any>;
|
||||||
stopPush(): Promise<any>;
|
stopPush(): Promise<any>;
|
||||||
resumePush(): Promise<any>;
|
resumePush(): Promise<any>;
|
||||||
@@ -40,18 +68,18 @@ export declare class JPush extends IonicNativePlugin {
|
|||||||
*/
|
*/
|
||||||
getUserNotificationSettings(): Promise<any>;
|
getUserNotificationSettings(): Promise<any>;
|
||||||
clearLocalNotifications(): Promise<any>;
|
clearLocalNotifications(): Promise<any>;
|
||||||
setBadge(badge: number): Promise<any>;
|
setBadge(badge: number): void;
|
||||||
resetBadge(): Promise<any>;
|
resetBadge(): void;
|
||||||
setApplicationIconBadgeNumber(badge: number): Promise<any>;
|
setApplicationIconBadgeNumber(badge: number): void;
|
||||||
getApplicationIconBadgeNumber(): Promise<any>;
|
getApplicationIconBadgeNumber(): Promise<any>;
|
||||||
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): Promise<any>;
|
addLocalNotificationForIOS(delayTime: number, content: string, badge: number, identifierKey: string, extras?: object): void;
|
||||||
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): Promise<any>;
|
deleteLocalNotificationWithIdentifierKeyInIOS(identifierKey: string): void;
|
||||||
addDismissActions(actions: Array<object>, categoryId: string): Promise<any>;
|
addDismissActions(actions: Array<object>, categoryId: string): void;
|
||||||
addNotificationActions(actions: Array<object>, categoryId: string): Promise<any>;
|
addNotificationActions(actions: Array<object>, categoryId: string): void;
|
||||||
setLocation(latitude: number, longitude: number): Promise<any>;
|
setLocation(latitude: number, longitude: number): void;
|
||||||
startLogPageView(pageName: string): Promise<any>;
|
startLogPageView(pageName: string): void;
|
||||||
stopLogPageView(pageName: string): Promise<any>;
|
stopLogPageView(pageName: string): void;
|
||||||
beginLogPageView(pageName: string, duration: number): Promise<any>;
|
beginLogPageView(pageName: string, duration: number): void;
|
||||||
getConnectionState(): Promise<any>;
|
getConnectionState(): Promise<any>;
|
||||||
setBasicPushNotificationBuilder(): Promise<any>;
|
setBasicPushNotificationBuilder(): Promise<any>;
|
||||||
setCustomPushNotificationBuilder(): 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>;
|
setSilenceTime(startHour: number, startMinute: number, endHour: number, endMinute: number): Promise<any>;
|
||||||
setPushTime(weekdays: Array<string>, startHour: number, endHour: number): Promise<any>;
|
setPushTime(weekdays: Array<string>, startHour: number, endHour: number): Promise<any>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export declare const JPush: JPushOriginal;
|
||||||
+62
-341
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
Vendored
+95
@@ -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>;
|
||||||
|
}
|
||||||
File diff suppressed because one or more lines are too long
@@ -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"}]}}}}]
|
||||||
@@ -1,15 +1,15 @@
|
|||||||
{
|
{
|
||||||
"name": "@jiguang-ionic/jpush",
|
"name": "@jiguang-ionic/jpush",
|
||||||
"version": "1.0.2",
|
"version": "2.0.0",
|
||||||
"description": "JPush support for ionic-native",
|
"description": "JPush support for ionic-native",
|
||||||
"module": "index.js",
|
"module": "index.js",
|
||||||
"typings": "index.d.ts",
|
"typings": "index.d.ts",
|
||||||
"author": "hevin",
|
"author": "hevin",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ionic-native/core": "^4.2.0",
|
"@ionic-native/core": "^5.1.0",
|
||||||
"@angular/core": "*",
|
"@angular/core": "*",
|
||||||
"rxjs": "^5.0.1"
|
"rxjs": "^6.3.0"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
|||||||
+2
-2
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "jpush-phonegap-plugin",
|
"name": "jpush-phonegap-plugin",
|
||||||
"version": "3.6.1",
|
"version": "3.8.1",
|
||||||
"description": "JPush for cordova plugin",
|
"description": "JPush for cordova plugin",
|
||||||
"cordova": {
|
"cordova": {
|
||||||
"id": "jpush-phonegap-plugin",
|
"id": "jpush-phonegap-plugin",
|
||||||
@@ -23,7 +23,7 @@
|
|||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"cordova-plugin-device": "*",
|
"cordova-plugin-device": "*",
|
||||||
"cordova-plugin-jcore": ">=1.2.0"
|
"cordova-plugin-jcore": ">=1.4.0"
|
||||||
},
|
},
|
||||||
"author": "JiGuang",
|
"author": "JiGuang",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|||||||
+135
-69
@@ -2,7 +2,7 @@
|
|||||||
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
|
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
id="jpush-phonegap-plugin"
|
id="jpush-phonegap-plugin"
|
||||||
version="3.6.1">
|
version="3.8.1">
|
||||||
|
|
||||||
<name>JPush</name>
|
<name>JPush</name>
|
||||||
<description>JPush for cordova plugin</description>
|
<description>JPush for cordova plugin</description>
|
||||||
@@ -49,7 +49,7 @@
|
|||||||
<source-file src="src/ios/Plugins/AppDelegate+JPush.m" />
|
<source-file src="src/ios/Plugins/AppDelegate+JPush.m" />
|
||||||
|
|
||||||
<header-file src="src/ios/lib/JPUSHService.h" />
|
<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.5.2.a" framework="true" />
|
||||||
<resource-file src="src/ios/JPushConfig.plist" />
|
<resource-file src="src/ios/JPushConfig.plist" />
|
||||||
|
|
||||||
<framework src="CFNetwork.framework" weak="true" />
|
<framework src="CFNetwork.framework" weak="true" />
|
||||||
@@ -64,6 +64,7 @@
|
|||||||
<framework src="AdSupport.framework" weak="true" />
|
<framework src="AdSupport.framework" weak="true" />
|
||||||
<framework src="UserNotifications.framework" weak="true" />
|
<framework src="UserNotifications.framework" weak="true" />
|
||||||
<framework src="libresolv.tbd" weak="true" />
|
<framework src="libresolv.tbd" weak="true" />
|
||||||
|
<framework src="StoreKit.framework" weak="true" />
|
||||||
|
|
||||||
<config-file target="*JPushConfig.plist" parent="Appkey">
|
<config-file target="*JPushConfig.plist" parent="Appkey">
|
||||||
<string>$APP_KEY</string>
|
<string>$APP_KEY</string>
|
||||||
@@ -82,8 +83,8 @@
|
|||||||
<permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE"
|
<permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE"
|
||||||
android:protectionLevel="signature" />
|
android:protectionLevel="signature" />
|
||||||
|
|
||||||
|
<!-- Required 一些系统要求的权限,如访问网络等-->
|
||||||
<uses-permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE" />
|
<uses-permission android:name="$PACKAGE_NAME.permission.JPUSH_MESSAGE" />
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
|
<uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||||
@@ -91,21 +92,55 @@
|
|||||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||||
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
|
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||||
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
|
|
||||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Optional for location -->
|
||||||
<uses-permission android:name="android.permission.VIBRATE" />
|
<uses-permission android:name="android.permission.VIBRATE" />
|
||||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> <!-- 用于开启 debug 版本的应用在6.0 系统上 层叠窗口权限 -->
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||||
|
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" /><!-- Android Q后台定位权限-->
|
||||||
|
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
|
||||||
|
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
|
||||||
|
<uses-permission android:name="android.permission.GET_TASKS" />
|
||||||
|
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"/>
|
||||||
|
|
||||||
|
<!--华为角标-->
|
||||||
|
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE"/>
|
||||||
</config-file>
|
</config-file>
|
||||||
|
|
||||||
<config-file target="AndroidManifest.xml" parent="/manifest/application" mode="merge">
|
<config-file target="AndroidManifest.xml" parent="/manifest/application" mode="merge">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Rich push 核心功能 since 2.0.6-->
|
||||||
|
<activity
|
||||||
|
android:name="cn.jpush.android.ui.PopWinActivity"
|
||||||
|
android:theme="@style/MyDialogStyle"
|
||||||
|
android:exported="false">
|
||||||
|
</activity>
|
||||||
|
|
||||||
|
<!-- Required SDK核心功能-->
|
||||||
|
<activity
|
||||||
|
android:name="cn.jpush.android.ui.PushActivity"
|
||||||
|
android:configChanges="orientation|keyboardHidden"
|
||||||
|
android:theme="@android:style/Theme.NoTitleBar"
|
||||||
|
android:exported="false">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cn.jpush.android.ui.PushActivity" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
<category android:name="$PACKAGE_NAME" />
|
||||||
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
|
|
||||||
<!-- Required SDK 核心功能-->
|
<!-- Required SDK 核心功能-->
|
||||||
<service android:name="cn.jpush.android.service.PushService"
|
<!-- 可配置android:process参数将PushService放在其他进程中 -->
|
||||||
android:enabled="true"
|
<service
|
||||||
android:exported="false"
|
android:name="cn.jpush.android.service.PushService"
|
||||||
android:process=":remote">
|
android:process=":pushcore"
|
||||||
|
android:exported="false">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="cn.jpush.android.intent.REGISTER" />
|
<action android:name="cn.jpush.android.intent.REGISTER" />
|
||||||
<action android:name="cn.jpush.android.intent.REPORT" />
|
<action android:name="cn.jpush.android.intent.REPORT" />
|
||||||
@@ -116,34 +151,39 @@
|
|||||||
|
|
||||||
<!-- since 3.0.9 Required SDK 核心功能-->
|
<!-- since 3.0.9 Required SDK 核心功能-->
|
||||||
<provider
|
<provider
|
||||||
android:authorities="$PACKAGE_NAME.DataProvider"
|
android:authorities="$PACKAGE_NAME.DataProvider"
|
||||||
android:name="cn.jpush.android.service.DataProvider"
|
android:name="cn.jpush.android.service.DataProvider"
|
||||||
android:exported="true" />
|
android:process=":pushcore"
|
||||||
|
android:exported="false"
|
||||||
|
/>
|
||||||
|
|
||||||
<!-- since 1.8.0 option 可选项。用于同一设备中不同应用的 JPush 服务相互拉起的功能。 -->
|
<!-- since 1.8.0 option 可选项。用于同一设备中不同应用的JPush服务相互拉起的功能。 -->
|
||||||
<!-- 若不启用该功能可删除该组件,将不拉起其他应用也不能被其他应用拉起 -->
|
<!-- 若不启用该功能可删除该组件,将不拉起其他应用也不能被其他应用拉起 -->
|
||||||
<service android:name="cn.jpush.android.service.DaemonService"
|
<service
|
||||||
android:enabled="true"
|
android:name="cn.jpush.android.service.DaemonService"
|
||||||
android:exported="true">
|
android:enabled="true"
|
||||||
|
android:exported="true">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="cn.jpush.android.intent.DaemonService" />
|
<action android:name="cn.jpush.android.intent.DaemonService" />
|
||||||
<category android:name="$PACKAGE_NAME" />
|
<category android:name="$PACKAGE_NAME" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
|
|
||||||
</service>
|
</service>
|
||||||
|
|
||||||
<!-- since 3.1.0 Required SDK 核心功能-->
|
<!-- since 3.1.0 Required SDK 核心功能-->
|
||||||
<provider
|
<provider
|
||||||
android:authorities="$PACKAGE_NAME.DownloadProvider"
|
android:authorities="$PACKAGE_NAME.DownloadProvider"
|
||||||
android:name="cn.jpush.android.service.DownloadProvider"
|
android:name="cn.jpush.android.service.DownloadProvider"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- Required SDK核心功能-->
|
<!-- Required SDK核心功能-->
|
||||||
<receiver android:name="cn.jpush.android.service.PushReceiver"
|
<receiver
|
||||||
android:enabled="true">
|
android:name="cn.jpush.android.service.PushReceiver"
|
||||||
|
android:enabled="true"
|
||||||
|
android:exported="false">
|
||||||
<intent-filter android:priority="1000">
|
<intent-filter android:priority="1000">
|
||||||
<!--Required 显示通知栏 -->
|
<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" /> <!--Required 显示通知栏 -->
|
||||||
<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" />
|
|
||||||
<category android:name="$PACKAGE_NAME" />
|
<category android:name="$PACKAGE_NAME" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
@@ -154,93 +194,119 @@
|
|||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.PACKAGE_ADDED" />
|
<action android:name="android.intent.action.PACKAGE_ADDED" />
|
||||||
<action android:name="android.intent.action.PACKAGE_REMOVED" />
|
<action android:name="android.intent.action.PACKAGE_REMOVED" />
|
||||||
|
|
||||||
<data android:scheme="package" />
|
<data android:scheme="package" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
|
||||||
<!-- Required SDK核心功能 -->
|
|
||||||
<activity android:name="cn.jpush.android.ui.PushActivity"
|
|
||||||
android:theme="@android:style/Theme.Translucent.NoTitleBar"
|
|
||||||
android:configChanges="orientation|keyboardHidden"
|
|
||||||
android:exported="false" >
|
|
||||||
<intent-filter>
|
|
||||||
<action android:name="cn.jpush.android.ui.PushActivity" />
|
|
||||||
<category android:name="android.intent.category.DEFAULT" />
|
|
||||||
<category android:name="$PACKAGE_NAME" />
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
|
|
||||||
<!-- SDK 核心功能-->
|
|
||||||
<activity
|
|
||||||
android:name="cn.jpush.android.ui.PopWinActivity"
|
|
||||||
android:configChanges="orientation|keyboardHidden"
|
|
||||||
android:exported="false"
|
|
||||||
android:theme="@style/MyDialogStyle">
|
|
||||||
<intent-filter>
|
|
||||||
<category android:name="android.intent.category.DEFAULT" />
|
|
||||||
<category android:name="$PACKAGE_NAME" />
|
|
||||||
</intent-filter>
|
|
||||||
</activity>
|
|
||||||
|
|
||||||
<!-- Required SDK 核心功能 -->
|
|
||||||
<service android:name="cn.jpush.android.service.DownloadService"
|
|
||||||
android:enabled="true"
|
|
||||||
android:exported="false">
|
|
||||||
</service>
|
|
||||||
<!-- Required SDK核心功能-->
|
<!-- Required SDK核心功能-->
|
||||||
<receiver android:name="cn.jpush.android.service.AlarmReceiver" />
|
<receiver android:name="cn.jpush.android.service.AlarmReceiver" android:exported="false"/>
|
||||||
|
|
||||||
|
<!-- 3.5.0新增,用于定时展示功能 -->
|
||||||
|
<receiver android:name="cn.jpush.android.service.SchedulerReceiver" android:exported="false"/>
|
||||||
|
|
||||||
<receiver android:name="cn.jiguang.cordova.push.JPushEventReceiver">
|
<!--since 3.3.0 接收JPush相关事件-->
|
||||||
|
<receiver android:name="cn.jiguang.cordova.push.JPushEventReceiver"
|
||||||
|
android:exported="false">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" />
|
<action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" />
|
||||||
<category android:name="$PACKAGE_NAME" />
|
<category android:name="$PACKAGE_NAME"></category>
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
|
||||||
<!-- 插件通知广播接收器 -->
|
<!--since 3.3.0 Required SDK核心功能-->
|
||||||
|
<activity
|
||||||
|
android:name="cn.jpush.android.service.JNotifyActivity"
|
||||||
|
android:exported="true"
|
||||||
|
android:taskAffinity="jpush.custom"
|
||||||
|
android:theme="@android:style/Theme.Translucent.NoTitleBar">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cn.jpush.android.intent.JNotifyActivity" />
|
||||||
|
<category android:name="$PACKAGE_NAME" />
|
||||||
|
</intent-filter>
|
||||||
|
</activity>
|
||||||
|
|
||||||
|
<!-- since 3.3.0 Required SDK 核心功能-->
|
||||||
|
<!-- 可配置android:process参数将PushService放在其他进程中 -->
|
||||||
|
<!--User defined. For test only 继承自cn.jpush.android.service.JCommonService-->
|
||||||
|
<service android:name="cn.jiguang.cordova.push.PushService"
|
||||||
|
android:process=":pushcore"
|
||||||
|
android:exported="false">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="cn.jiguang.user.service.action" />
|
||||||
|
</intent-filter>
|
||||||
|
</service>
|
||||||
|
|
||||||
|
|
||||||
<receiver
|
<receiver
|
||||||
android:name="cn.jiguang.cordova.push.JPushReceiver"
|
android:name="cn.jiguang.cordova.push.JPushReceiver"
|
||||||
android:enabled="true">
|
android:enabled="true"
|
||||||
|
android:exported="false">
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="cn.jpush.android.intent.REGISTRATION" />
|
<action android:name="cn.jpush.android.intent.REGISTRATION" />
|
||||||
<action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" />
|
<action android:name="cn.jpush.android.intent.MESSAGE_RECEIVED" />
|
||||||
<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" />
|
<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" />
|
||||||
<action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" />
|
<action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" />
|
||||||
<action android:name="cn.jpush.android.intent.CONNECTION" />
|
<action android:name="cn.jpush.android.intent.CONNECTION" />
|
||||||
|
|
||||||
<category android:name="$PACKAGE_NAME" />
|
<category android:name="$PACKAGE_NAME" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</receiver>
|
</receiver>
|
||||||
|
|
||||||
|
<!-- Required . Enable it you can get statistics data with channel -->
|
||||||
|
<meta-data android:name="JPUSH_CHANNEL" android:value="$CHANNEL"/>
|
||||||
|
<meta-data android:name="JPUSH_APPKEY" android:value="$APP_KEY" /> <!-- </>值来自开发者平台取得的AppKey-->
|
||||||
|
|
||||||
<!-- Required. Enable it you can get statistics data with channel -->
|
|
||||||
<meta-data android:name="JPUSH_CHANNEL" android:value="$CHANNEL" />
|
|
||||||
<meta-data android:name="JPUSH_APPKEY" android:value="$APP_KEY" />
|
|
||||||
</config-file>
|
</config-file>
|
||||||
|
|
||||||
<lib-file src="src/android/libs/jpush-android-3.1.8.jar" />
|
<lib-file src="src/android/libs/jpush-android-4.1.0.jar" />
|
||||||
|
|
||||||
<source-file src="src/android/JPushReceiver.java" target-dir="src/cn/jiguang/cordova/push" />
|
<source-file src="src/android/PushService.java" target-dir="src/cn/jiguang/cordova/push" />
|
||||||
<source-file src="src/android/JPushPlugin.java" target-dir="src/cn/jiguang/cordova/push" />
|
<source-file src="src/android/JPushPlugin.java" target-dir="src/cn/jiguang/cordova/push" />
|
||||||
|
<source-file src="src/android/JPushReceiver.java" target-dir="src/cn/jiguang/cordova/push" />
|
||||||
<source-file src="src/android/JPushEventReceiver.java" target-dir="src/cn/jiguang/cordova/push" />
|
<source-file src="src/android/JPushEventReceiver.java" target-dir="src/cn/jiguang/cordova/push" />
|
||||||
|
|
||||||
<resource-file src="src/android/res/drawable-hdpi/jpush_richpush_btn_selector.xml"
|
<resource-file src="src/android/res/drawable-hdpi/jpush_richpush_btn_selector.xml"
|
||||||
target="res/drawable/jpush_richpush_btn_selector.xml" />
|
target="res/drawable/jpush_richpush_btn_selector.xml" />
|
||||||
<resource-file src="src/android/res/drawable-hdpi/jpush_richpush_progressbar.xml"
|
<resource-file src="src/android/res/drawable-hdpi/jpush_richpush_progressbar.xml"
|
||||||
target="res/drawable/jpush_richpush_progressbar.xml" />
|
target="res/drawable/jpush_richpush_progressbar.xml" />
|
||||||
|
|
||||||
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_richpush_actionbar_back.png"
|
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_richpush_actionbar_back.png"
|
||||||
target="res/drawable-hdpi/jpush_ic_richpush_actionbar_back.png" />
|
target="res/drawable-hdpi/jpush_ic_richpush_actionbar_back.png" />
|
||||||
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_richpush_actionbar_divider.png"
|
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_richpush_actionbar_divider.png"
|
||||||
target="res/drawable-hdpi/jpush_ic_richpush_actionbar_divider.png" />
|
target="res/drawable-hdpi/jpush_ic_richpush_actionbar_divider.png" />
|
||||||
|
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_action_cancle.png"
|
||||||
|
target="res/drawable-hdpi/jpush_ic_action_cancle.png" />
|
||||||
|
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_action_close.png"
|
||||||
|
target="res/drawable-hdpi/jpush_ic_action_close.png" />
|
||||||
|
<resource-file src="src/android/res/drawable-hdpi/jpush_ic_action_close2.png"
|
||||||
|
target="res/drawable-hdpi/jpush_ic_action_close2.png" />
|
||||||
|
|
||||||
<resource-file src="src/android/res/layout/jpush_popwin_layout.xml"
|
<resource-file src="src/android/res/layout/jpush_popwin_layout.xml"
|
||||||
target="res/layout/jpush_popwin_layout.xml" />
|
target="res/layout/jpush_popwin_layout.xml" />
|
||||||
<resource-file src="src/android/res/layout/jpush_webview_layout.xml"
|
<resource-file src="src/android/res/layout/jpush_webview_layout.xml"
|
||||||
target="res/layout/jpush_webview_layout.xml" />
|
target="res/layout/jpush_webview_layout.xml" />
|
||||||
<resource-file src="src/android/res/layout/test_notification_layout.xml"
|
<resource-file src="src/android/res/layout/push_notification.xml"
|
||||||
target="res/layout/test_notification_layout.xml" />
|
target="res/layout/push_notification.xml" />
|
||||||
|
<resource-file src="src/android/res/layout/push_notification_large.xml"
|
||||||
|
target="res/layout/push_notification_large.xml" />
|
||||||
|
<resource-file src="src/android/res/layout/push_notification_middle.xml"
|
||||||
|
target="res/layout/push_notification_middle.xml" />
|
||||||
|
<resource-file src="src/android/res/layout/jpush_inapp_banner.xml"
|
||||||
|
target="res/layout/jpush_inapp_banner.xml" />
|
||||||
|
|
||||||
|
<resource-file src="src/android/res/layout-v21/push_notification.xml"
|
||||||
|
target="res/layout-v21/push_notification.xml" />
|
||||||
|
<resource-file src="src/android/res/layout-v21/push_notification_middle.xml"
|
||||||
|
target="res/layout-v21/push_notification_middle.xml" />
|
||||||
|
<resource-file src="src/android/res/layout-v21/push_notification_large.xml"
|
||||||
|
target="res/layout-v21/push_notification_large.xml" />
|
||||||
|
|
||||||
<resource-file src="src/android/res/values/jpush_style.xml"
|
<resource-file src="src/android/res/values/jpush_style.xml"
|
||||||
target="res/values/jpush_style.xml" />
|
target="res/values/jpush_style.xml" />
|
||||||
|
<resource-file src="src/android/res/values/jpush_string.xml"
|
||||||
|
target="res/values/jpush_string.xml" />
|
||||||
|
|
||||||
|
<resource-file src="src/android/res/values-zh/jpush_string.xml"
|
||||||
|
target="res/values-zh/jpush_string.xml" />
|
||||||
</platform>
|
</platform>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
package cn.jiguang.cordova.push;
|
package cn.jiguang.cordova.push;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.Intent;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
@@ -9,9 +10,13 @@ import org.json.JSONArray;
|
|||||||
import org.json.JSONException;
|
import org.json.JSONException;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import cn.jpush.android.api.CustomMessage;
|
||||||
|
import cn.jpush.android.api.JPushInterface;
|
||||||
import cn.jpush.android.api.JPushMessage;
|
import cn.jpush.android.api.JPushMessage;
|
||||||
|
import cn.jpush.android.api.NotificationMessage;
|
||||||
import cn.jpush.android.service.JPushMessageReceiver;
|
import cn.jpush.android.service.JPushMessageReceiver;
|
||||||
|
|
||||||
public class JPushEventReceiver extends JPushMessageReceiver {
|
public class JPushEventReceiver extends JPushMessageReceiver {
|
||||||
@@ -21,7 +26,7 @@ public class JPushEventReceiver extends JPushMessageReceiver {
|
|||||||
@Override
|
@Override
|
||||||
public void onTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
public void onTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
||||||
super.onTagOperatorResult(context, jPushMessage);
|
super.onTagOperatorResult(context, jPushMessage);
|
||||||
|
//Log.e(TAG,"onTagOperatorResult:"+jPushMessage);
|
||||||
JSONObject resultJson = new JSONObject();
|
JSONObject resultJson = new JSONObject();
|
||||||
|
|
||||||
int sequence = jPushMessage.getSequence();
|
int sequence = jPushMessage.getSequence();
|
||||||
@@ -72,6 +77,7 @@ public class JPushEventReceiver extends JPushMessageReceiver {
|
|||||||
public void onCheckTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
public void onCheckTagOperatorResult(Context context, JPushMessage jPushMessage) {
|
||||||
super.onCheckTagOperatorResult(context, jPushMessage);
|
super.onCheckTagOperatorResult(context, jPushMessage);
|
||||||
|
|
||||||
|
//Log.e(TAG,"onCheckTagOperatorResult:"+jPushMessage);
|
||||||
JSONObject resultJson = new JSONObject();
|
JSONObject resultJson = new JSONObject();
|
||||||
|
|
||||||
int sequence = jPushMessage.getSequence();
|
int sequence = jPushMessage.getSequence();
|
||||||
@@ -113,6 +119,7 @@ public class JPushEventReceiver extends JPushMessageReceiver {
|
|||||||
public void onAliasOperatorResult(Context context, JPushMessage jPushMessage) {
|
public void onAliasOperatorResult(Context context, JPushMessage jPushMessage) {
|
||||||
super.onAliasOperatorResult(context, jPushMessage);
|
super.onAliasOperatorResult(context, jPushMessage);
|
||||||
|
|
||||||
|
//Log.e(TAG,"onAliasOperatorResult:"+jPushMessage);
|
||||||
JSONObject resultJson = new JSONObject();
|
JSONObject resultJson = new JSONObject();
|
||||||
|
|
||||||
int sequence = jPushMessage.getSequence();
|
int sequence = jPushMessage.getSequence();
|
||||||
@@ -152,4 +159,44 @@ public class JPushEventReceiver extends JPushMessageReceiver {
|
|||||||
|
|
||||||
JPushPlugin.eventCallbackMap.remove(sequence);
|
JPushPlugin.eventCallbackMap.remove(sequence);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onRegister(Context context, String regId) {
|
||||||
|
//Log.e(TAG,"onRegister:"+regId);
|
||||||
|
JPushPlugin.transmitReceiveRegistrationId(regId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMessage(Context context, CustomMessage customMessage) {
|
||||||
|
super.onMessage(context,customMessage);
|
||||||
|
//Log.e(TAG,"onMessage:"+customMessage);
|
||||||
|
// String msg = customMessage.message;//intent.getStringExtra(JPushInterface.EXTRA_MESSAGE);
|
||||||
|
// Map<String, Object> extras = getNotificationExtras(intent);
|
||||||
|
// JPushPlugin.transmitMessageReceive(msg, extras);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNotifyMessageArrived(Context context, NotificationMessage notificationMessage) {
|
||||||
|
super.onNotifyMessageArrived(context, notificationMessage);
|
||||||
|
|
||||||
|
//Log.e(TAG,"onNotifyMessageArrived:"+notificationMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNotifyMessageOpened(Context context, NotificationMessage notificationMessage) {
|
||||||
|
super.onNotifyMessageOpened(context, notificationMessage);
|
||||||
|
//Log.e(TAG,"onNotifyMessageOpened:"+notificationMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMobileNumberOperatorResult(Context context, JPushMessage jPushMessage) {
|
||||||
|
super.onMobileNumberOperatorResult(context, jPushMessage);
|
||||||
|
//Log.e(TAG,"onMobileNumberOperatorResult:"+jPushMessage);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onMultiActionClicked(Context context, Intent intent) {
|
||||||
|
super.onMultiActionClicked(context, intent);
|
||||||
|
//Log.e(TAG,"onMultiActionClicked:"+intent);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -637,6 +637,11 @@ public class JPushPlugin extends CordovaPlugin {
|
|||||||
JPushInterface.setMaxGeofenceNumber(mContext, maxNumber);
|
JPushInterface.setMaxGeofenceNumber(mContext, maxNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void setBadgeNumber(JSONArray data, CallbackContext callbackContext) throws JSONException {
|
||||||
|
int badgeNumb = data.getInt(0);
|
||||||
|
JPushInterface.setBadgeNumber(mContext, badgeNumb);
|
||||||
|
}
|
||||||
|
|
||||||
private boolean isValidHour(int hour) {
|
private boolean isValidHour(int hour) {
|
||||||
return !(hour < 0 || hour > 23);
|
return !(hour < 0 || hour > 23);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
package cn.jiguang.cordova.push;
|
||||||
|
|
||||||
|
import cn.jpush.android.service.JCommonService;
|
||||||
|
|
||||||
|
public class PushService extends JCommonService {
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
After Width: | Height: | Size: 551 B |
Binary file not shown.
|
After Width: | Height: | Size: 591 B |
Binary file not shown.
|
After Width: | Height: | Size: 759 B |
Executable → Regular
Executable → Regular
@@ -0,0 +1,296 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v21"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:weightSum="1"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="invisible"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -0,0 +1,298 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="256dp">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v21"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="visible"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="invisible"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -0,0 +1,298 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="202dp">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v21"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="visible"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="invisible"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
style="@android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<FrameLayout
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
|
android:id="@+id/banner_root"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:clipChildren="false"
|
||||||
|
android:clipToPadding="false">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:weightSum="1.0">
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/banner_content_root"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1.0"
|
||||||
|
android:clickable="true"
|
||||||
|
android:focusable="true"
|
||||||
|
android:gravity="center"
|
||||||
|
android:padding="15dp"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:visibility="visible">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/banner_image_only"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:scaleType="fitXY"/>
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/banner_image"
|
||||||
|
android:adjustViewBounds="true"
|
||||||
|
android:layout_width="64dp"
|
||||||
|
android:layout_height="64dp"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:padding="5dp"
|
||||||
|
android:layout_marginLeft="3dp"
|
||||||
|
android:visibility="visible" />
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/banner_text_container"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:minHeight="74dp"
|
||||||
|
android:layout_toRightOf="@id/banner_image"
|
||||||
|
android:layout_marginLeft="3dp"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_centerInParent="true">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/banner_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_toRightOf="@+id/banner_image"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:text=""
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:visibility="visible" />
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/banner_body"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_below="@id/banner_title"
|
||||||
|
android:layout_toRightOf="@+id/banner_image"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:singleLine="true"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:text=""
|
||||||
|
android:textSize="14sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
</FrameLayout>
|
||||||
Executable → Regular
Executable → Regular
@@ -0,0 +1,297 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -0,0 +1,297 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="256dp">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="150dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -0,0 +1,297 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_root_view"
|
||||||
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="202dp">
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/v"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/layout_version_2"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="0dp" />
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_default"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:visibility="gone">
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_layout_lefttop"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_small_icon"
|
||||||
|
android:layout_width="18dp"
|
||||||
|
android:layout_height="18dp"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:maxWidth="200dp"
|
||||||
|
android:maxLength="24"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_dot"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginLeft="4dp"
|
||||||
|
android:textStyle="bold"
|
||||||
|
android:text="·"
|
||||||
|
android:textSize="16sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:id="@+id/push_notification_date"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:layout_height="0dp"/>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_above="@+id/push_notification_for_bottom_margin"
|
||||||
|
android:layout_marginBottom="8dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:scaleType="centerCrop" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_main_layout"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:layout_above="@+id/push_notification_banner_icon"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:layout_marginBottom="5dp"
|
||||||
|
android:layout_toLeftOf="@+id/push_notification_big_icon"
|
||||||
|
android:layout_below="@id/push_notification_layout_lefttop">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_sub_title"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="2"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_content_one_line"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:textSize="13sp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_big_icon"
|
||||||
|
android:layout_width="48dp"
|
||||||
|
android:layout_height="48dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignTop="@+id/push_notification_main_layout"
|
||||||
|
android:layout_alignBottom="@+id/push_notification_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_style_1"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="50dp"
|
||||||
|
android:layout_height="50dp"
|
||||||
|
android:layout_alignParentLeft="true"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_style_1_main_layout"
|
||||||
|
android:layout_toRightOf="@+id/push_notification_style_1_big_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_centerVertical="true"
|
||||||
|
android:orientation="vertical">
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:id="@+id/push_notification_layout_time"
|
||||||
|
android:gravity="center_vertical"
|
||||||
|
android:orientation="horizontal">
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Title"
|
||||||
|
android:id="@+id/push_notification_style_1_title"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_marginRight="8dp"
|
||||||
|
android:textSize="12sp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Time"
|
||||||
|
android:id="@+id/push_notification_style_1_date"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:gravity="right"
|
||||||
|
android:textSize="12sp" />
|
||||||
|
<TextView android:id="@+id/push_notification_null"
|
||||||
|
android:layout_width="24dp"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_height="20dp"/>
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
style="@*android:style/TextAppearance.Material.Notification.Info"
|
||||||
|
android:id="@+id/push_notification_style_1_content"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginRight="4dp"
|
||||||
|
android:ellipsize="end"
|
||||||
|
android:layout_marginTop="1dp"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:textSize="13sp" />
|
||||||
|
</LinearLayout>
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_style_1_banner_icon"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="96dp"
|
||||||
|
android:layout_alignParentBottom="true"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_below="@id/push_notification_style_1_main_layout"
|
||||||
|
android:scaleType="centerInside" />
|
||||||
|
</RelativeLayout>
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/push_notification_banner_layout"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/push_notification_banner_img"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent"
|
||||||
|
android:scaleType="centerCrop"
|
||||||
|
android:visibility="gone" />
|
||||||
|
</FrameLayout>
|
||||||
|
|
||||||
|
<RelativeLayout
|
||||||
|
android:id="@+id/push_notification_header_neg_fb"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:visibility="gone">
|
||||||
|
<ImageView android:id="@+id/push_notification_header_expand"
|
||||||
|
android:layout_marginRight="2dp"
|
||||||
|
android:layout_marginTop="2dp"
|
||||||
|
android:layout_width="14dp"
|
||||||
|
android:layout_height="14dp"
|
||||||
|
android:layout_alignParentRight="true"
|
||||||
|
android:layout_alignParentTop="true"
|
||||||
|
android:scaleType="centerInside"
|
||||||
|
android:background="#08000000"
|
||||||
|
android:src="@drawable/jpush_ic_action_close"
|
||||||
|
android:visibility="visible"/>
|
||||||
|
<LinearLayout
|
||||||
|
android:id="@+id/push_notification_fb_content"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:paddingTop="8dp"
|
||||||
|
android:layout_below="@id/push_notification_header_expand"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:gravity="center">
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like1"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="不感兴趣"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like2"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="重复收到"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like3"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容低质"/>
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/push_notification_fb_content_no_like4"
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:textColor="#88000000"
|
||||||
|
android:background="#0f000000"
|
||||||
|
android:paddingTop="5dp"
|
||||||
|
android:paddingBottom="5dp"
|
||||||
|
android:paddingLeft="6dp"
|
||||||
|
android:paddingRight="6dp"
|
||||||
|
android:textSize="14sp"
|
||||||
|
android:gravity="center"
|
||||||
|
android:maxLines="1"
|
||||||
|
android:layout_margin="5dp"
|
||||||
|
android:text="内容不宜"/>
|
||||||
|
</LinearLayout>
|
||||||
|
</RelativeLayout>
|
||||||
|
</RelativeLayout>
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="match_parent"
|
|
||||||
android:orientation="horizontal" >
|
|
||||||
<ImageView android:id="@+id/icon"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
/>
|
|
||||||
<LinearLayout
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:orientation="vertical"
|
|
||||||
>
|
|
||||||
<TextView android:id="@+id/title"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
/>
|
|
||||||
<TextView android:id="@+id/text"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
/>
|
|
||||||
</LinearLayout>
|
|
||||||
</LinearLayout>
|
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="jg_channel_name_p_min">不重要</string>
|
||||||
|
<string name="jg_channel_name_p_low">不重要</string>
|
||||||
|
<string name="jg_channel_name_p_default">普通</string>
|
||||||
|
<string name="jg_channel_name_p_high">重要</string>
|
||||||
|
</resources>
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="jg_channel_name_p_min">LOW</string>
|
||||||
|
<string name="jg_channel_name_p_low">LOW</string>
|
||||||
|
<string name="jg_channel_name_p_default">NORMAL</string>
|
||||||
|
<string name="jg_channel_name_p_high">HIGH</string>
|
||||||
|
|
||||||
|
</resources>
|
||||||
Executable → Regular
@@ -61,7 +61,7 @@
|
|||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
- (CDVPlugin*)initWithWebView:(UIWebView*)theWebView{
|
- (CDVPlugin*)initWithWebView:(WKWebView*)theWebView{
|
||||||
NSLog(@"### initWithWebView ");
|
NSLog(@"### initWithWebView ");
|
||||||
if (self=[super initWithWebView:theWebView]) {
|
if (self=[super initWithWebView:theWebView]) {
|
||||||
}
|
}
|
||||||
|
|||||||
+201
-13
@@ -9,7 +9,7 @@
|
|||||||
* Copyright (c) 2011 ~ 2017 Shenzhen HXHG. All rights reserved.
|
* Copyright (c) 2011 ~ 2017 Shenzhen HXHG. All rights reserved.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define JPUSH_VERSION_NUMBER 3.1.1
|
#define JPUSH_VERSION_NUMBER 3.5.2
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
@@ -21,10 +21,13 @@
|
|||||||
@class UNNotificationRequest;
|
@class UNNotificationRequest;
|
||||||
@class UNNotification;
|
@class UNNotification;
|
||||||
@protocol JPUSHRegisterDelegate;
|
@protocol JPUSHRegisterDelegate;
|
||||||
|
@protocol JPUSHGeofenceDelegate;
|
||||||
|
@protocol JPushInMessageDelegate;
|
||||||
|
|
||||||
typedef void (^JPUSHTagsOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq);
|
typedef void (^JPUSHTagsOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq);
|
||||||
typedef void (^JPUSHTagValidOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq, BOOL isBind);
|
typedef void (^JPUSHTagValidOperationCompletion)(NSInteger iResCode, NSSet *iTags, NSInteger seq, BOOL isBind);
|
||||||
typedef void (^JPUSHAliasOperationCompletion)(NSInteger iResCode, NSString *iAlias, NSInteger seq);
|
typedef void (^JPUSHAliasOperationCompletion)(NSInteger iResCode, NSString *iAlias, NSInteger seq);
|
||||||
|
typedef void (^JPUSHInMssageCompletion)(NSInteger iResCode);
|
||||||
|
|
||||||
extern NSString *const kJPFNetworkIsConnectingNotification; // 正在连接中
|
extern NSString *const kJPFNetworkIsConnectingNotification; // 正在连接中
|
||||||
extern NSString *const kJPFNetworkDidSetupNotification; // 建立连接
|
extern NSString *const kJPFNetworkDidSetupNotification; // 建立连接
|
||||||
@@ -44,7 +47,25 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
JPAuthorizationOptionCriticalAlert NS_AVAILABLE_IOS(12.0) = (1 << 4) , //The ability to play sounds for critical alerts.
|
JPAuthorizationOptionCriticalAlert NS_AVAILABLE_IOS(12.0) = (1 << 4) , //The ability to play sounds for critical alerts.
|
||||||
JPAuthorizationOptionProvidesAppNotificationSettings NS_AVAILABLE_IOS(12.0) = (1 << 5) , //An option indicating the system should display a button for in-app notification settings.
|
JPAuthorizationOptionProvidesAppNotificationSettings NS_AVAILABLE_IOS(12.0) = (1 << 5) , //An option indicating the system should display a button for in-app notification settings.
|
||||||
JPAuthorizationOptionProvisional NS_AVAILABLE_IOS(12.0) = (1 << 6) , //The ability to post noninterrupting notifications provisionally to the Notification Center.
|
JPAuthorizationOptionProvisional NS_AVAILABLE_IOS(12.0) = (1 << 6) , //The ability to post noninterrupting notifications provisionally to the Notification Center.
|
||||||
|
JPAuthorizationOptionAnnouncement NS_AVAILABLE_IOS(13.0) = (1 << 7) , //The ability for Siri to automatically read out messages over AirPods.
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef NS_ENUM(NSUInteger, JPAuthorizationStatus) {
|
||||||
|
JPAuthorizationNotDetermined = 0, // The user has not yet made a choice regarding whether the application may post user notifications.
|
||||||
|
JPAuthorizationStatusDenied, // The application is not authorized to post user notifications.
|
||||||
|
JPAuthorizationStatusAuthorized, // The application is authorized to post user notifications.
|
||||||
|
JPAuthorizationStatusProvisional NS_AVAILABLE_IOS(12.0), // The application is authorized to post non-interruptive user notifications.
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef NS_ENUM(NSInteger,JPushInMessageContentType){
|
||||||
|
JPushAdContentType = 1, //广告类型的inMessage
|
||||||
|
JPushNotiContentType = 2, //通知类型的inMessage
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef NS_OPTIONS(NSUInteger, JPInMessageType) {
|
||||||
|
JPInMessageTypeBanner = (1 << 0), // 横幅
|
||||||
|
JPInMessageTypeModal = (1 << 1), // 模态
|
||||||
|
JPInMessageTypeFloat = (1 << 2), // 小浮窗
|
||||||
};
|
};
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -107,6 +128,7 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
@property (nonatomic, copy) NSString *launchImageName NS_AVAILABLE_IOS(10_0); // 启动图片名,iOS10以上有效,从推送启动时将会用到
|
@property (nonatomic, copy) NSString *launchImageName NS_AVAILABLE_IOS(10_0); // 启动图片名,iOS10以上有效,从推送启动时将会用到
|
||||||
@property (nonatomic, copy) NSString *summaryArgument NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的部分参数。iOS12以上有效。
|
@property (nonatomic, copy) NSString *summaryArgument NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的部分参数。iOS12以上有效。
|
||||||
@property (nonatomic, assign) NSUInteger summaryArgumentCount NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的项目数。iOS12以上有效。
|
@property (nonatomic, assign) NSUInteger summaryArgumentCount NS_AVAILABLE_IOS(12.0); //插入到通知摘要中的项目数。iOS12以上有效。
|
||||||
|
@property (nonatomic, copy) NSString *targetContentIdentifier NS_AVAILABLE_IOS(13.0); // An identifier for the content of the notification used by the system to customize the scene to be activated when tapping on a notification.
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -147,12 +169,6 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
/// @name Setup 启动相关
|
/// @name Setup 启动相关
|
||||||
///----------------------------------------------------
|
///----------------------------------------------------
|
||||||
|
|
||||||
/*!
|
|
||||||
* @abstract 启动SDK
|
|
||||||
*
|
|
||||||
* @discussion 这是旧版本的启动方法, 依赖于 PushConfig.plist 文件. 建议不要使用, 已经过期.
|
|
||||||
*/
|
|
||||||
+ (void)setupWithOption:(NSDictionary *)launchingOption __attribute__((deprecated("JPush 2.1.0 版本已过期")));
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @abstract 启动SDK
|
* @abstract 启动SDK
|
||||||
@@ -162,7 +178,6 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
* @param channel 发布渠道. 可选.
|
* @param channel 发布渠道. 可选.
|
||||||
* @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
|
* @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
|
||||||
* App 证书环境取决于profile provision的配置,此处建议与证书环境保持一致.
|
* App 证书环境取决于profile provision的配置,此处建议与证书环境保持一致.
|
||||||
* @param advertisingIdentifier 广告标识符(IDFA) 如果不需要使用IDFA,传nil.
|
|
||||||
*
|
*
|
||||||
* @discussion 提供SDK启动必须的参数, 来启动 SDK.
|
* @discussion 提供SDK启动必须的参数, 来启动 SDK.
|
||||||
* 此接口必须在 App 启动时调用, 否则 JPush SDK 将无法正常工作.
|
* 此接口必须在 App 启动时调用, 否则 JPush SDK 将无法正常工作.
|
||||||
@@ -172,7 +187,19 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
channel:(NSString *)channel
|
channel:(NSString *)channel
|
||||||
apsForProduction:(BOOL)isProduction;
|
apsForProduction:(BOOL)isProduction;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 启动SDK
|
||||||
|
*
|
||||||
|
* @param launchingOption 启动参数.
|
||||||
|
* @param appKey 一个JPush 应用必须的,唯一的标识. 请参考 JPush 相关说明文档来获取这个标识.
|
||||||
|
* @param channel 发布渠道. 可选.
|
||||||
|
* @param isProduction 是否生产环境. 如果为开发状态,设置为 NO; 如果为生产状态,应改为 YES.
|
||||||
|
* App 证书环境取决于profile provision的配置,此处建议与证书环境保持一致.
|
||||||
|
* @param advertisingId 广告标识符(IDFA) 如果不需要使用IDFA,传nil.
|
||||||
|
*
|
||||||
|
* @discussion 提供SDK启动必须的参数, 来启动 SDK.
|
||||||
|
* 此接口必须在 App 启动时调用, 否则 JPush SDK 将无法正常工作.
|
||||||
|
*/
|
||||||
+ (void)setupWithOption:(NSDictionary *)launchingOption
|
+ (void)setupWithOption:(NSDictionary *)launchingOption
|
||||||
appKey:(NSString *)appKey
|
appKey:(NSString *)appKey
|
||||||
channel:(NSString *)channel
|
channel:(NSString *)channel
|
||||||
@@ -205,12 +232,38 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
|
|
||||||
+ (void)registerDeviceToken:(NSData *)deviceToken;
|
+ (void)registerDeviceToken:(NSData *)deviceToken;
|
||||||
|
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* @abstract 处理收到的 APNs 消息
|
* @abstract 处理收到的 APNs 消息
|
||||||
*/
|
*/
|
||||||
+ (void)handleRemoteNotification:(NSDictionary *)remoteInfo;
|
+ (void)handleRemoteNotification:(NSDictionary *)remoteInfo;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 向极光服务器提交Token
|
||||||
|
*
|
||||||
|
* @param voipToken 推送使用的Voip Token
|
||||||
|
*/
|
||||||
|
+ (void)registerVoipToken:(NSData *)voipToken;
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 处理收到的 Voip 消息
|
||||||
|
*
|
||||||
|
* @param remoteInfo 下发的 Voip 内容
|
||||||
|
*/
|
||||||
|
+ (void)handleVoipNotification:(NSDictionary *)remoteInfo;
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 检测通知授权状态
|
||||||
|
* @param completion 授权结果通过status值返回,详见JPAuthorizationStatus
|
||||||
|
*/
|
||||||
|
+ (void)requestNotificationAuthorization:(void (^)(JPAuthorizationStatus status))completion;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 跳转至系统设置页面,iOS8及以上有效
|
||||||
|
*/
|
||||||
|
+ (void)openSettingsForNotification:(void (^)(BOOL success))completionHandler NS_AVAILABLE_IOS(8_0);
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
* Tags操作接口
|
* Tags操作接口
|
||||||
* 支持增加/覆盖/删除/清空/查询操作
|
* 支持增加/覆盖/删除/清空/查询操作
|
||||||
@@ -370,6 +423,26 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
*/
|
*/
|
||||||
+ (void)setLocation:(CLLocation *)location;
|
+ (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;
|
||||||
|
|
||||||
|
/**
|
||||||
|
删除地理围栏
|
||||||
|
|
||||||
|
@param geofenceId 地理围栏id
|
||||||
|
*/
|
||||||
|
+ (void)removeGeofenceWithIdentifier:(NSString *)geofenceId;
|
||||||
|
|
||||||
///----------------------------------------------------
|
///----------------------------------------------------
|
||||||
/// @name Local Notification 本地通知
|
/// @name Local Notification 本地通知
|
||||||
@@ -573,6 +646,53 @@ typedef NS_OPTIONS(NSUInteger, JPAuthorizationOptions) {
|
|||||||
*/
|
*/
|
||||||
+ (void)setLogOFF;
|
+ (void)setLogOFF;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 设置SDK地理位置权限开关
|
||||||
|
*
|
||||||
|
* @discussion 关闭地理位置之后,SDK地理围栏的相关功能将受到影响,默认是开启。
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
+ (void)setLocationEanable:(BOOL)isEanble;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 设置应用内消息的代理
|
||||||
|
*
|
||||||
|
* @discussion 遵守JPushInMessageDelegate的代理对象
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
+ (void)setInMessageDelegate:(id<JPushInMessageDelegate>)inMessageDelegate;
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 主动拉取应用内消息的接口
|
||||||
|
*
|
||||||
|
* @discussion 拉取结果的回调
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
+ (void)pullInMessageCompletion:(JPUSHInMssageCompletion)completion;
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 主动拉取应用内消息的接口
|
||||||
|
*
|
||||||
|
* @param types 应用内消息样式
|
||||||
|
*
|
||||||
|
* @discussion 拉取结果的回调
|
||||||
|
*/
|
||||||
|
+ (void)pullInMessageWithTypes:(NSUInteger)types completion:(JPUSHInMssageCompletion)completion;
|
||||||
|
|
||||||
|
|
||||||
|
/*!
|
||||||
|
* @abstract 向sdk报告当前展示的控制器的名称
|
||||||
|
*
|
||||||
|
* @param className 当前页面的类名
|
||||||
|
*
|
||||||
|
* @discussion 如果类名在黑名单内,就会关闭所有处于曝光状态的inapp
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
+ (void)currentViewControllerName:(NSString *)className;
|
||||||
|
|
||||||
|
|
||||||
///----------------------------------------------------
|
///----------------------------------------------------
|
||||||
///********************下列方法已过期********************
|
///********************下列方法已过期********************
|
||||||
///**************请使用新版tag/alias操作接口**************
|
///**************请使用新版tag/alias操作接口**************
|
||||||
@@ -626,13 +746,81 @@ callbackSelector:(SEL)cbSelector
|
|||||||
* @param response 通知响应对象
|
* @param response 通知响应对象
|
||||||
* @param completionHandler
|
* @param completionHandler
|
||||||
*/
|
*/
|
||||||
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)())completionHandler;
|
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void(^)(void))completionHandler;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @brief handle UserNotifications.framework [openSettingsForNotification:]
|
* @brief handle UserNotifications.framework [openSettingsForNotification:]
|
||||||
* @param center [UNUserNotificationCenter currentNotificationCenter] 新特性用户通知中心
|
* @param center [UNUserNotificationCenter currentNotificationCenter] 新特性用户通知中心
|
||||||
* @param notification 当前管理的通知对象
|
* @param notification 当前管理的通知对象
|
||||||
*/
|
*/
|
||||||
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(nullable UNNotification *)notification NS_AVAILABLE_IOS(12.0);
|
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center openSettingsForNotification:(UNNotification *)notification NS_AVAILABLE_IOS(12.0);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 监测通知授权状态返回的结果
|
||||||
|
* @param status 授权通知状态,详见JPAuthorizationStatus
|
||||||
|
* @param info 更多信息,预留参数
|
||||||
|
*/
|
||||||
|
- (void)jpushNotificationAuthorization:(JPAuthorizationStatus)status withInfo:(NSDictionary *)info;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@protocol JPUSHGeofenceDelegate <NSObject>
|
||||||
|
|
||||||
|
/**
|
||||||
|
进入地理围栏区域
|
||||||
|
|
||||||
|
@param geofenceId 地理围栏id
|
||||||
|
@param userInfo 地理围栏触发时返回的信息
|
||||||
|
@param error 错误信息
|
||||||
|
*/
|
||||||
|
- (void)jpushGeofenceIdentifer:(NSString *)geofenceId didEnterRegion:(NSDictionary *)userInfo error:(NSError *)error;
|
||||||
|
|
||||||
|
/**
|
||||||
|
离开地理围栏区域
|
||||||
|
|
||||||
|
@param geofenceId 地理围栏id
|
||||||
|
@param userInfo 地理围栏触发时返回的信息
|
||||||
|
@param error 错误信息
|
||||||
|
*/
|
||||||
|
- (void)jpushGeofenceIdentifer:(NSString *)geofenceId didExitRegion:(NSDictionary *)userInfo error:(NSError *)error;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
@protocol JPushInMessageDelegate <NSObject>
|
||||||
|
|
||||||
|
@optional
|
||||||
|
/**
|
||||||
|
*是否允许应用内消息弹出,默认为允许
|
||||||
|
*/
|
||||||
|
- (BOOL)jPushInMessageIsAllowedInMessagePop;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*应用内消息展示的回调
|
||||||
|
*/
|
||||||
|
- (void)jPushInMessageAlreadyPop __attribute__((deprecated("JPush 3.4.0 版本已过期")));;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*应用内消息已消失
|
||||||
|
*/
|
||||||
|
- (void)jPushInMessageAlreadyDisappear;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
inMessage展示的回调
|
||||||
|
|
||||||
|
@param messageType inMessage
|
||||||
|
@param content 下发的数据,广告类的返回数据为空时返回的信息
|
||||||
|
|
||||||
|
*/
|
||||||
|
- (void)jPushInMessageAlreadyPopInMessageType:(JPushInMessageContentType)messageType Content:(NSDictionary *)content;
|
||||||
|
|
||||||
|
/**
|
||||||
|
inMessage点击的回调
|
||||||
|
|
||||||
|
@param messageType inMessage
|
||||||
|
@param content 下发的数据,广告类的返回数据为空时返回的信息
|
||||||
|
|
||||||
|
*/
|
||||||
|
- (void)jpushInMessagedidClickInMessageType:(JPushInMessageContentType)messageType Content:(NSDictionary *)content;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|||||||
Binary file not shown.
Executable
BIN
Binary file not shown.
@@ -475,6 +475,13 @@ JPushPlugin.prototype.setMaxGeofenceNumber = function(maxNumber) {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//设置角标
|
||||||
|
JPushPlugin.prototype.setBadgeNumber = function(badgeNumb) {
|
||||||
|
if (device.platform === "Android") {
|
||||||
|
this.callNative("setBadgeNumber", [badgeNumb], null);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
if (!window.plugins) {
|
if (!window.plugins) {
|
||||||
window.plugins = {};
|
window.plugins = {};
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user