最近项目中发现个别Android手机中存在弹出的软键盘会遮挡输入框的现象,最后自己写了一个方法(如下),问题基本解决. 记录下来,防止忘记.有什么不对的地方欢迎指正.O(∩_∩)O 1 //键盘适配 2 console.log(navigator.platform); 3 $('input ,textarea').focus(function() { 4 var keyString = navigator.platform.toLowerCase(); 5 console.log('keyStr…
Android笔记之Android系统架构 h2{ color: #4abcde; } a{ color: blue; text-decoration: none; } a:hover{ color: red; text-decoration: underline; } .p1{ font-size: 22px; color: #787878; font-weight: bold; } .img1{ width: 644px; height: 525px; } p{ font-size: 16p…
AIDL,Android Interface definition language的缩写,它是一种android内部进程通信接口的描述语言,通过它我们可以定义进程间的通信接口.最近看了下AIDL在Android系统中的用法,在网上看到很多初学的朋友不太明白AIDL的实际作用,android提供了很多进程间通信的组件,像action.broadcast.contentprovide都可以实现进程间的通信,为什么还要用AIDL这个东西呢?我在android源码中实现了一个自己写的AIDL例子,用以…
荣品RP4412开发板在android系统编译的时候,怎么生成ramdisk-uboot.img生成流程分析: mkimage -A arm -O linux -T ramdisk -C none -a 0x40800000 -n "ramdisk" -d out/target/product/smdk4x12/ramdisk.img out/target/product/smdk4x12/ramdisk-uboot.img 1.解压ramdisk-uboot.img 解压.修改And…
Android系统中的6种模式 1:一般启动模式(normal mode):    功能是正常启动手机,方法为关机状态下按电源键启动. 2:安全模式(safe mode):    此模式和正常启动一样,但没有登记Google,所以不能访问Market或使用你的Google账号.操作方法为按住“menu”键,按电源键启动手机,直至手机启动完成松开“menu”键. 3:恢复模式(recovery mode)     可打开命令解释程序(shell),刷新映像文件(flash image),执行备份等…
由于是浅析,所以我只分析常用的接口,注意是Android系统中的JAVA类,可能和JDK的源码有区别. 首先从构造函数开始, /** * Min capacity (other than zero) for a HashMap. Must be a power of two * greater than 1 (and less than 1 << 30). */ private static final int MINIMUM_CAPACITY = 4; /** * Max capacity…
在Android系统中,广播(Broadcast)是在组件之间传播数据(Intent)的一种机制:这些组件甚至是可以位于不同的进程中,这样它就像Binder机制一样,起到进程间通信的作用:本文通过一个简单的例子来学习Android系统的广播机制,为后续分析广播机制的源代码作准备. 在Android系统中,为什么需要广播机制呢?广播机制,本质上它就是一种组件间的通信方式,如果是两个组件位于不同的进程当中,那么可以用Binder机制来实现,如果两个组件是在同一个进程中,那么它们之间可以用来通信的方式…
如:在frameworks/opt/net/ims/src/java/com/android/ims/ImsManager.java if (SystemProperties.get("persist.mtk_dynamic_ims_switch").equals("1")) { 我们想知道系统中persist.mtk_dynamic_ims_switch的值是多少,可以用如下方法 adb shell 进入android文件系统中: shell@GF179:/ $…
问题:使用adb pull命令从android系统中读取文件失败.显示:Permission denied   原因:是由于文件权限原因引起.       使用ls -l命令查看android系统中的文件权限为:     -rw-rw---- app_51   app_51     也就是说,该文件只有app_51用户以及app_51群组拥有读写权限,而adb shell的用户为shell,既不是app_51用户,也不在app_51群组中,所以没有权限读取这个文件.所以就出现了     Perm…
android系统中DP和SP的转化:1.首先分析TypedValue.java 可以调用以下代码获得dp的值 TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20,getResources().getDisplayMetrics()); public static float applyDimension(int unit, float value,DisplayMetrics metrics) { switch (unit) {…
Android系统中TextView默认显示中文时会比较紧凑,不是很美观.为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtra或android:lineSpacingMultiplier. 关于Android下TextView中文换行问题,可查看Android自定义view-文本自动换行. 1.android:lineSpacingExtra设置行间距,如”3dp”. 2.android:lineSpacingMultiplier设置行间距的倍数,如”1.2″…
android系统中如何通过程序打开某个AccessibilityService(系统辅助服务)? 通常的做法是注册AccessibilityService(辅助服务)后跳转到设置启动服务页面引导用户手动将我们创建的AccessibilityService开启.但是很多android系统过段时间会自动将AccessibilityService关闭掉.请教大神们,怎么让我们创建的AccessibilityService常驻不被关掉,或者关闭掉能通过我们的程序自己打开. adb  shell  命令…
1.关于Android系统中不同的定位模式 Android系统中包括3中定位模式:   使用GPS.WLAN和移动网络 使用WLAN和移动网络 仅使用GPS 截图 特点 同时使用GPS.WIFI及基站定位,速度快.精度高,室内定位效果好. 缺点:耗流量.耗电量 只使用WIFI和基站定位,需要WIFI或者基站才行,室内效果好. 缺点:依赖WIFI或基站,精度一般 不依赖WIFI和基站,室内效果差,户外可靠性好. 缺点:室内效果差 代码 LocationManager.GPS_PROVIDER =…
在android系统中运行jar操作步骤: 1.       打包编译jar包 2.       将jar包导入android设备中 adb push test.jar  /data/local/tmp     //将PC端编译好的jar包push到android设备中的/data/local/tmp目录下 3.       设置CLASSPATH export CLASSPATH=/data/local/tmp/apt.jar 4.       启动jar app_process /data/…
转自:http://blog.csdn.net/yao_guet/article/details/6531241 在android系统中,有一些初始化的配置文件,例如: /init.rc /default.prop /system/build.prop 文件里面里面配置了开机设置的系统属性值, 这些属性值,可以通过getprop获取,setprop设置, 它的格式如下: getprop [key] 获取指定key的配置值,如果不带参数,只是getprop则是显示系统所有的配置值. [dalvik…
本文转载自:http://blog.csdn.net/mu0206mu/article/details/7514559 在Android系统中修改android.mk使其同时编译rgb2565和rgb2888(向out/host/Linux-x86/bin/下新增加一个工具命令)                       修改对应的Android.mk文件使其在源码编译时能够同时编译出rgb2565和rgb2888,rgb2888的源码文件已有,其实实现很简单,这里只是将我在具体测试中不同模块…
android系统中对ffmpeg封装最好的免费SDK; 无论个人还是公司,都免费商用, 欢迎下载. https://github.com/LanSoSdk/LanSoEditor_common 可能是android系统中对ffmpeg封装最好的免费SDK; 主要特点:  -  增加 H264硬件编码器 和 H264硬件解码器,  处理速度极大提升;  -  增加40多个常见方法,编写各种辅助处理类.  -  SDK已运行二年左右,商用APP200+.  免费策略:-  此SDK已运行二年左右,…
 Android StatusBarUtil:设置Android系统下方虚拟键键盘透明度 Android StatusBarUtil是github上的一个开源项目,主页:https://github.com/laobie/StatusBarUtil StatusBarUtil可以修改Android底部下方系统的原生虚拟键键盘的透明度. 这是不使用StatusBarUtil的Android原生底部状态: 在自己的代码中中加入: package zhangphil.demo; import an…
1.android 弹出的软键盘遮挡住EditText文本框的解决方案: 把Activit对应的布局文件filename.xml文件里的控件用比重设置布局.(例如:android:layout_weight="31")并且尽可能把高度设置成自适应的:android:layout_height="wrap_content",也就是没有设置高度的控件可压缩度的总和,如果比软键盘的高度要大,在EditText文本输入的时候,弹出的软键盘就不会遮挡住文本输入框. 2.设置默…
Android中点击隐藏软键盘最佳方法 实现功能:点击EditText,软键盘出现并且不会隐藏,点击或者触摸EditText以外的其他任何区域,软键盘被隐藏: 1.重写dispatchTouchEvent()方法,获取当前触摸事件为DOWN的时候隐藏软键盘 @Override public boolean dispatchTouchEvent(MotionEvent ev) { //Finger touch screen event if (ev.getAction() == MotionEve…
很久之前就想做一个车载相关的app.需要实现如下功能: (1)每0.2秒更新一次当前车辆的最新速度值. (2)可控制性记录行驶里程. (3)不连接网络情况下获取当前车辆位置.如(北京市X区X路X号) (4)实时快速获取车辆运动方向. (5)获取当前太空卫星数量以及GPS状态. 以上功能不需要连接网络.不需要开蓝牙.APP显示名字等可定制; 条件是有个大屏的Android系统车载导航. 好了.实现上面的第一步是需要一个汽车仪表盘的source.网上搜索了一下是有的,所以直接下载了:详细请点击: 搜…
Android系统用于Activity的标准Intent 1.根据联系人ID显示联系人信息= Intent intent=new Intent(); intent.setAction(Intent.ACTION_VIEW);//显示联系人信息 intent.setData(Uri.parse("content://contaccts/people/492")); startActivity(intent); 2.根据联系人ID显示拨号面板 Intent intent=new Inten…
在项目中碰到这样的问题: 由于系统中的按键在底层做了重新定义或者新增了按键,此时需要在APP层对按键事件(keyevent)做分解处理,模拟Android系统做法,把keyevent分解成: 1.单击事件:就是普通key的单击: 2.双击事件:500ms内同一按键单击两次: 3.长按事件:同一按键长按超过1000ms(系统中长按事件为500ms): 4.组合按键:两个以上按键同时按住: 其中的keyevent可以来自Activity.View子类的dispatchKeyEvent方法,也可以是我…
转自:http://blog.csdn.net/yabg_zhi_xiang/article/details/51727844 在SettingsProvider中设置系统中默认值,我们可以在frameworks\base\packages\SettingsProvider\res\values\default.xml文件中看到常用的一些默认值,这次我就来详细解释下这里面默认的意义.当然,这不是全部的默认值,全部默认值得定义要在frameworks\base\core\java\android\…
最近一直在做有关内存方面的优化工作,在做优化的过程,除了关注内存的申请量以及GC的情况之外,我们经常需要想方法找出是那些对象占用了大量内存,以及他们是如何导致GC的,这意味着我们需要获取对象申请的信息(大小,类型,堆栈等),我们这篇文章来介绍下几种获取对象申请信息的方法 Allocation Trakcer Allocation Tracker是android studio自带的一个功能,我们可以在MemoryMonitor中打开使用: 如上图,点击红框按钮,然后操作app,开始allocati…
1. *.apk文件 APK是Android Package的缩写,即Android安装包.通过将APK文件直接传到Android模拟器或Android手机中执行即可安装. 使用Android打包工具(aapt)将DEX文件,资源文件以及AndroidManifest.xml文件组合成一个应用程序包(APK).Dex是Dalvik VM executes的全称,即Android Dalvik执行程序. META-INF\ Jar文件 res\ 存放资源文件 AndroidManifest.xml…
本篇文章讲解 system.img 是什么东西,以及它的打包和解包方式 system.img 是什么 system.img 是 Android 系统中用来存放系统文件的镜像 (image) ,文件格式为 yaffs2 或者 ext 的文件系统 ,在 Android 源码编译后会生产该文件.它将被 init 进程通过解析 init.rc 文件挂载 (mount) 到 /system 目录或者说 system 分区下 如何制作 system.img 使用下面的命令来即可制作一个 system.img…
Android 刷机过程中 Fastboot 和 Recovery 的作用是什么? 自己在知乎的一篇回答,,现在翻出来放到博客,希望可以解答更多人的疑惑,抑或有什么理解上的错误,也望网友指出~ 今天恰好和同事讨论了下Fastboot.在我看来提问者首先应该了解Fastboot和Recovery在安卓系统中的扮演什么角色,我们再去讨论它们在刷机过程中的作用. 首先来说下Fastboot的功能吧,Fastboot一般由boot和loader两个模块组成,boot负责安卓设备上电后初始化一些最基本的参…
第一步:检查下自己的电脑上有没有安装JDK(Java Development Kit)(2019年7月安装的最新版是JDK 1.8.0_181版本),通过在终端中输入"java -version",可以得到检验. 第二步:如果没有安装JDK,请移步Oracle官网的下载中心进行下载(需要登录Oracle账号和同意协议才能下载)[https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.…
系列目录     [已更新最新开发文章,点击查看详细] 在建筑施工图审查系统中,设计单位提交设计完成的模型/图纸,审查专家审查模型/图纸.审查过程中如果发现不符合规范的地方,则流程退回到设计单位,设计单位人员根据审查意见重新调整设计,调整完成后再次提交到审查专家.此时为了便于专家审查,需要知道当前轮次的模型/图纸与上一轮次的模型/图纸发生了哪些异动,针对异动情况进行审查即可. 先看个效果 效果如上图.左侧是当前审查轮次的模型,中间是上一轮次的模型,右侧是2个模型的对比产生的异动列表. (1)点击…