2017-03-11 19 views
2

Android Youtubeアプリから広告をクリックすると、Google Playのダイアログが表示され、ダイアログからアプリをインストールできます。 //詳細:com.google.android.finsky.activities.InlineAppDetailsDialog私はウリを設定しようとしました

「市場 - -
2をcom.android.vending
1:アクティビティモニタで
私は、このパラメータを見つけました?id = example.package "しかし、何も問題はありません。

広告をクリックすると開いているダイアログです。 https://i.stack.imgur.com/ek3Q6.jpg私のアプリからgoogle playダイアログを開く

+0

あなたはそれを行う方法を見つけましたか? –

答えて

3

あなたの調査結果と他のAndroidデベロッパーの助けを借りて、Playストアアプリのこの機能は一部のGoogleのパートナーに限定されていると判断しました。結論は、com.google.android.finsky.activities.InlineAppDetailsDialogの逆コンパイルされたコードに基づいています。には、呼び出し元のパッケージのアプリケーションIDと署名を確認します。許可されたアプリだけがこのダイアログを表示することができます。ここで

は、逆コンパイル、コードの一部です:テストアプリケーションからこの活動を起動しようとしたとき

switch (string2.hashCode()) { 
      case 714499313: { 
       if (!string2.equals("com.facebook.katana")) break; 
       n2 = 0; 
       break; 
      } 
      case 419128298: { 
       if (!string2.equals("com.facebook.wakizashi")) break; 
       n2 = 1; 
       break; 
      } 
      case -649684660: { 
       if (!string2.equals("flipboard.app")) break; 
       n2 = 2; 
       break; 
      } 
      case 1249065348: { 
       if (!string2.equals("com.kakao.talk")) break; 
       n2 = 3; 
       break; 
      } 
      case 1153658444: { 
       if (!string2.equals("com.linkedin.android")) break; 
       n2 = 4; 
       break; 
      } 
      case -583737491: { 
       if (!string2.equals("com.pinterest")) break; 
       n2 = 5; 
       break; 
      } 
      case -928396735: { 
       if (!string2.equals("com.test.overlay")) break; 
       n2 = 6; 
       break; 
      } 
      case 10619783: { 
       if (!string2.equals("com.twitter.android")) break; 
       n2 = 7; 
       break; 
      } 
      case 1835489205: { 
       if (!string2.equals("ru.yandex.weatherplugin")) break; 
       n2 = 8; 
       break; 
      } 
      case 19680841: { 
       if (!string2.equals("ru.yandex.yandexnavi")) break; 
       n2 = 9; 
       break; 
      } 
      case 19650874: { 
       if (!string2.equals("ru.yandex.yandexmaps")) break; 
       n2 = 10; 
       break; 
      } 
      case 1663191933: { 
       if (!string2.equals("ru.yandex.yandexbus")) break; 
       n2 = 11; 
       break; 
      } 
      case 636981927: { 
       if (!string2.equals("ru.yandex.metro")) break; 
       n2 = 12; 
       break; 
      } 
      case 647779725: { 
       if (!string2.equals("ru.yandex.searchplugin")) break; 
       n2 = 13; 
       break; 
      } 
      case -143313792: { 
       if (!string2.equals("ru.yandex.test.promolib")) break; 
       n2 = 14; 
       break; 
      } 
      case -2075712516: { 
       if (!string2.equals("com.google.android.youtube")) break; 
       n2 = 15; 
       break; 
      } 
      case 1387611572: { 
       if (!string2.equals("com.google.android.youtube.tv")) break; 
       n2 = 16; 
       break; 
      } 
      case 886484461: { 
       if (!string2.equals("com.google.android.apps.youtube.kids")) break; 
       n2 = 17; 
       break; 
      } 
      case 1386399663: { 
       if (!string2.equals("com.google.android.apps.youtube.gaming")) break; 
       n2 = 18; 
       break; 
      } 
      case 1713433253: { 
       if (!string2.equals("com.google.android.apps.youtube.music")) break; 
       n2 = 19; 
       break; 
      } 
      case 1252744364: { 
       if (!string2.equals("com.google.android.apps.youtube.creator")) break; 
       n2 = 20; 
       break; 
      } 
      case 304833084: { 
       if (!string2.equals("com.google.android.apps.youtube.vr")) break; 
       n2 = 21; 
       break; 
      } 
      case 1712832578: { 
       if (!string2.equals("com.google.android.apps.youtube.mango")) break; 
       n2 = 22; 
       break; 
      } 

、私は次のログを取得:

06-09 10:44:30.100 5180-5180/? W/Finsky: [2] com.google.android.finsky.activities.InlineAppDetailsDialog.onCreate(88): Called from untrusted package. 

をだから、少なくとものようようですこの答えを書いて、あなたが望むことをすることはできません。将来この機能が第三者に公開されることを願っています。

関連する問題