自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(308)
  • 资源 (16)
  • 收藏
  • 关注

原创 ContentObserver

一.介绍ContentObserver 目的是观察(捕捉)特定 Uri 引起的数据库的变化, 继而做一些相应的处理。它类似于数据库技术中的触发器(Trigger),当 ContentObserver 所观察的 Uri 发生变化时,便会 触 发 它 。触 发 器 分 为 表 触 发 器 、 行 触 发 器 , 相 应 地 ContentObserver 也 分 为 “ 表“ContentObserver、“行”ContentObserver,当然这是与它所监听的 Uri MIME Type 有关的。.

2021-07-26 15:39:31 5

原创 编PatchBuild

由于安卓系统开发我们经常需要自测,但版本一般一天发布一次,如果你需要在改完一笔代码后立刻测试可以通过patchbuild完成。一.查找你需要patchbuild的项目二.根据你提交的代码去patchbuild三.构建版本信息四.删除...

2021-07-19 14:20:12 29

原创 Ubuntu添加截图工具

在乌班图的应用商城搜索:Flameshot设置>设备>键盘,设置一个自定义快捷键(拉到最下面)命令填写:flameshot gui(必须填这个,这个是命令的索引)screenshot(自定义,快捷键的名称)...

2021-07-13 17:26:09 9

原创 RecyclerView选中Item滚动到指定位置

RecyclerView选中Item滚动自定义位置:public class CenterLinearLayoutManager extends LinearLayoutManager { private int mItemCount = 0; public CenterLinearLayoutManager(Context context) { super(context); } public CenterLinearLayoutManager(C

2021-07-05 14:30:48 26

原创 获取dimens里的长度

RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams) getLayoutParams();获取dimens数据的两种方式如:int marginLand = mContext.getResources().getDimensionPixelSize(R.dimen.help_margin_land);(int) mContext.getResources().getDimension(R.dimen..

2021-06-30 09:41:05 13

原创 onTouchEvent处理机制

只有view,ViewGroup,Activity 具有事件分发和消费的功能。Activity因为上最先接触到触摸事件,因此Activity没有事件拦截方法。即没有onInterceptTouchEvent方法。对于不能添加子控件的view,不能对事件进行分发和拦截,它只有onTouchEvent事件。public boolean dispatchTouchEvent(MotionEvent ev) 事件分发当触摸事件发生的时候,首先会被当前的activity进行分发,即当前activity

2021-06-15 10:33:16 8

原创 强制输入/过滤log

有时候我们再调试设备的时候无法打印log,输入以下命令即可:Adb rootAdb remountAdb shell setprop persist.sys.log.enable 1

2021-06-14 08:01:56 21

原创 Git cherry-pick 详解

gitcherry-pick<commitid>:单独合并一个提交gitcherry-pick-x<commitid>:同上,不同点:保留原提交者信息。gitcherry-pick<start-commit-id>..<end-commit-id>gitcherry-pick<start-commit-id>^..<end-commit-id>前者表示把到之间(左开右闭,不包...

2021-06-13 11:37:22 21

原创 Git stash

gitstash用法总结和注意点stash的原理:将本地没提交的内容(gitcommit的内容不会被缓存但gitadd的内容会被缓存)进行缓存并从当前分支移除,缓存的数据结构为堆栈,先进后出保存:gitstashsave"xxx"加上自己的注解进行缓存gitstash与gitstashsave是一样的,将没有提交的内容缓存并移除,而这条缓存名称为最新一次提交的commit-m的内容,如果没有本地提交则是拉远程仓库是的commit内容取出:gitstashpop...

2021-06-12 10:39:13 14

原创 通过ADB命令录制视频和截图

录制视频:adb shell screenrecord /sdcard/1.mp4(视频保存的路径) 退出并保存视频(Ctrl +C)截图:adb shell screencap (-p) /sdcard/1.png(图片保存的路径)sage: screencap [-hp] [-d display-id] [FILENAME] -h: this message -p: save the file as a png. -d: specify the display ...

2021-05-29 11:11:35 36 2

原创 Git恢复之前版本的两种方法reset、revert

一.git resetgit reset的作用是修改HEAD的位置,即将HEAD指向的位置改变为之前存在的某个版本,如下图所示,假设我们要回退到版本一:

2021-05-06 16:06:27 44

原创 Git生成和导入Patch

一.生成Patch1.1git diff > xxx.patch只想 patch Test.java 文件:git diff Test.java > test.patch把所有的修改文件打成 patch:git diff > test.patch1.2git format-patchgit format-patch HEAD^ 或者 git format-patch -1 #生成最近的1次commit的patchgit format-patch ...

2021-05-04 11:05:06 90

原创 Git rebase -i 合并多次提交

我们在开发项目的过程中可能提交了多次代码,但有时候需要合并多次commit,实现的效果如下:如果你需要合并多个commit就通过Git log看下查你要合并commit的ID,记住最早的commit ID,如:123abcgit rebase -i 123abc //合并从当前head到123abc(commit id)或者git rebase -i HEAD~x //合并最近的x次提交 如:git rebase -i HEAD~2合并最近的两次提交输入上述命令,会进...

2021-05-01 13:16:03 81

原创 Camera2详解

Camera2 接口什么时候开始引入的?从Android 5.0开始,Google 引入了一套全新的相机框架 Camera2(android.hardware.camera2)并且废弃了旧的相机框架 Camera1(android.hardware.Camera)不了解的同学,可能会有疑问,为啥要废弃Camera1接口?基本原因是,camera1接口过于简单,没法满足更加复杂的相机应用场景。为了给应用层提供更多的相机控制权限,从而构建出更高质量的相机应用程序,Google才推出了Camera2 接口。

2021-04-08 21:09:03 106

原创 adb shell操作数据库

进入数据库所在包:cd /data/data/com.android.providers.media.module/databases输入命令:sqlite3 external.db进入sqlite命令行sqlite>.tables当前表集合 .help命令帮助说明sqlite> .tablesalbum_art audio_playlists log android_metadata audio_playl...

2021-04-07 15:55:48 60

原创 Git 详解

之前写的一篇文章可能写的有点乱,如下:https://blog.csdn.net/xxdw1992/article/details/79847179现在按实际开发中通过Git提交代码总结出来的一些经验一.git branch链接:https://www.jianshu.com/p/305723736c7c个人提交代码的流程git status 查看目前项目状态,是否有修改(作用查看修改的文件列表)git diff 查看代码修改哪些 q...

2021-04-06 11:45:18 65

原创 Repo详解

repo 初始化命令repo init –u <URL> [<OPTIONS>] URL:指定manifest仓库地址-u: 指定连接到的manifest仓库地址-m: 选择仓库中某个manifest文件,如果没有设置,就使用default.xml-b: 选择一个maniest仓库中的一个特殊的分支或修正版本eg:mkdir? 7.0_trunkcd 7.0_trunkrepo init -u 公司manifest仓库地址 -b? 分支名repo 拉代码...

2021-04-02 15:13:34 89

原创 安卓系统开发的一些ADB命令

adb shell getprop ro.build.type 查看当前模式是否debug版本adb disable-verity# 新建udev规则文件sudo touch /etc/udev/rules.d/51-android.rules进入该文件:vim 51-android.rules# 编辑该文件,添加设备的id与mode,如:SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="4ee7", GROUP="plugdev"...

2021-03-22 11:14:52 88 2

原创 安卓系统开发编译模块代码

m 在源码树的根目录下执行编译mm 编译当前路径下所有的模块,但不包含依赖mma 编译当前路径下所有模块,且包含依赖mmm 编译指定路径下所有的模块,但不包含依赖mmma 编译指定路径所有的模块,且包含依赖make 在源码树根目录下执行,自动寻找该模块,省略名称默认全编source build/envsetup.sh 在你需要编辑的根目录下输入如下命令初始化环境lunch 选择你需要的模块:如:32.lito-userdebugmake -j...

2021-03-20 08:59:40 101 2

原创 Ubuntu详解

介绍Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu"一词,意思是“人性”“我的存在是因为大家的存在",是非洲传统的一种价值观。Ubuntu基于Debian发行版和Gnome桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity。从前人们认为Linux难以安装、难以使用,在Ubuntu出现后这些都成为了历史。Ubuntu也拥有庞大的社区力量,用户可以方便地从社区获得帮助。[1]自Ubuntu 18.04 LTS...

2021-03-17 11:24:45 104

原创 Linux操作命令apt、chmod、dpkg

apt导读apt 是一个命令行实用程序,用于在 Ubuntu , Debian 和相关 Linux 发行版上安装,更新,删除和管理 deb 包。它是 apt-get 和 apt-cache 工具的最常用命令和选项的组合。apt 专为交互式使用而设计。在您的 shell 脚本中优先使用 apt-get 和 apt-cache ,因为它们在不同版本之间向后兼容,并具有更多选项和功能。大多数 apt 命令必须以具有sudo权限的用户身份运行。本指南可作为 apt 命令的快速参考。更新包索引..

2021-03-16 10:24:25 66

原创 FTPClient设置多级目录

/** * 上传文件之前初始化相关参数 * * @param remotePath FTP目录 * @param listener 监听器 * @throws IOException */ private void uploadBeforeOperate(String remotePath, UploadProgressListener listener) throws IOException { // 打开F...

2021-02-19 09:01:59 145

原创 解决Android Studio一直卡着gradle无法编辑通过

解决方式一:添加maven其他仓库地址allprojects { repositories { //新加 mavenCentral() jcenter() //新加 mavenLocal() google() }}解决方式二:新增镜像maven { url "http://nexus.jrj.com.cn/nexus/content/groups/public/"...

2021-02-07 09:22:12 101

原创 Gradle sync failed: EventQueue.isDispatchThread()=false Toolkit.getEventQueue()...

解决Android Studio一直sync打转并报错:出现Gradle sync failed: EventQueue.isDispatchThread()=false Toolkit.getEventQueue()File → Settings → Experimental → Gradle → Only sync the active variant 按着这个设置把Only sync the active variant 打钩去掉即可...

2021-02-05 09:53:32 55

原创 安卓调用闪光灯

<ImageView android:id="@+id/light_img" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_marginLeft="10dp" android:padding="10dp" android:src="@drawable/light_down" />//闪光灯开关控制器lightI.

2021-02-01 15:32:04 56

原创 安卓OnClick的四种方法

1.匿名内部类Button bt_dial = (Button) findViewById(R.id.bt_dial);bt_dial.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {点击操作}});2.自定义单击事件监听类Button bt_dial = (Button) findViewById(R.id.bt_dial);bt_dial.setOnC

2021-01-25 10:09:41 595 1

原创 LocalDateTime用法

一.新时间日期API常用、重要对象介绍ZoneId: 时区ID,用来确定Instant和LocalDateTime互相转换的规则 Instant: 用来表示时间线上的一个点(瞬时) LocalDate: 表示没有时区的日期, LocalDate是不可变并且线程安全的 LocalTime: 表示没有时区的时间, LocalTime是不可变并且线程安全的 LocalDateTime: 表示没有时区的日期时间, LocalDateTime是不可变并且线程安全的 Clock: 用于访问当前时刻、日期、

2021-01-18 09:53:47 125

原创 第三方电子签名框架

一.在build.gradle文件配置如下://电子签名框架implementation 'com.github.gcacace:signature-pad:1.2.1'二.XML配置<com.github.gcacace.signaturepad.views.SignaturePad android:id="@+id/signature_pad" android:layout_width="match_parent" android:layout_heigh

2021-01-09 15:40:38 229

原创 正则表达式

一.判断一个字符串是否全是数字 /** * @author Longchengbin * @description 判断一个字符串是否全是数字 * @since 2020/12/30 9:23 **/ public static boolean isNumStr(String str) { Pattern pattern = Pattern.compile("[0-9]*"); Matcher isNum = pat

2021-01-02 16:56:21 94

原创 安卓崩溃日志写入文件中

一.代码1.1捕获全局异常工具类public class CrashHandler implements Thread.UncaughtExceptionHandler { public static String TAG = "MyCrash"; // 系统默认的UncaughtException处理类 private Thread.UncaughtExceptionHandler mDefaultHandler; private static CrashHa

2020-12-21 10:52:33 157

原创 解决split无法得到空字符串问题

一.问题在一次分割字符串的时候,出现了如下问题:无法分割出空字符串,但当末尾位带了非空字符串又能分割了,如下图:二.定位分析1.空字符串不被解析2.最后一个分隔符被分的字符串不为空时,其余空字符串可被解析源码分析该方法的作用是:将一个字符串分割为子字符串,然后将结果作为字符串数组返回。 regularExpression:必选项。要被分解的 String 对象或文字,该对象不会被split方法修改。 ...

2020-12-14 09:49:43 363 1

原创 URLDecoder和URLEncoder详解

URLDecoder和URLEncoder它的作用主要是用于普通字符串和application/x-www-form-rulencoded MIME字符串之间的转换URLDecoder类包含一个decode(String s,String charcter)静态方法,它可以将看上去乱码的特殊字符串转换成普通字符串URLEncoder类包含一个encode(String s,String charcter)静态方法,它可以将普通字符串转换成application/x-www-form-urlen...

2020-12-05 10:31:41 151

原创 百度识别的调用

一.AKSK初始化二.代码的调用public class MainActivity extends BaseActivity { @BindView(R.id.tv) TextView textView; private static final int REQUEST_CODE_CAMERA = 102;// private static final int REQUEST_CODE_DRIVING_LICENSE = 103;//驾驶证 privat

2020-12-01 09:29:56 149

原创 百度文字识别申请与下载

一.官网申请申请链接:https://console.bce.baidu.com/ai/?fromai=1&_=1488766023093#/ai/ocr/app/list如果你需要项目更具有安全性需要按如下填写包名:申请成功后可以在自己的开发者平台看到此应用二.SDK下载和说明SDK下载:https://ai.baidu.com/sdk/#ocr开发包说明 aip-ocr-android-sdk.zip // OCR S...

2020-11-24 15:18:04 194

原创 IjkPlayerView使用

一.项目的引入1.1源码地址https://gitee.com/lcb1992/IjkPlayerView1.2依赖包的引入如果你项目是引用support包如下引入项目即可: //视频播放框架 implementation 'com.github.Rukey7:IjkPlayerView:v1.0.4'由于我自己的项目是用到了androidx包,引入各种报错,由于源码开发版本较低且用了support包到时版本不一致,我在源码的基础上新增了androidx的依赖包;源...

2020-11-09 09:17:05 215

原创 安卓调用科大讯飞语音

一.官网下载SDKhttps://www.xfyun.cn/1.1项目创建APPID是项目调用SDK会用到的1.2SDK下载二.代码调用2.1在Application中初始化SDK /** * @author Longchengbin * @description 初始化讯飞语音 * @since 2020-10-22 11:42 **/ private void initXFYY() {

2020-11-03 10:56:50 244

原创 安卓自定义照相机(横竖屏感应)

实现功能:通过安卓自带的SensorManager(传感器)来判断,当用户横向拍照时照片出来是竖向显示的实现代码:final Intent intent = new Intent(TakePic_Activity.this, PhotoActivity.class);String url=Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "PICvkl" + File.

2020-11-02 15:26:35 448

原创 安卓so包常见报错问题

一./lib/arm64, /system/lib64, /vendor/lib64]]] couldn't find "libAndroidIDCard.so我没有在libs文件夹下面创建类似“arm64-v8a”这个文件夹,因为集成所按照的官方SDK中并没有给出相应的so包。原因分析新建项目中会多了几个文件夹,我想这就是问题的所在,根据查找顺序,64位处理器会优先查找arm64-v8a,里面如果没有相应的so文件就会报错。apk包在安装的时候,系统会把包中与自己的abi对应的lib目录中的s

2020-10-19 15:15:07 262

原创 解决多个provider配置问题

由于在项目开发中引入了第三方sdk,依赖项目的provider和主项目的冲突报错,如下图:<provider android:name="androidx.core.content.FileProvider" android:authorities="com.kernal.passportreader.myapplication.fileprovider" android:exported="false" android:grantUriPermissio

2020-10-15 14:52:04 604

原创 OkGo新增请求头

一.通过OkGo初始化配置新增请求头在请求登录接口时存储到SharedPreferences中二.通过自定义Callback新增请求头2.1新增数据库字段2.2存储token值2.3在自定义callback中添加header...

2020-10-14 10:24:55 732

高德地图官方SDK以及DEMO下载

高德地图官方的SDK包集合:所有功能都有包括3D、定位、搜索功能以及DEMO源码的下载...

2018-09-29

IjkPlayerView源码以及androidx依赖包

安卓第三方视频播放软件:IjkPlayerView是一个基于ijkplayer的视屏播放库,可以用于播放本地和网络视频。在源码的基础上,我新增了androidx的依赖包

2020-11-09

SecureCRT&SecureFX; Portable

SecureCRT&SecureFX; Portable的32位和64位的集合,它能用于通过SHH远程连接Linux系统

2019-01-18

支付宝支付官方DEMO

1)修改了一下支付宝官方的demo.............. 2)里面还有支付宝官网自带的RSA签名验签工具和一些logo

2017-10-08

安卓自定义车牌录入编辑框

安卓系统设置车牌号码,通过自定义密码编辑器和自定义滚轮完成,自定义键盘(各省市缩写以及港澳牌照).

2017-10-23

安卓自定义密码编辑器

主要是模仿微信和支付宝支付时输入的密码弹框,可以修改密码长度和背景框颜色,密码的可见与否,密码符号的修改

2017-10-14

本人的工具类集成APP

早些年从事安卓开发是自己封装的一些工具(包括微信/淘宝支付、微信/QQ登录、高德/百度地图、一些自定义控件)

2017-10-16

微信支付官网DEMO

官网的demo和和一些文档说明以及2个大牛的源码作品.

2017-10-11

百度导航和地图,自定义权限

自己参照百度官方demo写的一些工具类,还添加了自定义权限和银联支付demo.如果帮助到你们,我也感到很高兴。

2017-09-22

微信Pay官方DEMO

官网的demo和和一些文档说明以及2个大牛的源码作品

2017-11-27

Picasso jar包

1.在adapter中需要取消已经不在视野范围的ImageView图片资源的加载,否则会导致图片错位,Picasso已经解决了这个问题。  2.使用复杂的图片压缩转换来尽可能的减少内存消耗

2017-12-21

QQ登录依赖的jar包

腾讯官网下载的有关QQ登录所需的jar包。 有兴趣的可以看下我的文章:https://blog.csdn.net/xxdw1992/article/details/80631587

2018-06-09

svn2017版本64位

从TortoiseSVN官网下载的最新版本并且加入了中文改写器.

2017-12-08

okHttpUtils

okHttpUtils工具类要用到的三个jar包,这里有相应的解释http://blog.csdn.net/xxdw1992

2017-12-08

Charles.zip

Charles.zip是Charles的3.9.2版本可执行文件,Charles是一种抓包网络数据的工具。 Charles 主要的功能包括: 1)截取 Http 和 Https 网络封包。 2)支持重发网络请求,方便后端调试。 3)支持修改网络请求参数。 4)支持网络请求的截获并动态修改。 5)支持模拟慢速网络。

2019-10-08

ChampionDragon Totally Resoure

本人在csdn之前所有资源的集合,我封装到同一个app当中。

2017-10-14

空空如也

空空如也

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

TA关注的人 TA的粉丝

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