android
文章平均质量分 60
微澜-
经过了很久很久,久到好像过去了几个世纪的时间,才知道,自己应该去到外面看看;才知道,付出就是收获。
展开
-
不出错的代码就是好代码,但也可能是让人困惑的代码
不出错的代码就是好代码,但也可能是让人困惑的代码原创 2024-07-26 19:10:39 · 431 阅读 · 0 评论 -
使用sqlcipher打开加密的sqlite方法
Sqlcipher加密sqlite数据库之后,使用android版Sqlcipher访问数据库和原生的sqlite几乎一摸一样,只需要在打开数据库的时候设置密码,算法就可以打开原创 2022-06-28 13:40:06 · 2908 阅读 · 1 评论 -
批量转换json到java bean工具说明
之前写了一个小程序,使用java开发,批量把json转换为java bean,直接拷贝到项目中使用。原创 2022-06-27 18:09:12 · 1062 阅读 · 0 评论 -
从MediaRecord录像中读取H264参数
mediarecorder(H264)的录制数据的开头就包含了SPS和pps参数,分析一下取出来即可,并且相同的设备、相同的配置获取的sps,pps都是相同的。原创 2022-06-26 14:23:15 · 1244 阅读 · 0 评论 -
android列表下拉刷新上拉加载更多实现的几种文件组织方式
’android应用开发来说,列表始终是一个绕不开的论题,每种软件都有自己的实现方式,自己就遇到了几种,xListView, RefreshRecyclerView, BaseRecyclerViewAdapterHelper, SmartRefreshLayout原创 2022-06-22 15:21:22 · 843 阅读 · 0 评论 -
Windows中的wchar_t对应android中的什么编码?(蓝牙传输中)
Windows端连接android蓝牙发送字符串,发送端直接使用wchar_t发送,Android蓝牙接收后显示不正常。到底应该使用什么编码接收呢?原创 2022-06-14 16:43:27 · 263 阅读 · 0 评论 -
在Visual Studio 开发android时使用静态库a项目
前面讲了如何在Visual Studio android开发中使用so文件,那么a文件怎么创建使用呢?原创 2022-06-10 18:34:31 · 750 阅读 · 0 评论 -
使用Visual Studio 添加和调用动态库SO项目
最近接触Visual Studio开发android库的东西,发现创建并使用C++ so文件和a文件比android studio简化了很多,虽然说as在开发android上还是霸主地位,但是这个方向上,vs还是大有作为的。原创 2022-06-10 18:18:11 · 2302 阅读 · 1 评论 -
尝试使用Visual studio编写Android程序C++的跨平台开发Android
Vs编写android程序看上去有3种:Xamarin,Xamarin-Form(很快就会被MAUI代替), C++的跨平台开发Android。本文先看看官方的解释,然后尝试下C++的跨平台开发Android的使用效果。如果能够解决调试问题的话,在编写c++模块上还是有优势的...原创 2022-06-08 14:28:48 · 2037 阅读 · 0 评论 -
简化Fragment的权限请求
承接简化activity简化权限,介绍在fragment中简化权限。原创 2022-06-04 14:40:19 · 1538 阅读 · 1 评论 -
简化Activity权限申请的方法
在需要处理权限地方都加入原始的请求和处理太麻烦,有没有好的方法呢?这里有官方的和非官方的处理。原创 2022-06-04 14:12:15 · 586 阅读 · 0 评论 -
有没有可能没有root权限调用锁屏
问题描述:有次自己手机的电源键不好使了,想要灭屏很麻烦,但是还能有其他方法灭屏吗?还真没找到,能不能写个程序调用吗?我试了好几个接口,但还是没办法,也许只能获取root权限才能实现。以下测试若没有root权限均无效:测试1:测试2:测试3:测试4:测试5:测试6:总结:当前的android sdk环境下难以直接操作电源键,但是可以在有root权限的手机下实现。当前用户的手机基本上没有获取root权限,...原创 2022-02-01 15:38:00 · 616 阅读 · 0 评论 -
遇到的几个重要的android权限改变
主要简单谈了下遇到的root权限,权限弹窗,分区存储,app上架等权限相关问题原创 2022-01-26 17:01:35 · 2048 阅读 · 0 评论 -
android日志的代码定位
介绍每种语言都会有自己的日志系统,用来跟踪系统运行和用户行为,几乎是软件必不可少的东西。在android调试的时候,会发现控制台打印的日志非常繁杂,想找到有用信息并且定位也是件麻烦的事情。当然了,可以使用过滤条件,找到一些有用信息。更多的时候是在写代码的时候,对涉及某一类功能的日志添加必要标识,可以清晰的观察某个业务功能的流程。这里不谈这个。找到了有用的日志,想要定位到打印日志的代码,也是需要费一番功夫的。不过,android或者说java实现这项功能还是比较方便的。对于vc来说,可以使原创 2022-01-02 14:04:41 · 1840 阅读 · 0 评论 -
GridLayout,LinearLayout,FlowLayout布局一组按钮或(radio checkbox)选项和并设置状态
说明:在android中会用到一组选项布局的问题,可以使用GridLayout,LinearLayout,FlowLayout等多种布局。如果容器内按钮或(radio checkbox)选项较多,使用LinearLayout就比较繁琐。可使用GridLayout替换LinearLayout以便把多个选项放到一个容器内。但如果每个按钮长度不一致,就会造成对齐问题,有些列很长,有些列很短,这样布局长短便不好把握。还有一种方式使用自定义的流式布局TagFlowLayout或WarpLinear原创 2021-12-11 19:39:06 · 1621 阅读 · 0 评论 -
当显示PopupWindow时如何设置透明度
在android中展示PopupWindow时设置透明背景的流程:1、点击view,更改view的状态(展示状态),然后弹出popwindow。弹出popwindow的同时,设置背景为半透明。2、操作或查看后关闭,关闭的同时回复view状态(原始状态),同时设置背景为不透明状态。例子: private MyPopupWindow popupWindow; private void showPopupWindow(int type) { if (popupWind..原创 2021-12-11 18:11:19 · 3686 阅读 · 0 评论 -
android使用retrofit上传文件中包含中文的处理方法
说明:使用Retrofit上传文件,如果选择的上传文件名file.getName()包含中文会出现错误,需要进行编码.addFormDataPart("file",URLEncoder.encode(file.getName(), "utf-8"), fileBody)可能出问题的代码: public static Flowable<UploadModel> upload(int userId, String session, File file, UpLoadPr.原创 2021-11-27 21:38:30 · 2534 阅读 · 0 评论 -
慎用try...catch捕捉异常(原则)
问题描述:经常见到有人动不动就使用try catch语句,这样是一种偷懒的态度。一方面,有些语句根本就不会存在异常,还有些时候,只是把问题隐藏了,不愿意思考引起问题的原因,即便不会出现异常,也有可能出现非异常逻辑错误或几率性问题。自己在代码中很少使用try,除非使用第三方工具。需要捕捉错误,一般都是逻辑错误,如果真的没有逻辑错误,也根本用不上捕捉语句。原则:如果能避免异常,先进行避免,认真考虑各种情况和处理方法。 如果不可避免,确定要捕捉什么,并且确保捕捉到的异常类型没有错原创 2021-11-22 13:48:53 · 670 阅读 · 0 评论 -
TextView上使用inputType=“textMultiLine“问题
问题描述:发现点击ll_group的时候,如果点击位置在TextView上,无法触发contentBinding.llGroup.setOnClickListener(this::socialGroup); private void socialGroup(View view) { if (FastClick.running()) return; }查看发现此TextView使用了(android:inputType="textMultiLine")属性,...原创 2021-11-21 11:46:21 · 3145 阅读 · 0 评论 -
android studio中遇到资源错误Resource compilation failed怎么弄?
问题描述:在使用android studio编写代码的时候出现下面的问题FAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':doctormodule:compileDebugLibraryResources'.> A failure occurred while executing com.android.build.gradle.tasks.CompileLibra原创 2021-11-21 11:34:30 · 7868 阅读 · 0 评论 -
Failed to save settings. Please restart Android Studio的问题
发生背景:Android studio安装使用问题:电脑坏了之后,换台机器的时候,直接拷贝android studio覆盖原有的程序,删除了C:\Users\Administrator\AppData\Local\Android文件夹下的sdk,然后重新启动Android studio,无法打开setting对话框,出现错误Failed to save settings. Please restart Android Studio。同时在android studio中无法打开任何文件。尝原创 2021-11-13 13:24:58 · 2400 阅读 · 0 评论 -
建立在RecyclerView基础上的含编辑框动态列表项增减异常
android中,会碰到需要动态实现列表项的增减,我选择了RecyclerView作为容器,后来出现了一个问题,再添加删除的时候,会出现列表项编辑框文字和输入的内容对应不上的情况。几经周折,终于调试好了,关键的部分就是这几个: 1、RecyclerView.ViewHolder的内容会根据情况动态调整 2、RecyclerView会与一个数据容器对应起来, 3、数据容器的数据变化需要及时反应到ViewHolder中的edit中。 3、每次修改ViewHolder中的edi...原创 2021-11-07 21:13:17 · 163 阅读 · 0 评论 -
ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView not found. 原因及解决
把android项目从support-v4升级到androidx之后,出现错误ERROR:: AAPT: error: resource style/Widget.AppCompat.TextView (aka com.example:style/Widget.AppCompat.TextView) not found.一头雾水,在网上搜索,有人说是子项目和主项目版本不匹配,使用如下方式统一,统一之后,发现还是不行。除此也搜索不到什么有用的东西,根据经验,找不到答案,要么是问题太...原创 2021-11-07 09:55:07 · 4489 阅读 · 0 评论 -
Android中限制EditText输入数字范围
说明:android中要求输入框中只能输入有符号数字,并且限制范围,下面给出要求,例子和函数有需要可以借鉴。要求:输入整数数字,范围-180~180。 首字符一定是非零数字或- 中间不能有-代码:界面 <EditText android:id="@+id/et_item_left" android:layout_width="10dp" android:layout_height="match_parent"原创 2021-10-31 00:46:48 · 2674 阅读 · 0 评论 -
android EditText数据绑定小结
说明:虽然android可使用<data>数据岛实现bean和view元素的绑定,不过对于一天到晚杀鸡拔毛的人来说,这种宰牛刀始终是用起来不够直观顺手。日常中,大多是有一说一,直观操作会更多一些。下面就是在最简单的情况下,实现对EditText与数据数据变化EditText跟着变化:也许使用LiveData更加高大上,但这需要对可能牵扯的东西很多,对资源充足的新项目或许会选择但对于仅仅是完善项目或者仅仅是查询显示这样的小功能,直接手动更改更加简单明了。..原创 2021-10-30 15:46:25 · 1757 阅读 · 0 评论 -
使用Java内部静态类完成每秒钟一次采样
说明:主要使用在接收数据过快,但是又不需要那么多数据的情况如下例子,使用定时器,每100ms收到一个数据,但是通过采样每1000ms得到一个数据。图片:代码:public class Outer { public static class Inner{//成员内部类 public static long startTms =0; } public Integer doSample(int value){.原创 2021-10-23 22:21:57 · 358 阅读 · 0 评论 -
Calendar与Date的年月日对应关系以及相互转换
说明:在android中经常会遇到Calendar与Date之间的转换,如果不了解它们的数值差异,容易出现显示错误。这里使用例子说明两个对象年月日之间的定义差异。这两个对象的效率不算高,但是用在android和java基本够用了。Calendar与Date之间年月日的对应关系: Calendar calendar = Calendar.getInstance(); int year = calendar.get(Calendar.YEAR...原创 2021-10-17 17:22:15 · 1506 阅读 · 0 评论 -
带扩展标记的TextView
问题描述:在android界面设计时,会遇到段落收缩和展开的情况。如下:默认显示两行,超出的部分用……替代,点击展开,展开全部内容,按钮变为收起;点击收起,收起内容。注意:判断文本显示行数不能根据换行符,因为没有换行符的字符串也可能显示多行效果:处理函数在activity中使用:封装到自定义ExtendableTextView可不可以直接在文字后面添加扩展文字,然后直接封装到自定义TextView,这样更方便使用...原创 2021-09-05 10:26:12 · 131 阅读 · 0 评论 -
给TIMSDK的分页GridView Page添加圆点指示器
编者:李国帅qq:9611153 微信lgs9611153时间:2021-8-6 问题描述:在tim sdk中有个自定义分页GridView控件,还是挺好用的,但是没有分页标记,下面的例子给它添加标记。效果如图:步骤: 1、找到InputMoreLayout类,添加圆点指示器,其实很多网友都实现过。 2、布局中chat_inputmore_layout.xml添加<?xml version="1.0" ...原创 2021-08-06 19:09:30 · 160 阅读 · 0 评论 -
简述使用configurations.all统一androidx的版本
编者:李国帅qq:9611153 微信lgs9611153时间:2021-5-29 问题描述:因为程序中使用了越多越多的基于androidx的插件,继续使用android.support包名出现了许多不便。为了方便后续加入其他的插件,就把android的支持包进行了更改。替换的步骤按网友的做法就可以了,这里就简单介绍下自己在替换过程中碰到了几个小问题。1、如果使用androidx包名必须在所有模块都使用相同版本的androdx,不能一部分析使用android.support,一部分.原创 2021-05-29 16:30:32 · 9067 阅读 · 1 评论 -
获取android设备唯一ID和用途
获取android设备唯一ID和用途编者:李国帅qq:9611153 微信lgs9611153时间:2021/5/16 获取android设备唯一ID:在android9及之前,我们还是可以获取设备的deviceID的,但是随着应用安全审查越来越严格,android的权限要求也越来越多,getDeviceId()越来越不能使用。那么有没有其他的方法可以作为替代deviceID,作为设备唯一性的标记呢?我发现小米的miui12系统可以通过/proc/serial_num获取..原创 2021-05-16 11:46:51 · 2217 阅读 · 0 评论 -
ScrollView滚动导致内部View点击事件失效
编者:李国帅qq:9611153 微信lgs9611153时间:2019/10/18 背景:所需资源:android studio做了一个activity界面,顶层使用ScrollView,内部包含图片。ScrollView滚动之后,图片需要点击两下才能打开全屏查看。只能认为图片需要双击才能打开。com.goyourfly.multi_picture.MultiPictureView 不行更换为 ImageView 控件,发现还是会出现上下滚动之后,图像点击无法响应,..原创 2021-02-15 18:21:34 · 1867 阅读 · 1 评论 -
android中使用sdl时先退出(sdl_thread未关闭)再进入出错
编者:李国帅qq:9611153 微信lgs9611153时间:2014/2/17 背景:在android上使用sdl进行媒体播放会遇到后退停止的问题。问题描述:在开发的时候,出现第二次调用sdl显示失败libEGL: call to OpenGL ES API with no current context (logged once per thread)可能的原因:OGL ES所在的线程被阻塞或者被挂起,导致渲染设备上下文丢失。暂时不清楚怎么解决,需要进一步的..原创 2021-02-15 17:57:52 · 601 阅读 · 0 评论 -
早期android ndk 编译 ffmpeg问题记录
编者:李国帅qq:9611153 微信lgs9611153时间:2013-7-23 背景:2013年的时候,使用过eclipse做过播放器,那时候很麻烦,需要安装cygwin才能够编译,现在使用android studio就不需要了。当时印象最深的也就是每个模块的Android.mk文件的编写,编译出a文件,最后调用的时候会生成so文件,和h文件一起放在android程序里就可以用了。只是一个人的游戏终究是要淘汰的,也走不了多远,最能算是玩玩而已。记录内容:2013-7-2.原创 2021-02-15 11:23:30 · 144 阅读 · 0 评论 -
WebView中点击全屏时的视频图像变形问题
编者:李国帅qq:9611153 微信lgs9611153时间:2021/1/14 背景:在android10中,打开h5页面,页面中有video视频元素,使用系统自身的全屏功能,发现打开后视频被拉伸。 如果手机设置为纵屏,而视频为横屏拍摄,就会出现视频变窄变长,内容变形。而这种情况只出现在android10中。解决过程: 刚开始不知道方法,因为是Android调用的问题,于是把所有功能都理了一遍,发现并无疏漏。 使用的方法也...原创 2021-02-12 15:25:07 · 1241 阅读 · 2 评论 -
ListItem布局中的checkbox阻碍整行选择的处理办法
编者:李国帅qq:9611153 微信lgs9611153时间:2020/4/10 背景:在android应用程序开发中,列表是常见的界面元素,然而,经常会遇到列表的子项无法选中的现象。或者表现为不是总是能够触发事件,点击几下才反应。常会遇到这种情况,RecyclerView或者ListView中的子项list_item_xxx.xml中主要元素为Checkbox,当点击checkbox区域可能无法触发点击整行事件。解决方法:遇到这个问题解决方法,应该是checkbox点击事件.原创 2021-02-10 17:38:52 · 224 阅读 · 0 评论 -
记录Windows连接GATT的过程
编者:李国帅qq:9611153 微信lgs9611153时间:2020-1-3 背景: 生活中,我们会接触到很多的蓝牙应用,比如蓝牙音响,鼠标,共享单车,便携式医疗检测设备等。通常使用android设备或者ios开发蓝牙还是比较方便的,毕竟蓝牙本身就是为了移动应用而产生的。 那么就会想,在windows上能不能去连接那些蓝牙设备呢?现在在windows上连接蓝牙还是有不少方法的,我就尝试了一下。蓝牙连接的流程图 andro...原创 2021-02-08 12:56:10 · 736 阅读 · 0 评论 -
Android调用H5页面上传文件需注意路径问题
编者:李国帅qq:9611153 微信lgs9611153时间:2021/2/6 问题描述果:在使用android使用webview调用h5页面上传文件遇到了无法上传的问题。排除h5页面兼容性和js语法错误后,还是无法上传。怎么回事呢?解决方案:原来android在选择文件之后,获取的图像路径imageUrl没有携带协议头,比如file://结果下面的语句不出错,但是无法上传。// imageUrl:/storage/emulated/0/myPhoto/2021_..原创 2021-02-06 16:29:50 · 1019 阅读 · 0 评论 -
迷雾重重的 Installation failed due to: ‘null‘
编者:李国帅qq:9611153 微信lgs9611153时间:2021/2/6 问题描述:有一个项目,已经很多代码了,前几天加入了一些东西,没有好好测试,现在运行起来,发现编译没有问题,但是无法进行直接安装,打包为apk也不行。简单的说就是“编译成功但是安装失败的问题”。Installation via USB is disabled.或者Installation failed due to: 'null'过程:一时间不知道如何做,就到网上找,这个问题的网络答案..原创 2021-02-06 16:05:56 · 773 阅读 · 0 评论 -
Android中自定义activity管理类
Android中自定义activity管理类编者:李国帅qq:9611153 微信lgs9611153时间:2020/11/26 目录Android中自定义activity管理类背景:主要函数:管理类:应用,创建一个基类包装对应功能:背景:所需资源:android2018年的时候,为了解决如下问题而自定义了一个activity管理类:当关闭apk的时候关闭所有的activity 获取顶部activity 获取mainActivity或其他指定类..原创 2020-11-26 15:13:22 · 333 阅读 · 0 评论