web-dev-qa-db-ja.com

Androidアプリケーションアイコンが表示されない

作業中のAndroidアプリのアイコンを作成するのに何時間も費やしましたが、エミュレータでアプリに表示することができません。

http://developer.Android.com/guide/practices/ui_guidelines/ icon_design_launcher.html

マニフェストには次の行が含まれています。

 <application Android:icon="@drawable/icon" Android:label="@string/app_name" Android:debuggable="true">

なぜ表示されないのかに関するアイデアはありますか?

17
Dan
  1. アイコンがこれらのフォルダにicon.pngという名前で保存されていることを確認してください。
  2. Androidにドローアブル/アイコンリソースがあることを確認します。これを確認するには、gen/R.Javaファイルを見て、ドローアブル内部クラスのpublic static final intアイコン= 0x ...を確認します。
  3. プロジェクトビルドをクリーンアップし、既存のバージョンのアプリを携帯電話/エミュレータからアンインストールしてから、新しいバージョンを再インストールしてください。
23
Jems

承認された回答に対するWin Myo Htetのコメントに注意してください。彼は私の問題を解決した。

Jemsあなたの答えには非常に多くの投票があるので、次のポインターも追加できますか?MAINおよびLAUNCHERのインテントフィルターが他のインテントフィルターと混合されていないことを確認してください。 – Myo Htetを15年12月6日5:47に獲得する

"mixed"がキーワードです。私は、AndroidManifest.xmlファイルに、ファイル選択ですべてのファイルタイプが使用できないようにする意図がありました。それは2番目の回答の解決策から始まりましたが、ファイル選択のための追加の意図が含まれていました。これにより、Androidアプリのインストール時にアイコンをインストールできなくなりました。WinMy Htetの素晴らしいアドバイスは本質的に1つの単語なので簡単に見落とされる可能性があるため、他の誰かがこの問題に遭遇した場合に備えて投稿します"混合"

8

@Britton Pentakillと@arnav bhartiyaの回答について詳しく説明したいと思います。回答を使用して問題を解決できるからです。 Android Studioは「アプリはGoogleでインデックスできない」と不満を言っていたので、MainActivityにさらにアクションを追加しました。また、インデックス可能にしたかったのです。

違う AndroidManifest.xml

<intent-filter>
  <action Android:name="Android.intent.action.MAIN"/>
  <category Android:name="Android.intent.category.LAUNCHER"/>
  <action Android:name="Android.intent.action.SEND"/>
  <action Android:name="Android.intent.action.VIEW"/>
  <category Android:name="Android.intent.category.BROWSABLE"/>
  <data Android:scheme="https"
        Android:Host="siara.cc"
        Android:pathPrefix="/CrossCalc" />
 </intent-filter>

そのため、アプリを公開したところ、レビューに合格してPlayストアで公開されたとしても、Play Consoleにインストールした後、人々は私のアプリアイコンを見つけることができず、[開く]ボタンがありませんでした(7日かかりました)。

次に、彼らの答えを読んだとき、私は修正し、今私のアプリを開くためのアイコンを見ることができます:

正しい:

<intent-filter>
  <action Android:name="Android.intent.action.MAIN"/>
  <category Android:name="Android.intent.category.LAUNCHER"/>
</intent-filter>
<intent-filter>
  <action Android:name="Android.intent.action.VIEW"/>
  <category Android:name="Android.intent.category.DEFAULT"/>
  <category Android:name="Android.intent.category.BROWSABLE"/>
  <data
    Android:scheme="https"
    Android:Host="siara.cc"
    Android:pathPrefix="/CrossCalc"/>
</intent-filter>
5
arun

ランチャーアクティビティのインテントの名前がMAINであることを確認してください。

<intent-filter>
        <action Android:name="Android.intent.action.MAIN" />
    <category Android:name="Android.intent.category.LAUNCHER" />
    </intent-filter>

さらに、アイコンをドローアブルフォルダーに追加し、マニフェストのアプリケーションブロックで参照します。

<application
Android:allowBackup="true"
Android:icon="@drawable/icon"
Android:label="@string/app_name"
Android:theme="@style/AppTheme" >
4
arnav bhartiya

最近同様の問題が発生し、最終的に2つの原因があることがわかりました。

  • ファイル拡張子:安全を確保するために、常に。png形式を使用してください。他のいくつかのフォーマットは、特定のデバイスで実際に機能します(たとえば、.jpgアイコンを使用しても、まだInfinix note 4スマートフォンに表示されます)が、。pngファイルは、すべてのデバイスで動作します。

  • 保存場所:アイコンファイルは、ドローアブルフォルダーにある必要があります。マニフェストファイルがドローアブルを保存した場所を指しているかどうかについても、必ずダブルチェックを行ってください。

これが役に立てば幸いです。

0
Taslim Oseni
<manifest ...>

    <application
        Android:icon="..."
        Android:roundIcon="..."/>
</manifest>

アプリのマニフェストの適用には、アイコンとラウンドアイコンの2つの属性があります。 1つはデバッグ用で、もう1つはリリース用です。

Android 5.0で実行している場合は、MainActivity内のonCreateメソッドに次の行を追加するだけです。

getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setLogo(R.drawable.ic_launcher);
getSupportActionBar().setDisplayUseLogoEnabled(true);

それはあなたの場合に役立つかもしれません。

0
sam100rav

これを追加:

Android:roundicon also