1
lhx2008 2018-12-04 09:00:28 +08:00 via Android 3
原因就是你内存太小了
|
2
honeycomb 2018-12-04 09:01:34 +08:00 via Android
这年头 6G 内存比较保险
|
3
luojianxhlxt 2018-12-04 09:02:05 +08:00 5
给你看广告的设计
|
4
justahri 2018-12-04 09:06:32 +08:00
当然是让你看广告放松啦
|
5
shenhb 2018-12-04 09:06:41 +08:00
因为 android 设计就是这样,后台的进程在内存不足的时候会被杀掉,回收内存
|
6
ruimz 2018-12-04 09:12:12 +08:00 via Android
让你看广告啦
比如我王者荣耀切到后台聊句微信再回来都不掉线,从 tb 切出去再回来就得看广告了 我看 tb 的时候锁屏再打开,都会出广告。 而且每次 tb (非启动)出广告的时候内存用了一半都没有呢 |
7
icop 2018-12-04 09:21:14 +08:00
我也遇到了。并且从任务管理器切回去就不会重启,如果从桌面点进去就会重启。
我是这么处理的。 在你的基类 Activity 里面的 onCreate()方法中,加入如下代码: if (!isTaskRoot()) { Intent mainIntent = getIntent(); String action = mainIntent.getAction(); if (mainIntent.hasCategory(Intent.CATEGORY_LAUNCHER) && Intent.ACTION_MAIN.equals(action)) { finish(); return; } } 并且重新实现基类 Activity 的 @Override public boolean moveTaskToBack(boolean nonRoot) { return super.moveTaskToBack(true); } 应该就能解决问题了。 还有你的启动模式 不能用 singeInstance。 |
8
anan1231230 2018-12-04 09:21:46 +08:00
界面被回收了,想办法把进程锁住吧,不回收就没问题了
|
9
greenskinmonster 2018-12-04 09:23:48 +08:00
楼上一堆瞎扯的,resume 时显示 splash screen,跟 app 被系统回收,重新运行完全两码事。
系统回收策略,每个厂商都会自己定制,并不是跟 AOSP 完全一致。 |
10
maxxxxx 2018-12-04 09:27:03 +08:00
@greenskinmonster 说楼上瞎扯,你也没扯出什么干货啊。
|
11
greenskinmonster 2018-12-04 09:30:57 +08:00 2
@maxxxxx #10 resume,系统回收,点到了还不明白的话,给你干货你咽得下吗?
|
12
jdgui 2018-12-04 09:39:38 +08:00
@greenskinmonster 楼主是 3g 内存,而且是运行大 app 才会出现。所以基本上可以排除厂商在 resume 的时候展示的。
|
13
mike77546 2018-12-04 10:03:02 +08:00
你的手机内存太小
|
14
wohenyingyu03 2018-12-04 10:11:07 +08:00
@jdgui 人家回的是楼上瞎扯的,不是回楼主。
|
15
fan123199 2018-12-04 10:14:56 +08:00
没错,是 app 设计太烂。好的 app 可以做到不重启。除非你手动退出。
|
16
maxxxxx 2018-12-04 10:31:08 +08:00
@greenskinmonster 干货没看到,看到了你的傲慢。哪里来的优越感?
|
17
Raisu 2018-12-04 10:33:50 +08:00
产品需求就是这样吧
|
18
icop 2018-12-04 10:36:37 +08:00 1
|
19
maxxxxx 2018-12-04 10:38:49 +08:00
@greenskinmonster resume 说白了就是前后台切换?从楼主的描述上明显就是杀了进程,我看了下楼上说目的让你看广告的明显是在开玩笑而已,不知道你说楼上瞎扯的意义。
|
20
jdgui 2018-12-04 10:43:57 +08:00
@wohenyingyu03 好像是,我理解偏了。
|
21
greenskinmonster 2018-12-04 10:44:37 +08:00 1
@wohenyingyu03 #14 @jdgui #12
抱歉,打击面过广,确实不是说楼主。 系统内存太少是一个解释。 我更倾向于系统回收策略有点问题,如果这个 app 刚刚还使用过,系统还是应该先回收使用时间更早的应用。 |
22
yogogo 2018-12-04 13:21:07 +08:00
假装重新启动页,其实是要让你看启动页的广告
|
24
iacyl 2018-12-04 16:43:36 +08:00 via Android
内存太小,还有可能系统为了内存杀 app。
|