- 博客(14)
- 资源 (6)
- 问答 (1)
- 收藏
- 关注
原创 数组和List的相互转换
String[] string = "public static String sort".split(" ");List<String> strings = Arrays.asList(string).subList(1, string.length);System.out.println(strings);String[] array = strings.toArray(new String[0]);System.out.println(Arrays.toString(array).
2022-05-03 00:56:32 213
原创 事件分发规则
关于事件传递机制的的一些结论:同一个事件序列是指从手指接触屏幕的那一颗起,到手指离开屏幕的那一刻结束,在这个过程中所产生 的一系列事件,这个事件序列以down事件开始,中间含有数量不定的move事件,最终以up事件结束。正常情况下,一个事件序列只能被一个View拦截且消耗。这一条的原因可以参考3,因为一旦一个元素拦截了某次事件,那么同一个事件序列内的所有事件都会直接交给它处理,因此同一个事件序列中...
2018-06-29 11:25:38 378
原创 Activity启动流程【从Launcher点击图标】和【在Activity中调用startActivity()】
从Launcher进程启动Application及Activity一、ActivityThread.main() 1.初始化主线程 Looper.prepareMainLooper(); 2.ActivityThread thread = new ActivityThread(); thread.attach(false); 3.判断当前主线程的Han...
2018-06-12 16:44:25 679
原创 Android Studio(2.2.2) Jdk1.8新特性之lambda表达式使用时报错记录(Android6.0以上运行时权限)
背景: android 6.0以上调用摄像头、读写SD卡、通信录、信息等时,仅在AndroidManifest.xml中添加权限是不够的(有些设备是可以的),这就需要我们在代码中申请权限,于是我找了个开源库,看了博客https://blog.csdn.net/yanzhenjie1003/article/details/52503533/开始尝试,里面用到了lambda表达式,报了个...
2018-04-26 16:04:26 812
原创 Android Studio中使用AIDL进行进程间通信遇到的错误及解决记录
1.由于移动了aidl文件到文件夹后,没有改aidl文件的包名,故出现这样的错误,改正后,一切正常
2018-04-16 17:02:25 462
原创 为什么子线程中更新UI不报错和为什么必须在主线程中操作UI?
初一看,这两个问题好像是矛盾的,其实不然:首先,为什么子线程中更新UI不报错?public class MainActivity extends Activity { private TextView textview; @Override protected void onCreate(Bundle savedInstanceState) { super.onCr...
2018-04-12 10:03:56 2746
转载 c语言字符串库函数#include&lt;string.h&gt;
字符串函数<string.h>在头文件<string.h>中定义了两组字符串函数。第一组函数的名字以str开头;第二组函数的名字以mem开头。只有函数memmove对重叠对象间的拷贝进行了定义,而其他函数都未定义。比较类函数将其变量视为unsigned char类型的数组。1 strcpy#include <string.h>char *strcpy(char ...
2017-09-27 15:50:25 1752
原创 C头文件
C/C++头文件一览 C、传统 C++#include <assert.h> //设定插入点#include <ctype.h> //字符处理#include <errno.h> //定义错误码#include <float.h> //浮点数处理#include <fstream.h> //文件输入/输...
2017-09-27 15:39:20 348
转载 Android——区别DVM与JVM
区别DVM与JVM 1.首要差别Dalvik: 基于寄存器,编译和运行都会更快些JVM: 基于栈, 编译和运行都会慢些2.字节码的区别Dalvik: 执行.dex格式的字节码,是对.class文件进行压缩后产生的,文件变小JVM: 执行.class格式的字节码3.运行环境的区别 Dalvik : 一个应用启动都运行一个单独的虚拟机运行在一个单独的进程中JVM: 只能运行一个实例, 也就是所有...
2017-09-19 15:04:14 453
转载 Android内存优化之——static使用篇(使用MAT工具进行分析)
这篇文章主要配套与Android内存优化之——static使用篇向大家介绍MAT工具的使用,我们分析的内存泄漏程序是上一篇文章中static的使用内存泄漏的比较不容易发现泄漏的第二情况和第三种情况——不正确使用单例和asyncTask造成的内存泄漏现象,没看上一篇文章的大家可以先阅读下上一篇文章。 先看一下我们需要分析的目标程序由3个activity组成:MainActivity.javapubl...
2017-09-19 11:52:35 377
转载 彻底理解android中的内部存储与外部存储
转载自:http://www.androidchina.net/4106.html Android开发中文站 » 彻底理解android中的内部存储与外部存储 我们先来考虑这样一个问题:打开手机设置,选择应用管理,选择任意一个App,然后你会看到两个按钮,一个是清除缓存,另一个是清除数据,那么当我们点击清除缓存的时候清除的是哪里的数据?当我们点击清除数据的时候又是清除的哪里的数据?读完本文相信...
2017-09-19 10:23:37 327
原创 Android C++和JAVA互相调用
1. JNIEnv对象 对于本地函数 JNIEXPORT void JNICALL Java_video1_TestNative_sayHello(JNIEnv * env, jobject obj) { cout<<"Hello Native Test !"<<endl; } JNIEnv类型代表Java环境。通过这...
2017-08-17 20:00:58 2329
转载 Android Studio导入第三方库的三种方法
今天在项目中使用一个图片选择器的第三方框架——GalleryFinal,想要导入源码,以便于修改,于是上完查找了一下方法,想到之前用到过其他导入第三方库的方法,现在做个小总结,以防忘记。Android Studio导入第三方库的方法我个人知晓的有三种:Gradle抓取libs导入源码导入Gradle抓取Gradle抓取的方法最为简单,只需在Project->app文件夹下的build.gra...
2017-06-30 17:51:49 2312
原创 Android 关于内存泄漏的一些总结
(做Android开发一年多后,第一次发文章,还都是拷过来的,主要是方便下次看)避免Context相关的内存泄露的两种方法最明显的方法是避免在Context的作用域之外使用它。第二种方法就是使用Application Context。这个Context会一直存活只要你的应用是活着的,并且不依赖于Activity的生命周期。如果你打算维持一个长时间存在的并且需要Context的对象时,记住使用应用的...
2017-06-30 17:06:10 341
Android调用C/C++(NDK)
2018-04-17
C Primer Plus(第5版)中文版
2017-09-29
CodeBlocks使用教程pdf格式(含安装、下载及环境配置)
2017-09-29
摇一摇&重力传感器
2016-06-30
Android 4.0及以上后台快速截屏
2016-10-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人