2016-05-17 2 views
9

最後の数日で些細ではあるが厄介な問題が発生しました。 (ロード少し遅い場合)以前にGoogleのサービスを利用するための法的なテキストを表示するダイアログをポップアップ私のメニューオプションは非常に満ちていたが、今では、コードを変更せずにヌル..ですgetOpenSourceSoftwareLicenseInfoがnullを返すようになりました

GoogleApiAvailability apiAvailability = GoogleApiAvailability.getInstance(); 
     int resultCode = apiAvailability.isGooglePlayServicesAvailable(this); 
     if (resultCode == ConnectionResult.SUCCESS) { 
      AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
      builder.setTitle("About"); 
      builder.setMessage(apiAvailability.getOpenSourceSoftwareLicenseInfo(this)); 
      builder.setPositiveButton("OK", null); 
      builder.show(); 

     } 

これは他の人に共通する問題、つまりGoogleのアップデートやその他の可能性のある新しいバグですか?

+0

()getOpenSourceSoftwareLicenseInfo(本)文字列licenseInfo = GoogleApiAvailability.getInstanceを試してみてください。 –

+1

ありがとう、しかし私はそれを試みました。 –

答えて

2

はい、Google Playサービスを最新バージョン(この回答の作成時には9.0.0)にアップグレードすると問題が解決します。

私も同じ問題がありました.Google Playサービスをアップグレードした後、ライセンスが正しく取得されました。

3

https://code.google.com/p/gmaps-api-issues/issues/detail?id=9813

によれば、Googleはそれがoss_noticeからthird_party_licensesに探していたファイル名を変更したことが表示されます。彼らは基本的に、9.0.0の下にあるプレイサービス実装のライセンス情報を取得していませんでした。

以降のバージョンのプレイサービスでライセンス情報を取得するには、バージョンを9.0.0に更新する必要があります。

EDIT(2016年6月6日):Googleが今問題を調査中です。レポートの

プロジェクトメンバー#3リットル... @ google.com

感謝。我々は を内部的に提出し、それを調べます。

ステータス:受理ラベル: 内部-29143355

2

古いアプリを維持していると合理的に古代の機能の全体の多くを壊すことなく、サービスはGoogle Playの非常に古いバージョンからアップデートできない場合

Android StudioでgetOpenSourceSoftwareLicenseInfo()メソッドを逆コンパイルしてメソッドをプロジェクトにコピーし、 "oss_notice"から "third_party_licenses"に変更してください。この方法は非推奨となり、もはや必要ではないされてい

Uri var1 = (new android.net.Uri.Builder()).scheme("android.resource").authority("com.google.android.gms").appendPath("raw").appendPath("oss_notice").build(); 

Uri var1 = (new android.net.Uri.Builder()).scheme("android.resource").authority("com.google.android.gms").appendPath("raw").appendPath("third_party_licenses").build(); 
1

に:任意のデバイスのランニングに https://developers.google.com/android/reference/com/google/android/gms/common/GooglePlayServicesUtil.html#getOpenSourceSoftwareLicenseInfo(android.content.Context)

このライセンス情報は設定で表示されている>グーグル>オープンソースGoogle Playサービスアプリケーションでこのライセンステキストを表示する必要はなく、このメソッドはGoogle Playサービスの将来のバージョンでは削除されます。

関連する問題