Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因.重要概念.解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将有所收获! Android屏幕适配出现的原因 重要概念 屏幕尺寸 屏幕分辨率 屏幕像素密度 dpdipdpisppx mdpihdpixdpixxdpi 解决方案 支持各种屏幕尺寸 使用wrap_contentmatch_parentweight 使用相对布局…
但 Android 版本低于 3.2 的设备不支持此技术,原因是这些设备无法将 sw600dp 识别为尺寸限定符,因此我们仍需使用 large 限定符.这样一来,就会有一个名称为 res/layout-large/main.xml 的文件(与 res/layout-sw600dp/main.xml 一样).但是没有太大关系,我们将马上学习如何避免此类布局文件出现的重复. 使用布局别名 最小宽度限定符仅适用于 Android 3.2 及更高版本.因此,如果我们仍需使用与较低版本兼容的概括尺寸范围(…
老李分享:接口测试之jmeter   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.移动端自动化测试很多人把他仅仅理解成appuim工具的自动化测试,而移动端的测试包含前端的手机端的自动化测试还有后端的接口测试,很多培训机构仅仅培训手机自动化测试培训(只有工具层面如appium之类的培训,而没有完整的测试解决方案),poptest移动端测试开发课程包含了前端和后端的完整测试案例的培训,真正让学员能掌握移动端的测试方法.(大家…
)密度无关像素,单位为dp,是Android特有的单位 Android开发时通常使用dp而不是px单位设置图片大小,因为它可以保证在不同屏幕像素密度的设备上显示相同的效果. /** * dp与px的转换 * Created by SEU_Calvin on 2016/09/28 */ public class DensityUtils { public static int dp2px(float dp , Context context){ float density = context.ge…
近来在做android屏幕适配这方面的工作, 今天总算有点眉目.  小记一下 基础知识就不科普了, 网上一大堆. 作为一个刚接触这方面人, 最先进入我脑子的, 是从小到大的各种屏, 小到手表, 大到街头上看到的广告牌. 然后对这些不同大小的屏按使用方式来区分一下: 3.5 英寸以下的. 这个尺寸以下的手机比较少, 穿戴设备比较多 3.5 - 7 英寸  这个尺寸区间主要是手机 6 英寸以下的平板. 也是比较少的 6 - 11 英寸 这个区间主要是平板 手机和平板都是拿在手上的设备(当然也可以放在…
需求:今天在做ListView的时候遇到一个问题,就是ListView中加载图片的时候.有些图片的大小比较大,所以会出现图片显示不充分的问题. 首先,再不做任何处理的情况下,大小是这样的.宽度是WrapContent. 那么怎么解决呢?? 1.首先FIX_XY,但是这样会引起失真. 2.于是需要换个解决方案,那就是自定义View,重写onMeasure方法. 自定义一个属性:长宽高比.通过自己重写onMeasure方法来解决. 具体解决代码如下: package com.itheima.goog…
android屏幕适配详解 官方地址:http://developer.android.com/guide/practices/screens_support.html 转自:http://www.cnblogs.com/error404/p/3815739.html#commentform 一.关于布局适配建议 1.不要使用绝对布局 2.尽量使用match_parent 而不是fill_parent . 3.能够使用权重的地方尽量使用权重(android:layout_weight) 4.如果…
腾讯优测是专业的自动化测试平台,提供全面兼容适配测试,远程真机租用等多维度的测试服务! 作为一名"艰苦卓绝"的软件工程师,我在开发路上经常被各种奇葩情况虐的体无完肤...今天就想与大家分享一个我在适配过程中遇到的特殊状况,希望工程师们多加注意. 爱护程序猿,人人有责.阿门... 闲话不多说,步入正题.相信大家都用过 android.hardware.Camera,那就一定接触过Camera的 setDisplayOrientation方法.该方法是用来设置显示Camera在预览状态下的…
老李分享:android app自动化测试工具合集   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200.我们从2016年8月开始不断升级测试开发工程师就业培训的班的课程,不断新增和优化课程内容,为了和当下企业的实际情况,提高学员的实战水平,在2016年稳定课程主题框架,做到每半年升级一版. 安卓应用自动化测试工具之一 - PerfectoM…
老李分享:导出xml报告到手机   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200. 利用Robotium框架把报告导入手机,因为项目要求不能用Eclipse,只能用adb命令实现,可以先用开发工具生成测试工程的apk,安装到手机里,直接用命令运行,再用命令把报告pull到pc端就OK了,最好再集成到Hudson上面,就能获得更好的客户体验…
分享我开发的网络电话Android手机APP正式版,图文详解及下载 分享我开发的网络电话Android手机APP正式版 实时语音通讯,可广域网实时通讯,音质清晰流畅! 安装之后的运行效果: 第一次安装后运行界面: 点击 "建立连接" 按钮后 一般情况下认证用户名是你的本机手机号码,也就是你的网络电话号码,但是有一些手机不一定能获取到自己的手机号码,出现这种情况请与我联系: QQ群 181978302 出现上述界面,如果你的Wi-Fi或 3G 联网正常,那么你可能已经登录成功,可以开始正…
老李分享:Android -自动化埋点   当我们开发一款Android应用上线后,希望能收集一些用户操作的行为数据,比如用户在某个页面点击了多少次,在某个控件被点击了多少次,在某个页面停 留了多少时间等.这些数据收集起来可以交给数据分析师,他们可以统计出应用的PV或UV;或者统计应用中哪些页面最受欢迎,哪些控件点击率最低,从而来改 进应用.对于控件被点击多少次,一般做法是在控件点击事件中加入几行log代码,然后将此次的点击记录下来,最终发送到服务端,页面的点击也是类似,需要 在页面生命周期的开…
老李分享:Android性能优化之内存泄漏   前言 对于内存泄漏,我想大家在开发中肯定都遇到过,只不过内存泄漏对我们来说并不是可见的,因为它是在堆中活动,而要想检测程序中是否有内存泄漏的产生,通常我们可以借助LeakCanary.MAT等工具来检测应用程序是否存在内存泄漏,MAT是一款强大的内存分析工具,功能繁多而复杂,而LeakCanary则是由Square开源的一款轻量第三方内存泄漏检测工具,当它检测到程序中有内存泄漏的产生时,它将以最直观的方式告诉我们该内存泄漏是由谁产生的和该内存泄漏导…
在项目开发的过程中,同一个布局对应不同的手机会显示出不同的效果.导致这个现象产生的原因是不同手机的分辨率不同.在android sdk提供的帮助文档中,我们可以看到各种手机的分辨率和对应的屏大小.QVGA (240x320),WQVGA400(240x400),WQVGA432 (240x432),HVGA (320x480),WVGA800 (480x800),WVGA854 (480x854). 目前android手机的分辨率大致就是帮助文档中描述的几种,我们可以用两种方式进行不同手机的适配…
腾讯优测是专业的android自动化测试平台,拥有上千款真机,彻底解决android碎片化问题! 这里我要说的不是闪光灯的硬件特征,也不是说底层驱动的原理,我只是跟大家聊一聊在项目中遇到的一些关于闪光灯的让人挠头的几个问题,也许你也曾遇见过,那我们一起来回味:如果你没遇见过,那我的这篇文章会让你少走一点弯路. 一.判断手机是否有闪光灯 按照常理,我们在使用闪光灯之前需要先判断手机是否有闪光灯,我们常用的判断闪光灯的方法应该有以下两种: 根据腾讯优测数据库中的数据显示,在热门机型中: 使用方法一会…
老李分享:接电话扩展之uiautomator   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821478,咨询电话010-84505200. 问题 在做自动化测试的时候,我们遇到接电话的case.这个问题的难点在于要自动的实现某一个时刻有电话打进来才能起作用.像我上篇文章写的case,是一个接电话的case,那么要想让该case起作用,我就得启动case后,手动拨一个电话给该手机.…
老李分享:adb发送的指令都有哪些   这两天在poptest上课的时候,我们邀请了业内技术牛人为我们的学员讲解手机自动化方面的知识,每天大家都很踊跃,要学习到晚上11点多才能,有的学员跟我说都累傻了,呵呵. 下面把adb的指令和大家做一些分享. 发送返回键:adb shell input event 4     那么还有那些其他键呢? public class KeyEvent extends InputEvent implements Parcelable { /** Key code co…
最近的想要用android手机蓝牙共享wifi网络给ubuntu16.04系统用,查了好多资料,发现网上很少有有用的.自己实践后分享如下. 第一步:手机与电脑配对:         该步骤比较简单,网上也可以找到相关的资料,大致步骤记录如下(因手机不同略有不同):      (1)打开手机蓝牙,设置为对周围设备可见(因手机不同);     (2)打开电脑蓝牙:点击"系统设置"--->点击"蓝牙"(下图左)--->选择两个按钮到"打开"…
Android手机目前常见的分辨率 1.1 手机常见分辨率: 4:3 VGA     640*480 (Video Graphics Array) QVGA  320*240 (Quarter VGA) HVGA  480*320 (Half-size VGA) SVGA  800*600 (Super VGA) 5:3 WVGA  800*480 (Wide VGA) 16:9 FWVGA 854*480 (Full Wide VGA) HD        1920*1080 High Def…
rem 作为一个低调的长度单位,由于手机端网页的兴起,在屏幕适配中得到重用.使用 rem 前端开发者可以很方便的在各种屏幕尺寸下,通过等比缩放的方式达到设计图要求的效果. rem 的官方定义『The font size of the root element.』,即以根节点的字体大小作为基准值进行长度计算.一般认为网页中的根节点是 html 元素,所以采用的方式也是通过设置 html 元素的 font-size 来做屏幕适配,但实际情况真有这么简单吗? 首先我们来看看使用 rem 实现手机屏幕适…
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/58009392302e4725036142fc Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师.每周都会举行嘉宾分享,话题讨论等活动. 本期,我们邀请了 腾讯 SNG iOS 开发工程师"段定龙",为大家分享<QQ电话适配iOS10 Callkit框架分享>. 分享内容简介: 苹果在iOS 10开放了系…
Android自动化测试之Monkeyrunner学习笔记(一) 因项目需要,开始研究Android自动化测试方法,对其中的一些工具.方法和框架做了一些简单的整理,其中包括Monkey.Monkeyrunner.Athrun.appium,目前仍在了解学习android测试框架.CTS等.本文主要为前段时间学习总结,由于刚接触不久,故本文难免会有些肤浅,大神请绕走~ [目录] 1.Monkeyrunner简介 2.Monkeyrunner工具特性 3.Monkeyrunner工具同Monkey工…
x86架构的android手机兼容性问题 http://www.cnblogs.com/guoxiaoqian/p/3984934.html 自从CES2012上Intel发布了针对移动市场的Medfield平台以来,市面上出现过一些基于X86的Android手机. 大部分Android应用都使用基于Dalvik Java代码开发.理论上,由于Dalvik代码在系统的虚拟机中执行,在x86的ATOM平台上不会有性能损失.但由于虚拟机执行效率的有限,对于一些高性能追求的应用,谷歌允许开发者使用原生…
一.素材来源 https://www.zhihu.com/question/20467503 二.方法整理 2.1 方式1:Packet Capture + HTTP Injector 使用于在手机端操作,可满足简单需求,无需root 2.2 方式2:tcpdump https://www.zhihu.com/question/20467503/answer/86760222 答案里演示的感觉很极客,界面就是一个命令行的窗口,但是看起来好高端的样子~~~ 下次有机会,给大家亲测一下 http:/…
超详细React Native实现微信好友/朋友圈分享功能-Android/iOS双平台通用   2016/06/16 |  React Native技术文章 |  Sky丶清|  暂无评论 |  121 views   尊重版权,未经授权不得转载 本文来自:江清清的技术专栏(http://www.lcode.org) (一)前言 现阶段大家在使用React Native开发项目的时候,基本都会使用到微信好友或者微信朋友圈分享功能吧,那么今天我就带大家实现以下RN微信好友以及朋友圈的分享功能.…
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8744943 记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad.然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发.当时项目组定的方案是,制作两个版本的App,一个手机版,一个Pad版.由于当时手机版的主体功能已经做的差不多了,所以Pad版基本上就是把手机版的代码完全拷过…
记得我之前参与开发过一个华为的项目,要求程序可以支持好几种终端设备,其中就包括Android手机和Android Pad.然后为了节省人力,公司无节操地让Android手机和Android Pad都由我们团队开发.当时项目组定的方案是,制作两个版本的App,一个手机版,一个Pad版.由于当时手机版的主体功能已经做的差不多了,所以Pad版基本上就是把手机版的代码完全拷过来,然后再根据平板的特性部分稍作修改就好了. 但是,从此以后我们就非常苦逼了.每次要添加什么新功能,同样的代码要写两遍.每次要修复…
原文网址:https://github.com/SkillCollege/QrCodeScan QrCodeScan 这是Android手机客户端关于二维码扫描的源码,使用了高效的ZBar解码库,并修复了中文乱码. 融合了ZXing代码(使用其中的相机管理功能). 一. 使用开源ZXing扫描的缺点 1.原始代码是横屏模式,尽管可以改成竖屏,但是扫描界面的自定义和多屏幕适配不好做 2.有效扫描区域不好控制,可能是我自己技术不成熟,没找到好方法 3.ZXing是Java写的,对二维码的解析效率没有…
Windows上建立ssh服务器 参见: http://www.cnblogs.com/xred/archive/2012/04/21/2461627.html Android手机SSH Client客户端: 转载请保留出处: 最好用的安卓SSH客户端——JuiceSSH(最新更新)1.4.7下载|大步's blog 最好用的安卓SSH客户端——JuiceSSH 1.4.5下载 JuiceSSH 是我所使用的ssh安卓手机客户端上最满意的一款,无论从操作上都比ConnectBot及VX Conn…
如何在 Android 手机上实现抓包? http://www.zhihu.com/question/20467503 我想知道某个应用究竟在数据提交到哪里,提交了什么.网上的教程太复杂,不想麻烦.有没有快速的方式实现在android网络抓包?比如手机流量类监控软件是否已经实现可否借鉴? 4 条评论 分享   按投票排序按时间排序 48 个回答 190赞同反对,不会显示你的姓名 Trinea,微信codek2,专注于源码解析分享 万象为宾客.殷xx.断掌小馒头 等人赞同 两种方式,各有优劣且互补…