Android 使用DexClassLoader来运行其他apk中的方法

Android中apk文件里的dex文件是对java编译出来的.class文件进行重新打包,当然在打包之前会利用自己的协议做一些数据处理,例如优化函数表和变量表。在java程序中是使用classloader来加载这些编译生成的.class文件,然而在android程序中是通过DexClassLoa...

2017-11-13 14:01:28

阅读数 163

评论数 0

Android使用DexClassLoader动态加载未安装Apk

因项目要求需要做类似于维信或Q游这样插件化的开发模式,在网上也查了很多资料整理了一下并记在这里,可用两种方式: 1. 通过后台安装,由于默认的安装是通过PackageInstallActivity界面去执行安装的,此界面有一个Dialog和一个ProcessBar,不能更改,...

2017-11-13 13:57:37

阅读数 208

评论数 0

Android百科全书目录(第六期)(Android版本适配问题)

10年后的王者峡谷,当时我正在带线,忽然一个超级兵居然说话了,“想当年,我也是一个神话,只是被削成了超级兵。你能别杀我么?” 临走前,我问了那个超级兵的名字,只见他有气无力的说出四个字:宫本武藏。。。         活跃下气氛,王者荣耀是代代削弱宫本武藏,android系统是代...

2017-09-08 11:22:16

阅读数 135

评论数 0

Activity的启动模式:FLAG_ACTIVITY_CLEAR_TOP和FLAG_ACTIVITY_REORDER_TO_FRONT

如果已经启动了四个Activity:A,B,C和D。在D Activity里,我们要跳到B Activity,同时希望C 、D finish掉,可以在startActivity(intent)里的intent里添加flags标记,如下所示: Intent intent = new Int...

2017-06-29 16:23:25

阅读数 166

评论数 0

Android 6.0 运行时权限处理

运行时权限介绍 Android 6.0在我们原有的AndroidManifest.xml声明权限的基础上, 又新增了运行时权限动态检测,以下权限都需要在运行时判断: 身体传感器 日历 摄像头 通讯录 地理位置 麦克风 电话 短信 存储空间 ...

2017-06-08 10:29:06

阅读数 211

评论数 0

减少使用@SuppressLint("NewApi")

在开发中我们经常可以看到这种标记 @SuppressLint("NewApi") 基本上是代码中用到了高于该app最低支持版本的api  但往往,出现的情况是这样的:  1. 用到了高版本的api  2. 编译器提示出错,出来一个小红线  3. 根据提示,其中...

2017-06-07 15:15:08

阅读数 277

评论数 0

googlesamples之easypermissions使用

使用 1. app/build.gradle dependencies {    compile 'pub.devrel:easypermissions:0.3.0' } 2. 在Activity / Fragment实现PermissionCallbacks,回调方法: @Override...

2017-03-09 09:55:54

阅读数 820

评论数 0

Android开源项目-Easypermissions

Easypermissions简化了Android M的运行时权限的申请、结果处理、判断等步骤。 1 相关文档 官方文档: https://github.com/googlesamples/easypermissions 运行时权限官方文档解释: https://develope...

2017-03-09 09:52:43

阅读数 251

评论数 0

Android开发——Intent中的各种FLAG

Android中发送Intent的时候有很多的标志位可以使用。是在做各种各样UI跳转时,熟悉这些标志的作用会给开发过程带来很大的遍历,这几天找时间把这些Flag都看了一遍,顺便翻译了一下,为便于理解,在翻译的时候也加了一些说明性的东西,供自己以后参考用,顺便分享出来与大家一起学习讨论。 可能有些地...

2017-03-02 10:53:35

阅读数 233

评论数 0

Android性能优化之被忽视的优化点

对于性能优化这个知识点来说,实在是太广了,博主本人也一直非常关注这方面的学习,而对于性能优化来说它包括了非常非常非常多方面,比如:I/O的优化、网络操作的优化、内存的优化、数据结构的优化、代码层次的优化、UI渲染优化、CPU资源使用率的优化、异常处理的优化等等等等。。。 本篇文章就博主本...

2017-01-17 17:53:38

阅读数 151

评论数 0

Context 都没弄明白,还怎么做Android开发?

Context到底是什么呢?一个Activity就是一个Context,一个Service也是一个Context。Android程序员把“场景”抽象为Context类,他们认为用户和操作系统的每一次交互都是一个场景,比如打电话、发短信,这些都是一个有界面的场景,还有一些没有界面的场景,比如后台运行...

2017-01-13 17:29:11

阅读数 194

评论数 0

Android6.0动态权限申请步骤以及需要注意的一些坑

因为工作需要,简单研究了一下Android6.0权限申请,在Google提供的sample的基础上,写了一个简单的demo。算是自己的笔记吧,可能会比较混乱,主要是方便以后查看。后期有别的问题,随时更新~ 本demo github下载地址!!! Google提供的demo的下载地址 ...

2016-12-20 14:00:03

阅读数 2279

评论数 1

Android 6.0 动态权限申请

在Android6.0中,引入了动态申请权限机制。 以前我们在申请权限的时候,都是写在了Manifest.xml里面。 安装的时候会有一堆提示申请权限的界面, Google 可能想到用户可能并不注意这些权限。 so~ 就迎来了 动态权限机制。 请注意,如果你使用了API 23以上...

2016-12-20 11:07:14

阅读数 274

评论数 0

android7新特性:多窗口支持

天的这篇文章我们来介绍一下在android 7上最为直观的一个特性-多窗口支持, 当然也可以叫他分屏模式. 有了这个特性妈妈再也不用担心我应用间切换的烦恼了, 那什么多窗口模式呢? 其实在很多国产机器上早就已经支持多窗口了, 只不过这次android 7标准化了多窗口模式, 这对我们开发者来说, ...

2016-12-12 16:49:17

阅读数 253

评论数 0

Android官方开发文档Training系列课程中文版:Android的JNI相关

原文地址:http://android.xsoftlab.net/training/articles/perf-jni.html JNI的全称为Java Native Interface,中文意思是Java本地接口。它定义了Java代码与C/C++代码之间的交互方式。它是两者的桥梁,支持从动...

2016-10-20 17:07:44

阅读数 209

评论数 0

《JAVA与模式》之解释器模式

在阎宏博士的《JAVA与模式》一书中开头是这样描述解释器(Interpreter)模式的:   解释器模式是类的行为模式。给定一个语言之后,解释器模式可以定义出其文法的一种表示,并同时提供一个解释器。客户端可以使用这个解释器来解释这个语言中的句子。 解释器模式的结构   下面...

2016-09-22 10:45:46

阅读数 158

评论数 0

《JAVA与模式》之备忘录模式

在阎宏博士的《JAVA与模式》一书中开头是这样描述备忘录(Memento)模式的:   备忘录模式又叫做快照模式(Snapshot Pattern)或Token模式,是对象的行为模式。   备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下...

2016-09-21 14:19:49

阅读数 200

评论数 0

Java 设计模式 之 中介者模式(Mediator)

中介者的功能非常简单,就是封装对象之间的交互。 如果一个对象的操作会引起其他相关对象的变化,或者是某个操作需要引起其他对象的后续或连带操作,而这个对象又不希望自己来处理这些关系,那么久可以找中介者,把所有麻烦扔给它,只要在需要的时候通知中介者,其他的就让中介者去处理就可以了。 反过来,...

2016-09-20 16:36:38

阅读数 196

评论数 0

中介者模式

定义:用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。 类型:行为类模式 类图: 中介者模式的结构        中介者模式又称为调停者模式,从类图中看,共分为3部分...

2016-09-20 16:25:52

阅读数 101

评论数 0

JAVA设计模式之享元模式

解释一下概念:也就是说在一个系统中如果有多个相同的对象,那么只共享一份就可以了,不必每个都去实例化一个对象。比如说一个文本系统,每个字母定一个对象,那么大小写字母一共就是52个,那么就要定义52个对象。如果有一个1M的文本,那么字母是何其的多,如果每个字母都定义一个对象那么内存早就爆了。那么如果要...

2016-09-19 15:05:52

阅读数 158

评论数 0

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