开发一个以 Firebase 作为后端的应用程序。目前,在实施 Firebase App Invite 时卡住了。只是想发送邀请(目前没有尝试实现已安装的新用户点击动态链接)但onActivityResult返回错误的result_code
遵循的步骤
- 集成 FireBase SDK 并成功验证。
- 启用 Firebase 动态链接并在应用中引用
- 单击邀请按钮会显示内置 Firebase 活动,其中包含选择要邀请和发送的用户的选项(短信或电子邮件邀请)
- 该应用程序按预期返回到邀请屏幕。
代码片段
邀请活动
btnInvite.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new AppInviteInvitation.IntentBuilder(INVITATION_TITLE)
.setMessage(INVITATION_MESSAGE)
.setDeepLink(Uri.parse("https://ewyc6.app.goo.gl/eNh4"))
.setCallToActionText(INVITATION_CALL_TO_ACTION)
.build();
startActivityForResult(intent, REQUEST_INVITE);
}
});
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d(TAG, "onActivityResult: requestCode=" + requestCode + ", resultCode=" + resultCode + "result_ok ="+RESULT_OK);
if (requestCode == REQUEST_INVITE) {
if (resultCode == RESULT_OK) {
// You successfully sent the invite,
// we can dismiss the button.
btnInvite.setVisibility(View.GONE);
String[] ids = AppInviteInvitation.getInvitationIds(resultCode, data);
StringBuilder sb = new StringBuilder();
sb.append("Sent ").append(Integer.toString(ids.length)).append(" invitations: ");
for (String id : ids) sb.append("[").append(id).append("]");
Toast.makeText(getApplicationContext(),"Invited!!!",Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getApplicationContext(),"Sorry, unable to send invite.",Toast.LENGTH_SHORT).show();
}
}
}
//result_code 为 3,调试时 RESULT_OK 为 -1
Firebase 的新手,如果能指出我做错了什么,将不胜感激。