Android开发
文章平均质量分 72
喵了个呜s
这个作者很懒,什么都没留下…
展开
-
View动画执行过程和插值器作用
原文地址 http://blog.csdn.net/qq_25806863/article/details/70858897示例补间动画的使用很简单,如下面代码,让图片旋转360度: animation = new RotateAnimation(0,360); animation.setDuration(3000); iv.sta...原创 2017-04-27 16:05:13 · 1118 阅读 · 0 评论 -
LruCache原理和用法与LinkedHashMap
一.LruCache算法LruCache算法就是Least Recently Used,也就是最近最少使用算法。他的算法就是当缓存空间满了的时候,将最近最少使用的数据从缓存空间中删除以增加可用的缓存空间来缓存新内容。这个算分的内部有一个缓存列表。每当一个缓存数据被访问的时候,这个数据就会被提到列表头部,每次都这样的话,列表的尾部数据就是最近最不常使用的了,当缓存空间不足时,就会删除列表尾部的缓存数据原创 2017-08-25 09:17:11 · 14192 阅读 · 3 评论 -
APP启动页背景颜色变化
在APP的启动页经常会有一些渐变效果。如果是从半透明渐变为不透明,用View动画AlphaAnimation就能完成。而View动画只有渐变,旋转,平移,和缩放四种动画效果,是完成不了颜色变化的任务的。所以需要用到属性动画。demo下载:http://download.csdn.net/download/qq_25806863/9934747下面是三种用属性动画让启动页背景颜色渐变的方法:界面准备几原创 2017-08-15 15:49:07 · 1811 阅读 · 0 评论 -
Android-socket的基本使用,发送文字和图片以及心跳
项目需求收集通过Socket向服务器发送图片,之前没搞过,网上搜搜写了下面的例子,勉强解决了需求。为了测试切换着方便,所以方法写的有点碎了。。。 原文地址 http://blog.csdn.net/qq_25806863/article/details/75533109要求发送的消息的格式是,8个字节的消息长度+消息体因为需要8个字节,所以消息长度决定用long如果需要4个字节,可以用int。手机原创 2017-07-20 15:55:20 · 10638 阅读 · 7 评论 -
通过轮廓简单实现一个圆图
实现圆图的方法有很多种,这是一种使用轮廓和剪切。通过setOutLineProvider提供一个轮廓通过setClipToOutLine(true)来让视图按轮廓剪切代码很简单:布局activity_main.xml,上面是原图,下面是圆图:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and原创 2017-06-23 15:56:18 · 945 阅读 · 0 评论 -
对一个KotlinAPP的copy
最近看了下Kotlin。随便找了个简单的地址就开始了copy。真的是copy,代码结构,布局,图片等都是copy的。本文地址: http://blog.csdn.net/qq_25806863/article/details/73209612主要是为了体验一下Kotlin在Android开发中是什么样子的。copy对象就是几百个Gank的其中一个:https://github.com/onlylov原创 2017-06-14 12:14:58 · 897 阅读 · 0 评论 -
Android多线程-AsyncTask的使用和问题(取消,并行和串行,屏幕切换)
AsyncTask是Android提供的一个执行异步工作的类,内部其实是运用了线程池和Handler来进行异步任务的执行和与主线程的交互。AsyncTask只是一个辅助类,适合执行时间短的异步任务。本文基于Android7.0的代码来说的。原文地址 http://blog.csdn.net/qq_25806863/article/details/72782050示例Async...原创 2017-05-27 15:45:17 · 8507 阅读 · 2 评论 -
Android纯的二维码扫描界面和功能-zxing
这是一个只有一个二维码扫描界面的demo,方便之后集成使用。原文地址 http://blog.csdn.net/qq_25806863/article/details/72139582CSDN下载地址 http://download.csdn.net/detail/qq_25806863/9842656demo的GitHub地址 https://github.com/wangyisll/QRDemo原创 2017-05-15 14:04:04 · 7597 阅读 · 3 评论 -
AndroidStudio运行java的main方法
要做AndroidStudio上运行java的main方法很简单。原文地址 http://blog.csdn.net/qq_25806863/article/details/71171321直接新建一个java文件 在java文件中写main方法,输入psvm就行public class Demo { public static void main(String[] args) {原创 2017-05-04 15:47:05 · 13696 阅读 · 5 评论 -
SystemServer的产生和启动
原文地址 http://blog.csdn.net/qq_25806863/article/details/70820063概括基于Android7.1源码。结合一些文章想看一下Android的SystemServer的产生和启动,发现7.1的代码和文章上的不太一样,只玩的源码我也没看过,不知道什么时候开始变得。就做一个记录。大致流程就是Created with Raphaël 2.1.0Start原创 2017-04-26 18:23:58 · 2288 阅读 · 1 评论 -
AndroidStudio JNI NDK CMake
原文地址 http://blog.csdn.net/qq_25806863/article/details/70739717 从AndroidStudio2.2开始,AS就整合了CMake来使用NDK。这种方式比之前用过的简单多了。这里记录一下简单使用。当然,这些东西要先装好:在新项目中使用创建在创建新项目时可以直接选中增加JNI。然后一路next点击finish完成创建。这时,AS就生成了ndk原创 2017-04-25 15:06:53 · 464 阅读 · 0 评论 -
Android动画-View动画,插值器
原文地址 http://blog.csdn.net/qq_25806863/article/details/70169620补间动画又叫View动画。Android中的补间动画分四种,渐变、缩放、平移,旋转。还有个set是他们的组合,在XML文件中的标签对应是 <alpha>,<scale>,<translate>,<rotate>对应的...原创 2017-04-14 10:23:32 · 4028 阅读 · 2 评论 -
Android点击缩略图查看大图的缩放动画
原文地址 http://blog.csdn.net/qq_25806863/article/details/70156794来自官方培训课程https://developer.android.com/training/animation/zoom.html#animate其实点击小图显示大图非常简单的一种实现方式就是,在布局中加一个全屏的ImageView,然后隐藏。点击小图就把图片设置给大图,然后原创 2017-04-13 12:04:27 · 5081 阅读 · 0 评论 -
Kotlin让属性只能被赋值一次且不能为空
有时候要求一个属性只能赋值一次,且不能为空,可以用下面的方法本文地址: 用get和set利用属性的get()和set()对值进行控制:class APP : Application() { companion object { var app: Application? = null set(value) { field原创 2017-06-15 12:01:33 · 5016 阅读 · 2 评论 -
Android解压中文乱码
在Android中内置有解压的工具,一般可以使用下面的方法解压:注意import的包:因import java.util.zip.ZipEntry;import java.util.zip.ZipFile;/** * 解压缩一个文件 * * @param zipFile 压缩文件 * @param folderPath 解压缩的目标目录 * @原创 2017-06-23 16:50:30 · 2967 阅读 · 1 评论 -
将带有jni的Eclipse项目导入AndroidStudio遇到的问题
当然前提是本地已经配置好了ndk的环境1. NDK integration is deprecated in the current plugin首次编译遇到一个错误:FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':app:compileDebugNdk'.> Error:原创 2017-07-11 09:58:49 · 1663 阅读 · 0 评论 -
Android动画-View动画的使用场景
原文地址 http://blog.csdn.net/qq_25806863/article/details/70172818View动画的一个特点就是,他的动画仅仅是动的View的绘制地方,View真正的位置并没有一起动画。View除了会用作直接作用页面中的View外,通常还用用在下面一些地方PopupWindow的动画原效果先做一个PopupWindow,这个Popu...原创 2017-04-14 15:28:10 · 1870 阅读 · 1 评论 -
用过的Intent的用法
突然看到之前的一篇笔记,就补充一下发上来。Intent是什么就先不说了。列表可以看一下目录。所有用法均在小米max手机上亲测,android6.0。有些权限在6.0上要动态获取。以后如果用到新功能了再补充,没用过的先不写了。打电话使用ACTION_CALL需要android.permission.CALL_PHONE权限 Intent intent=new Intent(); inte原创 2017-04-12 18:00:47 · 986 阅读 · 0 评论 -
Android设计模式(四)续:Activity的onCreate是怎么调用的
原文地址 http://blog.csdn.net/qq_25806863/article/details/68288085这里分析的是app第一次启动时的第一个Activity的onCreate()方法的启动流程。图先贴一下大致的流程图吧,不会画,很丑 ActivityThread.main()APP的启动入口应该都知道是ActivityThread的main方法了,所...原创 2017-03-30 00:40:47 · 2247 阅读 · 0 评论 -
Android设计模式(二)- 续:WindowManager
通过前面的分析可以知道,Android系统中,所有的界面内容显示都是通过Window来实现的,包括Activity,Dialog,Toast等。 先初步分析一下Window,WindowManager,WindowManagerService的关系。获取WindowManager从Android设计模式(一)-单例模式中后面的内容可以看到,系统在启动的时候就注册了许多服务。其中就有这样的代码:pa原创 2017-03-26 22:31:31 · 1341 阅读 · 0 评论 -
tess_two Android图片文字识别
文字识别一般都用的tesseract-ocr。 GitHub:https://github.com/tesseract-ocr/tesseract 而Android对应的比较推荐的有个tess-two。 GitHub:https://github.com/rmtheis/tess-two先看效果图我主要是识别截图,所以图片比较规范,识别率应该很高。 简介什么都不说了,直接看简单的用法吧首先肯原创 2017-03-16 18:38:53 · 11597 阅读 · 8 评论 -
制作library时省去application的初始化
来自 Android Debug Database问题在使用Android Debug Database的时候,我发现仅仅是加一行引用就行了debugCompile 'com.amitshekhar.android:debug-db:1.0.0'代码中没有写一点点关于这个库的代码。自定义控件那种就不说了,用到的时候肯定会调用的。而一些工具库最起码也要在Application的onCreate()方法原创 2017-03-15 17:50:20 · 1295 阅读 · 0 评论 -
Android Debug Database 一个好用的Android数据库调试查看工具
平时要查看手机数据库内容就很麻烦了,就算把db文件下载到电脑上了,还需要下载专门的数据库工具来查看。而且每次修改数据库都需要重新下载,很麻烦。 然后今天发现了Android Debug Database, githud地址:https://github.com/amitshekhariitbhu/Android-Debug-Database先看看他有什么功能吧:直接查看手机该app的数据库和s原创 2017-03-15 10:38:21 · 4102 阅读 · 1 评论 -
用ADB将Android日志输出到电脑文件,并查看
有时候需要把运行日志保存下来,在IDE上直接看一不小心之前的日志就不见了。配好环境变量后就可以在cmd中使用adb命令了。打印日志命令是adb logcat 如果连接有多个设备的话,先用adb devices找到要打印的设备的名字,然后在logcat钱加上 -s 名字 ,这样就会打印指定设备的日志,不然会报存在多个设备的错误。有多个设备下的adb命令都要这样指定设备名。 使用下面的命令输出日志到文件原创 2017-01-06 15:15:32 · 47801 阅读 · 2 评论 -
一个简陋的自定义用线程Thread实现的计时器Timer,可以增加定时时间
原来用的Timer(java.util.Timer),后来需要中途增加延迟时间,Timer不支持。自己写了个简陋的,应该够用。类如下:public class ExTimer extends Thread { private String TAG = "ExTimer"; private CallBack callBack; /** * 任务开始的时间 */原创 2017-03-03 17:06:03 · 4152 阅读 · 0 评论 -
Android压缩中文乱码
开发的时候一开始用的java.util.zip.ZipFile,这个好像是不支持中文,中文名字的文件加压出来都是????.json这样的。 网上都说Apache的包邮这个功能,就是这个包太大了。后来发现这个东西http://download.csdn.net/detail/huyongl1989/9120755。 使用方法如下import org.apache.tools.zip.ZipEntr原创 2017-03-14 17:09:42 · 1227 阅读 · 0 评论 -
出现连接超时SocketTimeoutException后一直连接不上的
需求频繁的上传数据,本来使用HttpClient上传数据,每次上传一段时间就会出现连接超时的问题,然后后续的请求统统都是连接超时。后来换了okhttp3.5还是一样的问题。不明白了。ios好好的,用的公司wifi,绑不绑电脑ip代理都会出现,而且只是个别手机出现。基本上运行一个小时才会出现,调试好费时间的。下面是我的解决方法,我也不知道为啥。很简陋我的OKhttpClient是这样的,默认10秒。原创 2017-01-06 15:40:27 · 44054 阅读 · 8 评论 -
Android多线程-AsyncTask工作流程(源码)
AsyncTask的源码是很简单的,看着并不复杂。只是对Handler和ThreadPoolExecutor进行了一下封装。基于api25(7.1)的代码,使用起来也是很简单的,看上个就知道了。一般要继承AsyncTask并重写下面几个方法,这些方法的执行顺序一目了然:原文地址 //任务执行前调用protected void onPreExecute() {}//执行后台任务protected原创 2017-05-31 15:43:45 · 769 阅读 · 0 评论 -
tesseract ocr训练样本库 识别字库
原文地址 http://blog.csdn.net/qq_25806863/article/details/67637567在上一篇文章tess_two Android图片文字识别中,使用tess_two完成了简单的文字识别。 简书地址 但是发现一个很明显的问题是,默认的识别速度比较慢。识别四个很明显的字需要将近两秒。 DemoGitHub可以试试。tess_two用的是tesseract o原创 2017-03-28 15:34:51 · 26731 阅读 · 3 评论