- 博客(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"?>...
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
原创 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无障碍服务实现获取系统全局任何控件的名称和坐标信息
2024-03-23
8.1 9.0 10.0安装app时抛出异常解决方案.rar
2021-09-07
android 9.0 10.0Launcher3 Hotseat 添加apps button.txt
2021-08-08
android 9.0 10.0添加负一屏(左一屏)功能left_screen.rar
2021-08-06
android 自定义九宫格图案解锁DrawPwd.rar
2021-08-05
关于开通单篇收费资源的建议
2021-07-31
TA创建的收藏夹 TA关注的收藏夹
TA关注的人