
安卓开发
图钉小强
只为记录,不为富贵。
展开
-
日志显示工具类
在开发中遇到已经发布到客户现场,但是出现bug,此时无法获取调试日志的问题,使用这个工具类,把日志输出到页面显示,可以协助我们快速排查问题。获取context使用到了Utilcode框架,网上集成的文章很多,百度即可。原创 2023-03-01 13:48:17 · 269 阅读 · 0 评论 -
倒计时工具类
平时开发中经常遇到需要倒计时执行某个操作的需求,整理了一个倒计时工具类,需要时可以用上,在此记录。原创 2022-12-02 09:51:50 · 173 阅读 · 0 评论 -
Android studio 一直在代码检查导致卡顿
在开发过程中经常出现studio卡顿,电脑也卡的不行,可以尝试关闭代码审查。原创 2022-10-26 09:36:42 · 825 阅读 · 0 评论 -
MediaPlayer简单使用
MediaPlayer是Android中的一个多媒体播放类,其提供的API能满足简单的大部分音视频的播放需求。MediaPlayer是使用Surface进行视频的展示的。MediaPlayer只支持mp4、avi、3gp格式的视频,支持格式相对单一。MediaPlayer可以播放网络视频,支持的网络视频的协议为:Http协议和RTSP协议两种。原创 2022-09-29 09:34:32 · 3354 阅读 · 0 评论 -
安卓应用抓取系统日志
因为大部分安卓固件存在一个日志缓冲区限制,当日志过多超出最大限制就不会再打印日志。所以需要在开发者模式找到日志缓冲区大小,调到最大测试。使用时可以做到抓取,同时也存在一个问题。原创 2022-09-26 14:19:18 · 977 阅读 · 0 评论 -
Gradle配置阿里云仓库
配置阿里云仓库原创 2022-09-23 11:29:30 · 3354 阅读 · 0 评论 -
videoview声音焦点被抢占
最近遇到一个异屏双显,一个屏幕上使用videoview播放视频,另外一个屏幕使用投屏,投屏的声音被抢占,导致投屏无声音,试了几个框架,不理想,预置自己改了一份源码。直接修改videoview源码,去掉了系统依赖,可以在任何项目中运行。原创 2022-09-21 18:52:58 · 644 阅读 · 0 评论 -
十六进制数据格式化
十六进制数据格式化为string原创 2022-07-25 16:12:51 · 700 阅读 · 0 评论 -
原生Camera预览分辨率自定义修改
修改原生camera预览分辨率原创 2022-07-25 09:26:17 · 1893 阅读 · 0 评论 -
libserial_port.so免费下载,包含所有库版本
开发串口读取项目,遇到在arm64板子上运行找不到native方法依赖废话不多说,先上链接链接:https://pan.baidu.com/s/1aE0xjR6GBmlUICsyhQDajg?pwd=jxqa提取码:jxqa里面包含下面所有版本的so库原代码位置:GitHub - cepr/android-serialport-api: Accessing serial ports for Android下载下来因为代码太旧了,改造一番,转成studio项目公司代码加密所以我.原创 2022-05-19 14:19:24 · 2539 阅读 · 1 评论 -
linux shell 写串口,[小技巧] shell 下查看串口是否工作正常-爱代码爱编程
Skip to content爱代码爱编程代码编织梦想category:Linux ShellPosted on2021-05-09在 Linux 下调试串口,是个麻烦的事情,尤其是嵌入式环境,很多时候要借助另一台设备来进行调试。这里琢磨出一种可行的串口调试方法,可以简单的查看串口是否在正确工作。1. 短接 tx 和 rx,让串口自发自收 (DB9 插头上的 2 和 3 脚,不管有没有交叉;反正交叉了也只是 2 和 3 换了个位置,不影响本测试)2. 使用 "cat /dev..转载 2022-05-07 09:47:40 · 787 阅读 · 0 评论 -
LeakCanary2.5版本使用
LeakCanary的Android Studio集成一、 在build.gradle中添加LeakCanary的依赖包,截止目前leakcanary的最新版本是2.5.0: //内存检测 debugImplementation 'com.squareup.leakcanary:leakcanary-android:2.5'注意这个版本不需要在Application中初始化.!!!注意这个版本不需要在Application中初始化.!!!注意这个版本不需要在Applicat原创 2021-12-20 10:54:22 · 556 阅读 · 0 评论 -
Gradle获取当前编译的Flavor
利用编辑task来获取因为在切到需要的flavor后编辑,开始命令如下Executing tasks: [:app:assembleOkviewRelease] in project xxxx编写获取方法:def variantName() { def split = getGradle().getStartParameter().getTaskRequests().toString().split(":"); if (split.length > 2){原创 2021-12-15 11:19:50 · 4520 阅读 · 0 评论 -
Android 设置动态壁纸没有确认按钮处理方式
使用反射设置壁纸,// wallpaperManager.setWallpaperComponent(new ComponentName(context.getPackageName(), name));如果需要设置壁纸跟随移动需要设置// wallpaperManager.setWallpaperOffsetSteps(0.5f, 0.0f);// wallpaperManager.setWallpaperOffsets(windowToken, 0......原创 2021-12-14 20:42:21 · 1860 阅读 · 0 评论 -
线程池ThreadExecutors
import android.os.Handler;import android.os.Looper;import android.support.annotation.NonNull;import android.util.Log;import java.util.concurrent.Executor;import java.util.concurrent.ExecutorService;import java.util.concurrent.LinkedBlockingQueue;i.原创 2021-09-13 21:28:11 · 653 阅读 · 0 评论 -
Retrofit+OKHttp忽略https证书验证
记录这个的原因,是因为很多时候,因为后台配置的证书不正确导致APP访问不到服务器数据,导致影响自身的开发进度。没几行代码,逻辑也清晰,所以下面就直接贴出工具类吧:package com.xbh.whiteboard.qrcode;import java.security.SecureRandom;import java.security.cert.X509Certificate;import javax.net.ssl.HostnameVerifier;import javax.net.s转载 2021-08-03 14:26:21 · 2142 阅读 · 2 评论 -
Android通过命令行,修改该系统语言
首先要root用户 进入data/system/user/0/ 找到文件settings_system.xml busybox vidata/system/user/0/settings_system.xml 进入修改模式 搜索local,修改system_locales,和defaultValue两个地方的value值,在最前面添加你需要显示的语言 android资源文件夹的写法规则: 语言缩写-国家地区缩写 语言缩写ku-IQ ku是库尔德语,IQ是伊朗的简称 修改完...原创 2021-08-03 09:48:42 · 2512 阅读 · 0 评论 -
Android适配阿拉伯语、波斯语语系
有一种情况,wrap_content不生效,布局还是显示成了match_parent此时需要在父布局设置android:layoutDirection="ltr"原创 2021-07-29 14:00:38 · 875 阅读 · 0 评论 -
implementation、api、compileOnly区别详解
原创 2021-07-28 17:47:00 · 333 阅读 · 0 评论 -
Android词条国际化,xml2xls,词条提取
废话不多说,直接上工具链接:https://pan.baidu.com/s/141Yzzay7BUMWB9-BubZGZQ提取码:vvzd使用方法: 1、把xml转成xls, 把xmltoxls.exe放在安卓项目根目录,双击运行,会出现一个命令行窗口显示正在转换,稍等一会儿,在根目录下生成一个strings.xls文件,里面就包含了项目中所有词条 2、xls2xml.exe,同理,把这个运行文件和翻译好的strings...原创 2021-07-19 14:31:51 · 763 阅读 · 0 评论 -
view加阴影,探究多种实现方式
原文链接:https://mp.weixin.qq.com/s/y1-KUHdIm10R5EvF1OwGZA整理鸿洋神的一篇文章到脑图原创 2021-07-16 14:03:44 · 242 阅读 · 0 评论 -
linux top命令VIRT,RES,SHR,DATA的含义
linux top命令VIRT,RES,SHR,DATA的含义VIRT:virtual memory usage 虚拟内存1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量RES:resident memory usage 常驻内存1、进程当前使用的内存大小,但不包括swap out2、包含其他进程的共享3、如果申请100m的内存,实际使用10m,它只增长10m,与VIRT相反4、关原创 2021-05-21 15:26:13 · 1347 阅读 · 1 评论 -
FragmentPagerAdapter与FragmentStatePagerAdapter差异
原文 http://blog.youkuaiyun.com/jackrex/article/details/9885469简介 平常使用的FragmentPagerAdapter和FragmentStatePagerAdapter来自android.support.v4.app包用来构建ViewPager。FragmentPagerAdapter更多的用于少量界面的ViewPager转载 2015-10-28 10:47:39 · 319 阅读 · 0 评论 -
Android系列之Fragment----ListFragment的使用
文章来源:http://www.cnblogs.com/smyhvae/p/4000483.html【正文】一、ListFragement的介绍:ListFragment继承于Fragment。因此它具有Fragment的特性,能够作为activity中的一部分,目的也是为了使页面设计更加灵活。相比Fragment,ListFragment的内容是以列表(list)的形转载 2015-10-13 23:15:17 · 419 阅读 · 0 评论 -
Android SwipeRefreshLayout 官方下拉刷新控件介绍
转载请标明出处:http://blog.youkuaiyun.com/lmj623565791/article/details/24521483下面App基本都有下拉刷新的功能,以前基本都使用XListView或者自己写一个下拉刷新,近期Google提供了一个官方的下拉刷新控件SwipeRefreshLayout,我感觉还不错啊,见惯了传统的下拉刷新,这个反而给人耳目一新的感觉(貌似知乎的APP已经使转载 2015-10-15 19:47:57 · 454 阅读 · 0 评论 -
Application类作用浅析
原文地址:http://www.android100.org/html/201406/04/17304.htmlandroid.app.Application类和Activity,Service一样是Android框架的一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系统的一些信息。Android系统自动会为每个程序运行时创建一个A转载 2015-10-31 09:38:58 · 618 阅读 · 0 评论 -
Android统一风格 —— 主题
原文链接:http://frodoking.github.io/2015/07/01/android-theme/?utm_source=tuicool&utm_medium=referral,版权归作者所有!接触Android是从UI开始的,笔者第一份工作是在金山软件做WPS Office。当时开发主要是负责整个演示PPT这边的UI风格开发和维护,当时的开发要求非常严格。要求所有控件采用Ap转载 2016-10-27 14:21:05 · 692 阅读 · 0 评论 -
安卓6.0运行时权限处理方案
权限检查一般放在APP的入口,比如说闪屏页splashactivity中或者baseapplication中。 其中需要两个类,一个是PermissionChecker,一个是PermissionsActivity。第一个是用来检测当前是否已经获取到了申请的权限,如果没有则跳转到权限申请类PermissionsActivity中进行开启所需权限。直接上代码吧,第一个Permissio原创 2017-05-04 10:05:44 · 1238 阅读 · 0 评论 -
git打tag步骤
原创 2018-05-31 09:33:20 · 880 阅读 · 0 评论