自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 收藏
  • 关注

原创 can‘t determine target‘s VM version : field“_reserve_for_allocation_prefetch“ not found

报错原因:进程运行的 JVM 版本和启动的 JHSDB 的 JVM 版本不一致。我是用 AS 运行的进程,修改一下 AS 运行的 JDK 版本,保持一致即可。记录一个使用 JHSDB 过程的报错。

2024-03-19 17:56:15 258

原创 Android 启动流程及 init 进程解析

init.zygote64_32.rc -- -- 启动两个 zygote 进程,名为 zygote 和 zygote_secondary,分别执行 app_process64、app_process32。init.zygote32_64.rc -- 启动两个 zygote 进程,名为 zygote 和 zygote_secondary,分别执行 app_process32、app_process64。(1)main() 进行参数解析【--zygote --start-system-server】

2024-02-26 22:18:01 902

原创 Window 安装多个版本的 java 并按需切换

window 切换 java 版本

2023-10-01 11:39:16 527

原创 完整的 pixel 6a 刷入 AOSP 源码过程记录

AOSP 源码刷机

2023-09-29 12:16:34 951 2

原创 记录 ubuntu 修改用户/root 密码步骤

f)进入shell界面,使用 passwd 命令重新设定密码:passwd userName (userName 是你创建的用户名),回车确认;d)在 Recovery Menu 中,选择“Drop to root shell prompt”,回车确认,如下图;h)在 Recovery Menu 中,选择“Drop to root shell prompt”,回车确认。c)选择 recovery mode,不按回车,按e,编辑启动参数。c)选择 recovery mode,回车确认,如下图;

2023-09-25 11:28:34 3807

原创 记录一个 Dialog 只显示透明背景但是弹框不可见的错误

原因:Dialog 创建时 width = 0(具体为什么在部分机型会出现这种情况,大家可以自行百度)现象:自定义的 Dialog,在魅族手机上弹出时,只有一个遮罩层,框不见了。解决:在 Dialog 的 onCreate 方法中重新设置一遍宽高。

2022-10-31 16:38:51 366 1

原创 记录一个 APP 抓取不到报文的问题

一时其实是毫无头绪的,直到某一天突然看到了项目里的这几行代码,才恍然大悟。1、想要看到自己的 APP 请求握手是否是使用国密协议,通过 wireshark -- protocol 就可以看到,国密协议的会显示 GMSSL/GMTLS,而普通的 https 请求则会显示 TLSV版本号。2、普通的 wireshark 是看不到国密协议的,所以即便是国密的请求也会和普通的 https 请求一样显示 TLS,要使用支持国密的 wireshark ,大家可以自行百度就会有相关链接可以下载了。

2022-09-15 21:11:03 519

原创 记录一个重启 APP 的方法以撤回隐私授权的方法

根据工信部、网信办等四部委的要求,APP 首次使用需要提示用户阅读隐私政策并征得用户的同意才能收集用户信息,否则 APP 运行过程中不允许有任何收集用户敏感信息的行为。且在二级页面,需要提供用户撤回隐私授权的功能。前期在做这方面改造的时候,为了尽快满足监管的要求,这一块功能做的比较简陋,当用户撤回隐私授权时,我们只是弹框提示用户卸载 APP 以达到撤回授权的目的。随着四部委发布的文件内容越来越完善,这个简陋的功能已经不适用了,所以做了这样的改造。

2022-09-15 20:30:09 663

原创 记录一个 Android 7.0 文件访问权限的报错

场景:我在 asset 目录下内置了两个 html 文件,并通过 webView 加载 A.html,再从 A.html 中通过 超链接的形式跳转到 B.html,就会发生 crash ,报错信息如上。百度也很容易查到是文件权限的问题,但是我试了很多百度回来的方法都不奏效,所以这里提供一个比较另类的思路。解决:不使用超链接的形式,通过在 html 文件内 jscript 与原生页面交互,打开一个新的 Activity 来加载 B.html 文件。

2022-09-15 20:12:24 1037

原创 关于 APP 隐私政策文本中个人敏感信息的规范使用声明

前言:这两年国家对于互联网个人隐私保护非常重视,针对互联网产品对于个人信息的使用,四部委出台了一系列的规范,从去年开始,根据国家出台的相关规范,我们在不断地对我司的 APP 进行优化。包括两个方面:(1)APP 中用户隐私政策的内容(2)APP 功能模块中涉及个人敏感信息的部分(功能模块,即代码层面的整改,我另外有一篇博客做记录的),下面是链接:关于 mPaaS 框架使用过程涉及用户个人敏感信息整改的汇总(最新一轮标准)_高钙小新的博客-CSDN博客关于APP 内涉及用户个人敏感信息/权限的

2022-07-16 16:48:39 5775

原创 Mac 电脑修改 .bash_profile 中的环境变量无效的解决方法

问题:切换 .bash_profile 中 gradle 不同插件的环境变量的路径时,source .bash_profile 之后发现版本还是没有改变。原因: mac下采用 zsh 代替bash,而zsh加载的是 ~/.zshrc文件,所以要修改的不是 .bash_profile 文件,而是要修改 .zshrc 文件。解决:在 .zshrc 文件末尾添加一行:source ~/.bash_profile,执行 source .zshrc,就能使改变的环境变量生效了...

2022-06-29 16:49:19 824

原创 unsupported class file version 53.0

jdk 版本低于 jar 包编译版本引发的报错

2022-05-17 17:39:29 934

原创 关于APP 内涉及用户个人敏感信息/权限的进一步整改

前言:有一段时间没更新关于用户隐私相关的内容了。随着去年 11 月《个人信息保护法》的更新,四部委和工信部又下达了一批新的标准,这一篇就是记录一下这半年来项目里关于保护用户隐私部分的优化。一、用户未同意隐私政策之前收集用户敏感信息/权限这个问题是比较普遍的,就是用户安装完 APP 之后,未点同意之前,收集了敏感信息/权限。所以在用户点击同意之前,不可以有任何获取 Android ID、 IP、Mac 、用户账号密码等用户个人隐私信息行为出现,包括动态权限申请。包括在 SDCard 写入数据,

2022-04-28 14:00:32 7702 5

原创 记录一个使用 git push 过程的报错

2022-02-11 16:46:13 273

原创 关于 mPaaS PB 接入模式适配 64 位 CPU 架构中项目报错解决方案

解决 mPaaS PB 接入模式在进行 64 位架构适配时的冲突

2022-02-11 16:24:52 2406

原创 关于 App 是否支持 64 位架构的适配

华为应用市场近日给开发者发布了一则通知,通知内容如下:【重要】关于安卓应用在华为应用市场发布必须提供64位版本的通知尊敬的开发者,您好!为了更好地提升安卓应用性能体验、降低安卓应用的功耗影响,华为应用市场将全面推行安卓应用升级为64位版本,请您注意及时升级替换应用包体,具体节奏如下:1)2022年2月1日起,在华为应用市场新上架/升级的游戏及应用,必须包含64位版本,华为应用市场不再接收仅包含32位版本的应用;2)2022年9月1日起,华为应用市场将不再接收包含32位版本的应用。我们建议您可以

2021-12-14 20:21:56 12600

原创 关于 mPaaS 框架使用过程涉及用户个人敏感信息整改的汇总(最新一轮标准)

之前也写了几篇关于 APP 违规收集用户敏感信息的,由于检测机构的检测标准一直在升级,随着市场上的通报案例的增加和四部委等监管部门的标准的升级,检测在变的越来越全面,所以一直都有新的问题出现,今天就总结一下最新一轮检测报告提出的问题和对应的解决方案。一、关于 APP 的自启动行为这里有两个检测的方法,一个是检测机构的扫描工具,一个是手机自带的软件监控(可以在设置里面搜索“自启动”等关键字,可以手机系统对所有 app 的行为监控)(1)BOOT_COMPLETE(开机广播)如果项目中监听了开机

2021-11-03 20:54:30 2191

原创 关于 mPaaS PB(portal-bundle)接入模式下,找不到第三方 so 库的解决方法

app 里面一般都会用到几个第三方库,很多第三

2021-10-30 11:30:12 580

原创 关于 TextToSpeech 在 mPaaS Plugin中使用失效的解决方法

近日项目中为了进行适老化、无障碍改造,使用了 TextToSpeech 进行一些文本的播报,来提升视障人士的使用体验。mPaaS 这套框架中,H5 页面与原生端的交互是通过 H5Plugin 来实现的,业务需求中有这么一项,需要播报 H5 页面中的验证码,但是在使用过程中发现,同样的代码,在原生的 Activity 中是可用的,在 H5Plugin 中却无效。初始化代码大概是这样的如下:textToSpeech = new TextToSpeech(this, new TextToSpeech.O

2021-10-03 23:21:59 597

原创 简单使用 Accessibility 及 Android 适配 TalkBack,实现适老化和无障碍

前言:工信部发布的互联网应用适老化及无障碍改造的通知,app 需要进行改造,以提高老年人或者视障人士在使用 app 过程的便捷性,改造的内容包括但不限于1、UI 界面更简单、整洁(界面元素不能过于复杂,字体字号需要偏大、清晰)2、页面焦点导航的适配3、页面元素需要适配 TalkBack 朗读4、搭建无障碍服务 service关于界面文字字号大小的选择的,我前面发过文章介绍过方案,今天主要讲讲 android 中 Accessibility 相关使用以及其他一些简单的改造。一、给控件加

2021-10-03 23:01:06 8382 7

原创 关于 app 开启 talkback 模式,界面上的数字串无法正确播报数字(播报成了金额)的解决方法

项目场景:根据工信部的要求,APP 需要做适老化改造,让长辈或者视障人士在使用 app 时能更加方便,体验更好,其中一个改造点就是用户开启了手机的 talkback 模式后,app 能否正确播报相关内容,给视障人士/长辈提供正确的反馈和使用引导。问题描述:改造过程中,有这样一个场景,用户开启了 talkback 模式,单击数字串的文本或者输入了数字的输入框,播报的内容不正确。例如:1、输入框,输入了验证码:123456,talkback 播报为:“十二万三千四百五十六”;2、文本框,

2021-09-04 17:01:56 1056

原创 基于 mPaaS 框架 Portal-Bundle 接入方式下 Multidex 分包失效的解决方法

mPaaS 最新的基线已经有 aar 接入模式了,这种模式更接近安卓原生的开发,但是有些老的项目还是 PB(portal-bundle) 接入模式,PB 接入模式是不支持 multidex 分包的,如果出现了一个 bundle 中方法数过多报错的话,通常都是一个 bundle 接入太多第三方 sdk 导致的。解决方法:把这些第三方 sdk 抽出来一个新的 bundle(假设为 bundle B),功能集成在 bundle B 的 api moudle 下,A bundle 通过对 B bundle

2021-09-04 15:30:34 548

原创 Fildder 和 Charles(花瓶) 实现抓包基本教程及两者差异

都说抓包是安卓开发必备技能,可能是我太菜了,平时开发过程很少用到,之前有一次为了解决一个线上的问题,需要我配合抓包给到其他技术人员分析,就用了一下 Charles,不过上次是在 Mac 上配置的,今天又试了一下 Fildder,就想写一篇记录一下整个环境搭建过程,也稍微对比一下这两个软件使用有什么区别(此次搭建都是在 Window 上,Mac 上使用的过程大同小异)。首先总结一下整体的操作过程:1、安装软件Fildder : https://www.telerik.com/fiddler/fid

2021-07-17 17:35:54 3273 1

原创 实现 APP 全局修改字体大小(适老化/关怀版 改造)

人行发布的要求,移动应用要做好对视障人士和老年人的适配,我们都知道有些做的不是很好的 app ,别说对老年人和视障人士不太友好,对普通人来讲也时常出现不易操作的情况。我们这个年纪的人,父母其实刚好经历了从功能手机到智能手机的时代更替,很多时候父母对手机上的功能是用不明白的,即使教了很多遍他们也不是很懂。像我爸就不会用现在的银行软件转账、存款,每次都需要我帮他操作。所以呀,app 做好对老年人和视障人士的适配改造,是很有必要的。今天先记录改造的第一个功能点,就是 app 内全局的字号更改。微信和支付宝

2021-07-03 14:38:54 3979 6

原创 手贱删除了 mPaaS BP 接入方式 portal 中的 amreabi 文件夹导致安装失败

前几天做死代码的清理,然后发现 portal 中 lib 下的 armeabi 文件夹是空的,就手贱把它删掉了,后续安装也没有发现其他问题。今天做 app 内更新的时候,fa'xian

2021-06-17 16:41:36 199

原创 切换 Android Studio 运行时 JDK

忘记保存当时的报错截图了,大概就是虽然再 gradle 中配置了使用 java8 ,但是依旧和 AS 默认运行的 JDK 版本冲突了,解决方法就是切换运行时 JDK。1、安装一个j

2021-06-15 21:23:22 2744 2

原创 关于代码中调用安装 apk 成功后首次打开 app 闪退的问题

记录一个唤起安装 apk 文件成功后打开 app 首次会闪退的问题。现象:app 内更新版本,下载完 apk 后调起安装,系统安装完成后会自动打开 app ,这时候 app

2021-06-15 20:59:41 1214

原创 关于项目中如何删除第三方库、插件所以引用的权限以及蓝牙(非危险权限)的处理

又来了,监管部门安全整改相关的内容。这次整改的内容是 app 中 AndroidManifest.xml 中安卓权限的申请。说说检测机构的判定标准吧,如果在 AndroidManifest.xml 中声明了某个权限,则需要有对应的功能场景,否则就算是过度声明。检测方法呢,就是反编译 apk 包,直接从里面的 Androidmanifest.xml 文件中查看最终的权限申请。之前其实也没有很认真了解过这一块的内容,都是需要用就声明一下。这里整改的项目,由于之前的开发人员使用了很多第三方的S

2021-03-31 14:24:30 1480

原创 关于使用 View Binding 不生效的记录

今天犯了个很低级的错误,记录一下使用 View Binding 的过程中,调用 binding 的控件设置文字啊,点击事件什么的都没有生效,很纳闷,后面发现是 setContentView 忘记改了,代码如下:圈起来的这一行,setContentView 需要改成当前的 Activity 的 ViewBinding 的根布局...

2021-03-31 10:39:45 2483 3

原创 关于 APP 内使用 CALL_PHONE 侵犯用户隐私的问题

依旧是关于监管部门对于 app 使用用户信息安全检测的相关内容。这次是关于 APP 声明了 CALL_PHONE 权限,用于 app 跳转系统打电话界面,实现拨号功能。监管部门要求 app 不再声明该权限,因该权限侵犯了用户的个人隐私信息。项目中代码是这样的:Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + phoneNum));startActivity(intent);如果使用的是 Intent.ACT

2021-03-29 17:53:47 2220

原创 新增 mPaaS 隐私权限弹框引发的一系列问题及解决过程/方法

前情提要:监管部门要求在用户点击隐私协议弹框中“同意”按钮之前,App 不可以调用相关敏感API。即不能获取用户手机 Mac 地址、IP、Android ID 等信息。APP 也因此受到监管部门的通报批评,算是一次紧急的修复上线。项目中使用的是阿里的 mPaaS 的框架,这套框架提供了对应方法来阻断框架的初始化流程,使得用户在点击了隐私政策 “同意” 按钮后才进行框架组件的初始化,获取相关的需要的用户个人信息(mac 地址等)接入方式参考官方文档:https://help.aliyun.com/do

2021-02-22 17:38:23 1100

原创 带着“兽化”的自己,迈入2021

今天是 2020 年最后一天,看到手机上 CSDN 关于的 2020 年度总结推送,刚好手头上的工作忙完了,也正好总结一下自己的这一年。虽然我也想拿奖品,不过我知道自己的文笔很普通,论技术能力也很初级,没有什么好的技术经验分享出来。那就把这当成一个契机吧,仅回忆和总结自己这一年的变化吧,留给明年跨年时候的自己。2020年应该是自己在慢慢变好的一年。2019年因为一些个人情感的原因,度过了很颓废的一段时间,那段时间就是什么事也不想做,但是又刚好是毕业论文和实习阶段,挺难熬的。但人生总不能因为一些挫折就

2020-12-31 23:55:26 348 2

原创 解决 WPS 输入文字颜色无法改变并自带下划线的问题

今天收到一份需要内置在 APP 中的 word 文档,需要转换成 PDF 格式后内置在 APP assets 目录下。打开 WPS 之后修改相关内容之后,出现了下图所示的样式:(1、显示为蓝色;2、自带下划线),并且无论我怎么取消下划线和更改文字颜色,都没有改变。当然另存为 PDF 的话是没有影响的,转换成 PDF 后显示的字体为黑色且没有下划线,但是转换成 html 文件就会很难看解决方法:按照下图所示,将工具中的 ”修订“ 选项不勾选即可。...

2020-12-26 15:45:43 8823

原创 解决 vivo x9 手机无法安装调试 app 的问题 Installation error: INSTALL_PARSE_FAILED_BAD_MANIFEST

今天用测试机连接 usb 使用 eclipse 安装应用报错如下:Installation error: INSTALL_PARSE_FAILED_BAD_MANIFESTPlease check logcat output for more details.Launch canceled记录一下解决方法,在设置-更多设置-恢复出厂设置-清除所有数据中恢复出厂设置,再打开允许安装位置来源程序开关,就可以正常安装调试了。...

2020-11-26 14:39:53 959

原创 Mac 电脑安装 Homebrew 命令

今天想要使用一下 telnet 命令的时候发现电脑没有安装,过程中踩了一下坑,记录一下,也把方法分享出来。安装 telnet 的命令 :brew install telnet但是如果报命令没找到,就要先安装 Homebrew,百度上一大部分的在线安装 Homebrew 的命令如下:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"或者:.

2020-11-11 10:28:37 119

原创 关于升级第三方组件报错 com.android.builder.dexing.DexArchiveBuilderException: com.android.builder.dexing.DexArc

最近项目安全风险整改,目前项目里面使用的组件版本比较低,存在一些安全漏洞,需要升级第三方组件的版本。先贴一下我的报错,有三个组件的升级会涉及到这一类报错,区别是三个组件报错涉及的包名不一样,分别是 (1)Gson 升级到 2.8.6(2)OKhttp3 升级到 4.9.0(3)Rxjava 升级到 3.0.6百度上大多数的说法都是没有使用 java 8 导致的,于是我加上了这段配置compileOptions { sourceCompatibility JavaVers

2020-11-04 18:34:05 711

原创 关于金融类 app 退出到任务列表进行高斯模糊的尝试

最近公司的 app 有个风险安全整改的需求,要求 app 在任务列表的时候展示要进行高斯模糊,效果如下图所示:一开始看到自己手机上(Redmi K20)的银行类 APP 都实现了这样的效果,觉得应该是可以实现的,就开始百度查相关的实现方法。但是基本上百度出来的99%都是 ios 的实现方式,安卓的几乎没有,下面是我唯一找到的两篇跟安卓相关的文章。1、https://blog.csdn.net/henkun/article/details/1027636542、https://blog..

2020-11-04 17:49:07 1877 4

原创 关于 .gradle/cache/modules-2/files-2.1 文件夹下第三方包解析报错的解决方案

贴一个最近遇到的报错,某天重新打开工程编译的时候遇到了这样的错误。我这里报的错都是清一色的解析 xml 文件里的 “&”符号报错,但是这些包都是第三方的包,不可能是自己的代码引起的。1、尝试了 clean project,删掉 build 文件 rebuild,删掉 .gradle 文件都没有起作用。2、尝试从本地的 maven 仓库中删除对应的包名的文件夹,重新编译也没有效果3、最后找到电脑中该报错路径下对应的报错的第三方包,删除,相当于删除本地的 Cache,去重新下载。路径

2020-11-04 11:43:18 9066

原创 关于在 Mac 电脑 Android Studio 切换 Gitlab 账号

在 Android Studio 正确输入一次远程仓库的的账号密码,并勾选 Remember 之后,后面再进行 push 就无需再输入账号密码了。那当我们想要切换 push 的账号的时候,Android Stuido 设置里并没有相应的修改账号密码的地方,本地 Git 配置的也只是本地的用户名和邮箱。查了很久也没有查到在 Mac 上应该怎么切换账号,有些博客说使用命令行 unset 账号,我这里在 Terminal 中试了也没有效果。有些博客说 Windows 电脑是将 Git 账号存在了用

2020-10-09 17:36:49 2135

原创 报错 Cannot find a setter for <android.widget.TextView android:text> that accepts parameter type ‘?‘

在使用 dataBinding 的过程中,使用 ObservableList 或者 ObservableMap 类型的变量给 TextView 设置 text 时报错:Cannot find a setter for <android.widget.TextView android:text> that accepts parameter type '?'声明如下图所示:原因是声明 ObservableList 和 ObservableMap 的时候需要指定该 List 或者 M

2020-09-09 11:41:12 7992 1

超市进销存+在线电商

完整的超市系统代码,在线电商与管理端集成一个 APP。

2018-11-02

空空如也

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

TA关注的人

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