
Android 技术···
文章平均质量分 66
Kevin-K先森
程序员之所以犯错误,不是因为他们不懂,而是因为他们自以为什么都懂。
展开
-
Android 性能调试手册
1. 怎么开始?针对任何性能问题,我觉得第一步都先需要做如下三个确认:确认问题现象,最好自己复现一次。 确认有没有大量 crash 发生。 查看 kernel footprint(config), 确认是否使用 perf config: msmxxx-perf_defconfig。2. systrace性能问题中,超过 90% 都是和 APP 相关的,所以先来聊聊这方面的主要工具 systrace, 此篇文章主要讲讲调试方式,如果想了解怎么分析,可以看看我的第二篇文章APP 启动,触...原创 2021-07-15 18:02:46 · 1213 阅读 · 0 评论 -
EditText 横屏时被遮挡
<EditText android:id="@+id/hostname" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/ip_hint" android:maxLength="128" android:maxLines="1" android:editorExtras="@xml/input_fulls...原创 2021-04-26 19:56:42 · 300 阅读 · 0 评论 -
高通平台Android源码分析之Linux内核设备树(DT - Device Tree)
刚开始接触Android源码的时候,发现在kernel里面多了一种dts文件,因为当初自学Linux时和在第一家公司做物联网模型时都是用的比较老的内核,内核代码还比较混乱,没有采用dts这种方便简洁的格式。后面才知道这是因为Linus的一句”this whole arm thing is a fucking pain in ass“促进改革的,记得Linux早期代码里面板级细节都是在C文件中描述的,代码就显得十分臃肿和混乱。如此优化之后就显得简洁多了,并且也更易于学习、移植。 今天准备专门来分析一下内核原创 2020-12-23 08:57:52 · 2007 阅读 · 0 评论 -
Android开发 dts、各种接口porting
充电缩写语:(acronym)FSM: Finite State MachineCC: Coulcomb CounterFCC: Full Charge CapacityOCV: Open Circuit VoltagePMIC: Power Management ICPC: Percentage ChargeRC: Remaining ChargeSOC: State of ChargeRUC: Remaining Usable ChargeUUC: Unusable Charge原创 2020-12-23 08:55:45 · 2133 阅读 · 0 评论 -
Android Fingerprint属性
在build/tools/buildinfo.sh中定义ro.build.fingerprint=$BUILD_FINGERPRINT.然后在build/core/Makefile中给BUILD_FINGERPRINT赋值但这里确定的是手机system/build.prop中的ro.build.fingerprint,是编译时决定的getprop读取到的ro.build.fing...原创 2020-05-01 00:59:48 · 8167 阅读 · 1 评论 -
ubuntu SP_Flash_Tool 下无法刷机解决
SP_Flash_Tool_exe_Linux_v5.1844.00.100SP_Flash_Tool_exe_Linux_v5.1912.00.100SP_Flash_Tool_exe_Linux_v5.1932.00.100亲测可用以上两个 版本可以使用 一下配置进行刷机 1) sudo usermod -a -G dialout $US...原创 2020-04-28 18:26:55 · 1277 阅读 · 0 评论 -
[FAQ21007] 电信VoLTE开关默认值设置
[Important Notice]CT VoLTE配置文档名称为《Operator_Specific_Document_CT入库版本准备.docx》,如贵司没有請到DCC系统进行索取,路径为 WCP>SW>C2K>Smart Phone>Document Library New>CT Official Test>C库。如果没有权限,请联系CPM进行申请。...原创 2020-02-08 14:02:15 · 2448 阅读 · 0 评论 -
[FAQ20977] 如何配置VoLTE, ViLTE and VoWifi(IMS config for VoLTE, ViLTE and VoWifi)
1. 如何打开VoLTE,ViLTE,VoWifi Feature (How to enable VoLTE,ViLTE,VoWifi feature option) (1)VoLTE,ViLTE Feature Selection Feature option 打开VoLTE(Enable VoLTE) MTK_IMS_SUPPORT...原创 2020-02-08 14:00:11 · 2933 阅读 · 0 评论 -
[FAQ21249] 如何判断某个项目是否支持特定地区和运营商的Volte/Vilte/VoWIFI/ViWIFI
[DESCRIPTION]现在volte网络已经在全世界到处开花落果,很多客户都有支持海外用户volte网络的需求,因此,经常有客户提eService询问所负责项目是否支持特定地区下特定运营商的Volte/Vilte/VoWIFI/ViWIFI。这里给出一个简单快速有效的方式,供客户自行判断。[SOLUTION]敝司定期(目前是每月)会向符合要求...原创 2020-02-08 13:56:38 · 2256 阅读 · 0 评论 -
UBUNTU 查看 JAVA安装路径
有时候不知道java安装在哪里了 通过whereis java命令不能知道java真是的安装路径 可以通过 update-alternatives --config java 命令察看bean@ubuntu :~$ update-alternatives --config javaThere is only one alternative in link group jav原创 2015-08-30 07:36:11 · 15181 阅读 · 0 评论 -
教你在mac上配置adb环境变量!!附上adb无法识别M2的解决办法
[经验技巧]教你在mac上配置adb环境变量!!附上adb无法识别M2的解决办法楼主表于 2012-11-13 15:47:26最近小编突然换了mac做了主力机,作为一个习惯在Windows使用adb刷机和安装卸载软件的屌丝来说,突然不能使用adb简直就是痛不欲生啊。还好经过度娘的指点,我成功的配置了环境变量。下面就跟大家简单说一下具体的一原创 2015-01-31 11:23:17 · 2396 阅读 · 2 评论 -
Ubuntu 14.04搭建Android5.1开发环境和编译
1、安装Ubuntu14.04先下载Ubuntu系统,官网地址,从ubuntu10.04-ubuntu15.04都有下载,具体根据需求可以下载desktop和server版本一般虚拟机建议安装desktop版本,方便管理,本人电脑是64位的,所以下载的ubuntu-14.04.2-server-amd64.iso安装ubuntu系统,其实很简单,网上也很多视图教程,用U盘安装时需要注意原创 2015-08-30 11:58:46 · 1378 阅读 · 0 评论 -
adb shell ps命令
adb shell ps 可用来查看内存adb shell ps | find "launcher"USER PID PPID VSIZE RSS WCHAN PC NAMEapp_47 1274 1071 121628 30352 ffffffff afe0dc24 S com.motorola.launcher VSIZE 是虚存RSS是物理内存原创 2015-01-08 10:05:48 · 14163 阅读 · 0 评论 -
MAC中设置android adb环境变量
1.找到android sdk的本地路径, adb命令在platform-tool下面,记为XXXX 我的路径是(/Applications/eclipse/android-sdk-mac_x86/platform-tools)2.打开终端输入touch .bash_profile open -e .bash_profile 点回车3.原创 2014-10-19 18:26:38 · 1060 阅读 · 0 评论 -
android 4.4.3上面,联系人的头像默认显示首字母,但是不支持中文字符,修改支持中文
在android 4.4.3上面,联系人的头像默认显示首字母,但是不支持中文字符,如下图:如果联系人名字的第一位是英文字符(a-z || A-Z),则默认头像将显示该首字母。如果支持中文时显示第一个汉字,那就happy了。那就看看如何通过修改源代码来实现这一小功能吧~我们还是先了解下联系人头像加载的流程吧~联系人头像加载这个问题还是很有意思的,在Co原创 2014-09-24 17:42:32 · 1904 阅读 · 0 评论 -
webview 文字复制
WebView长按复制 ~ 兼容所有安卓版本 mWebView.setOnLongClickListener(new OnLongClickListener() {@Overridepublic boolean onLongClick(View view) {try {// 震动100毫秒Vibrator vib = (Vibrator) getSystemServi原创 2014-05-09 09:26:48 · 1483 阅读 · 0 评论 -
Java JDK 8 的安装以及环境变量的配置(Linux and Windows)
Java JDK 8 的安装以及环境变量的配置(Linux and Windows) JDK(Java Development Kit)包括了Java语言的编译器,可以在这里下载:http://www.oracle.com/technetwork/java/javase/down原创 2014-05-09 10:03:02 · 1819 阅读 · 0 评论 -
windows和ubuntu 10.4双系统启动顺序
修改/boot/grub/grub.cfg文件/boot/grub/grub.cfg文件,这与旧版本不同(9.10之前版本/boot/grub/menu.lst),而且为了安全起见,该文件默认为“只读”属性,因此在修改启动菜单之前你必须先将其文件属性改为“可读写”后方可修改文件内容。sudo chmod 666 /boot/grub/grub.cfg修改成 default 4,原创 2014-05-02 09:50:28 · 1024 阅读 · 0 评论 -
Android手机中获取手机号码和运营商信息
package com.pei.activity;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import andr原创 2013-08-30 17:08:20 · 578 阅读 · 0 评论 -
在Android4.0中Contacts拨号盘界面剖析(源码)
通过在ViewPager的适配器对象中,发现过一下三行代码private DialpadFragment mDialpadFragment;private CallLogFragment mCallLogFragment;private PhoneFavoriteFragment mPhoneFavoriteFragment;第一行的DialpadFragmen原创 2013-08-17 13:30:41 · 1599 阅读 · 0 评论 -
ubuntu 修改主机名
1.启用root用户运行命令 sudo passwd root 为root用户设置密码2.以root用户身份登录1)编辑文件/etc/hosts 将下面的一行127.0.1.1 xxxxx替换为127.0.1.1 newhostname2) 编辑 /etc/hostname文件 删除该文件的所有内容,添加newhostname原创 2013-08-21 19:45:58 · 685 阅读 · 0 评论 -
开机后将sim/uim卡上的联系人写入数据库
以展讯8810平台-android2.3代码为例:1. 类SyncSimContactsReceiver:这个类是一个广播接收器(broadcastReceiver),主要看它的onReceive()方法: 在接收到android.intent.action.BOOT_COMPLETED这个intent的时候,会执行startService(),service对应的类是SyncSimC原创 2013-07-03 13:28:59 · 1787 阅读 · 2 评论 -
重写系统Crash处理类,保存Crash信息到SD卡 和 完美退出程序的方法
[置顶] 重写系统Crash处理类,保存Crash信息到SD卡 和 完美退出程序的方法我们开发Android应用的时候,当出现Crash的时候,系统弹出一个警告框,如下图一,有些手机会黑屏几秒钟然后还伴随着振动,作为我们开发人员,是很讨厌这样子的Crash,因为这意味着我们又要改bug,每个程序员都希望自己开发出来的东西bug少点,稳定点,但是没有bug的程序几转载 2013-07-19 09:07:55 · 772 阅读 · 0 评论 -
Android EditText的设置错误提示信息
final EditText et = (EditText)findViewById(R.id.edit); et.setInputType(InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS);//只能输入邮箱地址 if (et.getText().length() <= 0) {原创 2015-09-10 12:14:31 · 4412 阅读 · 2 评论 -
Android EditText的设置
Android EditText的设置EditText相关属性android1、输入法Enter键图标的设置:软件盘的界面替换只有一个属性android:imeOptions,这个属性的可以取的值有normal,actionUnspecified,actionNone,actionGo,actionSearch,actionSend,actionNext,actionDone,例如当值为原创 2015-09-10 12:20:20 · 589 阅读 · 0 评论 -
Android源码版本
查看Android源码版本分享一下:通过修改system\build.prop这个文件来玩只改部分几个支持中文任你改手机型号、品牌、内部版本号、Android版本 -----[D395O] 一起搞基····纯粹娱乐分享··9100 4.0 2.3.6 亲测成功...首先你需要有一台root过的机器以及re管理器打开re管理器,进入system文件原创 2016-01-24 01:01:03 · 672 阅读 · 0 评论 -
android语言、名称与资源对应关系
语言码_国家码->语言选择里的显示语言->英文下的语言(国家) -> 简体中文下的语言(国家)af -> Afrikaans -> Afrikaans -> 南非荷兰文af_NA -> Afrikaans -> Afrikaans (Namibia) -> 南非荷兰文 ...原创 2019-08-26 17:32:38 · 2832 阅读 · 0 评论 -
Ubuntu 文件系统成为只读模式的解决办法
虚拟机环境的Linux系统由于是虚拟化虚拟出来的主机环境,因此 经常会出现一些操作系统的问题,今天我遇到了一个Ubuntu操作系统文件系统成了只读模式,无法进行系统的操作,由于出问题的主机是我个人搭建的Hadoop集群的name主节点,对整个集群时比较重要的,因此在网上也查了一些资料,后来也成功解决掉了问题。 首先,在操作文件时报文件系统是只读模式无法操作的错误时...原创 2019-05-27 11:18:13 · 17103 阅读 · 9 评论 -
Ubuntu 16.04 adb devices : no permissions 解决方法
一、安装adb和fastbootsudo apt-get updatesudo apt-get install android-tools-adb android-tools-fastboot二、出现问题输入adb devices后发现System-Product-Name:~$ adb devices* daemon not running. startin...原创 2019-04-18 09:55:42 · 696 阅读 · 0 评论 -
Android指纹识别,看这一篇就够了
在Android6.0(Api23)的时候,Android系统加入了指纹识别的api接口,即FingerprintManager,定义了最基础的指纹识别接口。不过,在AndroidP(Api28)的时候,官方不再推荐使用,做了@Deprecated处理。 后来,在support v4库中添加了FingerprintManagerCompat类,我看了他的源码,其实就是对Fingerp...原创 2018-07-31 16:39:34 · 22662 阅读 · 22 评论 -
你真的会用Fragment吗?Fragment复用的那些事儿
如未特殊说明,本文中的知识点适用于 Activity 重建的时候,即:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState) // 略........ if (savedInstanceState != null) { // 本文讨论的情况...原创 2018-07-31 16:25:05 · 2700 阅读 · 1 评论 -
Android studio 导入系统源码
1.Android studio 安装启动官网下载Android studio压缩包,解压到指定路径,到解压路径下:android-studio/bin 执行 studio.sh 即可启动jdk和android sdk配置ok的话一般都能顺利启动,遇到其他不能启动的问题,可以自行百度或者问熟悉的。2.导入android 源码第一步:生成andorid.ipr文件 源原创 2016-11-03 17:06:27 · 1134 阅读 · 0 评论 -
Android fragment监听返回键
fragment需要监听返回键时分两种情况,一种是有其他控件获取了焦点,另一种是没有其他控件获得焦点。先看第二种情况,代码如下:MyFragment.Java[java]view plaincopyprint?publicclassMyFragmentextendsFragment{@Overr原创 2017-04-10 12:38:15 · 8596 阅读 · 1 评论 -
Ubuntu 14.04安装teamviewer 远程桌面
Ubuntu 14.04安装teamviewer 远程桌面 teamviewer 真是一款非常强大的远程登录软件,可以跨Windows和Ubuntu远程登录,但是在64bit的Ubuntu下安装时,按照官方安装方法总是会遇到问题,下面说一下如何安装:安装i386库1sudo apt-get install原创 2016-09-29 18:17:44 · 22137 阅读 · 0 评论 -
Android快速实现文件下载(只有4行代码)
Android快速实现文件下载(只有4行代码)简单使用完成一个下载任务只需要4行代码,什么断点续传,大文件下载,通知栏进度显示....都不需要你操心。//创建下载任务,downloadUrl就是下载链接DownloadManager.Request request = new DownloadManager.Request(Uri.parse(downl原创 2016-08-11 10:13:40 · 10389 阅读 · 1 评论 -
Android App调试内存泄露之Cursor篇
最近在工作中处理了一些内存泄露的问题,在这个过程中我尤其发现了一些基本的问题反而忽略导致内存泄露,比如静态变量,cursor关闭,流关闭,线程,定时器,反注册,bitmap等等,我稍微统计并总结了一下,当然了,这些问题这么说起来比较笼统,接下来我会根据问题,把一些实例代码贴出来,一步一步分析,在具体的场景下,用行之有效的方法,找出泄露的根本原因,并给出解决方案。 现在,就从cursor关原创 2016-08-18 17:48:05 · 1770 阅读 · 0 评论 -
使用Snackbar!——Android Snackbar花式使用指南
使用Snackbar!——Android Snackbar花式使用指南本文是在《Design Support Library第三部分:Snackbar样式》和《Snackbar使用及其注意事项》两篇文章的启发下而来,首先对两篇文章的作者表示感谢。Snackbar是Android Support Design Library库中的一个控件,可以在屏幕底部快速弹出消息,原创 2016-08-18 09:34:39 · 4861 阅读 · 1 评论 -
Android EditText输入最大值提示功能
有时,我们会对EditText添加最大长度限制,在EditText达到输入上限时阻止继续输入并弹出提示。这个问题看似简单,但很难处理的完美。由于EditText无法拦截软件盘事件,常规的通过TextWatcher,OnKeyListener,等方法都会存在一定的问题。经过反复试错,终于发现以下方案:1.实现一个InputFilter,在InputFilter中判原创 2016-07-27 16:46:48 · 1677 阅读 · 0 评论 -
Android性能优化一些方法
1.采用硬件加速,在androidmanifest.xml中application添加 Android:hardwareAccelerated=”true”。不过这个需要在android 3.0才可以使用。 2.View 中设置缓存属性.setDrawingCache为true。 3.优化你的布局。通过Android sdk中tools目录下的layoutopt 命令查看你的布局是否需要优化原创 2016-06-18 18:20:56 · 371 阅读 · 0 评论 -
ubuntu16.04 编译android 源码出现的错误
1、openjdk 版本不对解决:2、/bin/bash: prebuilts/misc/linux-x86/bison/bison: 没有那个文件或目录build/core/binary.mk:609: recipe for target 'out/host/linux-x86/obj/EXECUTABLES/aidl_intermediates/aidl_language_y.cp原创 2016-06-17 17:05:53 · 7278 阅读 · 0 评论