V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Registering
V2EX  ›  Android

关于 service 和开机自启动

  •  
  •   Registering · 2015-10-14 11:04:14 +08:00 · 5436 次点击
    这是一个创建于 3125 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我通过 startService 的方式启动一个 service ,并且 onStartCommand 方法中返回 START_STICKY ,这样的意图是让 app 退出后 service 可以重生继续运行。

    相信上面这个场景对大家来说,很简单也很常见,我在三星手机上测试正常,但是在魅族手机上测试发现, app 退出后, service 并没重生。

    所以,

    我的第一个问题就是

    startservice 如何保证在所有手机上都可以一直运行下去,被杀死之后还能自动重生。(上网查貌似与android:installLocation="auto"有关,但是尝试之后并没效果)

    为了解决上面这个问题,我又尝试了如下方案,注册一个开机启动的 broadcastReceiver ,一开机就在这个接收器中接收开机广播,然后在这个接收器中 start service ,这也是我们常常用到的开机自启动,但是部分机型是这样的(比如魅族),它屏蔽了开机自启动,需要你手动到设置页面去开启该应用的开机自启动。

    我的第二个问题

    部分手机需要手动开启自启动,怎么破

    11 条回复    2015-10-20 17:17:32 +08:00
    sparanoid
        1
    sparanoid  
    MOD
       2015-10-14 11:05:28 +08:00
    chenliang0571
        2
    chenliang0571  
       2015-10-14 11:16:48 +08:00
    2. 提示用户某些功能需要开启自启动,选择权交给用户。
    miclushine
        3
    miclushine  
       2015-10-14 11:34:41 +08:00
    每个厂商的手机都会修改 AOSP 的一些功能的,只能多测试,然后针对机器主动提示用户开机自启动之类的。
    stdying
        4
    stdying  
       2015-10-14 11:36:04 +08:00
    设置成前台 service ,会更好些
    cxe2v
        5
    cxe2v  
       2015-10-14 15:09:01 +08:00
    你要做这个恶心的功能做什么?搞监控吗?
    kyze8439690
        6
    kyze8439690  
       2015-10-14 16:39:09 +08:00
    前台显示 1 像素透明点,呵呵,不过这个又是新的权限了。
    allan1st
        7
    allan1st  
       2015-10-14 16:43:20 +08:00
    用 GCM 即可。
    ssynhtn
        8
    ssynhtn  
       2015-10-14 17:08:09 +08:00
    对于那些需要手动开启自启动的手机只能放弃了。
    如果你的 app 不需要开机启动也能满足魅族用户的需求,那么正好。
    如果你的 app 无法开机启动会导致功能缺失,比如无法及时收取后台消息,那么就让魅族用户自己决定是允许开机启动还是使用一个功能缺失的 app 吧。
    Jocky1
        9
    Jocky1  
       2015-10-14 21:56:58 +08:00
    @kyze8439690 qq 吗?
    zhaohui318
        10
    zhaohui318  
       2015-10-15 08:47:31 +08:00
    魅族自带绿色守护功能
    testex
        11
    testex  
       2015-10-20 17:17:32 +08:00
    有流氓的心没流氓的技术
    呵呵
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   967 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:41 · PVG 02:41 · LAX 11:41 · JFK 14:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.