Я хочу запустить приложение Android (стороннее), но не показывать его на физическом экране.
Условия
- Иметь полный исходный код системы (AOSP)
- Иметь root-права
- Попробуйте создать виртуальный экран и запросите приложение для отображения на нем (следующий код выполняется с помощью android.uid.system).
Код: Выделить всё
public static android.hardware.display.VirtualDisplay createDisplay(
Context context,
Surface surface,
String name,
int height,
int width,
int dpi
) {
DisplayManager displayManager = (DisplayManager) context.getSystemService(Context.DISPLAY_SERVICE);
android.hardware.display.VirtualDisplay display = displayManager.createVirtualDisplay(
name, width, height, dpi, surface,
DisplayManager.VIRTUAL_DISPLAY_FLAG_PUBLIC |
DisplayManager.VIRTUAL_DISPLAY_FLAG_SECURE |
DisplayManager.VIRTUAL_DISPLAY_FLAG_OWN_CONTENT_ONLY |
DisplayManager.VIRTUAL_DISPLAY_FLAG_PRESENTATION |
DisplayManager.VIRTUAL_DISPLAY_FLAG_ROTATES_WITH_CONTENT |
DisplayManager.VIRTUAL_DISPLAY_FLAG_TRUSTED |
DisplayManager.VIRTUAL_DISPLAY_FLAG_SUPPORTS_TOUCH |
/*DisplayManager. VIRTUAL_DISPLAY_FLAG_OWN_FOCUS*/ 1
Подробнее здесь: [url]https://stackoverflow.com/questions/77541511/how-to-start-an-android-application-on-a-virtual-screen[/url]