import java.util.HashMap;
import java.util.Map;
import com.tencent.xinge.ClickAction;
import com.tencent.xinge.Message;
import com.tencent.xinge.Style;
import com.tencent.xinge.XingeApp;
public class XingeDemo {
private XingeApp xinge = new XingeApp(accessId, secretKey);
//按token推送
public void pushSingleTokenMessage(String deviceToken,String title,String content){
//推送单个设备
xinge.pushSingleDevice(deviceToken,makeMessage(title, content));
}
//全部设备推送
public void pushAllDeviceMessage(String title,String content){
xinge.pushAllDevice(0, makeMessage(title, content));
}
private Message makeMessage(String title,String content){
Message message = new Message();
//消息标题
message.setTitle(title);
//消息内容
message.setContent(content);
//消息样式
message.setStyle(makeStyle());
//点击动作
message.setAction(makeClickAction());
//自定义的key-value
//message.setCustom(makeCustom());
return message;
}
private Style makeStyle(){
Style style = new Style(0);
//依次为$builderId[,$ring][,$vibrate][,$clearable][,$nId][,$lights][,$iconType][,$styleId]
//依次为本地通知样式,是否响铃,是否震动,通知栏是否可清除,是否覆盖先前通知,是否呼吸灯,用哪种图标,web端设置是否覆盖编号的通知样式
// Style style = new Style(0,0,0,1,0,1,0,1);
return style;
}
private ClickAction makeClickAction(){
ClickAction clickAction = new ClickAction();
//动作类型,1打开activity或app本身,2打开url,3打开Intent。默认为1
clickAction.setActionType(1);
return clickAction;
}
//用户自定义custom,类型为key-value,可以使用json
private Map makeCustom(){
Map map = new HashMap();
map.put("key", "value");
return map;
}
import java.util.Map;
import com.tencent.xinge.ClickAction;
import com.tencent.xinge.Message;
import com.tencent.xinge.Style;
import com.tencent.xinge.XingeApp;
public class XingeDemo {
private XingeApp xinge = new XingeApp(accessId, secretKey);
//按token推送
public void pushSingleTokenMessage(String deviceToken,String title,String content){
//推送单个设备
xinge.pushSingleDevice(deviceToken,makeMessage(title, content));
}
//全部设备推送
public void pushAllDeviceMessage(String title,String content){
xinge.pushAllDevice(0, makeMessage(title, content));
}
private Message makeMessage(String title,String content){
Message message = new Message();
//消息标题
message.setTitle(title);
//消息内容
message.setContent(content);
//消息样式
message.setStyle(makeStyle());
//点击动作
message.setAction(makeClickAction());
//自定义的key-value
//message.setCustom(makeCustom());
return message;
}
private Style makeStyle(){
Style style = new Style(0);
//依次为$builderId[,$ring][,$vibrate][,$clearable][,$nId][,$lights][,$iconType][,$styleId]
//依次为本地通知样式,是否响铃,是否震动,通知栏是否可清除,是否覆盖先前通知,是否呼吸灯,用哪种图标,web端设置是否覆盖编号的通知样式
// Style style = new Style(0,0,0,1,0,1,0,1);
return style;
}
private ClickAction makeClickAction(){
ClickAction clickAction = new ClickAction();
//动作类型,1打开activity或app本身,2打开url,3打开Intent。默认为1
clickAction.setActionType(1);
return clickAction;
}
//用户自定义custom,类型为key-value,可以使用json
private Map makeCustom(){
Map map = new HashMap();
map.put("key", "value");
return map;
}
}
调用方法:
public class XingePush {
public static void main(String args[]){
XingeDemo xingeDemo = new XingeDemo();
xingeDemo.pushSingleTokenMessage(deviceToken, "标题", "内容");
}
}
其中,accessId,secretKey是申请信鸽账号后信鸽为用户生成的。
deviceToken是下载对应的信鸽官网上的移动端信鸽demo后在信鸽demo app上生成的。