自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

安卓兼职framework和app工程师的博客

从事7年app和os定制开发

  • 博客(30)
  • 资源 (53)
  • 问答 (1)
  • 收藏
  • 关注

原创 Android 自定义View 实现自动吸附功能

1.简述最近开发app过程中要实现拖动view后要可以自动吸附功能,所以需要自定义view来在onTouchEvent中来利用动画来实现此功能2.功能代码部分import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.util....

2020-01-17 10:07:20 782 2

原创 Android handler详解

一、Looperlooper是关联message与handler的重要部分。你在Android的子线程中new handler为啥报错,和looper关系不浅,据如下个例子,在子线程中调用handlernew Thread(new Runnable() { public void run() { Looper.prepare()...

2020-01-17 09:44:36 164

原创 android 9.0系统定时关机的实现

由于9.0版本对系统安全性要求越来越严格,所以开关机的api对于应用层都不能调用了,要实现定时关机必须是系统应用 要在Androidmanifest.xml 中添加 android:sharedUserId=“android.uid.system”

2020-01-17 09:26:16 3310 8

原创 Android 9.0 自动关机流程解析

一、ShutdownThread 概述1.关机线程实现类Android关机线程实现类frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java2.ShutdownThread 大致流程关机线程大致流程3.ShutdownThread 部分静态变量如下:public final clas...

2020-01-17 09:12:02 915

原创 vlc源码分析一 vlc-android native调试配置

1, 按照官网给出的链接,git clone代码,配置好android sdk,ndk…后运行compile.sh;2, 出现一个protobuf相关的问题(貌似要求protobuf3),自己去网站下载后安装,即可编译通过;3, 还是找个能上外网的,或者能FQ的帐号吧,编译过程中会下载好多与google相关的软件,为了避免出现意想不到的错误,你懂的;4, 配置vlc-android:点击Ed...

2020-01-14 20:30:24 314

原创 VLC源码分析

1. 概述VLC属于Video LAN开源项目组织中的一款全开源的流媒体服务器和多媒体播放器。作为流媒体服务器,VLC跨平台,支持多操作系统和计算机体系结构;作为多媒体播放器,VLC可以播放多种格式的媒体文件。主要包括有:WMV、ASF、MPG、MP、AVI、H.264等多种常见媒体格式。VLC采用全模块化结构,在系统内部,通过动态的载入所需的模块,放入一个module_bank的结构体中统一...

2020-01-14 19:25:04 296 1

原创 Java 位运算符

&:按位与。当两位同时为1时才返回1。|:按位或。只要有一位为1即可返回1。~:按位非。单目运算符,将操作数的每个位(包括符号位)全部取反。^:按位异或。当两位相同时返回0,不同时返回1。<<:左移运算符。:右移运算符。:无符号右移运算符。注(上面所说的两位相同,指的是参与运算的两位整数的补码,也就是存储在计算机中的形式)一般来说,位运算符只能操作整数类型...

2020-01-13 11:11:48 93

原创 android Kotlin基础-运算符

一、算术运算符一元运算符二元运算符算术赋值运算符二、关系运算符三、逻辑运算符四、位运算符五、其他运算符六、运算符优先级

2020-01-10 14:15:12 877

原创 android EditText特殊属性详解

简介EditText的结构public class EditText extends TextViewandroid.view.View↳ android.widget.TextView↳ android.widget.EditText常用属性1.默认提示文本的两个属性如下android:hint="默认提示文本" <!--和微信需要登录时一样,在文本框中提示的扣扣号,邮箱-...

2020-01-10 14:00:58 521

原创 android ListView实现侧滑删除效果

大家在平时玩app的时候都接触过这种效果吧。比如说QQ聊天列表侧滑就会出现“置顶”、“标为已读”、“删除”等按钮。这篇博文将用ViewDragHelper这个神器来实现侧滑效果。好了,话说的那么多,先来看看我们实现的效果图吧:先来看一下ListView的item的slip_item_layout.xml:<?xml version="1.0" encoding="utf-8"?&gt...

2020-01-09 14:09:26 590 2

原创 Android FileDownloader框架多线程下载

在android 多线程下载框架中,FileDownloader开源库是个比较好的下载库非常方便快捷地址如下:[https://github.com/lingochamp/FileDownloader](https://github.com/lingochamp/FileDownloader)特点简单易用单任务多线程/多连接/分块下载(并支持通过ConnectionCountAdap...

2020-01-09 13:50:30 1830

原创 android 小音频频繁播放

android中多媒体文件(音乐和视频)的播放是用MediaPlayer方式是大家比较熟悉的,但是现在要来说一下另外一种音乐文件播放的方式SoundPool,相比较而言,用MediaPlayer来播放音乐的话,占用的系统资源是很多的,加载资源也需要时间,所以它不适合用来频繁播放小音频文件,比如控件焦点、点击时需要播放小音频文件,这个时候用SoundPool来播放音频文件,比用MediaPlayer...

2020-01-09 13:18:02 390

原创 android 堆内存和栈内存详解

Java把内存分成两种,一种叫做栈内存,一种叫做堆内存在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。在堆...

2020-01-08 20:03:39 1201

原创 java 如何使的float保留2位或者多位小数

方法1: float f = 34.232323; BigDecimal b = new BigDecimal(f); float f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).floatValue(); // b.setScale(2, BigDecimal.ROUND_HALF_UP...

2020-01-08 13:31:31 1729

原创 Android Canvas中利用Path绘制基本图形

在Android中绘制基本的集合图形,本程序就是自定义一个View组件,程序重写该View组件的onDraw(Canvase)方法,然后在该Canvas上绘制大量的基本的集合图形。直接上代码:1.自定义的View组件代码:package com.infy.configuration;import android.content.Context;import android.graphic...

2020-01-08 13:20:25 485

原创 Android Studio实用快捷键汇总

1.Ctrl + B跳入/跳出方法或者资源文件。将鼠标光标定位到某个方法或者资源id的调用处,按Ctrl + B,将会跳入该方法或者资源文件内部,功能等同于Ctrl + 鼠标左键。如果将鼠标光标定位到方法定义处或者资源文件内部,按Ctrl + B将会返回调用处。2.Ctrl + O查看父类中的方法, 并可以选择父类方法进行覆盖。将鼠标光标定位到类中代码的任意位置,按Ctrl + O,将会在打...

2020-01-07 20:23:30 108

原创 RGB颜色查询对照表

RGB颜色对照表

2020-01-07 20:20:12 261

原创 Android Task详解

什么是task简单说task就是一些相关联的activity的集合,但activity之间不一定非得相关联。当我们按home键旁边那个方形键(recent-apps)时,屏幕上展示的就是一个个task。task affinity在manifest文件中,注册activity时如果不申明taskaffinity属性,默认就是app程序默认package名。默认情况下一个app中所有的activ...

2020-01-07 19:08:38 5750

原创 Android框架的详解

我 们对android有了个大致的了解,知道如何搭建android的环境及简单地写一个HelloWorld程序,而且知道一个android项目包括哪 些文件夹和文件及相应的作用。本篇将站在顶级的高度——架构,来看android。我开篇就说了,这个系列适合0基础的人且我也是从0开始按照这个步骤来 学的,谈架构是不是有点螳臂挡车,自不量力呢?我觉得其实不然,如果一开始就对整个android的架构了然于...

2020-01-07 17:50:27 531

原创 android StrictMode策略的使用详解

在你的Application、Activity或其它应用容器中添加如下代码:public void onCreate() { if (DEVELOPER_MODE) { StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads()...

2020-01-07 17:47:35 290

原创 Android 7.1.2 SystemUI--Recents Task 加载显示流程

(一)Recent Task 加载流程 和 RecentsActivity启动流程RecentsActivity.java启动流程:RecentsActivity是SystemUI用于显示最近使用的应用列表,当用户点击Switch按键时会启动RecentsActivity。先分析启动的过程。首先是用户点击SWITCH按键,PhoneWindowManager会在事件分发前先拦截该事件:fr...

2020-01-06 20:32:16 1353

原创 android Toast大全(五种情形)建立属于你自己的Toast

Toast用于向用户显示一些帮助/提示。下面我做了5中效果,来说明Toast的强大,定义一个属于你自己的Toast。1.默认效果代码Toast.makeText(getApplicationContext(), "默认Toast样式", Toast.LENGTH_SHORT).show();2.自定义显示位置效果代码toast = Toast.makeText(getA...

2020-01-06 18:05:16 121

原创 Android 炫酷的横向和环形进度条的实例

一、概述最近需要用进度条,秉着不重复造轮子的原则,上github上搜索了一番,看了几个觉得比较好看的ProgressBar,比如:daimajia的等。简单看了下代码,基本都是继承自View,彻彻底底的自定义了一个进度条。盯着那绚丽滚动条,忽然觉得,为什么要通过View去写一个滚动条,系统已经提供了ProgressBar以及属于它的特性,我们没必要重新去构建一个,但是系统的又比较丑,不同版本变现...

2020-01-06 17:57:14 459 2

原创 java 二、八、十、十六进制之间的转换

int n1 = 14;//十进制转成十六进制:Integer.toHexString(n1);//十进制转成八进制Integer.toOctalString(n1);//十进制转成二进制Integer.toBinaryString(12);//十六进制转成十进制Integer.valueOf(“FFFF”,16).toString();//十六进制转成二进制Integer.t...

2020-01-06 17:46:22 108

原创 Android使用ApachePOI组件读写Word文件

进入主题!由于项目中只是用到了doc和docx的组件,下面也只是介绍这两个组件的使用一、在Android Studio中如何用POI组件从POI官网上看,貌似暂并不支持IntelliJ IDE,如下图,所以这里我们采用直接下载jar包并导入项目的方式。通过官网 ->Overview->Components,可以看到 d和docx文件分别对应着组件HWPF和XWPF,而HWPF...

2020-01-06 17:42:41 1326

原创 Activity 四种状态

基本状态1、Active/Running:一个新 Activity 启动入栈后,它显示在屏幕最前端,Activity处于活动状态,此时Activity处于栈顶,此时它处于可见并可和用户交互的激活状态,叫做活动状态或者运行状态(active or running)2、Paused:当Activity失去焦点时,或被一个新的非全屏的Activity,或被一个透明的Activity放置在栈顶时,...

2020-01-04 15:04:29 812

原创 kotlin Android与JavaScript如何交互

什么是JS交互:说的通俗一点就是前端一些调用不了原生代码的功能,或者在一些复杂页面和混排页面上,原生没有网页来得快,所以在实际项目中,很多情况下都是原生页面掺杂着webView 加载js的网页的,这就涉及到两者之间的交互以及传值问题。Android调用JS方法:通过WebView的loadUrl()调用(API小于等于18使用)通过WebView的evaluateJavascript()调...

2020-01-04 15:01:43 806

原创 Android 多国语言文件夹命名方式

多國語言:在res目錄下建立不同名稱的values文件來調用不同的語言包Values文件匯總如下:中文(中國):values-zh-rCN中文(台灣):values-zh-rTW中文(香港):values-zh-rHK英語(美國):values-en-rUS英語(英國):values-en-rGB英文(澳大利亞):values-en-rAU英文(加拿大):values-en-rCA...

2020-01-04 14:45:06 181

原创 Android 性能优化之Service

Service:是一个后台服务,专门用来处理常驻后台的工作组件。即时通讯:service来做常驻后台1.核心服务尽可能地轻!很多人喜欢把所有的后台操作都集中在一个service里面。为核心服务专门做一个进程,跟其他的所有后台操作隔离。树大招风,核心服务千万要轻。进程的重要性优先级:前台进程:Foreground process1.用户正在交互的Activity(onResume()...

2020-01-03 14:00:26 387

原创 Android FFmpeg视频添加水印

前言Android也是利用FFmpeg命令行的形式(混编),进行视频转码压缩。1.FFmpeg添加水印命令1.1.水印命令ffmpeg -iWildlife.wmv-vf "movie=panda.png[watermark];[in][watermark] overlay=10:10[out]"Marked.wmv原始视频文件路径:Wildlife.wmv水印图片路径:panda.p...

2020-01-02 20:11:50 3023 1

android Accessibility无障碍服务实现获取系统全局任何控件的名称和坐标信息

运用android系统中的Accessibility无障碍服务实现获取系统全局中任何控件的名称和坐标信息等AccessibilityNodeInfo的信息

2024-03-23

android 悬浮窗全屏显示,锁屏页面悬浮窗全屏显示

实现悬浮窗全屏功能,覆盖导航栏状态栏,在锁屏页面同样做到悬浮窗显示在锁屏页上面,并且做到全屏显示

2024-03-22

读写xls 和 xlsx格式的excel文件

app 里面 可以读写xls 和xlsx格式的文件

2022-05-20

10.0 根据包名授予app所需的权限.rar

10.0 根据包名授予app所需的权限 去掉首次运行授权

2021-11-10

10.0 电压低不能开机增加提示功能.rar

10.0电压过低 不能开机 增加提示功能

2021-11-08

10.0 充电电压过高增加提示弹框和警报声.zip

10.0添加充电电压过高增加提示弹窗和警报声的功能

2021-11-07

10.0去掉前置摄像头闪光灯功能.zip

10.0 Camera2去掉前置摄像头闪光灯功能

2021-11-07

10.0 init.rc中data下创建文件节点失败.zip

init.rc 在data创建文件夹和节点的正确方法

2021-11-07

10.0创建恢复出厂设置不被清除的文件夹节点.zip

创建恢复出厂设置不被清理的文件夹和节点 保存不该清理掉的数据

2021-11-07

10.0修改系统版本号和系统ID.rar

10.0修改系统版本号Build.DISPLAY和系统id号Build.ID

2021-11-05

9.0 10.0设置系统默认语言为中文.rar

9.0 10.0修改系统默认语言为中文,开机默认中文显示

2021-11-05

10.0在电话拨号盘(Dialer app中)通过暗码进入工厂测试模式.rar

10.0在通过拨号盘添加暗码进入工厂模式的功能,输入特定暗码 然后进入工厂模式方便测试

2021-11-05

10.0添加开机音乐.rar

Android 10.0增加开机音乐功能

2021-11-05

9.0 10.0SystemUI默认展开下拉框(展开下拉快捷).rar

Android 9.0 10.0 SystemUI实现默认展开下拉列表,显示所有下拉快捷

2021-11-05

Android(Q)10.0添加关机音乐和关机动画.rar

10.0添加关机音乐和关机动画的功能

2021-11-05

Android 自定义ListView和RecycleView实现多级树功能

自定义ListView和RecycleView实现多级树功能 实现类似qq分组列表

2021-09-22

9.0 10.0屏蔽锁屏 息屏功能.rar

Android 9.0 10.0屏蔽锁屏功能和息屏功能 让平板永不息屏和从不锁屏

2021-09-15

Android 9.0 10.0 framework添加KeyEvent按键事件流程.rar

9.0 10.0 在framework层添加KeyEvent按键事件的流程

2021-09-14

FlowLikeStar.rar

利用贝塞尔曲线原理自定义仿qq 点赞动画

2021-09-11

9.0 10.0 USB连接模式默认设为MTP.rar

android 9.0 10.0 USB连接模式默认充电连接模式修改为默认设置为MTP模式

2021-09-10

8.0 9.0 10.0静默安装和卸载

8.0 9.0 10.0静默安装和卸载的功能

2021-09-09

自定义时间选择器 农历公元时间切换 省市联动器

自定义时间选择器 农历公元时间切换 省市联动器 圆分割线等功能

2021-09-09

9.0 10.0去掉锁屏和息屏功能(永不息屏).rar

9.0 10.0去掉锁屏和息屏功能(永不息屏) 让屏幕永不息屏和锁屏

2021-09-08

仿ios底部弹dialog

仿ios底部弹出对话框

2021-09-08

8.1 9.0 10.0安装app时抛出异常解决方案.rar

8.1 9.0 10.0在系统app中代码安装app时抛出Permission Denial that is not exported from UID 1000的异常的解决方案

2021-09-07

android 自定义仿微信底部菜单栏

仿微信底部菜单栏 底部菜单字体显示隐藏 底部菜单缩放等等

2021-09-05

android 支持水平垂直滚动的RecyclerView

支持水平垂直滚动的RecyclerView的app demo

2021-09-03

android 自定义酷炫ViewPager切换效果带页面弹性指示器动画

自定义酷炫的ViewPager控件 在切换图片时,带页面弹性指示器动画效果

2021-09-02

android 自定义View动画全集

app包含图层混合 滤镜效果 粒子爆炸 拖拽气泡 动画绘制文字 圆形水波纹进度条 自定义加载动画 Splash动画等

2021-09-01

android 粒子爆炸和气泡拖拽SplitDemo.rar

实现粒子爆炸 破碎酷炫动画 气泡拖拽动画 滤镜 图层混合等效果

2021-08-26

侧滑菜单依次弹出(动画效果) SlideMenuPro.rar

android 侧滑菜单依次弹出demo 点击菜单按钮 按顺序弹出菜单,关闭侧滑菜单也是按顺序关闭

2021-08-25

android 读写Excel(支持xlsx xls格式)

app 读写Excel 支持读写xlsx和xls格式

2021-08-19

android app设置动态壁纸和静态壁纸的DynamicWallpaper.rar

在app中设置系统静态壁纸和动态壁纸

2021-08-18

9.0 10.0Launcher3设置app图标和hotseat图标为圆角图标

9.0 10.0Launcher3修改默认的app图标和hotseat图标为圆角图标

2021-08-13

android 9.0 10.0设置上网白名单

9.0 10.0设置上网app白名单 在白名单内的app可以上网 其他的app不能上网

2021-08-10

android 自定义单手指旋转抽奖转盘

自定义手指滑动旋转抽奖转盘的demo 根据手指旋转弧度来旋转转盘

2021-08-10

android10.0禁止拨打电话(屏蔽拨打电话功能).txt

android 10.0禁止系统拨打电话功能,屏蔽掉系统拨打电话的功能

2021-08-09

android 9.0 10.0Launcher3 Hotseat 添加apps button.txt

android 9.0 10.0Launcher3中 Hotseat 添加apps button功能 点击apps 进入app列表界面

2021-08-08

android 9.0 10.0添加负一屏(左一屏)功能left_screen.rar

android 9.0 10.0添加负一屏(左一屏)的功能,适用于各大平台,纯原生代码,添加到Launcher3以后 就可以使用了

2021-08-06

android 自定义九宫格图案解锁DrawPwd.rar

android 自定义九宫格图案解锁demo,绘制完图案后 保存当前密码,然后第二次比对图案密码看和保存的密码是否一致

2021-08-05

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

TA关注的人

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