自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 Android性能优化

Threading Performance在程序开发的实践当中,为了让程序表现得更加流畅,我们肯定会需要使用到多线程来提升程序的并发执行性能。但是编写多线程并发的代码一直以来都是一个相对棘手的问题,所以想要获得更佳的程序性能,我们非常有必要掌握多线程并发编程的基础技能。众所周知,Android 程序的大多数代码操作都必须执行在主线程,例如系统事件(例如设备屏幕发生旋转),输入事件(例如用户点击...

2019-05-17 15:07:48 155

原创 AsyncTask的原理

AsyncTask的原理使用方法创建 AsyncTask 子类 & 根据需求实现核心方法创建 AsyncTask子类的实例对象(即 任务实例)手动调用execute(()从而执行异步线程任务/** * 步骤1:创建AsyncTask子类 * 注: * a. 继承AsyncTask类 * b. 为3个泛型参数指定类型;若不使用,可用java.lang....

2019-05-17 10:59:19 123

原创 Android多线程:ThreadPoolExecutor

Android多线程:ThreadPoolExecutor构造方法 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ...

2019-05-15 11:31:55 435

原创 Android改变边缘效果EdgeEffect的颜色

Android改变边缘效果EdgeEffect的颜色我们平时经常可以看到,Android可滚动的控件像ScrollView、RecyclerView等滑动到顶部或者底部时会出现一个波浪形的边缘效果,在不同的版本系统上显示的颜色有所不同,如果项目中遇到要修改它的颜色的需求,那么要如何去做呢?以ScrollView为例,控制ScrollView上下滑动边界的阴影的效果 private EdgeE...

2019-04-15 17:35:25 1298

原创 BottomSheetDialog 、DialogFragment 、BottomSheetDialogFragment二次封装及使用方法

这三种dialog,在Android 开发中经常会使用到,基本用法网络上也有很多,下面主要阐述一下我在项目中遇到的坑以及对应的解决办法BottomSheetDialogissue :BottomSheetDialog 弹出时,阴影无法覆盖到状态栏,导致状态栏还是默认的背景色处理方法:在oncreate 的时候重新计算并设置window 窗口的高度public class T3Botto...

2019-03-20 11:36:45 3580

转载 热修复——深入浅出原理与实现

热修复——深入浅出原理与实现(https://juejin.im/post/5a0ad2b551882531ba1077a2)

2019-03-11 15:37:59 112

原创 Android应用内切换语言

Android应用内切换语言前言Android中实现国际化相对来说还是简单的,因为Android有很独特的资源管理方式,我们可以很轻松的创建资源支持不同语言.资源文件的的使用android是在res/values目录下通过不同values文件夹的命名来匹配不同的资源values-语言代码-r国家代码例如:values-zh-rCN(中文)和values-en(英文)先看效果:一些...

2018-12-08 16:44:21 626

原创 使用ViewPager实现广告轮播图

使用ViewPager实现广告轮播图使用的是DialogFragment, 布局文件:fragment_ads_dialog <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/and

2018-11-30 20:56:00 464

转载 Android Gradle 完整指南

Android Gradle 完整指南为什么需要学Gradle?Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和它的编译过程有关,但是现在的Gradle 编译速度已经有了成倍提高。除此之外,相对其他编译工具,最重要的,他和 Android Studio ...

2018-11-29 15:08:13 157

原创 几种常用的转场动画

几种常用的转场动画fade_in.xml<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"> <alpha android:duration="@android:integer/conf.

2018-11-05 15:32:57 3009

原创 这是在一个TetView中显示不同样式文本的工具类

这是在一个TetView中显示不同样式文本的工具类public class SpannableWrap { public static SpannableConfig setText(String text) { return new SpannableConfig(text); } public static class SpannableConfig...

2018-10-12 22:20:42 304

转载 Android 混淆机制、通用模板

Proguard介绍Proguard被人们熟知的是它的混淆功能,根据Proguard帮助文档的描述,Proguard可以对Java class 文件进行shrink,optimize,obfuscate和preveirfy。obfuscate(混淆)只是其中之一。简要的介绍下这四个功能:压缩(Shrink): 检测和删除没有使用的类,字段,方法和特性优化(Optimize) : 分析和...

2018-09-06 19:32:30 809

转载 Android获取设备ID号

Android获取设备ID号Android有多种方式可以获取设备ID,但是每一种总会有一点限制,为此,整合几种方式在一起,这样就万无一失了public class DeviceIdFactory {protected static final String PREFS_FILE = "device_id.xml";protected static final String PREFS...

2018-09-05 15:43:13 7828

原创 判断Android 应用前后台的几种方式

方法一: 通过Application.ActivityLifecycleCallbacksAPI 14之后,在Application类中,提供了一个应用生命周期回调的注册方法,用来对应用的生命周期进行集中管理,这个接口叫registerActivityLifecycleCallbacks,可以通过它注册自己的ActivityLifeCycleCallback,每一个Activity的生命周期都...

2018-09-04 19:48:06 848

原创 Java 知识储备 (基础篇 一)

1、面向对象的特征有哪些方面?1)抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面。抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么。2)继承:继承是从已有类得到继承信息创建新类的过程。提供继承信息的类被称为父类(超类、基类);得到继承信息的类被称为子类(派生类)。3)封装:通常认为封装是把数据和操作数据的方法绑定起来,对数据的访问只能通过...

2018-09-03 20:20:54 264

原创 在Android 中自定义toast

自定义一个Toast工具类该类通过自定义View的形式,去自定义toast 的风格样式,在其他地方直接调用showShortToast等静态方法即可public class ToastUtil { private static Toast toast; private static View view; private static TextView mMsgTex...

2018-08-29 15:34:33 169

原创 解决NDK报错显示mips64el-linux-android-strip的问题

AndroidStudio使用NDK报错显示mips64el-linux-android-strip原本项目没有使用NDK,编译啥的都正常。最近由于在研究APP 增量更新相关东西,结果在另一个Demo项目中导入过NDK,该Demo使用AndroidStduio 自动创建,运行没有问题。结果在运行原公司项目的时候,出现 Execution failed for task ‘:app:tr...

2018-08-22 17:21:31 1635

Android 程序员简历模版

Android 程序员简历模版 适合3-5年有项目经验等同学

2023-04-26

Android AAC 框架

Android 最新jetpack 组件使用及其说明demo - [Room](https://developer.android.com/topic/libraries/architecture/room) - [Lifecycle-aware components](https://developer.android.com/topic/libraries/architecture/lifecycle) - [ViewModels](https://developer.android.com/topic/libraries/architecture/viewmodel) - [LiveData](https://developer.android.com/topic/libraries/architecture/livedata) - [Paging](https://developer.android.com/topic/libraries/arc

2023-04-26

Android Uvc 摄像头驱动

AndroidUSBCamera是基于[saki4510t/UVCCamera](https://github.com/saki4510t/UVCCamera)开发的,USB Camera(UVC设备)项目和视频数据采集的使用高度封装,可以帮助开发者通过一些简单的 API 轻松使用 USB 相机设备。使用AndroidUSBCamera,您可以简单的检测并连接USB Camera,还可以实现拍照、录制mp4、切换分辨率、获取h.264/aac/src.yuv(nv21)码流和设置相机对比度或亮度,支持480P、720P、1080P及更高等。支持覆盖和录制设备的麦克风。 支持安卓5.0,6.0,7.0,8.0,9.0,10.0

2023-04-26

辅助Android开发调试的工具App

CodeCrafts的核心是一个可拖动的侧边栏的悬浮窗,悬浮窗可以折叠或展开,悬浮窗中包含5大块功能分别对应一个TAB, 这5大块功能分别是应用控制、开发者选项、常用功能,常用系统设置和全局功能 应用控制能力将一些日常开发过程中对应用的一些繁琐的操作或者命令行指令转变为可视化的操作,而且还有自动收集和整理Crash, ANR日志,并且可以自动关联Logcat日志 实时数据会随着当前页面变化或者系统事件实时变化 CodeCrafts的很多功能依赖Shell权限, 如果发现存在功能不可用的情况,一般都是shell权限获取失败了, 只需要通过在电脑终端输入adb命令"adb tcpip 5555"指令, CodeCrafts就可以自动获取shell权限了。

2023-04-26

商城县其中听力考试相关学习资料

商城县其中听力考试相关学习资料 适合小学生3-5年级

2023-04-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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