如何解决带有 Google Play Services SDK (Passes API) 的最小 Android 应用不起作用
我在 Android Studio 中创建了裸 Android 应用程序,我向其中添加了此 Google 服务 API 依赖项:implementation 'com.google.android.gms:play-services-pay:16.0.0'
现在我尝试像这样访问主活动中的 Passes API
:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
GoogleApiAvailability g = new GoogleApiAvailability();
Log.e("Is available?",g.isGooglePlayServicesAvailable(this) + "");
PayClient payClient = Pay.getClient(this);
}
}
可用性检查(第 10 行)返回 0
,这意味着成功,但是当我尝试通过 PayClient
获取 Pay.getClient(this)
时出现此错误:
2021-08-01 22:09:05.183 4722-4748/com.example.app E/Googleapimanager: Failed to get service from broker.
java.lang.SecurityException: GoogleCertificatesRslt: Package signed with unkNown certificate (go/gsrlt)
at android.os.Parcel.createExceptionorNull(Parcel.java:2373)
at android.os.Parcel.createException(Parcel.java:2357)
at android.os.Parcel.readException(Parcel.java:2340)
at android.os.Parcel.readException(Parcel.java:2282)
at com.google.android.gms.common.internal.IGmsServicebroker$Stub$zza.getService(com.google.android.gms:play-services-basement@@17.5.0:14)
at com.google.android.gms.common.internal.BaseGmsClient.getRemoteService(com.google.android.gms:play-services-basement@@17.5.0:281)
at com.google.android.gms.common.api.internal.zabj.run(com.google.android.gms:play-services-base@@17.5.0:11)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:223)
at android.os.HandlerThread.run(HandlerThread.java:67)
我的应用程序由有效证书签名,并且我有 Google 支持添加的相同 SHA 指纹(如 here 所述),我正在按照本教程通过本机 API 添加会员卡:https://developers.google.com/pay/passes/guides/implement-the-api/save-passes-to-google-pay?feed=native-android-app#call-android-sdk
知道有什么问题吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。