我的应用程序开始无法发送邀请。弹出邀请屏幕,当发件人按发送以向所选联系人发送电子邮件时,它会收到错误
消息无法发送
我尝试了我能记住的一切,检查连接,使用其他谷歌帐户,甚至构建一个只发送邀请的小应用程序。 我能找到的唯一能给出错误的线索的是以下日志条目:
05-05 19:56:41.191 1409-1409 /? D / SurfaceFlinger:重复的图层名称: 改变 com.google.android.gms / com.google.android.gms.appinvite.AppInviteActivity 至 com.google.android.gms / com.google.android.gms.appinvite.AppInviteActivity#3
...
05-05 19:56:41.411 3254-4228 /? E / Volley:[216] BasicNetwork.performRequest:意外的响应代码400 for https://www.googleapis.com/plusdatamixer/v1/mutateonekey?alt=proto&key=AIzaSyAP-gfH3qvi6vgHZbSYwQ_XHqV_mXHhzIk
按下发送后大约生成10个日志条目,但只有这两个似乎是相关的。
以下是我的测试应用程序的完整代码,文档中的副本,以防我在某处失败:
public class MainActivity extends AppCompatActivity {
private static final int REQUEST_INVITE = 1002;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
private void onInviteClicked() {
Intent intent = new AppInviteInvitation.IntentBuilder(getString(R.string.invitation_title))
.setMessage(getString(R.string.invitation_message))
.setDeepLink(Uri.parse(getString(R.string.invitation_deep_link)))
// .setCustomImage(Uri.parse(getString(R.string.invitation_custom_image)))
.setCallToActionText(getString(R.string.invitation_cta))
.build();
startActivityForResult(intent, REQUEST_INVITE);
}
public void click(View view) {
onInviteClicked();
}
}
依赖项是由android builder自动添加的。这里是gradle文件的快照:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
implementation 'com.google.firebase:firebase-invites:11.8.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
我被困在这里几个小时仍然无能为力。任何指针?
更新: 应用程序和测试项目可以在我的物理机器人上成功发送邀请,运行API 21.在带有API 21的Android模拟器中运行应用程序仍然失败,因此它指出服务受限于物理设备,但在一周内我在虚拟设备上成功测试。 此外,没有任何支持服务受到限制,所以我必须做错事。
更新于2008年5月6日:
刚刚更新到邀请包到com.google.firebase:firebase-invites:15.0.1
并仍然遇到相同的错误,但前面是:
W/GLSUser: [AppCertManager] IOException while requesting key:
java.io.IOException: Invalid device key response.
at gga.a(:com.google.android.gms@12529024@12.5.29 (040700-192802242):12)
at gga.a(:com.google.android.gms@12529024@12.5.29 (040700-192802242):64)
at gga.a(:com.google.android.gms@12529024@12.5.29 (040700-192802242):21)
at gfy.a(:com.google.android.gms@12529024@12.5.29 (040700-192802242):4)
at gfy.onTransact(:com.google.android.gms@12529024@12.5.29 (040700-192802242):4)
at android.os.Binder.transact(Binder.java:627)
at cwl.onTransact(:com.google.android.gms@12529024@12.5.29 (040700-192802242):3)
at android.os.Binder.execTransact(Binder.java:697)
W/GLSUser: [DeviceKeyStore] Cannot load key: Device key file not found.
E/Volley: [220] BasicNetwork.performRequest: Unexpected response code 400 for https://www.googleapis.com/plusdatamixer/v1/mutateonekey?alt=proto&key=AIzaSyAP-gfH3qvi6vgHZbSYwQ_XHqV_mXHhzIk