一一忱、創(chuàng)建應用
登錄信鴿管理后臺,我的應用-新建應用谭确。
創(chuàng)建完成之后點擊查看應用就可以獲取到 appId和 secretKey
二帘营、導入相關依賴
在項目的pom.xml里引入jar包
<dependency>
<groupId>com.github.xingePush</groupId>
<artifactId>xinge</artifactId>
<version>1.2.0-SNAPSHOT</version>
</dependency>
<repositories>
<repository>
<id>xingePush</id>
<url>https://raw.githubusercontent.com/xingePush/maven-repository/snapshot/</url>
</repository>
</repositories>
三、創(chuàng)建對象使用賬號推送
前提是android已經調試好了逐哈,當用戶登錄時候使用用戶賬號去信鴿平臺注冊芬迄。這時候才能使用賬號推送。
/**
* androidApp對象
*/
private final static XingeApp androidApp = new XingeApp(appId, secretKey);
/**
* ios對象
*/
private final static XingeApp iOSApp = new XingeApp(appId, secretKey);
/**
* 信鴿推送
*
* @param title 標題
* @param content 內容
* @param accountNos 接收人id集合
* @param custom 自定義參數鍵值對
* @param env 手機類型
* @param messageType推送方式
* @return org.json.JSONObject
*/
public static JSONObject pushSingleAccount(String title, String content, ArrayList<String> accountNos, Map<String, Object> custom,
int env, String pushType) {
PushAppRequest request = new PushAppRequest();
//推送方式
Message message = new Message();
//自己定義一個枚舉昂秃、判斷使用單推還是群推
if (pushType.equals(PushType.SOLE)) {
//這里是使用賬號單獨推送
request.setAudience_type(AudienceType.account);
} else {
//這里是使用賬號群推送
request.setAudience_type(AudienceType.account_list);
}
request.setAccount_list(accountNos);
request.setMessage_type(MessageType.notify);
request.setMessage(message);
request.setPush_id("0");
JSONObject jsonObject;
//判斷使用android推送還是ios推送
if (env == XinGeAppType.android.getChName()) {
request.setPlatform(Platform.android);
MessageAndroid messageAndroid = new MessageAndroid();
messageAndroid.setCustom_content(JSON.toJSONString(custom));
ClickAction clickAction = new ClickAction();
clickAction.setActivity("這里是后臺控制點擊之后app跳轉的路徑");
messageAndroid.setAction(clickAction);
message.setTitle(title);
message.setContent(content);
message.setAndroid(messageAndroid);
request.setEnvironment(Environment.dev);
jsonObject = androidApp.pushApp(request);
} else{
request.setPlatform(Platform.ios);
//ios分測試環(huán)境和生產環(huán)境我這里就默認測試環(huán)境了
request.setEnvironment(Environment.dev);
MessageIOS messageIOS = new MessageIOS();
messageIOS.setCustom(JSON.toJSONString(custom));
Aps aps = new Aps();
Alert alert = new Alert();
alert.setBody(content);
aps.setAlert(alert);
aps.setBadge_type(1);
messageIOS.setAps(aps);
message.setIos(messageIOS);
jsonObject = iOSApp.pushApp(request);
}
return jsonObject;
}
/** 小枚舉禀梳,類里有很多枚舉需要自己定義 */
public enum XinGeAppType {
android(1),
ios(2);
XinGeAppType(int chName){
this.chName = chName;
}
private int chName;
public int getChName() {
return chName;
}
public void setChName(int chName) {
this.chName = chName;
}
}
有需要的朋友可以具體參考信鴿文檔