在我的 Android 应用程序中,我(绝对)在其他地方启动了 appStateClient.updateStateImmediate ,其中包含一些数据。但是当回调 onStateLoaded 最终触发之后,传入的字节为空。 & 作为记录,我到达 onConnected OK。代码如下所示:

启动负载:

appStateClient.loadState(this, 0);

开始保存:
appStateClient.updateStateImmediate(this, 0, bytes); // bytes have content here

响应 onStateLoaded:
@Override
public void onStateLoaded(int statusCode, int statusKey, byte[] bytes)
{
    // bytes are null here, statusCode is 7 AKA developer error

在日志猫中看到这一点:
07-18 09:11:09.402: E/Volley(7866): [3530] ip.a: Unexpected response code 403 for https://www.googleapis.com/appstate/v1/states/0
07-18 09:11:09.472: E/Volley(7866): [3530] ip.a: Unexpected response code 403 for https://www.googleapis.com/appstate/v1/states/0
07-18 09:11:09.482: E/LoadStateOp(7866): Error executing operation: Access Not Configured

我在 Google API 页面上完成了整个 APP_ID 生成过程,并且只使用了整数部分。我已经验证我正在使用 debug.keystore 中的相同 SHA1,eclipse 在 Google API 上将其用作我的 OAuth SHA1,并且那里的包名称与我的 标记相匹配。

我错过了什么?提前致谢

最佳答案

您是否使用正确的元数据配置了 AndroidManifest.xml

<meta-data android:name="com.google.android.gms.appstate.APP_ID"
           android:value="@string/APP_ID" />

如果没有这个,你会得到一个开发者错误。

10-07 20:48