Android 无法在fcm中使用XMPP协议发送上游消息
先生,我正试图从我的android手机发送上行消息,但失败了。不知道我错在哪里。 这是我的密码:Android 无法在fcm中使用XMPP协议发送上游消息,android,firebase-cloud-messaging,Android,Firebase Cloud Messaging,先生,我正试图从我的android手机发送上行消息,但失败了。不知道我错在哪里。 这是我的密码: public class MainActivity extends AppCompatActivity { Button button; private AtomicInteger msgId; FirebaseMessaging fm; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreat
public class MainActivity extends AppCompatActivity {
Button button;
private AtomicInteger msgId;
FirebaseMessaging fm;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FirebaseMessaging.getInstance().subscribeToTopic("hello");
FirebaseInstanceId.getInstance().getToken();
msgId = new AtomicInteger();
button = (Button) findViewById(R.id.click);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Toast.makeText(getApplicationContext(),""+msgId,Toast.LENGTH_SHORT).show();
fm = FirebaseMessaging.getInstance();
RemoteMessage message=new RemoteMessage.Builder("<my sender id>@gcm.googleapis.com")
.setMessageId(Integer.toString(msgId.incrementAndGet()))
.addData("my_message", "Hello World")
.addData("my_action", "SAY_HELLO")
.build();
fm.send(message);
}
});
}
}
我从一周前开始尝试此功能,但仍然不知道我错在哪里。此外,logcat中没有任何内容。请帮助。为了优化设备资源,特别是电池,对OnMessageAgent和onSendError的回调是批处理的,因此在发送大约10条上游消息之前,您可能不会收到回调
有关更多信息,请参阅。为了优化设备资源,特别是电池,对OnMessageAgent和onSendError的回调是分批进行的,因此在发送大约10条上游消息之前,您可能不会收到回调
有关更多信息,请参阅。您需要有一个运行某些xmpp服务器的应用程序服务器来与Firebase消息服务器进行通信 您需要有一个运行某些xmpp服务器的应用程序服务器来与Firebase消息服务器进行通信 一定要为你的留言设定时间。例如,
newremotemessage.Builder(…).setTtl()
。我没有在FirebaseMessagingService和/或云连接服务器(CCS)参考资料中看到这种行为的记录。请确保设置消息的生存时间。例如,newremotemessage.Builder(…).setTtl()
。我没有在FirebaseMessagingService和/或云连接服务器(CCS)参考中看到这种行为的记录。例如,您必须在消息中设置TTL
RemoteMessage message=new RemoteMessage.Builder("<my sender id>@gcm.googleapis.com")
.setMessageId(Integer.toString(msgId.incrementAndGet()))
.addData("my_message", "Hello World")
.addData("my_action", "SAY_HELLO")
.setTtl(86400)
.build();
RemoteMessage message=new RemoteMessage.Builder(“@gcm.googleapis.com”)
.setMessageId(Integer.toString(msgId.incrementAndGet())
.addData(“我的信息”,“你好,世界”)
.addData(“我的行动”,“说你好”)
.setTtl(86400)
.build();
setTtl(86400)这条线很重要,希望能对你有所帮助
例如,您必须在消息中设置TTL
RemoteMessage message=new RemoteMessage.Builder("<my sender id>@gcm.googleapis.com")
.setMessageId(Integer.toString(msgId.incrementAndGet()))
.addData("my_message", "Hello World")
.addData("my_action", "SAY_HELLO")
.setTtl(86400)
.build();
RemoteMessage message=new RemoteMessage.Builder(“@gcm.googleapis.com”)
.setMessageId(Integer.toString(msgId.incrementAndGet())
.addData(“我的信息”,“你好,世界”)
.addData(“我的行动”,“说你好”)
.setTtl(86400)
.build();
setTtl(86400)这条线很重要,希望能对你有所帮助
感谢您的回答,但发送50条消息后仍无法收到任何回拨。请帮助。感谢您的回答,但发送50条消息后仍无法收到任何回拨。请帮助。