自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(114)
  • 收藏
  • 关注

原创 Mac查看so文件的NDK版本

进入自己的Android/sdk目录 查看本地可用ndk版本:find . -name "*readelf" | grep aarch64 根据电脑配置选择一个进行使用并查询: -p .note.android.ident./ndk/21.1.6352462/toolchains/llvm/prebuilt/darwin-x86_64/bin/aarch64-linux-android-readelf xxx.so -p .note.android.ident...

2022-05-31 17:54:22 894

原创 设置容器圆角问题记录

今天给WebView设置圆角时失效,查阅资料都是自定义WebView,提供另一种思路,直接给外层FramLayout设置,直接上代码。private fun setCorner() { val outlineProvider = object :ViewOutlineProvider() { override fun getOutline(view: View, outline: Outline) { val left = 0 .

2022-05-30 16:08:27 218

原创 MMKV源码解析

基于version:1.2.51、初始化 2、获取MMKV实例 1、MMKV内部构建 文件映射:m_metaFile 载入数据:loadFromFile 3、写入:encode 在缓存中找到了 扩容 最后的写入操作:doAppendDataWithKey 4、读取:decode 5、其他:多进程、文件锁等1、初始化链路:MMKV.java:initialize->jniInitialize→native-bridge.cpp:ini

2022-03-23 22:04:16 1730

原创 Glide多图切换时的闪动问题优化

引:最近头儿给了个反馈,让我优化下:一个imageView上点击按钮切换展示另一张图片时会闪动一下。首先进行了验证,提前做的预缓存图片是生效了的,因为本地图片打印已经存在了,但是首次切换时还是会闪一下白屏。针对这种从本地图加载到内存进行展示时的场景做了两点优化。1、推进图片压缩,使用web-p或者更小尺寸图片进行图片展示,因为项目原有架构支持url转web-p-url所以直接使用了前者,其实若服务器不支持的话也可以自己做一些压缩2、使用前一张图片做为过渡图片去除中间闪白: .

2021-11-30 16:57:25 893

原创 手机无线调试

前置准备1.手机和电脑连接相同wifi(亲测在相同局域网下就可以)2.手机开启usb调试第一步手机连接电脑,输入:adb devices命令,确认手机有连上电脑第二步输入:adb tcpip 端口号,为手机设置一个Tcp/Ip 的侦听端口成功配置端口号后就可以断开数据线第三步获取手机的ip地址:设置–wlan --高级设置 --查看ipv4地址第四步输入:adb connect ipv4地址:端口号,开启无线连接...

2021-07-19 15:04:09 2331 2

原创 日历行程插入记录

借助本次与h5的活动联调需求,梳理下从查询日历权限->权限申请→完成插入反馈的整个链路兼容版本权限配置包括两部分1、清单文件 <!-- 日历读写权限 --><uses-permission android:name="android.permission.READ_CALENDAR" /><uses-permission android:name="android.permission.WRITE_CALENDAR" />

2021-07-16 14:30:56 529

原创 git:去除中间某次的commit

git:去除中间某次的commit1、找到该项的前一次commitId2、git rebase -i commitId3、进入:此时点击i进入编辑状态4、首个pick对应的commitId改为d5、shift+: 切换选项,输入wq退出编辑6、git push --force-with-lease强制推送...

2021-05-11 15:47:47 1063

原创 JSONObject中是否有该字段

JSONObject jsonObject = jsonArray.getJSONObject(i);jsonObject.isNull("scheme")不要直接jsonObject.get("xxx"),不然会崩溃

2020-07-18 14:55:54 864

原创 ABIs [armeabi] are not supported for platform. Supported ABIs are [arm64-v8a, armeabi......

今天导入项目是遇到了一个报错信息,ABIs [armeabi] are not supported for platform. Supported ABIs are [arm64-v8a, armeabi...导入的项目有点厉害,竟然想支持全abi,但项目run不起来,Android来说只留一个或两个就ok了// abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'

2020-07-01 13:52:38 739

原创 Android权限申请流程及遇到的坑

今天遇到了个问题,其实原来也遇到过,但是好长时间没有碰到了,有些遗忘。今天正好有点空,特整理下申请流程整理下权限动态申请流程:1、检查是否获取该权限 int result = ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION);检查后会返回响应值,如果未授予需要继续我们手动申请2、申请权限/先弹框解释让在申请 final String[] pers.

2020-06-01 17:40:51 771

原创 ArrayList使用的坑

其实这也是老生常谈的问题,但奇怪的的是最近几年在开发时都没遇到过,所以今天是个特殊的日子。场景:比如后台返回一个列表,值可能为空,前台自己过滤伪代码 ArrayList<People> strings = new ArrayList<People>(); strings.add(new People("")); strings.add(new People("")); strings.add(new Peop

2020-05-26 21:37:23 345

转载 jar中v4冲突

记录一个小的解决办法,备用https://www.cnblogs.com/renhui/p/10767721.html

2020-05-18 11:08:31 118

转载 android与js交互问题

https://blog.csdn.net/chen1026241686/article/details/90511834

2020-04-11 13:43:26 145

原创 Android键盘删除键问题

今天开发遇到一个问题,输入框里为空时按键盘的删除键程序退出了,最后发现在重写了系统的onKeyDown方法里写了其他操作。修正如下。 @Override public boolean onKeyDown(int keyCode, KeyEvent event) { if (event.getKeyCode() != KeyEvent.KEYCODE_DEL) {...

2020-03-13 17:18:53 944

原创 Android gradle build时出现Duplicate resources等错误

今天编译cocos2dx导出的工程的时候什么也没改莫名其妙的就给来个报错。一吨的错误日志,看着头疼其中有一条Duplicate resources...大概意思就是重复定义了资源,编译时检测到了。解决办法,在android标签里加上lintOptions { abortOnError false}加完之后可能还会报错,clear->rebuild一下就...

2020-03-11 10:41:25 4231

原创 Android从后台切换回来页面改变问题

今天开发遇到一个小问题,程序登录状态失效所以从首页跳转到登录页,但是按Home键后点击应用图标应用确仍然打开首页面,没停留在登录页。最后检查发现首页使用了SingleTask启动模式,干掉就正常了。有什么其他好的办法欢迎评论。...

2020-03-10 17:08:15 626

原创 切换到后台显示多个task

调试应用时,应用切到后台时展示了两个进程,后来发现是在用cocos2dx导出的工程中Activity配置了taskAffinity选项,一般其余singleTask配合使用指定任务栈,具体看这里 点我处理方法很简单,去掉他就行了...

2020-03-09 15:25:54 433

原创 Cocos2dx Android工程物理返回键失效问题

最近在对接Cocos工程,遇到了一个小问题,物理返回键点击不起作用,没办法只能自己查原因了。首先看了下页面继承的Cocos2dxActivity,以为它屏蔽了onBackPressed/onKeyDown,但未发现其重写。后来发现其实cocos的页面是空值surfaceview完成页面渲染等工作,怀疑是其屏蔽了onKeyDown找到Desktop/jsb-default/fram...

2020-03-06 16:37:22 354

原创 导入aar报错

今天在集成穿山甲广告时遇到了一个比较奇葩的问题,因为之前app里嵌入的游戏页面是以白鹭引擎转过来的,其sdk里存在.so文件和arr,在引入穿山甲广告的arr文件时报了如下错: Process: com.suyuemobi.kouhong, PID: 24454 java.lang.UnsatisfiedLinkError: dalvik.system.DexClassLoader...

2020-01-20 14:50:58 672

原创 算法学习之树中两个节点的最低公共祖先

题目:输入两个树节点,求它们的最低公共祖先。普通的树:1、我们使用两个LinkedList依次记录从根节点到两个给定节点的路径2、得到路径后,我们对两个路径进行比较,最后一个相等的节点即为所求(添加与取得顺序相反,所以最后一个为最低公共节点) public TreeNode getLastCommonParent(TreeNode root, TreeNode p1, Tr...

2019-12-30 15:49:28 176

原创 算法学习之股票的最大利润

题目:假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?例如,一只股票在某些时间节点的价格为{9, 11, 8, 5, 7, 12, 16, 14}。如果我们能在价格为5的时候买入并在价格为16时卖出,则能收获最大的利润11。思路:因为时间顺序的存在,所以我们只要关系最小值及当前值与最小值的差值即可,遍历正如时间顺序一样一直向后推进 p...

2019-12-26 16:51:58 289

原创 算法学习之圆圈中最后剩下的数字

题目:0,1,···,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。解法一:使用LinkedList仿圆就可以了,很简单import java.util.*;public class Solution { public int LastRemaining_Solution(int n, int m) { ...

2019-12-26 16:24:38 216

原创 算法学习之扑克牌中的顺子

题目:从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王可以看成任意数字。为了方便起见,你可以认为大小王是0。思路:五个数满足下面几个条件即可(使用TreeSet实现自动有序排列)1、剩余数字+0的个数=52、排序后的最大值-最小值<53、没有重复数字import java.uti...

2019-12-26 11:47:43 295

原创 算法学习之n个骰子的点数

题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为s。输入n,打印出s的所有可能的值出现的概率。思路:因为暴力递归效率很低,这里我就没去看了。看一下优化的方法使用for循环有些类似动态规划,因为f(n) = f(k-1)+f(k-2)...f(k-6),意思也就是我们当前所求的n个骰子和为k的次数=和为k-1出现次数+和为k-2出现次数+...和为k-6出现次数的总和。本质就是多投...

2019-12-25 14:57:17 248

原创 Android Studio查看两段代码不同

先复制一段要比较的代码View->Compare With如果是文件比较选上方,如果是代码片段选下方

2019-12-25 14:39:30 339

原创 算法学习之把字符串转换成整数

题目描述将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0思路:思路其实很简单清晰1、判断是否存在+-号,存在就标记下2、正常按顺序存取3、判断边界Integer.MAX_VALUE与Integer.MIN_VALUEimport java.util.*;public class Solution { ...

2019-12-24 17:27:30 193

原创 算法学习之构建乘积数组

题目描述给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。思路:嵌套循环这里就不考虑了,因为时间复杂度n^2,这里有另一种复杂度为n的方法。把第i个数看成是左右两半的成绩,这里偷了张图,方便大家理解(哈哈,自己懒得画了)根据...

2019-12-23 14:44:52 86

原创 算法学习之不用加减乘除做加法

题目描述写一个函数,求两个整数之和,要求在函数体内不得使用+、-、*、/四则运算符号。思路:使用^和&进行操作1、首先使用^进行相加操作,进位不处理,因为二进制只存在0、1所以相同为同为1时此位置变为02、使用&操作配合左移<<进行进位处理3、赋值,进行下一轮操作public class Solution { public int ...

2019-12-23 10:56:48 107

原创 算法学习之求1+2+3+...+n

题目描述求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。思路:短路思想,一看可能不知道是啥,其实就是逻辑与&&的运用public class Solution { // n==0时,&&右侧代码就不执行了。也就是递归到0时就开始结束了并返回0...

2019-12-21 18:14:03 725

原创 算法学习之队列的最大值

题目一:滑动窗口的最大值。给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4],2,6,2,5,1}, {2,[3,4,2],6,2,5,1}, {2,3,...

2019-12-21 15:02:23 334

转载 算法的时间与空间复杂度

https://blog.csdn.net/jsjwk/article/details/84315770

2019-12-21 10:55:47 86

原创 算法学习之翻转单词顺序列

题目一:翻转单词顺序。牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?思...

2019-12-20 13:56:45 146

原创 算法学习之和为s的数字

题目一:和为s的两个数字。输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,则输出任意一对即可。思路,看见有序递增马上想到二分查找,但是本题要求两个数之和等于目标值,所以转为双指针求和,根据相应结果调整指针位置:当两指针位置对应数字之和小于目标值则说明低位的指针过低需+1,反之则说明高位指针过高应-1。import jav...

2019-12-19 11:59:23 201

原创 数组中数字出现的次数

题目一:数组中只出现一次的两个数字。一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1)。思路:巧妙运用异或。0与任何数异或为本身,相同数字异或为01、异或所有数,得到两个不重复的数字的亦或值2、获取得到的异或值得右起第一个1的位置3、通过获取的位置将已知的数据进行反异或,反异或后除了两个...

2019-12-18 15:37:36 144

原创 算法学习之二叉树的深度

题目一:二叉树的深度输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。思路:嘿嘿,递归简简单单几行搞定,有点类似展开树求最大值。/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = ...

2019-12-13 17:43:52 188

原创 算法学习之二叉搜索树的第k个结点

题目描述给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。思路:直接用中序遍历俩获取递增的有序列表就可以了/*public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null;...

2019-12-13 14:01:44 136

原创 算法学习之数字在排序数组中出现的次数

题目描述统计一个数字在排序数组中出现的次数。思路:看到排序树组马上想到二分查找。更爽的是Java为我们提供了apiimport java.util.*;public class Solution { public int GetNumberOfK(int [] array , int k) { int index = Arrays.binaryS...

2019-12-13 10:09:21 173

原创 算法学习之两个链表的第一个公共结点

题目描述输入两个链表,找出它们的第一个公共结点。思路:这题刚开始跟上题一样,直接暴力嵌套,但是太浪费时间了,因为那样时间将为O(n^2)。所以小套路又来了。首先我们发现如果两个链表有公共节点,方便理解这里到了两张图,两个链表等长(图a)或者不等长(图b)。 图a 图b等长的情况比较好处理,起始处不等长的情...

2019-12-10 12:02:07 136

原创 算法学习之数组中的逆序对

题目描述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数P。并将P对1000000007取模的结果输出。 即输出P%1000000007输入描述:题目保证输入的数组中没有的相同的数字数据范围:对于%50的数据,size<=10^4对于%75的数据,size<=10^5对于%100的数...

2019-12-09 21:14:07 149

原创 js根据当前数据或者json导出cvs表格

https://blog.csdn.net/archbaal/article/details/83662947

2019-12-09 19:55:08 111

空空如也

空空如也

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

TA关注的人

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