Должен ли пользовательский модуль запуска Android как-то сигнализировать, что он готов (потому что я не получаю BOOT_COMPLETED с моим модулем запуска)?

Должен ли кастомный Android-пускатель как-то сигнализировать о готовности?

Я не получаю BOOT_COMPLETED с моей программой запуска, но когда я использую оригинальный системный модуль запуска, BOOT_COMPLETED отправляется. Я должен сделать что-то особенное в коде запуска, чтобы сигнализировать, что он готов?

Почему BOOT_COMPLETED не отправляется, когда я запускаю свой собственный модуль запуска по сравнению с собственным модулем запуска системы? Мой лаунчер работает хорошо, за исключением того, что BOOT_COMPLETED никогда не транслируется, когда я его использую.

ОБНОВИТЬ
Кажется, что активность запуска должна быть видимой (и сенсорной?), По крайней мере, до тех пор, пока не будет отправлено BOOT_COMPLETED, в противном случае BOOT_COMPLETED, похоже, вообще не отправляется. Кто-нибудь может это подтвердить?

Я использую черный Activity с этим, и он не работает:

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
            | WindowManager.LayoutParams.FLAG_NOT_TOUCH_MODAL
            | WindowManager.LayoutParams.FLAG_NOT_TOUCHABLE);

ОБНОВЛЕНИЕ Я получаю это в журналах, чтобы показать вам, что BOOT_COMPLETED действительно не отправлено:

01-04 17:33:39.384 541-599/system_process W/AudioService: onLoadSoundEffects() called before boot complete

Через 20 минут это все еще так. Я на KitKat 4.4.4.

ОБНОВИТЬ

Манифест пусковой установки:

<activity android:name=".application.HomeInterceptorActivity"
          android:label="@string/app_name"
          android:launchMode="singleTop"
          android:clearTaskOnLaunch="true"
          android:stateNotNeeded="true"
          android:theme="@style/Invisible"
          android:excludeFromRecents="true"
          android:exported="false"
          android:noHistory="true">
          <!--android:taskAffinity="">-->
    <intent-filter>
        <action android:name="android.intent.action.MAIN"/>
        <category android:name="android.intent.category.HOME"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <!--<category android:name="android.intent.category.LAUNCHER"/>-->
    </intent-filter>
</activity>

ОБНОВЛЕНИЕПохоже, что проблема возникает, если непосредственно перед отправкой BOOT_COMPLETED запускается другое действие непосредственно в onResume () модуля запуска (хотя это может быть и совпадением, вызванным некоторым состоянием гонки). Такое ощущение, что запускающая программа должна провести некоторое время в своей собственной деятельности, чтобы разрешить отправку BOOT_COMPLETED.

0 ответов

Другие вопросы по тегам