开发新技术
马占柱
Android行业多年软件开发经验,从事多年移动App开发,涉及医疗健康、商城、聊天、代驾打车、特种设备防护、公安边检查验领域;目前从事汽车车载系统开发工作。
展开
-
安卓开发中英文切换需求
其实不止是中英文,只是这个比较有代表性,什么语言都可以切换。安卓里面控制语言就是新建包,在res里面新建values-zh-rCN和values-en-rUS,zh代表的是中文,en代表的是英文。把strings相对应的内容复制过去。我把我的代码粘一下;(注: 要将目录展示由Android切换为Project,再新建包,否则新建包后无法显示新建的values包)zh里面就正常写中文就行。布局很简单,就一个按钮。现在距离实现中英文切换已经快了。在MainActivity中写上在按钮绑定的事件:...原创 2022-07-07 15:06:30 · 572 阅读 · 0 评论 -
AIDL报错,bindService一直连接不上、不起作用。
先说问题,最近用aidl,发现bindService根本就不走,不知道咋回事,明明写的没有任何毛病啊?//aidl绑定 private void bind() { Intent intent = new Intent(); String pkg = "com.example.mzz_service";//需要调用的服务端【另一个APP】的包名 String name = "com.example.mzz_service.service.Remot原创 2022-03-03 11:57:55 · 4247 阅读 · 16 评论 -
刘润:在李彦宏这本书里,我看到了未来交通的模样
(本文首发于“刘润”公号,订阅“刘润”公号,和我一起洞察商业本质)这段时间,我读了一本书,叫《智能交通》。一开始,我只打算花30分钟快速翻一下。但越读越有意思,越读越有意思。最后,我居然逐页读完了这本400多页的大部头。忍不住往前翻,看看是谁写的。李彦宏。我惊讶地问百度的同学,这本书,真是李彦宏写的吗?他们说,真是。这本书,真是李彦宏自己大段大段地写,然后发给团队编辑的。而团队的主要工作,是前期收集素材,和后期编辑校对。书稿都要交稿给出版社了,他还在不断发来增补的章节。不但出了书,他甚至还亲转载 2022-02-24 16:51:01 · 325 阅读 · 0 评论 -
安卓查看任意当前运行App所显示的Activity的包名
1、进入adb所在目录或者是直接cmd输入查询代码:adb shell "dumpsys window | grep mCurrentFocus"结果如下:如果需要跳转过去的话:/** * 跳转到指定应用的指定页面 */ private void showActivity(@NonNull String packageName, @NonNull String activityDir) { try { In.原创 2022-01-07 13:43:56 · 5288 阅读 · 0 评论 -
监听系统开屏、锁屏、解锁、按下home键、按下多任务键【未完待续】
ScreenReceiverUtil工具类/** * Author : 马占柱 * E-mail : [email protected] * Time : 2021/9/22 9:40 * Desc : 锁屏解锁的广播动态注册监听 */public class ScreenReceiverUtil { private Context mContext; private SreenBroadcastReceiver mScreenReceiver; .原创 2022-01-04 12:04:03 · 387 阅读 · 1 评论 -
判断线段与围栏集合是否相交【相交求出交点的经纬度】直接可用
/** * Author : 马占柱 * E-mail : [email protected] * Time : 2021/8/12 15:09 * Desc : 判断线段与围栏集合是否相交【相交求出交点的经纬度】 */public class GPSCheckUtils { public static final String TAG = "GPSCheckUtils"; /** * 地球周长 */ private static .原创 2021-12-08 15:56:58 · 578 阅读 · 0 评论 -
史上最全ConstraintLayout(约束布局)使用详解
ConstraintLayout 是一个使用“相对定位”灵活地确定微件的位置和大小的一个布局,在 2016 年 Google I/O 中面世,它的出现是为了解决开发中过于复杂的页面层级嵌套过多的问题——层级过深会增加绘制界面需要的时间,影响用户体验,以灵活的方式定位和调整小部件。从 Android Studio 2.3起,创建layout文件就已经是默认ConstraintLayout了,但是尽管Google如此大力推这项技术,但在当时很少有人使用,近些年逐渐被大家拿起来,啊真香!(此处无图胜有图)。.转载 2021-11-15 15:28:18 · 464 阅读 · 0 评论 -
安卓实现每日一句功能-一言API调用
一言API官网地址:Hitokoto - 一言一言API的开发者文档地址:一言开发者中心一言API的简介动漫也好、小说也好、网络也好,不论在哪里,我们总会看到有那么一两个句子能穿透你的心。我们把这些句子汇聚起来,形成一言网络,以传递更多的感动。如果可以,我们希望我们没有停止服务的那一天。简单来说,一言指的就是一句话,可以是动漫中的台词,也可以是网络上的各种小段子。 或是感动,或是开心,有或是单纯的回忆。来到这里,留下你所喜欢的那一句句话,与大家分享,这就是一言存在的目的。一言API的请求地原创 2021-10-08 14:05:03 · 1219 阅读 · 0 评论 -
LOL英雄战力效果【五星战力分析】5星
大概效果这样代码如下:/** * Create by Mazhanzhu on 2020/10/12 * LOL英雄战斗力效果 */public class LOLview extends View { public static final String TAG = "LOLview"; private int n; //边的数量或者能力的个数 private float R; //最外圈的半径,顶点到中心点的距离 private int.原创 2021-03-12 11:18:57 · 432 阅读 · 0 评论 -
AES128位数据加密算法【直接拷贝可用】
废话不多说,直接上!/** * 数据加密 * mazhanzhu */public class AES128Util { //密钥 public static final String AESKEY = "******************mzz"; //偏移量 public static final String IVVAL = "******************mzz"; //算法名 public static final String原创 2021-02-22 10:45:33 · 1916 阅读 · 0 评论 -
安卓开发水波纹【圆形波纹】特效
话不多说,先来看看效果: 源码位置【点击查看】转载 2021-01-11 11:45:58 · 414 阅读 · 0 评论 -
安卓开发—图片加密传输【文件加密传输处理】
废话不说了,综合考虑就是先对文件进行加密,然后传输,服务端成功接收文件后再对文件进行解密 干!下面的代码,最后面就是,嗯~大家开心的工作吧,嘿嘿/** * 数据加密 * mazhanzhu */public class AES128Util { //密钥 public static final String aesKey = "**********************"; //偏移量 public static final String...原创 2020-12-11 15:01:17 · 1245 阅读 · 0 评论 -
什么是模块化,组件化, 插件化?
单工程模式移动开发诞生,我们开发移动项目,我相信大多用的是单工程单任务的开发模式,二话不说,直接就开始写起,是不是这样呢? new Project -> 分包 -> 写起。我相信都经历过,也写的比较爽,为什么呢? 这种模式不涉及乱七八糟的处理方式, 上手快,开发快,足够敏捷。那么原因是什么呢?Mobile Project 刚起步,项目都偏小,一些附加业务还没绑到App上。模块化Android Studio出来了,多出来了一个新的概念, Project, Module… 模块;当时以包原创 2020-11-25 09:47:06 · 565 阅读 · 1 评论 -
Android Studio快速获得debug、release签名的SHA1
方法:1、打开AndroidStudio右侧的Gradle,逐级找到signingReport。2、双击----------------------- 接着内心会喊“666”原创 2020-10-27 09:41:29 · 538 阅读 · 0 评论 -
使用CoordinatorLayout实现炫酷的效果【折叠控件】
详细介绍,就不转载了,直接看吧转载 2020-06-08 09:07:54 · 657 阅读 · 0 评论 -
Android代码混淆
代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。为什么要加代码混淆--------------------不想开源应用,为了加大反编译的成本,但是并不能彻底防止反编译开启混淆 通常我们需要找到项目路径下app目录下的build.gradle文件 找到minifyEnabled这个配置,然后设置为true即可. 如下: release{ minifyEna..转载 2020-06-01 13:14:18 · 963 阅读 · 0 评论 -
一个Android 高亮View蒙层库
效果如下:原理简介:https://blog.csdn.net/u014626094/article/details/105430981Github地址:https://github.com/soulqw/Curtain转载 2020-05-14 13:40:43 · 645 阅读 · 0 评论 -
android热修复方案
热补丁方案有很多,其中比较出名的有腾讯Tinker、阿里的AndFix、美团的Robust以及QZone的超级补丁方案。他们的优劣如下:一、Tinker 热修复Tinker通过 Dexdiff 算法将原apk和修复后的apk中的dex文件进行对比,生成差分包,运行时将差分包中的dex和原包中的dex进行合并,从而加载差分包中修复好的类。因为是运行时加载的dex文件,所以修复完成后不能即...转载 2020-04-16 10:42:58 · 460 阅读 · 0 评论 -
获取任意App的页面元素【uiautomatorviewer.bat使用方法】
分析Android应用UI组件;文件位于sdk\tools\bin\uiautomatorviewer.bat;操作步骤:1.连接Android 设备到开发机器,显示需要获取UI控件的界面;2.Windows下直接双击运行uiautomatorviewer.bat;3.点击uiautomatorviewer用户界面左上角的“设备截图按钮”将鼠标悬停在左侧窗口的快照,可查看被工具检测到...原创 2020-04-15 11:32:33 · 1061 阅读 · 0 评论 -
安卓夜间模式开发【深色主题适配】
1.创建文件夹就在res 下新建 values-night目录,创建对应的colors.xml文件。如果适配图片的话,就创建对应的 drawable-night目录。正常情况下,系统会调用values里面的颜色还有主题等信息,当切换到深色模式的时候,系统就会调用“-night”的文件夹里面的信息,所以当你需要深色模式的图片时,对应就需要创建“mipmap-xxhdpi-night”等...原创 2020-04-09 15:11:23 · 4544 阅读 · 4 评论 -
App灰色模式,给任意一个view设置灰色模式!
操作流程1.创建类:名字无所谓2.在baseactivity中进行修改引用:1.创建类:名字无所谓public class GrayFrameLayout extends FrameLayout { private Paint mPaint = new Paint(); public GrayFrameLayout(Context context, Attrib...原创 2020-04-05 19:04:22 · 2492 阅读 · 0 评论 -
studio3.6新特性【视图绑定】是时候开始使用ViewBinding了
首先,这是官方的文档讲解,很不错官方文档【点击即可】前言目录前言随着Android Studio 3.6的正式发布,我义无反顾的走在了更新尝鲜的前列。AS的升级一如往常的顺利,重启后就进入了令人血脉喷张的 Gradle 升级的环节,需要从3.5.1升级到3.6.0。果不其然,出问题了!!ButterKnife居然报错,日志如下:D:\xxx\libbase\compon...转载 2020-02-28 20:08:47 · 4282 阅读 · 3 评论 -
缺失的gradle下载【最实用】
好的环境造就优秀的人才。可以在网站:http://services.gradle.org/distributions/ 上免费下载。可以看到该网站提供几乎所有的gradle版本下载,你只需要找到你需要的版本单击就可以直接下载了。...原创 2020-02-21 20:05:14 · 507 阅读 · 0 评论 -
【安卓版本管理】GIT GUI(git的可视化工具)
一、前言GIT官方网站为了解决部分用户通过命令行对git工具使用时的怨声载道的现象,因此推出了一个GIT的可视化工具Git Gui。下面就对Git官方自带的可视化工具Git Gui的使用进行介绍。注:本文仅限Windows系统二、Git和GitHub通过密钥绑定1、从Git Gui中获取密钥2、向GitHub绑定从Git Gui中的密钥三、通过Git Gui上传...原创 2019-11-25 10:51:15 · 460 阅读 · 0 评论 -
EasyPay2.0.0正式发布----让Android支付功能集成极限提速【微信支付宝银联】
asyPay(易支付)---- 一个便捷易用的Android平台聚合支付框架项目GitHub链接Vision (愿景)成为Android平台最便捷易用的支付框架Introduction(介绍)This is a framework for Android Developers easily to use Alipay,WechatPay and UnionPay in A...翻译 2019-10-30 15:11:46 · 780 阅读 · 0 评论 -
Kotlin 浅谈
简介Kotlin是一门静态语言,支持多种平台,包括移动端、服务端以及浏览器端,此外,Kotlin还是一门融合了面向对象与函数式编程的语言,支持泛型、安全的空判断,并且Kotlin与Java可以做到完全的交互。Kotlin特点代码量少且代码末尾没有分号。 被调用的方法需放到上边。 Kotlin是空安全的:在编译时期就处理了各种null的情况,避免了执行时异常。 它可扩展函数:我们也...转载 2018-12-04 14:47:24 · 625 阅读 · 0 评论 -
Junit 入门使用教程
1、Junit 是什么? JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。 注意:Junit 测试也是程序员测试,即所谓的白盒测试,它需要程序员知道被测试...转载 2018-11-29 15:04:39 · 256 阅读 · 0 评论 -
Word文档忘记设置的密码怎么办?
有的时候,为了保护Word文档不被编辑以及被其他人乱修改,我们会对Word文档进行一个密码设置,来保护Word文档。(重要说明:注意最后的注意事项,演示操作是在文档可以打开的情况下进行,并且2003版本可以使用方法二解决,其他版本的无法解决这个问题。)工具/原料 Word文档 office办公软件 方法/步骤 1 这个时候,可以有三种方式来取消掉已经设置的Wo...原创 2018-11-06 11:06:54 · 26364 阅读 · 1 评论 -
博客导航——一站式搜索(所有博客的汇总帖)【微信开发】
课程巧用第三方快速开发Android App 热门第三方SDK及框架Android StudioGoogle主推-Android开发利器——Android Studio,这可能是最全的AS教程!Android Studio 2.0 Preview 4 的逆袭以及各种神注释Android Studio重构之路,我们重新来了解一下Google官方的Android开发工具Andr...原创 2018-10-24 15:51:43 · 1320 阅读 · 2 评论 -
第三方免费加固对比
第三方免费加固功能概述及其使用1. 阿里聚安全 链接:http://jaq.alibaba.com/上传应用 提供安全扫描(漏洞扫描、恶意代码扫描、仿冒应用扫描) 可以从结果知道漏洞总数,如果是认证过的开发者,可以直接得知漏洞的具体位置。其中还有部分漏洞需要付费扫描。 然后我们可以进行应用加固,其中分快速加固和多渠道加固,可以按需选择 加固包下载(应用需要重新签名)2. 腾讯...转载 2018-10-25 10:24:44 · 3832 阅读 · 0 评论 -
Android Studio 3.2 都有哪些更新?这些关键点不要错过!
点击这里即刻下载 Android Studio 3.2。 Android Studio 3.2 是应用开发者切入最新的 Android 9 Pie 发布版和构建新的 Android App Bundle 的最佳途径。自从 2018 年 Google I/O 大会 Android Studio 宣布更新后,我们精炼和完善了 20 多项新功能,并集中力量提升 Android Studio 3....转载 2018-10-18 14:52:48 · 207 阅读 · 0 评论 -
阿里发布的规约插件,细节都在这里!!!
一、前言昨日(10/14)日,阿里巴巴在杭州云栖大会上,正式发布了由阿里巴巴 P3C 项目组,经过 247 天的持续研发,正式发布众所期待的 《阿里巴巴 Java 开发规约》的扫描插件!P3C 是世界知名的反潜机,专门对付水下潜水艇,寓意是扫描出所有潜在的代码隐患。这个项目组是阿里巴巴开发爱好者自发组织的虚拟项目组,把《阿里巴巴 Java 开发规约》强制条目转化自动插件,并实现部分的自动编转载 2017-10-16 09:41:01 · 1285 阅读 · 0 评论 -
一个APP从启动到主页面显示经历了哪些过程?
本文以图文并茂的形式简单介绍一个APP从启动到主页面显示经历了哪些流程,以及实现的原理。不介绍具体源码,仅仅构建一个大体框架。一、流程概述启动流程:①点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求;②system_server进程接收到请求后,向zygote进程发送创建进程的请求;③Z...转载 2019-02-28 14:04:26 · 389 阅读 · 0 评论 -
Deepfacelab 新手教程【AI智能换脸】
欢迎进入本教程,本教程不定期更新本文教程内容更新时间为:2019/2,本文最后更新时间为:2019/3/4欢迎进群讨论,我不是群主,群主的各QQ群号码请看:https://deepfakes.com.cn/index.php/资助升级群这几天朱茵换脸杨幂的事件上了热门,我们群不存在该违法问题。然而因为网上的这个事件,2群排队已经可以说排到了明年。群主表示等风波结束了再考虑新群,毕竟群主...转载 2019-03-07 11:27:09 · 88445 阅读 · 13 评论 -
注意:不要在发行版本中设置android:allowbackup='true'
一般来说系统会默认android:allowBackup="true",但是这是有重大的安全隐患,强烈建议在发行版本中设置为“false”详细讲解信息原创 2019-04-15 15:29:19 · 2688 阅读 · 0 评论 -
为什么我不用ViewPager或RecyclerView来做上下滑切换【仿抖音上下滑...】
上下滑切换翻页大概是这样的效果:目前网上有诸多如 “仿抖音上下滑...” “仿花椒映客直播...” 之类的技术分享,都有讲述实现上下滑切换页面的方案,其中以 ViewPager 和 RecyclerView + SnapHelper 两种方案为多,但是都有明显的缺点。以下是一些个人的看法:为什么ViewPager不合适ViewPager 自带的滑动效果完全满足场景,而且支持 Fra...转载 2019-05-09 10:34:41 · 865 阅读 · 0 评论 -
Android高仿抖音照片电影功能
PhotoMovie(https://github.com/yellowcath/PhotoMovie)可轻松实现类似抖音、微视、美拍的照片电影功能。效果如下滤镜效果转场效果基本用法可参照DemoPresenter //添加图片 List<PhotoData> photoDataList = new LinkedList<...转载 2019-05-09 10:42:38 · 1366 阅读 · 0 评论 -
30岁的程序员,你慌了吗?
在简书上面看到一篇文章写得非常好,拿来共勉一下,也算是激励一下自己,其实我很懒惰。对于一个在持续学习和成长的前端来说,30岁并不是什么坎。有几个问题,我们得想明白。请开始提高你的单位时间价值你可能曾经这么想过,如果我一个小时可以挣100块,那我每天多工作一小时是不是就可以多挣100块,于是我在拼命加班,挣那个加班费,或者接些私活,熬夜挣个辛苦钱。现在千万不要有这种想法了,你拼了命加班...转载 2019-05-10 15:35:43 · 268 阅读 · 0 评论 -
JavaMail发送邮件最全示例 email
最近用到了,懒的转载了,直接做一个跳转链接吧,还请见谅。原博主博客地址PoJavaMail 学习笔记总结(很有借鉴意义)转载 2019-05-21 16:56:43 · 987 阅读 · 0 评论 -
使用 WorkManager 管理后台任务【包括定时】
作为 Android Jetpack 中的新组件,WorkManager 负责用来管理后台任务,它和一个异步任务以及 Service 有什么区别呢?看完你就知道了。相关类我们先来看看 WorkManager 相关的几个类:Worker 任务的执行者,是一个抽象类,需要继承它实现要执行的任务。 WorkRequest指定让哪个 Woker 执行任务,指定执行的环境,执行的顺序...转载 2019-05-17 11:24:10 · 3940 阅读 · 0 评论