- 博客(12)
- 资源 (7)
- 收藏
- 关注
原创 waiting for target devices to come online
手残,Android studio 自带的模拟器拖拽了两张图片后,长按电源点击了重启模拟器后,黑屏了,重启也不能正常使用,AS状态栏只显示一句话:wait for all target devices to come online。查了下问题,很多人建议:Wipe Data,这样做就相当于新建一个模拟器了,之前的数据都没了。尝试了另一个选项:Cold Boot Now,恢复正常,并且之前的数据和测试Demo都在。步骤关掉模拟器;打开 Tools → AVD Manager;点击出问题的模拟器
2021-04-29 17:57:15 576
原创 Vim打不开文件:Another program may be editing the same file./An edit session for this file crashed.
Linux Vim 打开一个脚本文件“f03.sh”,直接报错:vim f03.sh遇到英文错误不要怕,先看一下报错的内容。Another program may be editing the same file.An edit session for this file crashed.E325: ATTENTIONFound a swap file by the name ".f03.sh.swp" owned by: geofferysun dated: W
2021-04-28 16:25:15 1698
原创 开启 Linux 版的 Window 子系统(WSL)
最近在学习 Android 的 NDK 和 JNI,音视频和图像处理等内容后期编译 C 库要用到 Linux 环境了,最近做个记录,点点滴滴。1. 如何拥有Linux环境?(1)Windows 环境电脑配置高、内存大的最好是安装虚拟机,能最接近真实环境;开启 Linux 版的 Window 子系统(WSL,Windows Subsystem for Linux) 【推荐】;与在虚拟机下使用 Linux 相比,WSL 占用资源更少,更加流畅WSL 可以对 Windows 文件系统下的文件直.
2021-04-27 11:40:25 674
原创 Android序列化(1)Serializable
概念说到Java,万物皆对象。对象,是一个比较抽象的概念,他就是类存活在内存中的一个实例,有状态和行为,一旦JVM停止运行,对象的状态也会随之丢失。那么如何将这个对象当前状态进行一个记录,使其可以进行存储和传输呢?这就要用到序列化了。序列化(Serialization)把对象转换为字节序列的过程称为对象的序列化,把对象的状态保持下来,写入到磁盘或者其他介质中。在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流。在随后对对象进行反序列
2021-04-23 18:15:32 330
原创 Android页面跳转使用Intent 能传递数据大小的问题
抛出问题日常开发中我们经常用到的页面跳转传值,而在 Activity 间传递数据,就需要借助 Intent,可以传递基础类型数据或者可序列化的对象数据。平时传递少量数据的时候是没问题的,但是,当传递数据较大的时候会崩溃,就会触发 TransactionTooLargeException 异常。我们在这里先创建一个困难:Intent intent = new Intent(context, TestActivity.class);byte[] data = new byte[1024 * 1024];
2021-04-23 11:23:53 804
原创 约束布局ConstraintLayout
国际惯例,官网参考文档是最好的学习资料:使用 ConstraintLayout 构建自适应界面1,背景约束布局 ConstraintLayout 是最受欢迎的 Jetpack 库之一,其实是Android Studio 2.2中主要的新增功能之一,也是 Google 在2016年的 I/O 大会上重点宣传的一个功能。AS 已经将它作为新建页面默认布局了。经历这几年的迭代,功能已经非常的成熟,现在 2.0 正式版本也发布了,也许你已熟悉了旧版本中的功能,并开始用它来快速构建复杂的页面布局,而新版本除了包
2021-04-21 19:01:37 2676
转载 AMS源码分析
转载来源:AMS源码分析(一)Activity生命周期管理AMS源码分析(二)onActivityResult执行过程AMS源码分析(三)AMS中Activity栈管理详解(一)Activity生命周期管理1. 前言AMS(ActivityManagerService)是Activity管理的核心组件,提供了Activity的启动、生命周期管理、栈管理等功能,熟悉AMS会对我们认识Activity的工作原理有很大的帮助。当前比较成熟的插件化技术,也是通过对Activity启动流程中的重要组件
2021-04-19 17:49:43 1242
原创 Java多态与泛型 ,动态绑定,静态绑定
(一)多态1.概念简单理解就是,一个对象可以表现出多种状态。可以看做是对抽象对象的逆过程,具体化抽象对象的行为。而它是如何实现这种表现出多种状态功能的呢。从Java语法上来讲有如下两种方式:1.1 使用继承:将父对象(更抽象的对象/或者说基类)设置成为一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。class Aninal{ void sound(发出声音);}//sound是动物的一个叫声方法class cat extend Anima
2021-04-19 11:49:26 1002
转载 Java源码分析之HashMap
本文基于Java 8HashMap使我们在开发过程中经常用到的数据结构,在面试过程中也会经常问到,本篇博文就基于JDK1.8具体分析一下HashMap的实现。首先看一下HashMap中的静态变量和一些类变量:// 默认最大容量static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16// HashMap的最大容量static final int MAXIMUM_CAPACITY = 1 << 30;// 默
2021-04-16 19:03:57 138 2
转载 MVP 模式简单易懂的介绍方式
Android MVP 模式 1 也不是什么新鲜的东西了,我在自己的项目里也普遍地使用了这个设计模式。当项目越来越庞大、复杂,参与的研发人员越来越多的时候,MVP 模式 的优势就充分显示出来了。MVP 模式是 MVC 模式在 Android 上的一种变体,要介绍 MVP 就得先介绍 MVC。在 MVC 模式中,Activity 应该是属于 View 这一层。而实质上,它既承担了 View,同时也包含一些 Controller 的东西在里面。这对于开发与维护来说不太友好,耦合度大高了。把 Activity
2021-04-13 16:39:33 2893
原创 根据股票代码特征分类
在根据股票代码获取详情一文中,查询股票简要信息的时候,为了用户不输入前缀,需要自己拼接,逻辑如下:A股-上证 6位纯数字,以600、601、603、605、900开头,查询股票详情时候拼接前缀“sh”沪市A股 沪市A股的代码是以600、601或603打头沪市B股 沪市B股的代码是以900打头A股-深证 6位纯数字,以000、002、003、200、300开头,查询股票详情时候拼接前缀“sz”深市A股 深市A股的代码是以000打头中小板 中小板的代码是002打头深圳B股 深圳B股的代码
2021-04-08 15:38:28 4055 1
原创 Java语言高级特性(1)——泛型
你没看错,这个题目是2021年写下的。Android现在主推Kotlin,还有flutter的Dart语言,还有必要深扣“过气的”Java吗?当然还是要学的,今天第一篇先总结泛型相关的知识点,后期会做一个系列出来:SDK还是改成Java,Kotlin也需要编译成为Java运行;目前大量的第三方库和继承与接手公司既有代码都是Java所写的;Java语言应用不仅仅在Android,在后台开发中也是一个最流行的语言;大公司面试都要求我们有扎实的Java语言基础。所以,请大家不要轻视提高自己Java.
2021-04-04 18:09:24 253
Android 的WebView长按保存图片
2016-12-28
Android 头像替换,解决华为手机取不到图片
2016-12-02
Android图片上传(头像裁切+原图原样)
2015-01-18
ActivityGroup|顶部底部均有Tab标签之二
2014-12-10
Android 顶部底部均有Tab标签
2014-12-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人