2015-10-13 15 views
13

自分で開発したアプリに重大な問題があります。Androidスタジオ:ホーム画面またはアプリリストにアプリアイコンが表示されない

ロングストーリー:

私はアプリを作成して、私のデスクトップPC上でそれを開発しました。私はそれを私の顧客に見せなければならないので、私はノートブックにアンドロイドスタジオをインストールし、そこでアプリを試してみることにしました。ノートブックにプロジェクトをインポートしてAndroidスタジオを起動し、プロジェクトを実行したところ、アプリは常にスマートフォンのように起動していましたが、ホーム画面に戻ったときにアイコンが表示されませんでしたPCのバージョンが表示されていた)、アプリケーションリストにも表示されませんでしたが、「設定」 - >「アプリケーションの管理」に進むと、そこに表示されます。アイコンAndroidスタジオでアプリを再実行しないと、もう一度起動できません。私は自分のデスクトップPCに戻り、そこからアプリを再実行しようとしましたが、アイコンがまだ変更されていません。

ショートストーリー:自分のノートブックからアンドロイドスタジオで自分のアプリを携帯電話に再インストールした後、ホーム画面とアプリケーションリストにアプリアイコンが表示されませんが、「設定」 - >「アプリケーションの管理」 - 。私がアプリを開発した元のPCに戻って再実行しようとすると、同じアイコンが表示されません。

私はStackoverflow上の私の問題に似ているすべての記事を読んだが、何も私はそれを解決するために助けた。誰かが私に助けてくれることを願っています。

必要に応じてAndroidManifest.xmlを公開しましたが、プライバシー/著作権のため、すべてのコードを投稿できません。申し訳ありません。私はできるだけ正確な英語で書こうとしましたが、私の文章が恐ろしい場合は事前にお詫びします。

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.steel.bluetoothdatatransfer" > 

<uses-sdk 
    android:minSdkVersion="12" 
    android:targetSdkVersion="22" /> 

<uses-permission android:name="android.permission.BLUETOOTH" /> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> 
<uses-permission android:name="android.permission.SEND_SMS" /> 
<uses-permission android:name="android.permission.READ_SMS" /> 
<uses-permission android:name="android.permission.RECEIVE_SMS" /> 
<uses-permission android:name="android.permission.WRITE_SMS" /> 
<uses-permission android:name="android.permission.SMS_DELIVER_ACTION" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 

<!-- <uses-permission android:name="android.permission.BROADCAST_SMS" /> --> 
<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_bt" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <action android:name="android.intent.action.SEND" /> 
      <action android:name="android.intent.action.SENDTO" /> 

      <data android:scheme="sms" /> 
      <data android:scheme="smsto" /> 
      <data android:scheme="mms" /> 
      <data android:scheme="mmsto" /> 
     </intent-filter> 
    </activity> 

    <receiver 
     android:name=".RecMex" 
     android:enabled="true" 
     android:exported="true" 
     android:permission="android.permission.BROADCAST_SMS" > 
     <intent-filter> 
      <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 
     </intent-filter> 
    </receiver> 

    <!-- BroadcastReceiver that listens for incoming MMS messages --> 

    <receiver 
     android:name=".MmsReceiver" 
     android:enabled="true" 
     android:exported="true" 
     android:permission="android.permission.BROADCAST_WAP_PUSH" > 
     <intent-filter> 
      <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" /> 

      <data android:mimeType="application/vnd.wap.mms-message" /> 
     </intent-filter> 
    </receiver> 

    <!-- Activity that allows the user to send new SMS/MMS messages --> 

    <activity 
     android:name=".ComposeSmsActivity" 
     android:label="@string/title_activity_compose_sms" > 
     <intent-filter> 
      <action android:name="android.intent.action.SEND" /> 
      <action android:name="android.intent.action.SENDTO" /> 

      <data android:scheme="sms" /> 
      <data android:scheme="smsto" /> 
      <data android:scheme="mms" /> 
      <data android:scheme="mmsto" /> 
     </intent-filter> 
    </activity> 

    <!-- Service that delivers messages from the phone "quick response" --> 

    <service 
     android:name=".HeadlessSmsSendService" 
     android:enabled="true" 
     android:exported="true" 
     android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE" > 
     <intent-filter> 
      <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" /> 

      <category android:name="android.intent.category.DEFAULT" /> 

      <data android:scheme="sms" /> 
      <data android:scheme="smsto" /> 
      <data android:scheme="mms" /> 
      <data android:scheme="mmsto" /> 
     </intent-filter> 
    </service> 

    <!-- BroadcastReceiver that listens for incoming SMS messages --> 
    <receiver 
     android:name=".SmsReceiver" 
     android:permission="android.permission.BROADCAST_SMS" > 
     <intent-filter> 
      <action android:name="android.provider.Telephony.SMS_DELIVER" /> 
     </intent-filter> 
    </receiver> 

    <activity 
     android:name=".DeviceListActivity" 
     android:label="@string/intestazione" 
     android:theme="@android:style/Theme.Holo.Dialog" 
     > 
    </activity> 


</application> 

答えて

46

あなたは1つのインテントフィルタにすべてを渡されたので、それが起こっています。ユースケースごとに、または少なくともランチャーとメインフィルタを別々に分けてください。このよう

:ランチャーの活動の中スキーム:

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 
<intent-filter> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.BROWSABLE" /> 

     <action android:name="android.intent.action.SEND" /> 
     <action android:name="android.intent.action.SENDTO" /> 

     <data android:scheme="sms" /> 
     <data android:scheme="smsto" /> 
     <data android:scheme="mms" /> 
     <data android:scheme="mmsto" /> 
</intent-filter> 
+1

、あなたは私はあなたに感謝どのくらい理解することはできません:D – Dango

+0

を持って:)何の問題楽しい! –

+0

ありがとうございました、私の一日を保存する: –

0

あなたはすでにあなたは正しく 問題がアンドロイドを使用されるだろう、アプリのロゴが定義されていることを確認していた場合。ポストの下参照:

https://stackoverflow.com/a/8134686/2231702

+0

私はデスクトップPCで正常に動作し、ノートブックのコードが自分のデスクトップPCから同じ(コピー貼り付け)であるため、 – Dango

5

をあなたの問題を解決することができます別のインテントフィルタを追加

これは、問題を解決し
<activity 
      android:name=".activities.SplashActivity" 
      android:screenOrientation="portrait" > 
      <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"></action> 
       <category android:name="android.intent.category.DEFAULT"></category> 
       <category android:name="android.intent.category.BROWSABLE"></category> 
       <data android:host="example.com"></data> 
       <data android:scheme="http"></data> 
       <data android:pathPattern="/.*"></data> 

      </intent-filter> 

     </activity> 
関連する問題