2017-10-27 3 views
1

リンクをクリックすると、Instant Appランチャーが表示されますが、Webバージョンにナビゲートした後に表示されます。 (Google PlayのプロダクションリリースではIA)。インスタントアプリケーションがリリースで機能していません(インスタントアプリケーションの起動が不明な理由で失敗しました(getInstantAppPreLaunchInfo failed))

デバッグバージョンは完全に機能します。

私のマニフェストファイルは、google sampleとまったく同じです。私は、ログを見て、これらの行を見つける

App link

(私のリンクやサイト付):

com.google.android.instantapps.supervisorのD /スーパーバイザーを:UrlHandler com.googleを開始します。 android.instantapps.supervisor D/AutoManageHelper:クライアント0のAutoManageを開始する false null com.google.android.instantapps.supervisor D/AutoManageHelper:onStart true {0 = com.google.android.gms.common.api.internal .zzi $ zza @ d12b8e9} com.goo gle.android.instantapps.supervisor E/OptInDirector:インスタントアプリ 不明な理由で起動が失敗しました(getInstantAppPreLaunchInfoが失敗しました。 - 前のlogcatを確認してください)。com /.jp.instantapps.supervisor E/Supervisor:オプトインが強制終了されました。 com.google.android.instantapps.supervisor I/PlayCommon:[38684] PlayEventLogger.uploadEventsImpl: com.google.android.instantapps.supervisor W/PlayCommonをアップロードするための準備ログ:[38684] PlayEventLogger.getAuthToken:いいえアカウント認証用トークンが com.google.android.instantapps.supervisorを提供するI/PlayCommon:[38684] PlayEventLogger.uploadLog:サーバーへの接続: https://play.googleapis.com/play/log?format=raw&proto_v2=true 10-27 com.google.android.instantapps.supervisor I/PlayCommon: [38684] PlayEventLogger.handleResponse: アップロードされたログ。 com.google.android.instantapps.supervisor I/PlayCommon: [38684] PlayEventLogger.uploadEventsImpl:アップロードするログの準備 com.google.android.instantapps.supervisor I/PlayCommon:[38684] PlayEventLogger.uploadEventsImpl:ファイルが準備されていません com.google.android.instantapps.supervisor D/Supervisor:400 msの期限が過ぎているため、 の負荷画面が表示されます。 com.google.android.instantapps.supervisorのD /スーパーバイザー:UrlHandler

が、私はエラーが表示され、ここで考える停止:

インスタントアプリの起動は(インスタントアプリ起動 に失敗しました不明な理由で失敗しました不明な理由(getInstantAppPreLaunchInfoが失敗しました - 前のlogcatを確認していません - 前のlogcatを確認してください)

オプトインが中止されました。この問題の

+0

Proguardを使用していますか? リリース用とデバッグ用に別々のAndroidManifest.xmlファイルがありますか? リリースとデバッグに異なる署名設定を使用していますか? – deadmoto

+0

@deadmotoはい、私はプロガードを使用します。 私はマニフェストを1つしか持っていません。 (モジュールごとに)。 はい、私は標準のキーでデバッグに署名し、リリースのために私自身のストレージを作成します –

+1

まあ、リリースのためにProguardを無効にして、それが役立つかどうか確認してください。 また、Instant Appsランタイムがまだ安定していないため、さまざまなバージョンのAndroidで試してみてください。 – deadmoto

答えて

0

一時的な回避策は、各機能モジュールのための大規模な「-keep」ProGuardのを設定することです。あなたのアプリ/ proguard-rules.pro(インストールアプリモジュールに

  1. 追加「クラスを-whyareyoukeeping **」:あなたはProGuardの設定時に保つためにどのようなクラスを調べるには

    、以下を実行してください。 )

  2. インストールアプリを構築し、その後、Gradleのコンソールがすることができますので、それはいくつかのエディタにその部分を保ったか
  3. コピーされたクラスに関する情報のリストが含まれます真
  4. にインストールアプリのminifyEnabledを設定編集する
  5. " は" "または" はライブラリ "のいずれかで示されているすべてのクラスについて、
  6. となります。 " - keep class some.package.class {*;}" a。さらなる最適化のためにメンバレベルでこれを行うこともできます。
  7. これらのキープリストを編集してから、それぞれのフィーチャのproguard-rules.proに追加できます。
  8. あなたはそうかもしれない今、あなたは真のminifyEnabledとインスタントアプリを構築することができ

そのベースを検証する必要がある/ proguard-rules.pro「-dontobfuscate」(または伝播難読化は何とか機能の下流にマップする)を使用しています。

ステップ5に注意してください。エディタの良さによっては、コンパイルするのが難しいかもしれません。エンジニアがデモンストレーションした方法の1つは、AWKコマンドを使用してテキストを置換することでした: - awk '/^[^]/{cls = $ 1}/is(ライブラリ| keep | library)/ {print "-keep class" cls "{*; } "} '

For more detail and update can you check here.

関連する問題