![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
巴黎塔上的星空
这个作者很懒,什么都没留下…
展开
-
推荐2种在线查看Android源码的工具
在我们Android 开发中,适配一直都是一个老大难的问题,因为手机系统版本的不同,可能你的APP 在这个手机上运行良好,到其他手机上就直接崩溃,或者出错了。这个时候,我们就需要对各个版本进行适配了。比如说Android 6.0 以上需要动态申请权限的适配,Android 7.0需要文件访问FileProvider的适配等等。Google 在版本升级的时候,会更改某些类的源码,那么在...转载 2019-06-12 09:23:45 · 2073 阅读 · 0 评论 -
Android stroke 边框线 某一边
有时候需要给View加边框线,我们经常是四边一起加,就像这样:shape xmlns:android="http://schemas.android.com/apk/res/android"> solid android:color="#89c997">solid> stroke android:width="0.5dp" android:color="#c3c3c转载 2017-08-23 17:31:59 · 549 阅读 · 0 评论 -
Mac系统查看端口占用和杀死进程
查看进程占用lsof -i tcp:8080 该命令会显示占用8080端口的进程,有其 pid ,可以通过pid关掉该进程杀死进程 kill pid转载至:http://blog.csdn.net/ch717828/article/details/46663595原创 2017-07-10 08:53:42 · 2783 阅读 · 0 评论 -
WebStorm开发工具设置React Native智能提示
http://lib.csdn.net/article/reactnative/38145http://lib.csdn.net/article/reactnative/38145http://lib.csdn.net/article/reactnative/38145作者:xiangzhihong8 最近在做React Native开发的时候,相信大家一般转载 2017-07-10 00:38:31 · 414 阅读 · 0 评论 -
Android Gradle Build Error:Some file crunching failed, see logs for details解决办法
错误日志:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details Log: FAILURE: Build failed with an exception. * What went wrong: Execution failed fo转载 2017-07-10 00:16:51 · 294 阅读 · 0 评论 -
Android Studio 代码混淆
为什么需要代码混淆呢?原因很简单,你的apk很容易被反编译出来,你写的代码都会被看到,因此我们需要在编译过程中对代码进行一定程度的混淆,使得别人不能反编译不出你的代码。下面介绍下具体混淆过程: 新建一个项目,Android Studio默认关闭代码混淆开关,在build.gradle文件中,如下图所示的minifyEnabled 开关,因此如果需要混淆代码,需将false改为true转载 2017-07-05 23:51:23 · 250 阅读 · 0 评论 -
Android内存泄漏检测利器:LeakCanary
是什么?一言以蔽之:LeakCanary是一个傻瓜化并且可视化的内存泄露分析工具为什么需要LeakCanary?因为它简单,易于发现问题,人人可参与。简单:只需设置一段代码即可,打开应用运行一下就能够发现内存泄露。而MAT分析需要Heap Dump,获取文件,手动分析等多个步骤。易于发现问题:在手机端即可查看问题即引用关系,而MAT则需要你分析,找到Path转载 2017-04-28 11:44:29 · 201 阅读 · 0 评论 -
Android手机开发总结
导读:对于Android开发者来说,成系列的技术文章对他们的技术成长帮助最大。如下是我们向您强烈推荐的主题为Android开发的第一个系列文章。《Android核心分析》整理如下:1. 方法论探讨之设计意图为什么要研究Android,是因为它够庞大,它够复杂,他激起了我作为一个程序员的内心的渴望,渴望理解这种复杂性。我研究的对象是作为手机开发平台的Android软件转载 2017-04-28 08:59:18 · 712 阅读 · 0 评论 -
OpenGrok简单使用说明
OpenGrok一个快速、便于使用的源代码搜索与对照引擎。它帮助你搜索,对照,定位你的源代码树。它能够明白各种程序文件格式和版本控制历史记录。借助 Eclipse 以及本地源码可以比较方便地分析 Android 源码,但是对于 Native 代码的调用就无法通过 Eclipse 的快速定位来查看相应的 Native 源码了,而且 Android 源码中对 Native库的加载一般不是通过在 Sta转载 2017-03-13 16:01:15 · 1393 阅读 · 0 评论 -
Hook实现Android 微信,陌陌 ,探探位置模拟
最近需要对微信,陌陌等程序进行位置模拟 实现世界各地发朋友圈,搜索附近人的功能,本着站在巨人肩膀上的原则 爱网上搜索一番。 也找到一些 代码和文章,但是代码大都雷同而且都有一个弊端 比如说 微信 对目标函数实现hook之后第一次打开微信 第一次定位是可以改变的 但是 我如果想更换地址的话 就需要重启手机了,重新加载hook了,试了很多次都是这样满足不了需求。 为了改进这个地方我们从gps转载 2017-03-29 14:00:37 · 2887 阅读 · 0 评论 -
Android Things简介:它真的来了!
Google 发布物联网平台 Android Things,要让设备开发和做 App 一样简单转载 2016-12-27 23:01:35 · 429 阅读 · 0 评论 -
Android性能优化之内存泄漏
Android性能优化之内存泄漏转载 2016-12-27 10:13:21 · 212 阅读 · 0 评论 -
Genymotion下载慢或者下载失败的解决办法
以前使用 genymotion 的时候都是等了很久才能下载完成,并且有时候会下载失败。今天在网上无意间看到了一个方法解决这个问题。现在记录下,备用。办法如下:首先点击界面上的 + 号(Add)按钮,选择你要下载的模拟器虚拟机版本,点击下载(一定要走这一步,不然会影响下面的步骤)然后到*C:\Users\你的用户名\AppData\Local\Genymobile* 下面打开ge转载 2017-09-15 15:05:37 · 453 阅读 · 0 评论 -
Android RxJava2+Retrofit2搭建网络请求框架
前言之前做网络请求,用的是android-async-http,基于HttpClient 的,虽然早已淘汰,但一直懒得换,前一段时间看了stormzhang的《2016 Android Top 10 Library》文章,提到RxJava+Retrofit 是完美搭配,所以下定决定重构一下现在的项目网上查了一些资料,遇到了一些小坎坷,终于搞定了,因为网上查到的一些文章大多都是半年以前的,而转载 2017-09-19 09:47:06 · 1038 阅读 · 0 评论 -
HttpRequestException: Could not HEAD 'https://jcenter.bintray.com/com/android解决方法
国内访问jcenter中心加载资源时,常出现的网络问题。解决方法:项目的build.gradle中,变更语句如下://这种亲测有效repositories { jcenter { url "http://jcenter.bintray.com/" }}或者//没有亲自测试过repositories { maven { ...转载 2019-06-13 14:32:07 · 5005 阅读 · 1 评论 -
support-v4、support-v7 的依赖关系及 Getting java.util.zip.ZipException: duplicate entry exception 的处理
最近在编译项目时,多次出现了 java.util.zip.ZipException: duplicate entry exception android/support/vX/.../xxx.class 异常;该异常是由于多个 module 或 第三方库(这个是主要原因)引用了不同版本的 support 库引起的;为了解决这个问题顺带把 Android support 库和几个第三方库的依赖关...转载 2018-12-17 11:27:09 · 445 阅读 · 0 评论 -
小米8,全面屏手机判断是否显示虚拟键
聊天的底部输入框需要根据键盘高度与是否有虚拟键确定,小米8手机在全面屏的情况下,用如下方法不起作用,结果都返回大于0 DisplayMetrics metrics = new DisplayMetrics(); mActivity.getWindowManager().getDefaultDisplay().getMetrics(metrics); ...转载 2018-11-03 17:10:08 · 1054 阅读 · 0 评论 -
自定义scrollview 回弹效果
前言自定义scrollview 下拉回弹效果效果图获取内部控件 //获取初始控件 @Override protected void onFinishInflate() { super.onFinishInflate(); //由于是scrollview 内部只能有一个控件 convertView = getChildA...转载 2018-10-18 09:22:46 · 427 阅读 · 0 评论 -
Android 带阻尼回弹效果的ScorllView
import android.content.Context;import android.graphics.Color;import android.graphics.Rect;import android.util.AttributeSet;import android.util.DisplayMetrics;import android.view.FocusFinder;impo...转载 2018-10-18 09:17:23 · 512 阅读 · 0 评论 -
自定义scrollview 回弹效果
前言自定义scrollview 下拉回弹效果效果图获取内部控件 //获取初始控件 @Override protected void onFinishInflate() { super.onFinishInflate(); //由于是scrollview 内部只能有一个控件 convertView = getChil...转载 2018-10-11 16:33:29 · 970 阅读 · 0 评论 -
android canvas drawText()文字居中
转载 2018-09-20 15:23:22 · 230 阅读 · 0 评论 -
自定义view实现水波纹效果
转载:https://blog.csdn.net/tianjian4592/article/details/44222565在实际的开发中,很多时候还会遇到相对比较复杂的需求,比如产品妹纸或UI妹纸在哪看了个让人兴奋的效果,兴致高昂的来找你,看了之后目的很明确,当然就是希望你能给她;在这样的关键时候,身子板就一定得硬了,可千万别说不行,爷们儿怎么能说不行呢; 好了,为了让大家都能给...转载 2018-08-01 19:09:07 · 145 阅读 · 0 评论 -
Android代码内存优化建议-Android官方篇
转自:http://androidperformance.com/http://developer.android.com/intl/zh-cn/training/displaying-bitmaps/index.html为了使垃圾回收器可以正常释放程序所占用的内存,在编写代码的时候就一定要注意尽量避免出现内存泄漏的情况(通常都是由于全局成员变量持有对象引用所导致的),并且在适当的时候去释放对象引...转载 2018-07-02 18:01:03 · 240 阅读 · 0 评论 -
查看MAT中的bitmap
两中方式查看MAT中的bitmap。第一种,用gimp工具查看第二种,用ImageMagick Display的convert 命令亲测2种都可用。第一种。gimp 查看。下载gimp工具。 https://www.gimp.org/下载完后,安装。用MAT查看.hprof 的内存文件,找到bitmap展开bitmap对象。找到mButtfer。右键。选择copy--Save Value To F...转载 2018-07-02 15:04:39 · 482 阅读 · 0 评论 -
Android Studio Terminal显示乱码问题
Android Studio的Terminal在显示Git log信息的时候会出现如图所示的编码异常。 分析猜想:看了下Git安装目录下的profile文件,里边的编码格式是"en-UTF-8"格式的,而中文字符的编码格式应该是"zh_CN.UTF-8"这种格式的,所以应该把CMD命令行和git的encoding编码统一成"zh_CN.UFT-8"就可以了。解决方式:1.设置Windows下全局编...转载 2018-06-26 17:34:21 · 7835 阅读 · 4 评论 -
Android Next 公共组件库:Android-Next
Android-Next 是 Android Next 公共组件库转载 2016-12-27 09:50:23 · 1122 阅读 · 0 评论 -
Andorid源码下载
Android 源码下载原创 2016-12-06 10:03:39 · 223 阅读 · 0 评论 -
Android入门:Activity四种启动模式
转载:http://www.cnblogs.com/meizixiong/archive/2013/07/03/3170591.html转载 2016-08-09 09:48:23 · 202 阅读 · 0 评论 -
Android事件传递
Touch事件传递和拦截机制关于touch事件的主要方法介绍1. ViewGroup的子类(容器类,如:LinearLayout,RelativeLayout等) 1. dispatchTouchEvent(MotionEvent ev) 事件的分发 2. onInterceptTouchEvent(MotionEvent ev) 事件的拦截 3. o转载 2016-05-23 14:31:03 · 246 阅读 · 0 评论 -
Android四大组件和fragment
Activity :应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。Android培训学院认为,在Intent的描述结构中,有两个最重要的部分:动作和动作对应的数据。典型的动作类型有:M AIN(activity的门户)、VIEW、PICK、EDIT 等。而动作对转载 2016-05-23 13:50:12 · 530 阅读 · 0 评论 -
Android的体系结构
Android的体系结构1. Android的简介1996年万维网(WWW)开始流行,通过浏览器我们可以查看图文混合的网页,但此时最好的移动手机设备只能用来查看简单的文字,为了解决这个问题,相关部门发布了WAP(Wireless Application protocal)技术,提供了移动互联网的入口,该技术使用了WML(Wireless markup language,即无线标记语言)转载 2016-05-23 13:48:53 · 240 阅读 · 0 评论 -
Android常用adb命令二
Android之常用adb命令二当电脑上同时连接两个或多个手机设备时,我们在使用adb命令时必须要指明该命令是针对哪一台设备的。如果不指定到具体的某一个设备,命令在执行是会报错的。下图1-1是当前电脑连接的两个Android虚拟机,当在该窗体上执行adb push Gha.jpg /sdcard/gaga.jpg命令时会报如图1-2所示的错误。 图1-1所示图1转载 2016-05-23 13:45:23 · 314 阅读 · 0 评论 -
Android常见adb命令一
Android之常见adb命令一使用命令行来代替adb调试桥视图读取数据有时更加方便,那么如何使用命令行呢?1.命令行中启动adb点击【sdk】à【platform-tools】à【adb.exe】便可以使adb.exe运行起来,那么从命令行中该如何启动该应用程序呢,如图1-1所示: 图1-1所示为了方便直接可以使用adb.exe应用程序,我们可以把本地adb.转载 2016-05-23 13:44:28 · 469 阅读 · 0 评论 -
Android补间动画xml法(二)
平移编写在anim文件夹下新建一个trans.xml文件,代码如例1-5所示:例1-5 android:fromXDelta="-50%" android:toXDelta="50%" android:fromYDelta="-50%" android:toYDelta="50%转载 2016-05-23 13:43:25 · 216 阅读 · 0 评论 -
Android 补间动画xml法(一)
我们不仅可以在程序中通过代码来编写一个补间动画,也可以通过xml文件来定义一个补间动画,下面通过一个具体的DEMO来学习xml补间动画的编写。新建工程【File】——>【new】——>【Android Application Project】命名为:11_补间动画xml编写布局根据需求编写布局,效果如图1-1:图1-1所示的页面与“10_补间动画转载 2016-05-23 13:42:38 · 384 阅读 · 0 评论 -
Android 使用google-gson处理json格式数据
private String address; public String getName() { return name; } public void setName(String name) { this.name = name; }转载 2016-05-23 13:41:17 · 496 阅读 · 0 评论 -
Android应用程序内存优化
对于开发一个应用程序来说,在前期完成主要功能之后,后期有一项非常重要的工作,那就是优化应用程序的内存。而内存优化的方向主要是两个,一个是内存溢出,另外一个就是内存泄露。内存溢出和内存泄露是两个不同的概念。内存溢出指的是内存不够用了,内存的使用超过的系统规定的最大值。而内存泄露指的是由于程序的逻辑错误,导致一些没有用的对象无法被垃圾回收器回收而一直占用着内存。所以内存泄露的堆积可能会造成内存溢出转载 2016-05-23 13:36:42 · 384 阅读 · 0 评论 -
Android Volley框架进行网络通讯
什么是Volley?在2013年Google I/O大会上推出了一个新的网络通信框架——Volley。Volley可以说是把AsyncHttpClient和Universal-Image-Loader的优点集于了一身,既可以像AsyncHttpClient一样非常简单地进行HTTP通信,也可以像Universal-Image-Loader一样轻松加载网络上的图片。准备工作使用GIt转载 2016-05-23 13:39:31 · 342 阅读 · 0 评论 -
Android通过第三方登录理解oauth2.0机制
1. OAuth2.0介绍说到第三方登录,离不开oauth2.0,oauth2.0是“用户认证和授权的标准”,是从oauth1.0基础上发展来的。下图是oauth2.0六个过程分析图,为了分析这6个流程,下面我们通过新浪微盘授权登录demo,详细解析。2. 运行新浪微盘SDK demo运行新浪微盘(开发者网站)sdk demo,使用新浪微博账号授权,入下图进行操作:转载 2016-05-23 13:35:09 · 3308 阅读 · 0 评论 -
Android Studio下JNI开发
一步一步做Android Studio下JNI开发 Android Studio是Google基于IntelliJ IDEA专门为Android开发而定制的集成开发环境。在2013年5月的Google大会上首次发布。Goolge宣布2015年底就中止Eclipse官方支持,所以是时候拥抱Android Studio了。 先来看下相关知识背景 1.什么是JNI?转载 2016-05-23 13:38:05 · 476 阅读 · 0 评论