Android - Как программно закрепить другие приложения на экране?

Я работаю над приложением, которое имеет права владельца устройства, мне нужно реализовать функцию "Закрепление экрана", которая появилась в Android Lollipop. Согласно блогу разработчика, мы можем программно закрепить любое приложение, используя Activity.startLockTask() и закрепленный с помощью Activity.stoplockTask(),

Но в соответствии с моими требованиями я хочу программно закреплять другие приложения на экране.

Пожалуйста, дайте мне знать, если это возможно. Если да, то как? Спасибо!

0 ответов

Да и нет - вот ответ. Думаю, вам интересно, почему? Вы не можете закреплять сторонние приложения, но вы можете иметь свои собственные действия с прозрачной темой и, что более важно, отображаться как<item name="android:windowIsFloating">true</item> - это не приведет к тому, что ваши игроки будут приостановлены (YouTube или Netflix), тогда вы можете прикрепить экран к своей собственной прозрачной активности, отображаемой в виде окна.

При длительном использовании (1) эта тема в упражнении:

<style name="Theme.Transparent" parent="android:Theme">
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:backgroundDimEnabled">false</item>
</style>

(2) Имейте службу переднего плана, которая запускает это действие в любое время, когда вы хотите (давая время для открытия другого приложения)

(3) Выполните действие onResume startLockTask();

Это просто!

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