精华内容
下载资源
问答
  • 1. 现在遇到的问题,手机进入休眠状态后唤醒,APP软件和CC2541的通信正常了,但是CC2541依然检测到时连接状态。如何解决这个问题?手机唤醒之后会重新创建活动? 2.Wakelock 锁机制:应用程序可以通过申请 wake...

    1. 现在遇到的问题,手机进入休眠状态后唤醒,APP软件和CC2541的通信不正常了,但是CC2541依然检测到时连接状态。如何解决这个问题?手机唤醒之后会重新创建活动?

    2.Wakelock 锁机制:
    应用程序可以通过申请 wakelock 锁的机制来对系统是否待机作出投票,当有任何一个应用申请了 wakelock 锁,待机时没有释放掉,系统是不会进入待机的,直到所有应用的 wakelock 锁都释放掉了,才会进入待机。本次是否可以使用这个锁?让系统不待机,如果不待机,功耗多吗?假如有QQ开着的话,系统本来就待机的吗?

    3. 看下锁的代码

     1  /**        
     2   * 获取电源锁,保持该服务在屏幕熄灭时仍然获取CPU时,保持运行
     3   */
     4  private void acquireWakeLock() {
     5   if (null == wakeLock) {
     6    PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
     7    wakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK
     8      | PowerManager.ON_AFTER_RELEASE, getClass()
     9      .getCanonicalName());
    10    if (null != wakeLock) {
    11     Log.i(TAG, "call acquireWakeLock");
    12     wakeLock.acquire();
    13    }
    14   }
    15  }
    16 
    17  // 释放设备电源锁
    18  private void releaseWakeLock() {
    19   if (null != wakeLock && wakeLock.isHeld()) {
    20    Log.i(TAG, "call releaseWakeLock");
    21    wakeLock.release();
    22    wakeLock = null;
    23   }
    24  }

    4. 活动在唤醒之后是否会重新创建?旋转屏幕的时候会
    5. 问题描述,手机按下休眠按键,再按下唤醒之后,原来的数据传输就断掉了,抓下logcat发现按下休眠按键的时候,活动stop了。

    5. 查看下代码,活动停止的时候,把上一个活动也关闭了。屏蔽掉这个代码,重新测试,手机唤醒之后这个APP就直接关掉了。返回了主界面。

    1 protected void onStop() {
    2     Log.i(TAG, "---> onStop");
    3     //SetTemperatureNotifyUpdate(false);
    4     //super.onStop();
    5 }

    6. 看了一下其他的活动,在唤醒之后,会调用protected void onResume()这个函数,但是这个活动为啥没调用onResume?实际测试的时候发现并没有onStart()这个函数,当把程序关闭的时候,会调用onDestroy()函数。

    7. 我想了想一个活动的流程图,必须把需要的生命周期都按照顺序调用一遍才可以,所以修改了代码,问题解决,这次学习收获很大,主要是对活动的生命周期有了更深入的了解。一个活动必须先调用onStop()函数,才能调用onResume()函数。

    1     protected void onStop() {
    2         Log.i(TAG, "---> onStop");
    3         //SetTemperatureNotifyUpdate(false);
    4         super.onStop();
    5     }

    8. 活动的生命周期图,不过这次实际测试发现没有调用onStart()函数

    9. 这次的问题在于,手机按下power按键的时候,会调用onStop()函数,而在这个函数里面关闭了蓝牙的主动通知功能。导致重新启动无法再收到数据。至此问题结局,开心的过元旦。

    1     protected void onStop() {
    2         Log.i(TAG, "---> onStop");
    3         //SetTemperatureNotifyUpdate(false);
    4         super.onStop();
    5     }

     

    转载于:https://www.cnblogs.com/429512065qhq/p/8094032.html

    展开全文
  • 原标题:安卓手机锁屏后程序自动关闭,怎么设置手机...但很多人需要让手机上某些app间断的程序运行,如我们的IP这类的软件,我们需要一直运行,才能起到作用,但是每次手机一锁屏,app就自动退出了,所以很麻烦 ,...

    原标题:安卓手机锁屏后程序自动关闭,怎么设置手机app允许锁屏后台运行

    安卓手机锁屏后,很多程序就会自动关闭,实际上,这是安卓手机的一种保护机制。为了使系统能够流畅稳定的运行以及更加省电,它都会在手机锁屏后将一些后台运行的不相关的程序强制关闭。但很多人需要让手机上某些app不间断的程序运行,如我们的IP这类的软件,我们需要一直运行,才能起到作用,但是每次手机一锁屏,app就自动退出了,所以很麻烦 ,下面为大家分享一下不同手机型号怎么设置手机app允许锁屏后台运行的方法。

    1.华为手机:

    打开手机管家-应用启动管理-点击所需要允许后台运行的程序-选择允许后台运行。

    b83be355bb25ce45adb0987973aa911a.png

    a4ef6dc227313c25c0389f425f70e927.png

    49c8b5d8193ed443891eca01dfb25460.png

    2.小米手机

    点击进入小米手机的“安全中心”,找到【电量管理功能】选项并打开。

    dbde9779acb577e9757cda9271bcea32.png

    打开“应用智能省电”,会出现所有的已安装软件列表。找到需要后台运行的程序,点击打开,选择“无限制”。

    a0f264b4d677e6d7567462981e04f6e0.png

    462e377b9d0e458a754779195bdcc160.png

    3.OPPO手机

    打开设置--电池

    6c05e99ec95b4f1a34d4ee2e09c93863.png

    点击“耗电保护”--选择需要设置的应用程--点击进入,关闭后台冻结,关闭检测到异常时自动优化,就可以了。

    责任编辑:

    展开全文
  • Android休眠对心跳中断带来的影响

    千次阅读 2016-10-24 17:55:25
    Android设备上解决耗电的一个策略就是休眠手机在锁屏之后一段时间手机就会休眠,那个时候,无论是屏幕,CPU还是其他模块都会停止工作,这样导致了2个问题: 1.一些通讯软件的心跳包中断,导致掉线 2.若采用...

    Android设备上解决耗电的一个策略就是休眠,手机在锁屏之后一段时间手机就会休眠,那个时候,无论是屏幕,CPU还是其他模块都会停止工作,这样导致了2个问题:

    1.一些通讯软件的心跳包中断,导致掉线

    2.若采用UDP连接的情况下,服务器过来的数据包不一定实时。

    我们来讲讲如何解决以上的两个问题。

    Android手机有两个处理器

    • Application Processor(AP)
    • Baseband Processor(BP)。

    AP是ARM架构的处理处理器,用于运行Linux+Android体系; 
    BP用于运行及时操纵体系(RTOS),通信协议栈运行于BP的RTOS之上。非通话时候,BP的能耗基本在5mA以下,而AP只要处于非休眠状况,能耗至少在50mA以上,履行图形运算时会更高。别的LCD工作时功耗在100mA左右,WIFI也在100mA左右。一般手机待机时,AP、LCD、WIFI均进入休眠状况,这时Android中应用法度的代码也会停止运行。

    Android为了确保一些关键代码的正确运行,供给了Wake Lock的API,使得应用有权限经由过程代码阻拦AP进入休眠状况(iOS、WP7都没这种器材)。若是不懂得Android设计者的意图而滥用Wake Lock API,为了自身代码在后台的正常工作而长时候阻拦AP进入休眠状况,结果就相当严重了,手机的电量就犀利哗啦的被用完了。

    如果AP休眠了,手机不是接收不到消息了吗?

    完全不用担心,通信协议栈运行于BP,一旦收到数据包,BP会将AP唤醒,唤醒的时间足够AP完成对BP收到协议的处理,但是有一点需要大家注意的是,假如你处理协议包的时间很长的话,那么请加上wakelock,完成之后再释放掉。

    如果AP休眠了,程序如何执行向服务器发送心跳包的逻辑

    你显然不能靠AP来做心跳计时. Android提供的Alarm Manager就是来解决这个问题的. Alarm应该是BP计时(或其它某个带石英钟的芯片,不太确定,但绝对不是AP), 触发时唤醒AP执行程序代码. 
    那么Wake Lock API有啥用呢? 比如心跳包从请求到应答, 比如断线重连重新登陆这些关键逻辑的执行过程, 就需要Wake Lock来保护. 而一旦一个关键逻辑执行成功, 就应该立即释放掉Wake Lock了. 两次心跳请求间隔5到10分钟, 基本不会怎么耗电. 除非网络不稳定. 频繁断线重连, 那种情况办法不多.

    上面所说的通信协议, 我猜应该是无线资源控制协议(Radio Resource Control), RRC应该工作在OSI参考模型中的第三层网络层, 而TCP, UDP工作在第四层传输层, 上文说的BP, 应该就是手机中的基带, 也有叫Radio的, 
    Google在Optimizing Downloads for Efficient Network Access 中提到了一个叫Radio State Machine的东西

    TCP长连接是可以将AP唤醒,但是UDP数据包并不会唤醒。

    具体的原因可能是因为底层对于TCP长连接的数据过来,会产生AP中断来唤醒AP,但是UDP不会。。。这么做也是有道理的,因为TCP长链接是客户端自身验证过的服务器,也就是数据来源可靠。。。若UDP也会唤醒,那完全可以进行UDP数据包工具,这样一来,被攻击的手机至少耗电量将会大幅度上升。

    展开全文
  • 手机在屏幕打开时一切正常,只要锁屏并拔掉数据线,手机进入休眠,那两个线程就会出现问题。并是简单的彻底停止。举个栗子,心跳包停止发送,一段时间后服务端把它踢下线,然后发送线程开始重连socket,但是连接上...
  • 转转上买来的斐讯n1天天链,刷了webpad官改系统当电视盒子用,在手机上安装斐讯官方的遥控app后,可以替代实体遥控器,实现遥控电视盒子的功能,少掏30-40购买遥控器的钱。但是美中不足的是,盒子一旦关机就无法开机...

    转转上买来的斐讯n1天天链,刷了webpad官改系统当电视盒子用,在手机上安装斐讯官方的遥控app后,可以替代实体遥控器,实现遥控电视盒子的功能,少掏30-40购买遥控器的钱。但是美中不足的是,盒子一旦关机就无法开机,必须重新插拔电源才能开机,很不方便。于是开始研究如何用软件遥控盒子开关机的办法。

    n1没有红外功能,所以遥控器一般都是通过蓝牙或者wifi来连接的。本文介绍的是wifi遥控,蓝牙遥控见我的另一篇文章斐讯n1遥控器app——蓝牙篇。由于手上没有t1遥控器,不清楚使用实体遥控器能不能开机,如果能开机,开机的原理又是什么?盒子关机后蓝牙和wifi都断开了,如何唤醒?网上有资料说,可以通过蓝牙发送广播数据包或者通过以太网发送幻数据包的方式使盒子开机,前者由于需要对蓝牙协议比较熟悉,太过复杂,只好放弃,后者经测试无效。

    后来想到官改系统已经具有了root权限,而且开放了telnet服务(端口号为2323),完全可以使用Linux命令实现关机。

    休眠和唤醒的命令

    基本思路就是用java编写telnet客户端,远程登录到电视盒子上,执行

    echo mem > /sys/power/state

    命令(具体介绍请百度“安卓电源管理”)关闭屏幕,注意这里只是休眠,wifi仍连接着,并不是关机,要是真的关机就没办法唤醒了!虽然这个办法也不是那么完美,但是毕竟省去了拔电源的苦恼,而且n1待机状态下耗电量很小,可以忽略。

    想要亮屏的话执行下面的命令即可

    echo "mem disk" > /sys/power/state

    为了把休眠和唤醒的功能加到遥控器里,需要先分析一下官方原版遥控的实现原理

    官方遥控app接口说明

    通过使用charles抓包工具进行分析,可以发现官方遥控app其实就是向盒子上的服务端发送简单的http请求。下面是使用jadx反编译后看到的部分源码,正好对应了app里的部分功能。

    
    public interface IRemoterService {
        b<byte[]> doScreenshot();//截屏
    
        b<Status> getStatus();//获取盒子的名称、mac等信息
    
        b<String> ping();//ping测试
    
        b<String> sendCommand(String str);//发送命令,比如打开设置界面
    
        b<String> sendKeyEvent(KeyEvent keyEvent);//发送按键
    }
    
    public interface HttpAppInfosService {
        @GET("applist")
        b<ApplyInfosBean> getAppInfos();//获取已安装的应用列表
    
        @POST("application")
        @Headers({"Content-Type:application/json;charset=UTF-8"})
        b<ApplyInfosBean> openApplication(@Body z zVar);//打开应用
    }

    以下假设盒子内网地址为192.168.123.116

    • 发送按键

    接口地址:http://192.168.123.116:8080/v1/keyevent

    请求方法:POST

    参数:{"keycode":4,"longclick":false}

    public class KeyCode {
        public static int BACK = 4;
        public static int CENTER = 23;
        public static int CHANEL_DOWN = 167;
        public static int CHANEL_UP = 166;
        public static int DOWN = 20;
        public static int HOME = 3;
        public static int LEFT = 21;
        public static int MENU = 82;
        public static int MUTE = 164;
        public static int POWER = 26;
        public static int RIGHT = 22;
        public static int UP = 19;
        public static int VOL_DOWN = 25;
        public static int VOL_UP = 24;
    }
    • 发送命令

    接口地址:http://192.168.123.116:8080/v1/action

    请求方法:POST

    参数:{"action":"setting"}

    public class Commands {
        public static String OPEN_CLEAR = "openclear";//打开电视管家一键清理
        public static String OPEN_LOCK = "openlock";//儿童锁
        public static String OPEN_SETTING = "setting";//设置
    }
    • ping

    接口地址:http://192.168.123.116:8080/v1/ping

    请求方法:GET

    • 获取状态

    接口地址:http://192.168.123.116:8080/v1/status

    请求方法:GET

    • 获取应用列表

    接口地址:http://192.168.123.116:8080/v1/applist

    请求方法:GET

    • 打开应用

    接口地址:http://192.168.123.116:8080/v1/application

    请求方法:POST

    参数:{"package":"com.android.tv.settings","activity":"com.android.tv.settings.MainSettings"}

    包名和activity名参照上一个接口的返回结果

    • 截屏

    接口地址:http://192.168.123.116:8080/v1/screenshot

    请求方法:GET

    定制自己的遥控器app

    本想着自己重新开发一个app实现需求,但是发现github上已经有人做过了,于是就直接把源码拿来用了,把原来的项目里关机键的逻辑稍微改动一下就行了。java版的telnet客户端例子网上也有一大把,不过感觉对socket粘包、半包等问题的处理都不太优美,如果只关心发送命令而不关心命令执行结果的话,也可以直接拿来用。

    附上别人做好的遥控器app(关机后不能唤醒):

    斐讯/PHICOMM N1 盒子YYF电视盒子的遥控器(android版本):https://github.com/Jimmuy/N1_controler

    补上自己做的可以蓝牙开机的版本(由于盒子不在身边,没有经过测试,所以可能会有问题):

    https://github.com/DoraemonHC/N1Controller

    apk下载地址:https://github.com/DoraemonHC/N1Controller/releases/download/1.0/app-debug.apk

    微信小程序版本(依旧没有测试),微信搜索【TV遥控器】:

    由于本人代码水平比较烂,修改后的代码就不放上来了,这里仅仅提供一个思路。下图是修改后的效果。

    没有悟空遥控器烦人的广告,而且比官方遥控器启动更快,更加地简洁,自用已经足够了。

     

    展开全文
  • 手机进入休眠状态后,它立刻自动杀掉黑名单的程序,以保护用户手机电量被后台服务消耗。 当你的手机休眠后,而且想某些产品在后台运行,省电大王是你的选择。同时,它也提供了进程管理功能,你可以自由杀出进程...
  • 手机问题

    2013-05-07 09:20:54
    # 三星手机不能拍照解决办法:打开照相机后,按到了开机键,把开机键再按一下,就又能拍照了。# HTC oneX由于书签插件导致HTC sense意外停止解决办法:装应用宝之类的管理软件,找到“书签小插件”,卸载。#红米...
  • 诺基亚西门子通信的测试显示,最新的 iPhone 软件支持由网络控制的快速休眠功能。...当智能手机在短期内被使用时,它们将进入空闲状态。当用户需要使用时,需要和网络进行 30 次信令交换来唤醒手机
  • 诺基亚西门子通信的测试显示,最新的 iPhone 软件支持由网络控制的快速休眠功能。...当智能手机在短期内被使用时,它们将进入空闲状态。当用户需要使用时,需要和网络进行 30 次信令交换来唤醒手机。  所有这些信
  • 手机屏幕唤醒并震动

    2014-07-11 15:54:44
    这是修改之后的,安装之后就能不断的唤醒,实现后台service持续运行,并且唤醒之后进入自定义界面,不用绕过...实现了开机自动启动,还有保持wifi不休眠。 程序被杀之后可以再次启动,说明一下,无法绕过360等软件
  • 另外保持手机唤醒这样可以避免部分手机休眠时wifi自动断开而使软件无法继续使用。 前后摄像头是可以切换使用的,连接端口也可以修改成其他的。友情提醒,如果修改了端口号,PC的客户端也要做对应的修改,使用...
  • 权限详情:▪ 精准的(GPS)位置▪ 查看网络状态▪ 拍摄照片和视频▪ 完全的互联网访问权限▪ 修改/删除 SD 卡中的内容▪ 控制振动器▪ 防止手机休眠. 应用介绍 Smart Compass是一个方便,準确,相机视图。 Smart ...
  • 让您的店面从此脱离繁重的手工账目,脱离管理无序及监管严等状况;让您的顾客感受到正规化的管理模式及专业的店面形象! 《领卓美容院管理软件》主要功能: 收银管理、预约管理、会员管理、短信群发、积分管理、...
  • 因为底层的算法不同,刚开始的目标也不同,所以导致...而第二点,刚开始的目标不同,iPhone下载软件常规操作只能是在苹果应用商店下载,而这些应用都是经过了苹果的审核的,在安卓上流氓性质的软件苹果会允许上架。.
  • 通过向日葵你可以在世界上任何地点、任何网络中,轻松实现手机控制手机手机控制电脑,电脑控制电脑。向日葵的主要功能有远程桌面控制、桌面监控、远程文件传输、远程摄像头监控、远程管理、CMD命令行等。只需要在2...
  • 本汉化程序保证能兼容所有的手机硬件和同机安装的任何软件,; 您必须自行担负所有可能因使用本程序而发生的风险 本软件由独孤天马制作汉化,汉化版权属于独孤天马所有。, 如果您要转贴本软件以及图形、文字资料,...
  • 系统可能将数据保存起来而让程序进行休眠,或者仅仅运行部分服务,仅仅当收到相关的申请时才恢复部分进程,处理完之后结束进程而保留服务——这些都是自动处理的,也就是说,如果用户运行的软件都是按照Android思想...
  • 实例244 将计算机设置为休眠状态 338 实例245 切换输入法 339 实例246 创建应用程序快捷方式 340 7.5 系统设置 340 实例247 设置桌面背景 341 实例248 设置系统时间 342 实例249 设置屏幕分辨率 343 7.6 系统监控 ...
  • 笔者所在公司做的APP是股票类的,用户在查看股票报价页面的时候,往往需要开启盯盘模式,这个时候屏幕是不能黑屏的,黑屏会导致用户看不到一些关键... * 打开休眠锁只能保持手机不休眠 * @param context */ @Depreca
  • 小白到大白-如何远程控制电脑 ...二:电脑保持开机状态而且能使休眠状态 三:软件下载 电脑和手机端下载软件teamviewer (苹果可以直接appstore中直接搜索下载)2.软件安装下载好后,运行安装,个人非商业用
  • 解决手机内存不足问题,延长手机待机时间。 功能特点: - 强制清理“尚可感知”类应用 有部分应用利用android的漏洞将自己设置为“尚可感知”状态来逃避清理。我们现在支持强制清理此类应用,只需要点开应用条目,...
  • 定时开关机——不用修改BIOS

    千次阅读 2009-11-17 10:26:00
    开始的时候计划任务挺好用的,不过后面怎么老是唤休眠状态的电脑,我郁闷,始终找到原因,没有办法,还是只有用那款软件来实现了: 智能开关机 V2007 国庆特别版 http://www.skycn.com/soft/17202.html ...
  • 重要说明:『绿色化』一个应用,意味着您确确实实希望这个应用在启动的时候休眠,也就是说它的所有后台功能在休眠期间都不再工作。这些后台功能(机制)包括但限于: * 后台服务 * 广播接收器。它们响应设备所...
  • 重要说明:『绿色化』一个应用,意味着您确确实实希望这个应用在启动的时候休眠,也就是说它的所有后台功能在休眠期间都不再工作。这些后台功能(机制)包括但限于: * 后台服务 * 广播接收器。它们响应设备所...
  • 1、智能手机的待机时间是痛点,如果设置不当,自动管理后台应用的程序会让地图软件休眠,导致熄屏的时候没有记录数据。自制设备开机即记录。 2、现售的设备存储空间不是很理想,且操作需要主机菜单点击,存储路点...
  • MyWifiAP_2.3.1.221

    2013-08-07 18:15:06
    只是休眠睡眠的唤醒,部分无线网卡由于某些问题,或者设置了特定的网卡 省电选项,均会出现此故障。勾选软件设置界面中的“保持活跃状态”即可确保睡 眠唤醒后虚拟路由服务仍然正常运行。 顺带显摆一下,您的“一...
  • 中国好铃声 2.9.12

    2015-01-08 03:15:15
    更改您的音频设置▪ 装载和卸载文件系统▪ 拦截外拨电话▪ 读取联系人数据▪ 读取手机状态和身份▪ 开机时自动启动▪ 录音▪ 修改/删除 SD 卡中的内容▪ 显示系统级警报▪ 控制振动器▪ 防止手机休眠▪ 写入联系数据...
  • 雅虎邮箱Yahoo 4.7.2

    2015-01-08 03:05:39
    读取同步设置▪ 读取同步统计信息▪ 开机时自动启动▪ 接收短信▪ 录音▪ 修改/删除 SD 卡中的内容▪ 发送短信▪ 控制振动器▪ 防止手机休眠▪ 写入联系数据▪ 写入同步设置 应用介绍 "Yahoo官方电子邮箱客户端软件...
  • 航海桌面2.5正式版

    2009-06-30 19:14:34
    航海桌面是一款免费的手机桌面个性化软件,一款到400K的软件集成超多实用桌面功能. 1.个性化桌面: 可在手机桌面显示大时钟,农历,双排快捷方式,可修改网标. 2.上网最方便: 一键进入百度谷歌搜索;在桌面显示新闻...
  • 《整理的艺术》读书笔记

    千次阅读 2012-09-25 17:56:13
    整理的艺术  作者:小山龙介    1、打印的纸质资料要毫不留情地废弃。... 4、使用文件同步软件,使办公室、家里和手机上的文件同步。  5、不要彻底关闭电脑,设为休眠或者待机状态。  6、使用Go

空空如也

空空如也

1 2 3 4 5
收藏数 83
精华内容 33
关键字:

手机不休眠软件