![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
dong_xg
android
展开
-
compileSdkVersion,minSdkVersion,targetSdkVersion 的区别和比较
compileSdkVersion,miniSdkVersion,targetSdkVersion的作用 :compileSdkVersion:这个主要是我们编译app时候用的sdk版本,就我们在AndroidStudio上面点击运行时候的编译时候的环境。记住这个只是在编译时候选择的版本,不涉及到运行时候的行为。由于androidStudio有预编译的功能所以会提示一些警告,提前了解新的sd...转载 2018-10-29 16:43:35 · 783 阅读 · 0 评论 -
最全面总结 Android WebView与 JS 的交互方式
目录 1. 交互方式总结 Android与JS通过WebView互相调用方法,实际上是:Android去调用JS的代码 JS去调用Android的代码 二者沟通的桥梁是WebView对于Android调用JS代码的方法有2种: 1.通过WebView的loadUrl() 2.通过WebView的evaluateJavascript()对于JS调用Android代码的方法...转载 2018-02-08 16:09:00 · 480 阅读 · 0 评论 -
Java多线程-线程池ThreadPoolExecutor构造方法和规则
为什么用线程池 博客地址 http://blog.csdn.net/qq_25806863原文地址 http://blog.csdn.net/qq_25806863/article/details/71126867有时候,系统需要处理非常多的执行时间很短的请求,如果每一个请求都开启一个新线程的话,系统就要不断的进行线程的创建和销毁,有时花在创建和销毁线程上的时间会比线程真正执行的时间还长...转载 2018-02-27 10:48:08 · 187 阅读 · 0 评论 -
Android自定义ViewGroup神器-ViewDragHelper
ViewDragHelper转载 2018-01-18 17:38:33 · 369 阅读 · 0 评论 -
Android RecyclerView 使用完全解析
转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45059587; 本文出自:【张鸿洋的博客】概述 RecyclerView出现已经有一段时间了,相信大家肯定不陌生了,大家可以通过导入support-v7对其进行使用。 据官方的介绍,该控件用于在有限的窗口中展示大量数据集,其实这样功能的控件我们并不陌生,例如:Li转载 2018-01-25 17:26:23 · 245 阅读 · 0 评论 -
关于Android Service真正的完全详解,你需要知道的一切
Service全部内容基本会在本篇涉及到,我们将围绕以下主要知识点进行分析:Service简单概述 Service在清单文件中的声明 Service启动服务实现方式及其详解 Service绑定服务的三种实现方式转载 2018-02-01 17:53:48 · 207 阅读 · 0 评论 -
AS2.2使用CMake方式进行JNI/NDK开发
JNI/NDK转载 2018-01-25 15:16:37 · 248 阅读 · 0 评论 -
Android滑动事件冲突
首先,我们假设这样一个场景:一个ViewPager里面嵌套一个ViewPager,内部滑动方向和外部滑动方向一样时,该怎么解决这一冲突呢? 针对滑动冲突这里给出两种解决方案:外部拦截法,内部拦截法。外部拦截法 情景:一个ViewPager嵌套了一个Listview,一个是左右滑动,一个上下滑动。这个时候我们可以用外部拦截法,来处理冲突。在父容器ViewPager中,重写onInterce转载 2018-01-17 13:37:38 · 263 阅读 · 0 评论 -
Android组件系列----ContentProvider内容提供者
文章来源:http://www.cnblogs.com/smyhvae/p/4108017.html【正文】 一、ContentProvider简介ContentProvider内容提供者(四大组件之一)主要用于在不同的应用程序之间实现数据共享的功能。ContentProvider可以理解为一个Android应用对外开放的接口,只要是符合它所定义的Uri格式的请求,均可以正常访问执行转载 2018-01-22 17:54:48 · 513 阅读 · 0 评论 -
解决 IllegalStateException: Can not perform this action after onSaveInstanceState
转载请标明出处:http://blog.csdn.net/EdisonChang/article/details/49873669 今天在修复外网崩溃时,发现有这个错误 IllegalStateException: Can not perform this action after onSaveInstanceState。异常是发生在onBackPressed时,发现onSaveInstance转载 2017-12-28 17:22:07 · 240 阅读 · 0 评论 -
Android开发:最全面、最易懂的Webview使用详解
前言 现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝、京东、聚划算等等,如下图 京东首页 那么这种该如何实现呢?其实这是Android里一个叫WebView的组件实现的。今天我将全面介绍WebView的常用用法。目录 1. 简介 WebView是一个基于webkit引擎、展现web页面的控件。Android的Webview在低版本和高...转载 2018-02-08 15:27:12 · 791 阅读 · 0 评论 -
Android APP 性能优化的一些思考
说到 Android 系统手机,大部分人的印象是用了一段时间就变得有点卡顿,有些程序在运行期间莫名其妙的出现崩溃,打开系统文件夹一看,发现多了很多文件,然后用手机管家 APP 不断地进行清理优化 ,才感觉运行速度稍微提高了点,就算手机在各种性能跑分软件面前分数遥遥领先,还是感觉无论有多大的内存空间都远远不够用。相信每个使用 Android 系统的用户都有过以上类似经历,确实,Android 系统在...转载 2018-03-01 09:35:00 · 437 阅读 · 0 评论 -
HandlerThread的使用以及原理
HandlerThread 如果已经理解Handler,Loop,MessageQueue的工作原理看此篇文章会非常简单,若没有了解的读者,可以看下面的文章: Handler类和Handler,Loop,MessageQueue的工作原理首先我们先看一下官方的描述: Handy class for starting a new thread that has a lo...转载 2018-06-01 17:28:21 · 341 阅读 · 1 评论 -
生产者消费者
问题意义生产者消费者问题是一个很经典的问题,通过解决此问题,能够学到多线程的的知识。程序设计思路在本程序中采用信号灯的方式,用Flag作为标志位,指示生产过程和消费过程是否结束。Flag为true时,生产者开始生产,消费者等待,Flag为false时,消费者开始消费,生产者等待。使用synchronize来锁定生产过程和消费过程,使得两个线程调用一个资源的时候能够有序进行。程序清单...转载 2018-05-31 18:04:05 · 230 阅读 · 0 评论 -
Android之collection(集合)
Java集合框架的基本接口/类层次结构:[I]:接口 [C]:类 java.util.Collection [I]+--java.util.List [I] +--java.util.ArrayList [C] +--java.util.LinkedList [C] +--java.util.Vector [C] +--java.util.Stack ...转载 2018-05-31 10:39:31 · 4023 阅读 · 0 评论 -
Android引用方式
引用类型:引用分为四种级别,这四种级别由高到低依次为:强引用>软引用>弱引用>虚引用。强引用(strong reference) 如:Object object=new Object(),object就是一个强引用了。当内存空间不足,Java虚拟机宁愿抛出OutOfMemoryError错误,使程序异常终止,也不会靠随意回收具有强引用的对象来解决内存不足问题。软引用...转载 2018-05-30 16:50:16 · 426 阅读 · 0 评论 -
Android Studio 打JAR包
一、新建一个as项目,再新建一个model模块然后再app中的build.gradle中添加model的依赖。然后编译项目。二、编译完成后,打开model下的build——intermediates——bundles目录,目录下有两个文件夹,debug,default,在default文件夹下有一个classess.jar,就是编译完成的jar包,这里需要主要的是:因为我们使用的 as...转载 2018-06-13 11:33:00 · 369 阅读 · 0 评论 -
GreenDao3.0简单使用
关于GreenDao greenDao是一个将对象映射到SQLite数据库中的轻量且快速的ORM解决方案。 关于greenDAO的概念可以看官网greenDAOgreenDAO 优势 1、一个精简的库 2、性能最大化 3、内存开销最小化 4、易于使用的 APIs 5、对 Android 进行高度优化GreenDao 3.0使用 GreenDao 3.0采用注解的方式来定义实...转载 2018-05-16 17:26:04 · 153 阅读 · 0 评论 -
Android 异步消息处理机制 让你深入理解 Looper、Handler、Message三者关系
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38377229 ,本文出自【张鸿洋的博客】很多人面试肯定都被问到过,请问Android中的Looper , Handler , Message有什么关系?本篇博客目的首先为大家从源码角度介绍3者关系,然后给出一个容易记忆的结论。1、 概述 Handler 、 Loope...转载 2018-02-24 17:56:49 · 145 阅读 · 0 评论 -
android 修改app内的语言
现在需要修改本app内的语言,而不修改系统语言。 只需要修改配置即可,如下例 Resources resources = context.getResources(); Configuration config = resources.getConfiguration(); DisplayMetrics dm = resources.getDisplayMetrics(); conf原创 2017-12-28 15:12:00 · 2987 阅读 · 0 评论 -
adb命令操作
在cmd中运行,先进入android sdk 中adb.exe 所在的文件夹。 查看设备 adb devices 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示安装软件 adb install转载 2017-12-28 10:57:01 · 915 阅读 · 0 评论 -
浅谈 MVP in Android
转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/46596109; 本文出自:【张鸿洋的博客】一、概述对于MVP(Model View Presenter),大多数人都能说出一二:“MVC的演化版本”,“让Model和View完全解耦”等等。本篇博文仅是为了做下记录,提出一些自己的看法,和帮助大家转载 2018-01-02 17:47:28 · 224 阅读 · 0 评论 -
activity四种启动模式
众所周知当我们多次启动同一个Activity时,系统会创建多个实例,并把它们按照先进后出的原则一一放入任务栈中,当我们按back键时,就会有一个activity从任务栈顶移除,重复下去,直到任务栈为空,系统就会回收这个任务栈。但是这样以来,系统多次启动同一个Activity时就会重复创建多个实例,这种做法显然不合理,为了能够优化这个问题,Android提供四种启动模式来修改系统这一默认行为。转载 2017-08-09 15:43:04 · 369 阅读 · 0 评论 -
打破Android应用64K方法数魔咒
android应用方法数超过65536转载 2017-04-06 17:38:46 · 311 阅读 · 0 评论 -
Gradle依赖项学习总结,dependencies、transitive、force、exclude的使用与依赖冲突解决
Gradle是一个非常好用的编译工具,特别是继承了maven的依赖项管理功能,需要的Library不需要像传统IDE一样手动下载复制到项目中,只需要简单的写一行gradle脚本,就能自动下载下来并编译。但是有时候会出现各种不明情况的报错,最常见的一种原因就是依赖项版本冲突。配置环境变量 GRADLE_HOME 在环境变量里添加用户变量 GRADLE_HOME 然后在环境变量 path 中增加 %转载 2017-03-29 17:44:37 · 6948 阅读 · 2 评论 -
在Android Studio中进行UI测试
Android Studio中进行UI测试转载 2017-03-23 15:22:19 · 1534 阅读 · 0 评论 -
Android afinal注解的使用与实现
Java提供了4中注解,专门负责新注解的创建。 @Target 表示该注解可以用于什么地方,可选的ElementType参数有: CONSTRUCTOR:构造器的声明 FIELD:域声明(包括enum实例) LOCAL_VARIABLE:局部变量声明 METHOD:方法声明 PACKAGE:包声明 PARAMETER:参数声明 TYPE:类、接口(包括注解类型)或enum声明@Re原创 2016-12-20 18:04:56 · 728 阅读 · 0 评论 -
Android APK反编译就这么简单 详解(附图)
转载自: http://blog.csdn.NET/vipzjyno1/article/details/21039349/在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看。下面是我参考了一些文章后简单转载 2017-01-05 10:23:05 · 454 阅读 · 0 评论 -
android和ios GoogleMap画导航线路图 路径规划(Directions)
本文适合 【AndroidiOS】下的google Map 开发转自:http://blog.csdn.NET/mad1989/article/details/97346671.0 GoogleMap路径规划Google Mapandroid版和IOS版的SDK都没有集成路径规划的相关API,若要实现,只能通过http链接请求URL,携带起点终点经纬度,得到返回集合,在地图转载 2017-01-04 14:13:21 · 6691 阅读 · 2 评论 -
APK拆分配置
虽然你应该尽可能建立一个单一的APK来支持所有的目标设备,这可能会导致用一个非常大的APK处理支持多个屏幕密度或应用二进制接口(ABIs)。 减少APK大小的一种方法是创建多个APK,其中包含特定屏幕密度或ABI的文件。Gradle使用APK拆分来创建单独的APK,这些APK仅包含特定于每个密度或ABI的代码和资源。 本页介绍如何配置构建来完成APK拆分。 如果您需要创建不基于屏幕密度或A转载 2017-01-04 17:46:01 · 957 阅读 · 0 评论 -
SystemBarTint的使用
SystemBarTint的使用1、导入.jar包 compile ‘com.readystatesoftware.systembartint:systembartint:1.0.3’2、xml布局文件修改 在Activity的布局文件里的顶层布局加代码,如下: android:fitsSystemWindows=”true” 作用是让view可以根据系统窗口(如status bar)来调整原创 2016-12-07 16:50:07 · 575 阅读 · 0 评论 -
android 反射机制实现与原理
Android反射机制实现与原理本文介绍Android反射机制实现与原理,在介绍之前,要和Java进行比较,所以先看下Java中的反射相关知识先,如下:一、反射的概念及在Java中的类反射 反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力。在计算机科学领域,反射是一类应用,它们能够自描述和自控制。这类应用通过某种机制来实现对自己行为的描述和检测,并能根据自身行为的状态和转载 2016-12-14 15:29:45 · 2614 阅读 · 0 评论 -
Android中shape的用法详解
xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring"] //共有4种类型,矩形(默认)/椭圆形/直线形/环形 // 以下4个属性只有当类型为环形时才有效 android:inn转载 2016-11-23 17:24:09 · 311 阅读 · 0 评论 -
Android混淆从入门到精通
简介作为Android开发者,如果你不想开源你的应用,那么在应用发布前,就需要对代码进行混淆处理,从而让我们代码即使被反编译,也难以阅读。混淆概念虽然容易,但很多初学者也只是网上搜一些成型的混淆规则粘贴进自己项目,并没有对混淆有个深入的理解。本篇文章的目的就是让一个初学者在看完后,能在不进行任何帮助的情况下,独立写出适合自己代码的混淆规则。说在前面这里我们直接用Android Stud转载 2017-08-10 17:05:57 · 186 阅读 · 0 评论 -
Android studio JavaDoc的使用
插件的安装File → Settings → Plugins → Browse repositories 然后搜索Javadoc,然后点击install并重启androidstudio就ok了。使用把光标移动到方法中,然后shift + alt + G。shift + ctrl + alt + G,是对这个类所有的方法都进行注释alt转载 2017-08-11 10:07:53 · 712 阅读 · 0 评论 -
android 实现圆形,圆角图片之setXfermode属性
1.下面的Xfermode子类可以改变这种行为:AvoidXfermode 指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图)。PixelXorXfermode 当覆盖已有的颜色时,应用一个简单的像素XOR操作。PorterDuffXfermode 这是一个非常强大的转换模式,使用它,可以使用图像合成的16条Porter-Duff规则的任意一条转载 2017-08-11 16:32:46 · 436 阅读 · 0 评论 -
zxing的使用及优化
二维码介绍zxing项目是谷歌推出的用来识别多种格式条形码的开源项目,项目地址为https://github.com/zxing/zxing,zxing有多个人在维护,覆盖主流编程语言,也是目前还在维护的较受欢迎的二维码扫描开源项目之一。zxing的项目很庞大,主要的核心代码在core文件夹里面,也可以单独下载由这个文件夹打包而成的jar包,具体地址在http://mvnr转载 2018-01-02 16:56:24 · 7657 阅读 · 1 评论 -
android 拍照,图片裁剪,选择图片
照片1.跳转到拍照界面 File imageFile = new File(Environment .getExternalStorageDirectory(), "tempImage.jpg"); // 如果存在就删了重新创建原创 2018-01-11 10:47:50 · 261 阅读 · 0 评论 -
Android桌面悬浮窗效果实现,仿360手机卫士悬浮窗效果
版权声明:本文出自郭霖的博客,转载必须注明出处。转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8689140大家好,今天给大家带来一个仿360手机卫士悬浮窗效果的教程,在开始之前请允许我先说几句不相干的话。不知不觉我发现自己接触Android已有近三个年头了,期间各种的成长少转载 2017-12-25 16:08:34 · 2411 阅读 · 0 评论 -
判断是否小米、华为、魅族系统
public class SystemUtil { public static final String SYS_EMUI = "sys_emui"; public static final String SYS_MIUI = "sys_miui"; public static final String SYS_FLYME = "sys_flyme"; public转载 2017-11-29 16:48:47 · 5603 阅读 · 0 评论