自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

转载 基于AccessibilityService和ADB shell实现自动操作

实现自动操作,就是利用代码脚本,模拟人的操作,包括点击,滑动,输入文字,物理按键等,实现一系列操作。为什么要实现自动操作?为了自动化测试?android app的功能越来越多,测试们的事情都忙不过来,这时,有些大量的工作就可以交给脚本来完成。比如,测试抢微信红包的工作,测试游戏打怪升级,测试自动聊天,测试考勤打卡等等等等。。。。android中多种模拟操作的方法:第一种:模拟MotionEvent...

2018-04-09 17:03:13 977 1

转载 WebView与 JavaScript 交互方式

1. 交互方式总结Android与JS通过WebView互相调用方法,实际上是:Android去调用JS的代码JS去调用Android的代码二者沟通的桥梁是WebView对于Android调用JS代码的方法有2种: 1. 通过WebView的loadUrl() 2. 通过WebView的evaluateJavascript()对于JS调用An

2018-01-16 15:51:59 366

转载 ViewPager系列之ViewPager一屏显示多个子页面

ViewPager一屏显示多个子页面,常见的有两种形式:1、当前展示的页面右侧显示一部分下个页面的内容2、当前页面居中,左右两边分别显示上一个页面、下一个页面第 1 种表现形式的实现代码其实这种效果很容易实现,谷歌给我们提供了方法,只需要在adapter中重写这个方法就可以了。 /** * Returns the proportional

2018-01-04 15:18:55 700

原创 Android 自带浏览器apk下载完成点击没反应

昨天上传apk到Amazon s3 ,结果测试人员使用华为手机自带浏览器下载之后无法安装(android 4.1版本)此问题只涉及到部分自带浏览器,并非全部本人使用 Mac Transmit 上传,查看文件头信息Content-Type == binary/octet-stream(二进制流格式),后修改为 application/octet-stream可正常下载

2017-06-20 15:17:07 12096

原创 Android 自定义锁屏 监听系统消息推送

自定义锁屏实现原理:1.监听系统SCREEN_ON与SCREEN_OFF广播2.屏幕变暗,启动自定义锁屏页面,使其置顶3.屏幕点亮,屏蔽系统锁屏,自定义锁屏页面即会出现技术点:1.监听广播只能使用动态,所以需使用后台sevice 保持监听长期有效  注意service保活(JobService等技术)  注意开关机问题(监听开机广播,启动后台service)

2017-06-10 21:41:28 2235

转载 Android Launcher结构分析

Launcher是系统启动后第一个启动的程序,是其它应用程序的入口,也就是我们的手机程序的桌面程序;一、Launcher的定义及构成:通过查看官方提供的Launcher源码可以知道其实Launcher也是一个Activity,不过它的intent-fliter有点特殊;[html] view plain copyactivity   

2017-05-31 15:11:58 719

转载 Android 压缩优化apk

随着业务需求的扩展,apk size会不断增加,size太大会影响用户下载和升级的意愿,压缩size是每个大型app必须的工作。首先来看一下apk的构成:主要包含资源和代码,那压缩size就要从这2方面入手。资源方面1. 删除无用资源通过lint或resource shinking等删除无用资源2. 压缩图片1)无透明度的png转成jpg2)通过ti

2017-05-25 14:08:07 1716

转载 Android bitmap压缩优化方案

Android中图片是以bitmap形式存在的,那么bitmap所占内存,直接影响到了应用所占内存大小,首先要知道bitmap所占内存大小计算方式:图片长度 x 图片宽度 x 一个像素点占用的字节数以下是图片的压缩格式:其中,A代表透明度;R代表红色;G代表绿色;B代表蓝色。ALPHA_8 表示8位Alpha位图,即A=8,一个像素点占用1个字节,它没有

2017-05-18 10:19:46 7211

转载 Android 获取系统信息 手机号码 所在国家码

系统信息在Android中可以通过android.os.Build这个类和System.getProperty(“xxx”);来获取设备信息,下面列举的常见设备信息摘自Android群英传Build.BOARD // 主板Build.BRAND // 系统定制商Build.SUPPORTED_ABIS //CPU指令集Build.DEVICE // 设备参数Buil

2017-05-05 16:57:43 9699

转载 Android Intent 启动第三方程序

包括调用系统程序和第三方程序0.调用第三方程序[java] view plain copy//方法一  Intent intent=new Intent();  //包名 包名+类名(全路径)  intent.setClassName("com.linxcool", "com.linxcool.PlaneActivity");

2017-05-05 16:17:36 649

转载 版本管理 Git

Git 是一个很强大的分布式版本控制系统。它不但适用于管理大型开源软件的源代码,管理私人的文档和源代码也有很多优势。Git常用操作命令:1) 远程仓库相关命令检出仓库:$ git clone git://github.com/jquery/jquery.git查看远程仓库:$ git remote -v添加远程仓库:$ git remote add

2017-04-28 10:56:37 343

转载 Android 混淆 配置 语法 基础

综述毫无疑问,混淆是打包过程中最重要的流程之一,在没有特殊原因的情况下,所有 app 都应该开启混淆。首先,这里说的的混淆其实是包括了代码压缩、代码混淆以及资源压缩等的优化过程。依靠 ProGuard,混淆流程将主项目以及依赖库中未被使用的类、类成员、方法、属性移除,这有助于规避64K方法数的瓶颈;同时,将类、类成员、方法重命名为无意义的简短名称,增加了逆向工程的难度。而依靠 Gr

2017-02-27 14:44:55 516

转载 Android 反编译 smail语法基础

数据类型1. 基本数据类型    Z boolean    B byte    S short    C char    I int    J long (64 bits)    F float    D double (64 bits)    V void  返回值类型2.引用数据类型  对象    以Lpackage/

2017-02-24 12:11:07 731

原创 Bug 混淆 IOException

数据类型1. 基本数据类型    Vvoid  用于返回值    Z boolean    B byte    S short    C char    I int    J long (64 bits)    F float    D double (64 bits)2.引用数据类型对象 以Lpackage/name/Objec

2017-02-23 14:27:51 409

原创 插件化 第三方框架实战

本文基于DroidPlugin实现插件化类库使用步骤:1. 使用PluginHelper初始化    2.实现ServiceConnection ,连接服务,并实现onServiceConnected方法   3.判断插件是否已安装,已安装则启动,未安装则执行安装并启动   4.替换library build.gradle 文件中包名,防止与其它插件应用冲突

2017-01-23 13:45:53 721

转载 设计模式 单例

原文连接:http://blog.csdn.net/wzgiceman/article/details/51809985单例的正确姿势Java单例模式可能是最简单也是最常用的设计模式,一个完美的单例需要做到哪些事呢?单例(这不是废话吗)延迟加载线程安全没有性能问题防止序列化产生新对象防止反射攻击可以看到,真正要实现一个完美的单例是很复杂的,那么,让我这个

2016-11-07 14:45:44 366

原创 Android WebView 的回退方法(goback) 遭遇重定向

问题描述:在Android中,使用Webview 添加网页, 随着用户点击深入内部网页之后,想返回上一页,就得使用webview.goback()方法。而这个时候,如果上一个页面有重定向跳转,用户将无法退回解决方案:mWebView= (WebView) findViewById(R.id.webView);mWebView.loadUrl("http://www

2016-11-03 15:31:56 11037

原创 Android View 拖拽 移动 碰撞

1. 被拖动view    view.setOnLongClickListener(new View.OnLongClickListener() { @Override public boolean onLongClick(View v) { ClipData.Item item=new ClipData.Item((String)v.getTag())

2016-07-18 15:31:06 3889

原创 Android Volley 网络并发 监听网络队列完成

先说明一下原理:1.利用反射机制获取 RequestQueue 队列中 mCurrentRequests 当前请求的集合,如果size==0, 则说明并发性网络请求已完成,为了保证准确性,建议给   需要监听的网络请求设置tag,并利用tag进行过滤2.利用定时循环线程进行动态取值代码如下:public static void whether

2016-04-12 14:23:39 1407

原创 Android 替换全局字体

Android 系统提供字体android:typeface="serif"android:textStyle="bold"android:fontFamily="sans-serif"Android 替换TextView字体Typeface typeface = Typeface.create

2016-02-29 13:55:08 5113

原创 Androidstudio 打包aar 无法引用类库中 dependencies 远程依赖

在网上看到一些Androidstudio 打包生成aar的方法:界面操作命令行操作gradle clean build以上两种方法,前提Module是Library,调用系统build重新构建工程,完成后会在Module 模块下build---->outputs 目录中输出aar 类库文件.但是对于aar类库中包含dependencies 远程依赖的情况下,会出现...

2016-01-29 18:26:48 31962 49

原创 Android EditText 光标选择 clickablespan 文字触摸

最近因项目需求,使用到CloudEditText 来实现文字输入,并且需要点击改变ImageSpan背景,使用软键盘删除键进行操作先说明一下原理,CloudEditText 是使用 SpannableString 来进行插入带有样式的文字,主要分3层:1.SpannableString 必须有字符串传入,不然后续的插入ImageSpan 与 ClickableSpan 都会

2015-12-07 09:59:16 3866 2

原创 Bug FastJson解析下划线字段问题 _id

今天在使用fastjson 过程中出现无法解析的字段,在查阅资料和源码之后,记录如下:                                                                                         ——希望再次遇到此问题的人,不用翻遍Google!!!通常情况下,我们使用fastjson 解析方法如下:1.Obj

2015-11-27 18:06:14 8023

原创 Android 拍照和相册选图 版本兼容

Android 拍照和相册选图 版本兼容一.相机部分    1. 调用启动系统相机

2015-09-25 13:27:36 1591

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除