- 博客(56)
- 资源 (3)
- 收藏
- 关注
原创 android内存泄漏
内存泄漏:其中一些表现形式1. 将 Context 或者 View 置为 static2. 未解注册各种 Listener3. 非静态 Handler 导致 Activity 泄漏(解决:持有弱应用)4.三方库使用 Context(把Activity.this传入到三方库,而三方库使用静态字段)内存泄漏检测:开源库神器:LeakCanary原理: 基于WeakReference和ReferenceQueue 实现的:1.当一个 Activity 需要被回收时,就将其包装到一个
2020-08-11 18:40:21 365
原创 APK包体积优化
1.apk-->as上,分析资源:比如:图片:可以做一些压缩优化等操作 动态库:比如只用了某一个或者多个方法,能否把相关代码copy出来,而不是用整个库查看未被使用的资源:Analyze -> Inspect Code:然后选Android Lint --> Performance --> Unused resources......
2020-08-11 11:27:51 185
原创 android动态权限申请
如代码所示:public class MainActivity extends AppCompatActivity { private String[] permissionList = new String[]{ //申请的权限列表 Manifest.permission.READ_CONTACTS, Manifest.permission.READ_EXTERNAL_STORAGE }; @Override
2020-08-11 10:24:06 433
原创 组件化从0到100
组件化创建全过程小白都可以看懂的组件化创建全过程,下面是详细步骤:第一步:在主工程创建 library,比如可以先建一个 custom_base 的Lib,用来给 custom_ui做专门的数据处理,数据和视图分离,实现解耦右键主工程 --> New --> Module --> Android Librarycustom_base 这个Lib专门写一些基类,或者工具类,供其他UI模块调用第二步:创建UI模块,比如 custom_ui,也是上面的步骤,...
2020-07-23 21:29:22 159
原创 SharedPreferences存储HashMap和相互转化
public class MainActivity extends AppCompatActivity implements View.OnClickListener { private HashMap<String,PeopleBean> map; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); .
2020-07-22 22:28:05 1166
原创 Android比较常用的设计模式
单例模式饿汉式:线程安全class Singleton { //1,私有构造函数 private Singleton(){} //这里不需要分号 //2,创建本类对象 private static Singleton s = new Singleton(); //3,对外提供公共的访问方法 public static Singleton getI......
2020-03-24 16:54:05 255
原创 动态添加View
效果图:具体代码://1.寻找到可以添加控件的一些根布局:如LinearLayout val linearLayout = findViewById<View>(R.id.line_view) as LinearLayout val lv0_params = LinearLayout.LayoutParams(dp2px(this,...
2019-04-01 14:36:00 649
原创 android圆角以及背景设置(按下状态)
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <!--selector做点击事件监听,state_pressed="true"为按下时--> <i
2018-06-04 15:13:08 977
原创 自定义Dialog封装
封装的Dialog:package com.example.user.testtwoapplication;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.os.Handler;import android.support.anno...
2018-03-14 15:32:36 615 2
原创 Android 5.0 6.0 7.0的新特性
Android 5.0、6.0、7.0新特性:RecyclerView (recyclerview-v7)CardView (cardview-v7) :卡片ToolBar (appcompat-v7):取代actionbar,实现自定义更加方便SwipeRefreshLayout (v4):Android自带的实现下拉刷新的
2017-07-26 10:27:48 843
原创 解决RecyclerView.getChildAt(Position)崩溃
问题描述: 程序中,屏幕可以获取到6个子view.当getChildAt() ,position为6或者为7的时候,程序崩溃,报空指针的异常. 实际上:getChildAt()这个方法,只能get到屏幕显示的部分.解决办法:只需要用当前的position减去屏幕显示的第一个View的position,得到真实的position即可:int[] firstV...
2017-05-15 10:12:24 8438 7
原创 Eventbus注册异常:its super classes have no public methods with the @Subscribe annotation
Eventbus注册异常
2017-05-08 14:47:13 2145
原创 Json解析
自己手动解析:{"body" : {"mobile":"13714664734","email":"","icon":"","open_id":"f5994ced6530405ebc07f8fecd1beb12","country_code":"86","user_name":"13714664734","is_update_name":"0"},"code":"0","msg":"
2017-02-28 14:51:28 501
原创 保存图片到相册
直接上代码,复制粘贴吧!public static void saveImageToGallery(Context context, Bitmap bmp) { if (bmp == null){ return; } // 首先保存图片 File appDir = new File(Environment.getExternalSto
2017-02-23 15:11:50 396
原创 安卓存储对象到本地
直接上代码:public class MainActivity extends AppCompatActivity{ private String mNum; private String mPw; private TextView mTv; private User mUser; @Override protected
2017-01-08 14:24:02 509
转载 关于Rxjava
Blog给 Android 开发者的 RxJava 详解 -强烈推荐 扔物线的文章 讲解非常详细NotRxJava懒人专用指南 -这篇入门极力推荐,手把手,深入浅出教你实现一个简易的RxJava库,更好的理解RxJava的实现思路深入浅出RxJava(一:基础篇)深入浅出RxJava ( 二:操作符 )深入浅出RxJava ( 三--响应式的好处 )
2016-12-12 12:10:04 515
转载 可能是东半球最全的RxJava使用场景小结
转载自:http://blog.csdn.net/theone10211024/article/details/50435325一、Scheduler线程切换这种场景经常会在“后台线程取数据,主线程展示”的模式中看见[html] view plain copyObservable.just(1, 2, 3, 4)
2016-12-08 15:04:35 379
原创 aapt打包
原理图· aapt: androidapplication package tool,SDKAndroid打包流程1. 通过aapt工具将资源文件(res)、清单文件(AndroidManifest.xml)生成对应的R.java文件o 在项目的根目录下新建 gen目录,并且依次在gen目录下新建清单文件总包名对应的文件目录例如
2016-12-01 22:37:09 1496
转载 AsyncTask的使用以及Demo
AsyncTask 如何使用AsyncTask 用 于 处 理 异 步 任 务 , 该 类 是 一 个 抽 象 的 泛 型 类 。 类 的 签 名 如 下 : public abstract classAsyncTask。三种泛型类型分别代表“启动任务执行的输入参数”、“后台任务执行的进度”、“后台计算结果的类型”。在特定场合下,并不是所有类型都被使用,如果没有被使用,可以用
2016-11-24 18:10:42 329
转载 Android应用开发性能优化完全分析-转载大神总结的.非常全面系统
目录:1.背景2.应用 UI 性能问题分析2-1 应用 UI 卡顿原理2-2 应用 UI 卡顿常见原因2-3 应用 UI 卡顿分析解决方法2-3-1 使用 HierarchyViewer 分析 UI 性能2-3-2 使用 GPU 过度绘制分析 UI 性能2-3-3 使用 GPU 呈现模式图及 FPS 考核 UI 性能2-3-4 使用 Lint 进行资源及冗余 U
2016-11-24 16:46:34 383
原创 内存泄露和内存溢出
内存泄露:memory leak是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。1.将线程的内部类改为静态内部类.(非静态内部类会持有对外部类的引用,而静态内部类则不会).包括及时释放资源,static,cursor,IO2采用弱引用保存context引用(weakreference)
2016-11-24 15:56:56 339
原创 TCP与UDP的区别,以及Http和Socket
TCP与UDP的区别 TCP:Transmission Control Protocol 传输控制协议 UDP:User Data Protocol 用户数据包协议TCP面向有链接的通信服务UDP面向无连接的通信服务TCP提供可靠的通信传输UDP不可靠,会丢包TCP保证数据顺序UDP不保证TCP数据无边
2016-11-21 15:50:51 860
Reactnative.jar
2017-09-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人