
Android
文章平均质量分 76
LYJ的IT生活
Android 智能手机系统开发
展开
-
Android11发布,一起了解下有哪些优化和改进
2020年9月9日,谷歌正式发布了 Android 11 系统正式版本。安卓11操作系统的特点是三大主题:控制、人和隐私。Android 11将重点放在“人”上的另一种方式是,只需轻点一下就可以访问对话。支持的消息可以通过从阴影中点击通知的右下角进行冒泡。点击气泡可以显示整个消息线程,并允许你回复完整的上下文。它们可以在屏幕上的任何地方抛出,并通过拖动到底部来滑动。优化折叠设备支持Android 11 新增 cutout API,能够帮助 APP 自动适应屏幕,如果是挖孔屏,那么就避免元素被打孔区域原创 2020-09-10 12:00:47 · 1464 阅读 · 0 评论 -
如何开启并自测电信自注册?
如何开启并自测电信自注册?1. 代码路径P开始运行在OP09CTelephony.jar代码路径为/vendor/mediatek/proprietary/operator/frameworks/telephony/OP09/common/java/com/ctdeviceregister - CDMA和IMS短信自注册selfregister - 数据域自注册2. 开启电信自注册功能P之后版本:ro.vendor.mtk_devreg_app=1, ro.vendor.mtk_ct4gr原创 2020-05-13 15:09:59 · 1580 阅读 · 0 评论 -
Android的死机、重启问题分析方法
死机现象 1.1 死机定义 当手机长时间无法再被用户控制操作时,我们称为死机。在这里我们强调长时间,如果是短时间,归结为性能问题。 1.2 死机表现 用户操作手机无任何响应,如触摸屏幕,按键操作等。手机屏幕黑屏,无法点亮屏幕。手机界面显示内容和用户输入不相干。系统简图 当用户对手机进行操作时,对应的数据流将是下面一个概括的流程图 HW 如传感器,触摸屏(TP),转载 2017-03-02 17:49:40 · 4557 阅读 · 0 评论 -
Android系统:如何开启或隐藏Navigation Bar导航 栏
如何开启或隐藏Navigation Bar导航栏?如下图红色框标注的区域,就是Navigation Bar区域,它提供三个快捷方式图标,从左到右分别是Back/Home/Recent 。第一步:修改系统变量。打开目录下文件:alps/device/gxq/工程名字/system.prop修改变量值:qemu.hw.mainkeys=01 表示隐藏Navigationba原创 2016-12-09 16:42:38 · 5503 阅读 · 0 评论 -
Android系统:SystemUi需要注意的一些知识点
一:Google CDD对状态栏上system icon和notification icon颜色规定从Android 4.4开始,Google在Compatibility Definition Document(简称CDD)中规定:状态栏右侧显示的system status icon和左侧的notification icon颜色须是白色;只有表示异常或者警示状态时,可以用其他颜色i原创 2016-12-09 17:45:54 · 2991 阅读 · 0 评论 -
容易忽略的ADB命令(持续更新中)
总结一下在开发中容易忽略但是又很好用的一些adb命令: 查找手机安装应用的包名:adb shell pm list packages -f 查看系统盘符:adbshell df 查看Log 1:adbshell 2: logcat | grep "abc" 删除应用:1:adbremount 2:adb shell 3:cdsystem/app原创 2016-03-16 14:56:14 · 1769 阅读 · 0 评论 -
若遇到权限问题,如何确认和Runtime Permission有关呢?
若遇到权限问题,如何确认和Runtime Permission有关呢?1:进入 设置->应用,找到遇到问题的apk2:在此apk的详情界面选择“权限”,打开权限菜单里所有的权限后再进行测试。3:若问题不再发生,则和此菜单里的运行时权限相关。 若问题依然发生,则和运行时权限无关。原创 2016-12-22 17:54:42 · 1420 阅读 · 0 评论 -
Android5.0系统 知识点总结(持续更新)
人生最可怕的,是比你优秀的人却比你更努力。 永远不要觉得别人望尘莫及,要做的,只是每天进步一点点, 加油!一、编译指令1、进入项目工作目录2、修改工程文件权限 chmod 777 -R ./(*)3、更新环境变量 source build/envsetup.sh4、执行指令:lunch full_gxq6580_we_l-eng,选择工程名5、编译工程指令:make原创 2016-03-16 15:20:34 · 4062 阅读 · 0 评论 -
Android:近期任务列表(Recent App)的两个知识点
一:如何在Recent App不显示某个应用长按HOME键或者Navigation bar的recent key在最近应用程序列表中会显示最近访问过的应用,如何做到不显示某应用以达到隐藏进程的目的呢?只需要在该应用AndroidManifest xml文件中主activity设置属性:android:excludeFromRecents=“true”例如:<manif原创 2016-12-08 11:08:30 · 12612 阅读 · 0 评论 -
Ubuntu系统下安装AndroidStudio2.0 以及升级jdk的终端指令
15年年底Google就已经宣布停止对Eclipse 开发工具的一切支持。还在用Eclipse做开发的同学,是时候用AndroidStudio了。而且AndroidStudio开发工具又是如此的强大好用。一:如何在Ubuntu系统上安装AS:打开terminal,输入以下命令sudo apt-add-repository ppa:paolorotolo/android-studio原创 2016-11-24 14:59:00 · 1049 阅读 · 0 评论 -
Android 如何创建子线程以及区分主线程
创建子线程的DEMO代码:package com.example.handlerthread;import android.os.Bundle;import android.os.Handler;import android.os.HandlerThread;import android.os.Looper;import android.os.Message;import and原创 2016-11-23 11:35:31 · 3756 阅读 · 0 评论 -
Android:实现定时器 Handler的postDelayed(Runnable, long)方法
先演示一个Demo代码。功能是每隔一秒实现Textview颜色的变化,而且是循环变化直到停止。package com.example.handlerpost;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.app.Activity;import原创 2016-11-21 16:07:47 · 3316 阅读 · 0 评论 -
SharedPreferences 跨进程获取值
先直接上Demo代码A 应用:存放sharedPreferences值package com.example.putshare;import android.os.Bundle;import android.app.Activity;import android.content.Context;import android.content.SharedPreferences;原创 2016-11-17 20:26:56 · 3468 阅读 · 1 评论 -
Android面试常问的技术问题
面试时技术经理会问你一些工作中遇到的Android方面的问题,谈谈你所做的项目,和在项目中所扮演的角色。1.如何优化ListView?①Item布局,层级越少越好,使用hierarchyview工具查看优化。②复用convertView③使用ViewHolder④item中有图片时,异步加载⑤快速滑动时,不加载图片⑥item中有图片时,应对图片进行适当压缩⑦实现原创 2016-04-07 16:56:21 · 4852 阅读 · 0 评论 -
AlertDialog常用的一些样式
AlertDialog alert = new AlertDialog.Builder(XXX.this).setTitle("提示") .setMessage("确定要退出么?") .setPositiveButton("确定",new DialogInterface.OnClickListener() {//设置确定按钮 @O转载 2016-03-16 15:20:50 · 1416 阅读 · 1 评论 -
Android 的线程和线程池
不知不觉在Android这个行业行走了有三年时间了。过程坎坷而充沛,想想一路走来自己的经验丰富了,查找和解决问题的能力有所增加外似乎没什么了,但这些随着时间的流失,我所记忆的知识点有时在慢慢的淡忘,所以今年起开通了优快云博客,记录自己行走的点点滴滴... 线程在Android中是一个很重要的概念,从用处来说线程可以分为主线程和子线程。主线程处理和界面有关的事情,子线程则用于执行耗时操作。我原创 2016-09-27 17:29:58 · 1142 阅读 · 0 评论 -
如何用adb shell am命令启动 MTKLogger?
有时候拨串号*#*#3646633#*#*无法进入工模,从而无法进入MTKLogger去抓mobile log这时可以用adb shell am 命令手动叫起mobile log这个apk,方式如下:adb shell am 命令手动叫起mobile log这个apk:adb shell am start -n com.mediatek.mtklogger/com.medi原创 2016-12-20 18:14:38 · 4916 阅读 · 0 评论 -
Android系统:当系统存在多个Launcher时,如何设置开机自动进入默认的Launcher?
开机完成并解锁后,如果系统存在多个Launcher,系统会弹出一个选择框让用户选择进入某个Launcher。如果用户不想选择,而是想直接进入某一个默认的Launcher,要怎么修改?如果没有预置GMS,只需按照步骤一修改,如果预置了GMS请按照步骤一、二修改。一、修改ActivityManagerService.java的startHomeActivityLocked方法boole原创 2017-01-12 13:29:28 · 5409 阅读 · 0 评论 -
Android屏幕密度(Density)和分辨率概念详解
移动设备有大有小,那么如何适应不同屏幕呢,这给我们编程人员造成了很多困惑。我也是突然想到这些问题,然后去网上搜搜相关东西,整理如下。首先,对下面这些长度单位必须了解。 Android中的长度单位详解(dp、sp、px、in、pt、mm) 看到有很多网友不太理解dp、sp和px的区别:现在这里介绍一下dp和sp。dp也就是dip。这个和sp基本类似。如果设置表示长度、高度等属性时可以使用dp 或s转载 2017-03-01 14:37:50 · 8175 阅读 · 1 评论 -
Android O、N版本修改dex2oat编译选项,减少占用ROM空间或者加快安装速度
Android O版本、AndroidN版本1.ROM过大可以通过调整–compiler-filter,减少apk生成odex文件所占据空间的大小,通常来说odex+vdex文件越大,说明dex2oat优化的类越多越彻底,性能也相对较好;2.Apk安装时间过长可以通过调整–compiler-filter,加快安装;解决方案:修改dex2oat的–compiler-filter选项;oat...转载 2018-11-12 15:48:59 · 5847 阅读 · 0 评论 -
N上预置APK失败提示找不到so文件
[DESCRIPTION]预置APK到系统之后打开APK会提示:01-01 12:00:39.537 5326 5326 E AndroidRuntime: Process: com.skype.raider, PID: 532601-01 12:00:39.537 5326 5326 E AndroidRuntime: java.lang.UnsatisfiedLinkError: dal...转载 2018-11-13 14:00:31 · 653 阅读 · 0 评论 -
Android 手机开关机、重启时间优化
开关机、重启时间优化:开机性能优化:是用功能和其它因素多方面平衡的结果,片面追求单方面的性能没有太大意义;有些产品设计开机动画非常酷炫,动画图片过多、高帧率会影响开机速度,这时就需要看是开机速度优先还是体验优先;[SOLUTION]1.zygote,预加载class、resources;加载的多了,会影响开机时间;/sdcard/mtklog/bootprof12450.516490 ...转载 2018-11-01 17:05:12 · 2846 阅读 · 0 评论 -
AndroidP (9.0) 功能和 API
Android 9(API 级别 28)为用户和开发者引入了众多新特性和新功能。 本文重点介绍面向开发者的新功能。要了解新 API,请阅读 API 差异报告或访问 Android API 参考。 请务必查阅 Android 9 行为变更以了解平台变更可能对应用产生影响的各个方面。利用 Wi-Fi RTT 进行室内定位全新 RTT API 支持在应用中进行室内定位。Android 9 添加了...转载 2018-11-01 14:23:19 · 1235 阅读 · 0 评论 -
Android 8.1 需要知道的十项新特性和变化
Android 8.1 需要知道的十项新特性和变化1.主题颜色自适应我最喜欢的8.1更新特性可能是对自动亮暗主题的支持。这个功能是由Pixel 2推出的,它会根据用户使用的壁纸类型自动改变设备的主题。例如,如果你使用的是浅色墙纸,你的手机会显示浅色主题,但是如果你换成深色墙纸,这个主题也会自动切换到深色模式。我认为下面的图片比我的话更能说明这一点。如果你喜欢黑暗模式,你会喜欢这个更新。 ...翻译 2018-08-21 15:36:28 · 4684 阅读 · 0 评论 -
Bcompare工具永久使用方法
bcompare的简介 我们在工作中会经常用到bcompare工具:合入驱动,对比原始文件等. bcompare,即Beyond Compare 是一个综合的比对工具。 可比对的对象包括纯文字档、资料夹、zip 压缩案、FTP 站,等等。 您可以使用它管理您的原始档、保持比对资料夹同步、比对程式的输出结果、以及检查所烧入光碟备份的精确度。Beyond Compare 的主要目标还是帮助您...原创 2018-08-02 10:52:39 · 20086 阅读 · 0 评论 -
Android矢量图vector的制作
Android矢量图vector的制作一:Android 图片适配的发展史 在Android的发展历程中,由于设备碎片化的原故,谷歌在app中图标的适配上做出一步又一步的改进,大体有这么几个阶段:1:首先有了drawable-(m|h|xh|xxh|xxxh)dpi这是最麻烦的一种处理方式,因为每种icon都需要出几套不同分辨率,这样就占用了手机的内存容量,而且也增加了美工和开发人员...原创 2018-08-02 10:48:23 · 1120 阅读 · 0 评论 -
如何将非系统app预置到Doze的白名单中
按步骤1-4操作后,然后全编译。 1.在framework/base/data创建一个data目录2.在framework/base/data/data下创建deviceidle.xml, 并把要放入白名单的应用按格式写入到该文件deviceidle.xml #include $(CLEAR_VARS)LOCAL_MODULE := deviceidle.xmlLOC...转载 2018-05-31 10:00:26 · 1734 阅读 · 0 评论 -
欢迎使用优快云-markdown编辑器
修改点:对流氓软件做特殊处理,强制增加wakelock超时处理 测试建议:打开流氓软件应用,使用adb shell dumpsys power确认其持锁,2分钟后重新查看其锁消失 base/core/java/android/os/PowerManager.java | 31 +++++++++++++++++++++++++++++ 1 file changed, 31 insertio原创 2017-10-12 19:38:09 · 811 阅读 · 0 评论 -
Android:如何将位置信息模式默认设置为高精确度
如何将位置信息模式默认设置为高精确度GPS位置信息模式默认为“仅限设备”, 应客户的需求,需要默认为“高精确度”请把/frameworks/base/packages/SettingsProvider/res/values/defaults.xml<string name="def_location_providers_allowed" translatable="false">gps</strin原创 2017-07-13 19:53:42 · 9699 阅读 · 0 评论 -
Android:如何快速对系统重启问题进行归类
当手机发生系统重启,即导致kernel重启的异常时,会在手机中的/data/aee_exp目录下保存异常重启的db。工程师可以通过GAT的bug report功能,或者直接通过adb pull,把对应的db从手机中抓回来。进一步,对于异常重启的类型,需要通过GAT工具解开db档案(解开方式参考MTK-online上的文档GAT_User_Guide(Customer).docx之5.1的部分),对里原创 2017-07-13 19:34:34 · 2805 阅读 · 0 评论 -
AndroidM及以上,接听电话之后5S 灭屏
笔记:好久没有更新博客了.期间换了份新的工作,多了一些烦心的事情,后续博客会坚持更新..... AndroidM及以上,接听电话之后5S 灭屏处理: 涉及到两个文件:packages/services/Telephony 路径中的PhoneGlobals.java 和 CallNotifier.java 1:PhoneGlobals.java 中添加两个方法 void s原创 2017-06-21 16:15:38 · 1345 阅读 · 0 评论 -
Android:默认手机存储路径为TF卡
处理的方法是当手机中存在TF卡时接收系统的广播,然后进行后续功能实现的操作。步骤如下:一:在AndroidManifest.xml中添加如下: 二:添加.java文件,实现存储TF卡的功能package com.androi原创 2016-11-30 17:00:31 · 3777 阅读 · 1 评论 -
Android 线程池的使用
线程池算是Android开发中非常常用的一个东西了,只要涉及到线程的地方,大多数情况下都会涉及到线程池。Android开发中线程池的使用和Java中线程池的使用基本一致。那么今天我想来总结一下Android开发中线程池的使用。OK,假如说我想做一个新闻应用,ListView上有一个item,每个item上都有一张图片需要从网络上加载,如果不使用线程池,你可能通过下面的方式来开启一个新线转载 2016-09-27 18:16:11 · 780 阅读 · 0 评论 -
Android修改浏览器书签和主页
前一段时间开发了一个AppDemo软件,功能是在我开发的App中能直接修改手机自带浏览器的主页,增加,删除书签(书签缩图同步更换)等功能。过程坎坷,但总算按时完成了,今天就开发过程中遇到的问题做一个总结。 首先遇到的第一个难点:清除浏览器的缓存数据 我们知道只要打开浏览器,那么浏览器的缓存数据就会保存在/data/data/com.android.browser中这个时候不原创 2016-03-16 13:43:28 · 4826 阅读 · 5 评论 -
Android .9.png的由来和制作
作为程序猿,相信你在开发的时候肯定会遇到这样的问题:用到的图片要适应布局的需要而进行拉伸,但是拉伸的效果会让原来很Nice的图片变得很模糊难看,这个问题对于开发者来说很头疼,还好谷歌为我们推出了.9.png格式的图片,那么.接下来就让我们来了解一下9.png。 一:什么是9.png 9.png格式的图片是安卓平台上新创的一种被拉伸却不失真东东,那么它与普通的png图片有什么不同原创 2016-04-18 15:58:15 · 673 阅读 · 0 评论 -
如何查看Android API文档
作为Android开发工程师,不管是APP开发还是系统开发,免不了要各种百度 google。但对一个专业程序猿来说,最靠谱的方式还是要查看google官方的API文档。 但这个文档在哪里,应该怎样去查看? 打开下载的SDK目录 -> docs -> index.html,这个页面并不用联网因为信息都存在sdk里面了 全部的API方法都在里面原创 2016-04-18 10:13:46 · 7805 阅读 · 0 评论 -
Android5.0系统的优缺点
Android L(5.0)正式定名为 Lollipop(棒棒糖).安卓已经六岁了,也总算有一次重大改观了。安卓5.0 Lollipop带来了全新的,扁平化的外观,更好的通知中心,重新设计的核心应用,并提升了在安卓设备上的性能表现——增加了一些以前所缺失的重要应用类别。 首先来看一下Android L相比之前的版本有什么新鲜的东西。 一:自定义通知中心 Lo原创 2016-04-15 14:18:13 · 5175 阅读 · 0 评论 -
Android如何编译userDebug版本
我们在做手机开发的时候用的都是Debug的软件,但是问题来了,有些bug现象只能在User版本中出现,而且User版本没有Root权限,所以不能开发使用,那么为了便于解决问题,怎么才能编译工程的时候让自己的工程是UserDebug版本呢。换句话说就是user版本如何打开root权限 。 这里以Android5.1的工程为例: 首先:在路径中device/gxq/gxq6735_35gc原创 2016-05-10 16:45:38 · 3352 阅读 · 0 评论 -
Android Process 详解
Android基础之Process进程默认情况下,同一个应用程序中的所有组件运行在同一个进程中,而且绝大多数的应用程序也都是这样的。但是,如果我们想要控制让某个特定的组件属于某个进程,我们可以在manifest文件中进行配置。在每种组件元素(activity、service、receiver、provider)的manifest条目中,都支持一个“android:process”的属性转载 2016-04-14 17:23:13 · 810 阅读 · 0 评论 -
Android中应用程序如何获得系统签名权限
一、为什么要签名 开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的。由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,签名可以保证相当名字,但是签名不同的包不被替换。 APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用原创 2016-04-26 10:14:36 · 1407 阅读 · 0 评论