Android
比特灵
JAVA后端转Android
展开
-
学做相机预览加水印:SurfaceView+Camera1 加水印失败
安卓 相机 预览 加水印原创 2022-07-14 15:11:25 · 632 阅读 · 0 评论 -
读取S50-IC卡的所有扇区、数据块
Android 读取S50卡区块 获得区块序号原创 2022-06-17 12:39:48 · 1482 阅读 · 0 评论 -
使用AndroidMail包收邮件时的mergeDebugJavaResource异常处理
依赖包含: implementation 'com.sun.mail:android-mail:1.6.7' implementation 'com.sun.mail:android-activation:1.6.7'具体错误日志如下:Execution failed for task ':app:mergeDebugJavaResource'.> A failure occurred while executing com.android.build.gradle.i原创 2022-01-18 16:22:11 · 4024 阅读 · 2 评论 -
but repository ‘maven‘ was added by build file ‘build.gradle‘
在build.gradle中添加maven { url 'https://jitpack.io' }报错: but repository 'maven' was added by build file 'build.gradle'。。。处理方法是不要添加在build.gradle里面,而是settings.gradle:dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT原创 2022-01-18 12:49:10 · 6287 阅读 · 1 评论 -
为Service添加一个在桌面上的可移动浮动小图标
浮动图标原创 2021-12-17 17:12:18 · 404 阅读 · 0 评论 -
学做安卓一键锁屏应用
Android手机一键锁屏原创 2021-11-29 18:02:03 · 1437 阅读 · 1 评论 -
关于shouldShowRequestPermissionRationale好记一点的解释说明
1,软件第一次运行时,该方法会反馈true,无论是否选择了不再询问。2,之后,当用户没有选择不再询问,该方法会返回false。3,之后,当用户选择了不再询问,该方法会返回true。所以逻辑需要变成:初始化:第一次运行=trueif( 不是第一次运行 && !shouldShowRequestPermissionRationale(任意一个请求的权限)){ //用户选择了不再弹出,使用其他方法提醒用户到什么地方去设置 //TODO return;原创 2021-11-18 10:46:05 · 917 阅读 · 0 评论 -
Android弹出自定义对话框、底层遮罩、窗体半透明
以下文中是参照多个文章最终形成,先感谢他们的分享。自定义对话框是本质是一个AlertDialog,需要的资源有布局、样式,然后在Activity弹出这个窗体即可。一,布局与普通的窗体布局没什么区别,例如自定义布局res\layout\popup_test.xml:<?xml version="1.0" encoding="utf-8"?><androidx.constraintlayout.widget.ConstraintLayout xmlns:android=.原创 2021-10-22 11:33:44 · 4471 阅读 · 0 评论 -
java.lang.ClassNotFoundException: Didn‘t find class “android.view.View$OnUnhandledKeyEventListener
这个问题OSCHINA上的有篇解决方法是对的,修改到1.3.0版本,记录一下:implementation 'androidx.appcompat:appcompat:1.3.0-rc01'转载 2021-08-12 08:14:48 · 543 阅读 · 1 评论 -
安卓主板使用心得
1,明确使用场景、有哪些功能,根据要求使用“合适”的主板,包含配置、价格。2,确定厂商使用的是原生安卓签名还是厂商自己的签名,这一点在某些功能上需要“android:sharedUserId="android.uid.system”时非常重要。3,跟供应商讨论API、控制功能,是否能够满足诸如:静默安装、自动启动、霸屏、封闭调试等等。4,特殊的硬件要求,例如双屏异显、串口、GPIO、ADC等接口是否满足要求,是否需要提供服务或API,是否有文档。5,是否能够提供固件、刷机方法,防止后续开发过原创 2021-08-10 18:18:18 · 436 阅读 · 0 评论 -
使用zipalign对APP做4字节对齐、使用apksigner签名APP
面对新版本的安卓系统,之前APP安装包无法安装了,需要重新对齐、签名。所需要的工具都在Android-sdk\build-tools\版本(例如30.0.3)下面,也是开发工具自动下载来的,不需从官网上下载。步骤如下:先编译APP,得到未签名的APP 4字节对齐>cd d:\android-sdk-windows\build-tools\30.0.3>zipalign -v -p 4 d:\test\app1.apk d:\test\app1_zipa.apk签名(例子是原创 2021-07-15 10:13:32 · 4096 阅读 · 1 评论 -
CAN开发的时候,别忘记接入120欧电阻
接入了一个CAN设备,拿到的帧数据一直不对,突然想起来要接电阻的,接上去就好了,傻了一天。。。原创 2021-05-27 19:34:24 · 834 阅读 · 0 评论 -
电脑连接安卓设备使用ADB脚本快速关闭应用
测试一个订制设备时,启动的应用屏蔽了所有按键,导致打开就无法关闭该应用,这种情况正常情况下是对的--这台机器就是专用于这个应用的,但是开发时就很不方便,所以写了一个BAT脚本完成退出。@echo offadb shell dumpsys window | findstr mCurrentFocus > 1.txt::ping -n 1 127.0.0.1 > nulSET txtFile=1.txtif not exist %txtFile% goto endErrorset原创 2021-02-19 17:30:21 · 404 阅读 · 0 评论 -
安卓主板上TTL-debug口的使用
实验用的安卓主板是视美泰的RK3288,根据说明书找到DEBUG针脚,用万用表测量判断应该是TTL电平。电脑端使用USB转TTL模块,针脚连接方式为:GND对接、USB串口模块的RX接主板TX、TX接主板RX,软件使用SecureCRT。连接后,软件设置如下图: 重点是, 点解连接后显示了一片空白, 此时按下键盘上的Ctrl+C键, 就会出现命令行了。 ...原创 2021-02-05 10:13:29 · 5371 阅读 · 0 评论 -
视美泰IOT-3288A安卓主板刷机方法
买了块二手主板,能够正常点亮。但是自带的APP很多,并且不知道哪些是系统自带的,原也无所谓能用就行嘛,但是心里总是感觉到不清爽,就刷吧。怎么挑一块二手好板子1,大量网有写关于修改、刷机、设置等等攻略的2,有厂家官网并且无偿提供技术文档、资料、固件的其中1不是必须的,2是必须的,满足这个条件即可购买。怎么刷机我试过两种刷机方法,第一种适合于能够正常启动的主板,第二种在刷机失败无法启动、无法进入ADB的情况下使用。使用工具:AndroidTool_Release_v2.33。方法.原创 2021-02-02 14:34:57 · 3954 阅读 · 3 评论 -
采用ViewPage+FragmentStatePagerAdapter实现的左右滑屏
效果见我的前一篇博文:https://blog.csdn.net/bigc2001/article/details/112851368,本文只是换了一种实现方式,另外增加了点击全屏效果。1,布局布局文件总共有四个:activity_main.xml、activity_frag0.xml、activity_frag1.xml、activity_frag2.xml,第一个为主布局,后三个分别为各界面布局。主布局仍然是上下三个部分:viewpager、色块行、单选按钮行:<?xml ver原创 2021-01-20 14:07:07 · 247 阅读 · 0 评论 -
采用ViewPage+PagerAdapter组合做左右滑屏
放弃的原因是这个组合对页面的元素控制比较复杂,或者是我没有找到办法,所以贴出来抛砖引玉。整体页面的结构是上中下三个部分:标题、主页面内容区、下方单选块,如图:改为尝试ViewPage+Fragment组合。出于不浪费劳动结果的想法,原组合的项目代码已上传到资源库,见:https://download.csdn.net/download/bigc2001/14825498。...原创 2021-01-19 20:25:42 · 190 阅读 · 0 评论 -
安卓源码:拦截USB-HID协议内容(模拟键盘输入方式的读卡器)
接触到的扫描设备分为两类:1-usb串口模式,常规的打开读取串口即可。2-usb模拟键盘输入模式,这种模式底层不是串口。通过USB设备查找、匹配、打开、数据读这个流程,可以先于并阻止安卓系统获得内容,就是说如果是后台进程这样读取后,安卓输入框中不会显示扫描到的内容。读取代码流程为:1,获得USB管理器: UsbManager usbManager = (UsbManager) context.getSystemService(Context.USB_SERVICE);原创 2020-12-08 15:04:43 · 2453 阅读 · 1 评论 -
安卓Spinner避免setOnItemSelectedListener时触发一次的方法
安卓Spinner避免setOnItemSelectedListener时触发一次的方法搜了网上很多答案,就是spinner.setSelection(0,true);没错就是这一行代码,但是这句话放置的位置也很重要,如果你把它放在onCreate里是没有效果的,至少要放在onStart方法里,也可以在setOnItemSelectedListener之前执行即可。...原创 2020-11-06 10:31:05 · 2009 阅读 · 1 评论 -
Gradle sync failed: Failed to open zip file的解决办法
AS项目打开后报错如下: Gradle sync failed: Failed to open zip file. Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) Re-download dependencies and sync project (requires network) ...原创 2020-11-04 09:12:13 · 4202 阅读 · 0 评论 -
绑定另外一个app的服务:bindService 返回一直是false的问题处理
调用端代码:Intent intent = new Intent();intent.setPackage("com.test.service");intent.setAction("com.test.service.VirtualService");boolean rel = bindService(intent, mConnection, Context.BIND_AUTO_CREA...原创 2019-05-08 10:20:54 · 1706 阅读 · 0 评论