Я пытаюсь отключить многооконную функцию Android. Я прочитал документацию по Android и знаю, что resizeableActivity будет работать только для Android N (уровень API 24), но я хочу отключить его на API-интерфейсах Android более низкого уровня. Поскольку устройства Samsung имеют функцию многооконности на всех устройствах (приблизительно). Так что я должен отключить его.
Отключить функцию многооконности программно
comment
Samsung MultiWindow имеет другой способ установки! так зачем вам его отключать?
- person Elias Fazel   schedule 20.03.2017
comment
Я получил это требование для корпоративного приложения. Итак, мне нужно отключить его.
- person Awais   schedule 21.03.2017
Ответы (2)
Вы не можете сделать это во время выполнения. Ваше приложение либо поддерживает многооконный режим, либо нет. Параметры, указанные в AndroidManifest.xml
, не могут быть изменены во время выполнения.
Из документации android:resizeableActivity
:
Если для этого атрибута установлено значение true, активность можно запускать в режимах разделенного экрана и произвольной формы. Если для атрибута установлено значение false, действие не поддерживает многооконный режим. Если это значение равно false и пользователь пытается запустить действие в многооконном режиме, действие занимает весь экран.
Для конкретных устройств Samsung вы можете попробовать поместить это в файл манифеста:
<meta-data android:name="com.sec.android.support.multiwindow" android:value="false" />
<meta-data android:name="com.samsung.android.sdk.multiwindow.multiinstance.enable"
android:value="false" />
<meta-data android:name="com.samsung.android.sdk.multiwindow.penwindow.enable"
android:value="false" />
person
azizbekian
schedule
20.03.2017
Да, я прочитал документацию, как я уже упоминал. Но android:resizeableActivity=false будет работать на уровне API 24 и выше. Мне также нужно отключить эту функцию на более низком уровне.
- person Awais; 21.03.2017
@Awais,
I need to disable this feature on lower level also
эта функция не будет работать с API ниже 24, что означает, что она отключена по умолчанию.
- person azizbekian; 21.03.2017
Я попробовал ваши предложения, но это не работает. Пожалуйста, получите снимок, который я добавил после попытки.
- person Awais; 21.03.2017
Я думаю, это зависит от телефона.
- person azizbekian; 21.03.2017
Каждое устройство Samsung с функцией многооконности ведет себя одинаково.
- person Awais; 21.03.2017
Вам не нужно ничего, кроме «android: resizeableActivity = false» и targetSdkVersion не менее 24. Не беспокойтесь об атрибуте resizeableActivity, который используется только на уровне API 24 и выше. AndroidManifest никогда не вызывает сбой из-за ошибки версии, он отклоняет атрибут для более низких версий
- person OMArikan; 17.10.2017
И cn мы делаем это из adb?
- person Benjamin Lucidarme; 13.12.2017
@BenjaminLucidarme во время выполнения? Афаик, нельзя.
- person azizbekian; 13.12.2017
@azizbekian adb не работает: ссылка
- person Benjamin Lucidarme; 13.12.2017
@BenjaminLucidarme, что вы имеете в виду, говоря, можем ли мы сделать это из adb?
- person azizbekian; 13.12.2017
@azizbekian, можно ли отключить многооконный режим в adb?
- person Benjamin Lucidarme; 13.12.2017
@BenjaminLucidarme, я ничего не знаю.
- person azizbekian; 13.12.2017
для тех у кого такая же проблема как у меня, решение такое:
adb shell settings put system multi_window_enabled 0
- person Benjamin Lucidarme; 14.12.2017
@BenjaminLucidarme не работает, когда я отправляю apk для другого человека без использования этой строки
- person famfamfam; 19.10.2020
После многих попыток я смог сделать это только на леденце!!! @Авайс
Settings.System.putInt(this.context.getContentResolver(), multi_window_enabled", 0 );
person
Fernando Costa Gomes
schedule
22.08.2019