简评: 应用的大小也是用户体验的一个重要方面,而减少 Android 应用安装包大小其实一点也不复杂. 对于移动应用来说,应用安装包的大小当然是越小越好.特别是对于一些欠发达地区,你不希望用户因为手机「存储空间不足」而卸载你的应用. 本文就介绍了几个小技巧来有效减少 apk 的大小: 首先,我们先用 Android Studio 提供的 APK Analyser 工具来分析下我们的 apk 文件: 可以看到占空间最多的主要是三个部分:classes.dex, res 和 resources.ar…
摘要: SDK方法总数是不能超过65k的.是否也引入其他的三方库,导致总数超过限制.超出限制会导致部分class找不到,引发java.lang.NoClassDefFoundError.解决方法:近日,AndroidDevelopers在Google+上宣布了新的Multidex支持库,为方法总数超过65K的Android应用提供了官方支持.如果你是一名幸运的Android应用开发者,正在开发一个前景广阔 SDK 方法总数是不能超过 65k 的.是否也引入其他的三方库,导致总数超过限制.超出限制…
本文转自:http://tech.meituan.com/android-apk-v2-signature-scheme.html 新一代开源Android渠道包生成工具Walle 新的应用签名方案APK Signature Scheme v2 Android 7.0(Nougat)引入一项新的应用签名方案APK Signature Scheme v2,它是一个对全文件进行签名的方案,能提供更快的应用安装时间.对未授权APK文件的更改提供更多保护,在默认情况下,Android Gradle 2.…
1. Android Studio 主题的设置: 设置Android Studio 自带的主题 设置第三方主题 2. Android Studio 字体的设置 设置左面包名的字体大小 设置右面代码编辑界面字体大小 1.1 设置Android Studio 自带的主题及包名字体大小:  1.2 导入第三方主题: http://www.ideacolorthemes.org/themes/ 从这里下载第三方的主题,然后执行: File——>Import Settings——>下载jar包所在位置…
迎使用HttpCanary——最强Android抓包工具! HttpCanary是一款功能强大的HTTP/HTTPS/HTTP2网络包抓取和分析工具,你可以把他看成是移动端的Fiddler或者Charles,但是HttpCanary使用起来更加地简单容易,因为它是专门为移动端设计的!…
自定义包名的使用,android的包名和ios的包名都是你的自定义包名!如下以新浪微博SDK自定义包名示例:(官方没的,自己踩过坑,方便后来人吧) 相关技术文档:http://www.apicloud.com/index?uzchannel=3免费1对1梳理APP需求:http://app.apicloud.com/RequirementDescription推荐项目送macbook.iphone7等大礼:http://community.apicloud.com/bbs/forum.php?m…
Android抓包方法(三) 之Win7笔记本Wifi热点+WireShark工具 前言 做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等. 第一篇介绍Fiddler代理,如果APP不支持代理,则不适用:第二篇介绍的Tcpdump抓包,虽强大但不能实时抓包.能否有方法既能抓到所有的包,又能实时查看呢?大家会想到路由抓包,对,介是一个非常好的思路,但公司网络通常不支持,或者你是没有权限的,或者就数据量庞大,哈哈...那我们变通一下,本文…
Android抓包方法(二) 之Tcpdump命令+Wireshark 前言 做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等.学会抓包分析是测试人员必备的功课之一.最先想的基本上都会是Fiddler代理抓包,但Fiddler有局限,如果APP不支持代理呢?比如邮箱是Imap协议呢?好吧,我们换个思路,安卓是基于linux,那么linux的抓包工具命令是不是也能试用呢?本文主要对tcpdump进行抓包举例. 转载请注明出处 作者:Fi…
Android抓包方法(一) 之Fiddler代理 前言: 做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等. 不管是之前做HTML5手机项目测试,还是现在的企邮app测试,经常需要抓包,做前端开发基本第一时间会想到Fiddler,的确Fiddler比较强大方便,本文主要以Android手机为例介绍通过Fiddler抓手机数据包,Iphone.Ipad.Win Phone等可设代理的手机,也均可用此方法. 转载请注明出处 作者:Fin…
Android之hint提示字体大小修改,显示完全 1.工作中遇到一个问题,就是自定义EditText的hint提示在超大字体下会显示不全, 2.然后在网上搜索了一下,在这里记录一下,分享给大家,在此感谢写这的大神 3.传入的hint是SpannedString或者Spanned类型,就可以保持文本的自定义属性了 import android.text.SpannableString;import android.text.Spanned;import android.text.SpannedS…
昨天添加Android兼容包,碰到了很多问题,在这里记录一下,让后面的路好走. 如何选择兼容包, 请参考Android Support Library Features(二) 一.下载Support Library 方法1:右击项目→选择Android Tools→Add Support Library… 方法2: 通过SDK Manager获取Support Library: 1.打开Android SDK Manager 2.在SDK Manager窗口,滚动到Package List的末尾…
在Android开发中,函数方法超过65k限制后,我们就常常会用到multidex分包解决,但是multidex的配置,对系统apk的构建.签名.打包复杂性大大的增加,严重的降低了构建效率.那这个问题怎么处理呢? 为解决这个问题,通常我们使用的方法就是在Gradle productFlavors新建出来一个 development flavor 和 production flavor 来满足我们不同构建需求. 为了更直观的给大家展示具体的操作,我们通过一个例子来演示如何设置这些flavors在G…
一:不同的layout Android手机 屏幕 大小不一,有480x320, 640x360, 800x480.怎样才能让App自动 适应不同的屏幕 呢?      其实很简单,只需要在res目录下创建不同的layout文件 夹,比如layout-640x360,layout-800x480,所有的layout文件在编译 之后都会写入R.java里,而系统 会根据屏幕 的大小自己选择合适的layout进行使用.   二:hdpi.mdpi.ldpi 在之前的版本中,只有一个drawable,而…
原先的2.2的android源码已经不是那么容易找到了,我稍稍搜索了下找到了一两个没速度的死链就失去了兴趣.不过还好忽然发现在android.provider包下包含了常见的provider的使用方法和静态常量 android.provider.ContactsContract包,封装了常用的对联系人的操作和静态常量,在此包的RawContacts类的javadoc中甚至给出了对联系人的增删改查方法 android.provider.MediaStore类中则包括了调用系统相机拍照和录像的act…
  每个udp包的最大大小是多少?    65507 约等于 64K 为什么最大是65507?    因为udp包头有2个byte用于记录包体长度. 2个byte可表示最大值为: 2^16-1=64K-1=65535    udp包头占8字节, ip包头占20字节, 65535-28 = 65507 如果要发送的udp报文大于65507怎么办?    需要在应用层由开发者自己分片发送. 分片的粒度最大65507字节. 系统的sendto函数是不支持大于65507字节的单包发送的. UDP包头格式…
如何捕获Android数据包 一.移动设备访问网络原理 先看看移动设备是怎么去访问网络,如图1所示,可以看到,移动端的数据包是从wifi出去的. 图1(移动设备访问网络) 所以我们可以把自己的电脑开启热点,将手机连上电脑,本机的Fiddler开启代理后,让这些数据通过Fiddler,那Fiddler就可以抓到这些包,然后发给路由器,如图2所示 图2(设置) 二.Fiddler抓取android数据包所需条件 1.电脑需要安装Fiddler 2.测试手机需要支持Wifi 3.测试手机与电脑需要同一…
基于Python实现批量安装android apk包 by:授客 QQ:1033553122 1.相关软件包及文件下载 下载地址:adb软件包及批量安装apk包的py文件.zip 2.测试环境 Win7 64位 Python 3.3.2 3.用法及代码show 用法: 把.apk包放入apk目录下,然后进入到install_apk_once_many.py所在目录,运行程序: python install_apk_once_many.py 运行结果: 代码展示 #!/usr/bin/env py…
Android抓包方法(转) 作者:Findyou 地址:http://www.cnblogs.com/findyou/p/3491014.html 前言: 做前端测试,基本要求会抓包,会分析请求数据包,查看接口是否调用正确,数据返回是否正确,问题产生是定位根本原因等. 不管是之前做HTML5手机项目测试,还是现在的企邮app测试,经常需要抓包,做前端开发基本第一时间会想到Fiddler,的确Fiddler比较强大方便,本文主要以Android手机为例介绍通过Fiddler抓手机数据包,Ipho…
介绍Fiddler抓取Android数据包希望对大家的工作和学习有所帮助! 电脑开启wifi热点 首先在电脑上下载一个wifi软件,我这里用的是猎豹wifi,电脑开启wifi热点后,如下图所示:  设置Fiddler的代理端口 Tools –>  Options-> Connections,设置代理端口:8888, 勾选 Allow remote computers to connect,即允许远程计算机连接Fiddler,如下图所示: 注:8888为默认端口号,可修改,但需注意两点,一是本机…
昨天添加Android兼容包,碰到了很多问题,在这里记录一下,让后面的路好走. 如何选择兼容包, 请参考Android Support Library Features(二) 一.下载Support Library 方法1:右击项目→选择Android Tools→Add Support Library… 方法2: 通过SDK Manager获取Support Library: 1.打开Android SDK Manager 2.在SDK Manager窗口,滚动到Package List的末尾…
Android 获取包名,版本信息及VersionName名称     <span style="font-size: 14px;">private String getAppInfo() { try { String pkName = this.getPackageName(); String versionName = this.getPackageManager().getPackageInfo( pkName, 0).versionName; int version…
display:table; 也可以实现 div 始终和内包的图片大小相同…
Visual Studio 2017为Android APK包签名   为Android APK包签名,可以保证后期的App顺利升级.在Visual Studio 2015中,IDE会自动生成两个APK包,一个签名的,一个没有签名的.而在Visual Studio 2017中,需要开发者手动设置.用户首先需要通过生成|存档命令,生成APK包.然后在存档管理器中,选择分发功能.通过临时通道,添加证书,然后另存,才能生成签名的APK包.注意,所使用的签名证书文件并不保存在项目中,所以用户需要注意文件…
昨天添加Android兼容包,碰到了很多问题,在这里记录一下,让后面的路好走. 如何选择兼容包, 请参考Android Support Library Features(二) 一.下载Support Library 方法1:右击项目→选择Android Tools→Add Support Library… 方法2: 通过SDK Manager获取Support Library: 1.打开Android SDK Manager 2.在SDK Manager窗口,滚动到Package List的末尾…
已经说过了,在AndroidDesign包中主要有两个核心概念:一是NestedScroll,另一个就是Behavior. 相比于NestedScroll这个概念来说,Behavior分析起来会难很多,因为它几乎遍布了AndroidDesign包的每一个控件,种类繁多:另外Behavior提供了二十多个空方法给使用者来重写,主要分为四类: 1.与Touch事件相关的方法 2.与NestedScroll相关的方法 3.与控件依赖相关的方法(依赖这个概念可能接触的不多,就是如果A依赖B,那么当B变化…
Android代码中设置字体大小,字体颜色,显示两种颜色 在xml文件中字体大小用的像素 <TextView android:id="@+id/uppaid_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/title" android:layout_cente…
开发Android应用程序基本上使用的都是Java语言. 那么要想灵活的应用这一系统,就应当熟悉当中的Android Java包的各种功能. 一般的JAVA应用中.假设需用引用基础类库,通常须要使用例如以下的方式: import javax.swing.*; 以上代码表示了引用JAVA的GUI组件Swing,javax.swing即JAVA中的一个包. Adroid提供一些扩展的JAVA类库.类库分为若干个包.每一个包中包括若干个类.比如:在Android中计算器是一个相对简单的程序.其入口程序…
一:获取Android的数据包必须要在同一个网络中 移动设备访问网络原理 先看看移动设备是怎么去访问网络,如图所示,可以看到,移动端的数据包是从wifi出去的. 可以看得出,移动端的数据包,都是要走wifi出去,所以我们可以把自己的电脑开启热点,将手机连上电脑, Fiddler开启代理后,让这些数据通过Fiddler,Fiddler就可以抓到这些包,然后发给路由器(如图): 二.Fiddler抓取android数据包所需条件 1.电脑需要安装Fiddler 2.测试手机需要支持Wifi 3.测试…
在Eclipse Android中设置模拟器屏幕大小是本文要介绍的内容,主要是来了解并学习Eclipse Android中模拟器的设置,具体关于Eclipse Android内容的详解来看本文. 方法一.选择"AndroidSDKandAVDManager",选中相应的AVD, 点击右侧的"StartstheselectedAVD"按钮 如图,在"ScreenSize(in)"中填入你需要的屏幕尺寸,然后"Launch",OK…
空包签名 搜狗.优亿等Android市场,上传应用需要提供一个与要上传的应用相同签名的空包.这个空包是相应官方市场提供的,下载好之后需要使用命令行进行签名.具命令如下: 1 jarsigner -verbose -keystore [keystorePath 大专栏  Android空包签名] -signedjar [apkOut] [apkIn] [alias] jarsigner命令格式:-verbose输出详细信息 -keystore密钥库位置 -signedjar要生成的文件 要签名的文…