
A1_android开发基础
android开发相关基础
王的备忘录
对新型物联网系统搭建有一定经验,项目涉及,RFID智能载体柜,智能锁控系统,手持库管系统,可移动智能医废收集车,智能话机,智能盒子,智能家居应用,车载应用等!坐标沈阳。
展开
-
同一份工程代码上传到多个不同的git地址的配置方法
同一份工程代码上传到多个不同的git地址的配置方法原创 2024-05-28 16:22:49 · 498 阅读 · 0 评论 -
简单的左划删除库SwipeDelMenuLayout
简单的左划删除库SwipeDelMenuLayout原创 2024-05-28 16:18:00 · 253 阅读 · 0 评论 -
安卓无线调试连接不上
解决方法就是要先通过数据线连接手机,在手机端同意连接,之后再运用adb无线调试就可以连接了。今天发现的一个问题,如果要连接的是新手机,会无法连接上。提示connect fail。原因是第一次调试,先要在手机上进行授权。原创 2024-05-21 09:18:32 · 1131 阅读 · 1 评论 -
升级Sdk版本后报错:unrecognized Attribute name MODULE
安装jdk11,然后在modlue setting 当中设置使用的jdk版本为11。原创 2024-03-12 16:04:42 · 497 阅读 · 0 评论 -
SmartRefreshLayout注意点
/完成加载并标记没有更多数据 1.0.4。//恢复没有更多数据的原始状态 1.0.5。如果该列表还有其他用途,必须要将状态重置,否则无法继续下拉加载之后的数据。原创 2024-02-01 09:51:46 · 646 阅读 · 0 评论 -
Vivo手机,将应用移除内存后,有线程还在后台执行的问题
解决方法,在移除内存时会回调activity的ondestory方法,在此时通过代码将自身进程彻底杀死。vivo手机,手动将应用移除内存后,有线程还在后台执行,可能会对应用造成未知的影响。原创 2024-01-26 16:05:24 · 557 阅读 · 0 评论 -
android实时投屏软件QtScrcpy
QtScrcpy 可以通过 USB / 网络连接Android设备,并进行显示和控制。同时支持 GNU/Linux ,Windows 和 MacOS 三大主流桌面平台。原创 2023-11-20 08:55:05 · 369 阅读 · 0 评论 -
android鼠标滚轮事件监听方法
android鼠标滚轮事件监听方法原创 2023-10-25 15:46:53 · 1103 阅读 · 0 评论 -
安卓设置混淆后,gson报错解决方法
//这句非常重要,主要是滤掉使用gson的bean文件不进行混淆编译,具体根据不同的包名进行调整。二,混淆的文件中,对gson相关类不进行混淆,否则会在运行中报错,proguard-rules.pro在该文件中添加如下内容。原创 2023-08-31 11:32:32 · 1527 阅读 · 0 评论 -
isInEditMode ,解决layout预览无法识别自定义控件的问题
导致可视化编辑器无法显示控件。原创 2023-08-29 14:55:33 · 300 阅读 · 0 评论 -
Android外接usb摄像头
Android灵活实用的Android平台UVC摄像头引擎,无需任何系统权限即可轻松打开您的uvc摄像头(您唯一应该做的就是确认您的 Android 设备必须支持 OTG 功能。原创 2023-07-27 10:22:51 · 665 阅读 · 0 评论 -
Android APP存储路径
4.files和cache的区别:cache存储偏临时性的文件,在系统存储空间紧张时会被系统auto clean,应用设置中“清理缓存”会清理掉cache内文件;4.files和cache的区别:cache存储偏临时性的文件,在系统存储空间紧张时会被系统auto clean,应用设置中“清理缓存”会清理掉cache内文件;1.存储体积较大的文件(例如:分发或自动更新的APK,下载的视频类文件,图片,ZIP压缩包等体积较大的文件);5.APP卸载时或“清理数据”时,此2种路径下的所有文件都会被系统自动清理;原创 2023-07-07 10:25:59 · 2588 阅读 · 0 评论 -
github下载加速
https://ghproxy.com/原创 2023-07-07 09:54:12 · 222 阅读 · 0 评论 -
opencv的android sdk下载地址
Releases - OpenCV原创 2023-07-07 09:55:09 · 625 阅读 · 0 评论 -
github加速下载地址
https://ghproxy.com/原创 2023-07-07 09:51:43 · 108 阅读 · 0 评论 -
Android Studio使用lombok插件
1,使用android studio,在插件中检索lombok下载安装。@NoArgsConstructor//无参构造。@AllArgsConstructor全参构造。2,build.gradle导入依赖。//通过注解方式来使用此插件。原创 2023-07-06 09:45:17 · 1622 阅读 · 0 评论 -
Android Studio使用GsonFormatPlus插件
新建一个Class,在class的声明代码中右键后,generate窗口中看到gsonformatplus选项,点击后,将JSON文本复制进去,就可以生成对应的实体类。gsonformatplus是一个IntelliJ IDEA插件,用于将JSON格式的字符串转换为Java对象。由于默认生成的是使用序列化的名字和lombok,所以可以在设置中关闭掉,这样就会生成满足我们需要的类。在插件列表中检索关键字,找到后点击安装,apply后,就可以开始使用。原创 2023-07-06 09:37:35 · 469 阅读 · 0 评论 -
onDateSet方法的月份参数,该参数的起始值不是1而是0
日期选择事件由监听器OnDateSetListener负责响应,在该监听器实现的onDateSet方法中,开发者能够获得用户选择的具体日期,并做后续处理。这里要特别注意onDateSet方法的月份参数,该参数的起始值不是1而是0。也就是说,一月份对应的参数数值是0,十 二月份对应的参数数值是11。如果实在不理解,记住这里的月份值要加1就行了。原创 2023-04-01 21:55:14 · 88 阅读 · 0 评论 -
Sensor传感器
Android平台为距离传感器提供了两个传感器,可让您确定设备的位置:地磁场传感器和加速度计。Android平台还提供了一个传感器,可让您确定设备的面部与物体之间的距离(称为接近传感器)。地磁场传感器和接近传感器是基于硬件的。同样,手机制造商通常会包含一个接近传感器,以确定何时将手机握在靠近用户面部的位置(例如,在通话期间)。为了确定设备的方向,您可以使用设备的加速度计和地磁场传感器的读数。重力,线性加速度,旋转矢量,有效运动,步进计数器和步进检测器传感器是基于硬件或基于软件的。原创 2022-09-22 10:44:11 · 373 阅读 · 0 评论 -
BouncyCastle注册后,还是提示找不到算法
no such algorithm:sm4 for provider BC报错原创 2022-08-18 08:59:27 · 1804 阅读 · 0 评论 -
BouncyCastle库
商密算法,BouncyCastle库原创 2022-08-18 08:55:11 · 2734 阅读 · 5 评论 -
国家商用密码算法的基本使用记录
商密算法原创 2022-08-17 15:52:52 · 356 阅读 · 0 评论 -
apk上传应用市场提示需要上传64位包以及找不到so文件问题
1,需要在gradle文件中修改ndk配置,增加"arm64-v8a"ndk {abiFilters "armeabi-v7a","arm64-v8a"}2,同时要注意是否代码中是否屏蔽了指定的so文件packagingOptions中的exclude可以指定屏蔽so文件原创 2022-05-26 14:47:52 · 1193 阅读 · 0 评论 -
Android项目卡在Gradle: Download gradle
1,查找使用的zip文件地址gradle/wrapper/gradle-wrapper.properties中distributionUrl例如distributionUrl=https\://services.gradle.org/distributions/gradle-6.5.1-all.zip2,手动下载zip包,放到对应的目录下,如果原有目录有文件,先删除掉例如C:\Users\用户名\.gradle\wrapper\dists\gradle-6.5-bin\6nifqtx原创 2022-04-04 13:13:13 · 2153 阅读 · 0 评论 -
android常用方法
getResources().getIdentifier(String name, String defType, String defPackage)imageView.setImageResource(getResources().getIdentifier("ic_launcher", "drawable", getPackageName()));radioGroup.check(getResources().getIdentifier("rb_indicator_" + position..原创 2021-12-29 14:36:19 · 548 阅读 · 0 评论 -
Unable to load class ‘javax.xml.bind.JAXBException‘
重新配置的as开发环境,导入工程后,报以上错误。解决方法:默认使用的是androidstudio自带的jdk11,切换成1.8,重新编译成功。原创 2021-11-24 20:14:14 · 2105 阅读 · 0 评论 -
Fragment中使用ViewPager二次加载空白问题
原因是因为:fragment里面又嵌套了fragment,所以在创建viewpager的适配器的时候传参为getChildFragmentManager()而不是getFragmentManager(),因为如果传参为getFragmentManager()则表示将父Fragment的FragmentManager传给了子Fragment,所以无法显示数据。mAdapter = new MyFragmentPagerAdapter(getChildFragmentManager(), page原创 2021-10-13 16:52:21 · 736 阅读 · 0 评论 -
利用gradle的productFlavors编译时动态配置,实现打包时配置不同的参数
一个工程打包多个应用利用gradle的productFlavors编译时动态配置,实现打包时配置不同的参数productFlavors {// 定制1appcustom01 {applicationId "com.wkzz.conference.custom01" //自身的applicationIdresValue "string", "app_name", "某某通话1" //自动创建对应的string,无需到string里面单独定义buildConfigFie...原创 2021-09-09 09:13:05 · 499 阅读 · 0 评论 -
修改包名注意点
默认情况下,包名与应用ID是相同的。当然,开发者也可以对包名进行修改.如果开发者想要修改包名的话,注意项目目录结构必须与AndroidManifest.xml中package属性的包名一致. <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapplica原创 2021-08-06 08:47:08 · 550 阅读 · 0 评论 -
applicationid用途
应用ID除了唯一标识了应用,那么它在开发过程中可以有哪些用处呢?试想一下,当我们开发应用的时候,要在一台测试机上同时装上开发版和发布版,如何才能做到呢?其实很简单,只要让开发版的应用ID与发布版不一致即可。所以,只需要在buildTypes中修改开发版的应用ID就行。如下: android { ... buildTypes { debug { applicationIdSuffix ".debug" //等同于“com.example.myapplicati原创 2021-08-06 08:46:39 · 357 阅读 · 0 评论 -
applicationid与包名
每个Android应用都有一个唯一的应用ID.在Android设备和市场上,这个ID是你应用的唯一标识.若想在市场上更新应用,新应用的ID必须和原来apk的应用ID一致.所以一旦发布了应用,就不能再改变应用ID.在Android Studio中创建一个新项目时,applicationId默认是和项目的包名一致的。所以常常有开发者会将两者混淆,以为它们是一个概念。实际上,应用ID和包名是相互独立的。改变包名不会影响应用ID,反之亦然。通常Android的应用ID与包名是绑定的,所以在Android原创 2021-08-06 08:44:38 · 692 阅读 · 0 评论 -
androidstudio修改vmoptions导致无法启动
如果遇到了,需要全局检索该文件,并恢复原来的配置。原创 2021-05-17 09:35:05 · 1309 阅读 · 2 评论 -
as中修改项目名称
找到 settings.gradle 文件修改如下字段rootProject.name='conference'原创 2021-04-26 09:58:42 · 562 阅读 · 0 评论 -
Bugly应用升级高级配置注意点
所有Beta类中设置 upgradeListener、upgradeDialogLifeCycle等和检查更新相关的回调必须在Beta.init方法之前调用才有效原创 2021-04-12 13:53:15 · 233 阅读 · 0 评论 -
SharedPreferences是否适合频繁调用
1、不要存放大的key和value在SharedPreferences中,否则会一直存储在内存中得不到释放,内存使用过高会频发引发GC,导致界面丢帧甚至ANR。2、不相关的配置选项最好不要放在一起,单个文件越大读取速度则越慢。3、读取频繁的key和不频繁的key尽量不要放在一起(如果整个文件本身就较小则忽略,为了这点性能添加维护得不偿失)。4、不要每次都edit,因为每次都会创建一个新的EditorImpl对象,最好是批量处理统一提交。否则edit().commit每次创建一个EditorI原创 2021-04-06 15:22:17 · 778 阅读 · 0 评论 -
android监听软键盘弹出弹回事件
监听实现的原理如下:监听当前页面contentView的布局变化 如果contentView上移,那么是软键盘弹出,如果contentView底部与decorview一样,那么是弹回。https://blog.youkuaiyun.com/Double2hao/article/details/113788125?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-1.nonecase&depth_1-utm_sourc.原创 2021-02-19 09:55:13 · 201 阅读 · 0 评论 -
TextView代码中,使用代码添加空格
appSubTitleTv.setText("\u3000\u3000\u3000\u3000\u3000\u3000选择接收人");原创 2021-02-02 15:11:59 · 710 阅读 · 0 评论 -
简单易用smallestWidth适配
https://zhuanlan.zhihu.com/p/144487134转载 2021-01-26 10:25:55 · 164 阅读 · 0 评论 -
是否需要对Android刘海屏进行适配
刘海区域是镶嵌在状态栏内部的,刘海区域的高度一般是不超过状态栏高度的。因此,当我们的应用布局需要占据状态栏来显示时,就需要考虑到刘海区域是否会遮挡住页面上的控件或者背景,这就是为什么将状态栏区域称为危险区域。如果应用不需要占据状态栏显示,全部显示在安全区域内,那么恭喜你,不需要做任何适配处理。总结来说,只有当应用需要全屏显示时才需要进行适配。全屏显示无非就是两种情况:第一种是我们常说的沉浸式状态栏,也就是状态栏透明,页面的布局延伸到状态栏显示,这种情况下状态栏依然可见;第二种是类似应用的闪屏页风格,页面全原创 2021-01-26 10:17:42 · 147 阅读 · 0 评论 -
解决打开页面白屏问题
在activity使用theme的style中增加以下内容<item name="android:windowDisablePreview">true</item>原创 2020-12-21 15:23:22 · 971 阅读 · 0 评论