2012-03-09 5 views
3

У нас есть промышленное приложение, работающее на Android-устройствах Samsung. Поскольку это промышленное приложение, мы пытаемся заставить его «взять на себя» устройство. У нас это очень хорошо работает, установив в проявленномБлокировка выпадающего меню в Android

 <category android:name="android.intent.category.HOME" /> 
     <category android:name="android.intent.category.DEFAULT" /> 

и перехватывать Android «назад» ключ через onBackPressed и ничего не делать.

Наша единственная оставшаяся загадка заключается в том, что пользовательский слой Samsung, «Touch Wiz», имеет раскрывающееся меню, которое пользователь может вытащить поверх нашего приложения и получить доступ к другим функциям. Мы пытаемся отключить это.

Есть ли что-то, что мы можем перехватить так, как мы сделали кнопку «Назад», чтобы заблокировать это? Любой другой способ заблокировать его?

(если кто-то предлагает «укоренение» устройство, что я мог сделать, как корень, который помог бы здесь?)

Спасибо заранее !!

ответ

3

С каким устройством Samsung вы работаете?

и по выпадающему меню вы говорите о панели уведомлений?

Notification Bar

Если это так, это не функция пользовательского интерфейса, который специфичен для TouchWiz, они могут быть изменены, что все они могут быть доступны из расширенной панели уведомлений. Но этот элемент существует и на складе android.

Если это то, о чем вы говорите, вы можете установить флаг full_screen для своей активности или элементов приложения в манифесте. Это скроет панель уведомлений в вашем приложении.

android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 
+0

Это работает !! Я благодарю вас, мой босс благодарит вас и т. Д. Я не был уверен, что это был обычный бланк уведомлений или нет, потому что он показывает разные вещи от моего личного HTC Droid Incredible, но он сделал трюк! Еще раз спасибо. – user316117

0

Если он не работает с полноэкранным режимом домашнего приложения:

Запас Android не имеет возможности сделать реальный режим киоска, и я предполагаю, что это не является целью Android, чтобы позволить это, так как вы могли бы сделать зло вещи с такими, как создавать приложения, которые заставляют вас платить деньги, прежде чем вы сможете оставить их снова.

Root здесь не поможет, так как это касается базового Linux, который позволяет вам получить доступ к внутренним файлам и т. Д. Это не открывает некоторые волшебные скрытые API.

Что вам нужно сделать, это создать собственную прошивку для устройства (возможно, что-то может быть для устройства - посмотрите в http://forum.xda-developers.com/). В этом прошивке вы можете изменить те внутренние компоненты, которые позволяют пользователям избежать вашего приложения.