У меня есть приложение, которое использует Службу, которую я добавил с помощью Bindable Jar.
Текущее состояние:
У этого Jar есть собственный Манифест (см. Ниже),когда я ничего не трогаю в этом манифесте, все работает как надо.
Проблема:
Этот Jar всегда позволяет при развертывании на устройстве использовать его AppIcon для запуска на устройстве.Таким образом, мое приложение оставляет, наконец, две иконки для запуска, одну нужную, а другую - из банки.
Мой подход был удалить следующую часть из манифеста:
android:theme="@style/AppTheme">
<activity
android:name=".ScanDemoActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Делая это,Сбой приложения при загрузке с ошибкой: BootReceiver не найден ...
Удаление следующих нескольких строк:
<receiver android:name="com.company.scandemo.BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.HOME"/>
</intent-filter>
</receiver>
вызвал корректный запуск при загрузке, но служба не работала при BOOT_COMPLETED, когда я запускаю приложение с помощью иконки Launcher, все работает.
Желаемое поведение:
Я хочу, чтобы главное приложение оставляло только один значок запуска и запускался правильно при загрузке
Вот Манифест:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.company.scandemo"
android:versionCode="1"
android:versionName="2.2" >
<uses-sdk
android:minSdkVersion="17"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name=".ScanDemoActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<service android:name="com.company.scandemo.FloatingService" />
<receiver android:name="com.company.scandemo.BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<category android:name="android.intent.category.HOME"/>
</intent-filter>
</receiver>
</application>
</manifest>