安卓如何限制一个应用的退出

2020-11-20 15:53:16 +08:00
 znonymous

安卓开发小白,想要在安卓平板上开发一款屏幕展示应用,应该如何限制通过 HOME 键或者其他方式退出当前应用程序。搜到过一个专利,https://patents.google.com/patent/CN105468394A/zh 。想要咨询一下 V 友,可否有实现方式。

5916 次点击
所在节点    Android
18 条回复
WhiteSheep
2020-11-20 16:00:06 +08:00
Android 有一个 Pin windows,不知道这个能否满足你的需求?
Flywith24
2020-11-20 16:02:40 +08:00
搞成 Launcher (就是你的应用就是桌面)
lwlizhe
2020-11-20 16:24:53 +08:00
没搞过,不过猜测,应该需要设备管理员权限吧

如果只是像当初那个 O 泡果奶 恶搞软件一样的那种简单防退出效果的话当我没说……
mgrddsj
2020-11-20 16:29:36 +08:00
2 楼正解,在 AndroidManifest.xml 的 Main activity 里面加入以下两行就可以了:
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />

参考 https://www.androidauthority.com/make-a-custom-android-launcher-837342-837342/ 里面的第一步。
leoonly
2020-11-20 17:07:17 +08:00
@mgrddsj 但是触发 HOME 应该是弹窗选择用哪个 launch 吧?
Nuttertoo1s
2020-11-20 17:14:32 +08:00
注意不要用华为平板,华为现在是不支持第三方 launch 的
Nuttertoo1s
2020-11-20 17:17:27 +08:00
HOME 键之前有研究过一下,好像很难限制,不过你可以预先选好 launch,之后按 HOME 就不会退出了,或者你用 adb 把出厂的 launch 删除,然后 HOME 键默认就是你的那个应用了
also24
2020-11-20 17:28:42 +08:00
@WhiteSheep #1
正解,系统自带的功能其实挺好用的
https://support.google.com/android/answer/9455138
ciaoly
2020-11-20 18:13:03 +08:00
找一个软件叫“不做手机控”,看看它的“强力屏保”选项就知道方向了。
小弟不才,建议:
1,悬浮窗
2,将应用设置为锁屏界面(结合“设备管理器”)
3,将应用做成“启动器”(垃圾华为不太行)
SakuraOjosama
2020-11-20 19:28:30 +08:00
SystemUI 里面全局查找 onClickHome
SakuraOjosama
2020-11-20 19:31:42 +08:00
@SakuraOjosama 不了不了,不这么搞,这样吧,不改 framework 的话,就把你那个应用做成全屏悬浮窗,改 framework 的话,找找 PhoneWindowManager
evilcoming
2020-11-20 20:30:04 +08:00
搞个 rom 刷入想保活的程序,再次刷入手机
TVBG
2020-11-20 20:41:22 +08:00
通过设备管理器的 API,关键词:android Dedicated devices
wbing
2020-11-20 20:50:36 +08:00
屏蔽掉 home 键。
mgrddsj
2020-11-20 21:16:37 +08:00
@leoonly #5 选择总是使用你自己的 app 做 launcher 就好了啊
nicocho
2020-11-20 21:59:38 +08:00
如果是订制设备的话,好弄
否则,真不行。之前花了半个月试过各种方案。
fansangg
2020-11-20 22:41:17 +08:00
屏幕展示应用 的平板,不都是定制 rom 吗
codehz
2020-11-21 21:53:47 +08:00
定制设备是不是可以直接改 system ui 。。
把界面直接内建进去

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/727581

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX