- 博客(43)
- 收藏
- 关注
原创 Android开发经典问题,Logcat 缓存太小,导致问题还没分析完成,日志就被循环覆盖了
做了两年UE开发,现在需要重新拾起Android,要不八年Android开发经验就荒废了,太可惜了,所以新买的电脑装上最新Android studio,后面调试问题的时候,发现Logcat日志存储太小,一看这问题还不简单,当年不经常遇到吗?不就改一下Android Studio某个配置参数吗,随便一查,肯定一大堆解决问题的博客,然后一查的确一大堆博客,但是说的都不全面,坑的我都把最新Android Studio都删除了,安装老版本,问题依旧存在。到最后终于解决了,主要有三个地方。
2024-04-08 18:11:48
425
原创 UE4 虚幻引擎 GitSourceControl源码解析
资产的工作量很大,并不是个人在短时间内可以独自完成的,需要大量美术人员长时间的进行团队合作完成的,并且完成一版之后,后续也还有更新维护的需求。所以UE的Editor也提供了对资产版本管理的功能,里面默认包含了Git、LastVersion等功能,如果有需要自己加也完全可以自己加,我公司有需要自己加一个,所以研究了一下UE的GitSourceControl源码,准备抄作业。
2022-09-08 11:39:14
1683
原创 UE 在Editor的资源右键菜单上添加两个按钮
今天接到个任务,需要在Editor的资源右键菜单上添加两个按钮,用来上传资源,一个是默认参数上传,一个是用户输入描述去上传,研究了半天,最后在UE的源码里找到的作业抄了下来,做个记录,由于周五了实在是太累了,不想详细写了,直接贴代码吧,后续有心情再改。...
2022-07-15 20:03:43
755
原创 c++内存泄漏檢測方法
native heap调试方法原理:纯C/C++ 编写的natvie进程,不容易查找内存泄露Google的bionic库为我们查找内存泄露提供了一个很好的API get_malloc_leak_info。利用它,我们很容易通过得到backtrace的方式找到涉嫌内存泄露的地方。我们可以使用adb shell setprop libc.debug.malloc 1来设置内存的调试等级(debug_level).对于不同的调试等级,内存分配管理函数操作句柄将指向不同的内存分配管理函数。函数get_mal
2022-03-10 14:34:04
3030
原创 Flutter项目运行报错,flutter pub get一直通不过
Pub failed to rename directory because access was denied. This may be caused by a virus scanner or having a file in the directory open in another application. pub get failed (1; in the directory open in another application.) Process finished with exit code
2021-12-20 14:42:12
5841
4
原创 荣耀算法题_青蛙跳-c代码
青蛙跳题目描述:给出n阶台阶,每次只可以前进一步或者两步,中途有一次机会可以后退一步,这次机会也可以不使用,到达最后一个台阶一共有多少种走法题目分析最基础的青蛙跳是一组斐波那契数列, 即,: 如果不使用向后跳, 则按照斐波那契数列计算其公式: f [ i ] = f [ i − 1 ] + f [ i − 2 ] f[i]=f[i-1]+f[i-2]f[i]=f[i−1]+f[i−2] , 其中f [ 0 ] = 1. f [ 1 ] = 1 f[0]=1. f[1]=1f[0]=1.f[1]=1
2021-12-01 17:05:33
884
原创 反转链表-Java解法
集成步骤在项目根目录下的 build.gradle 文件中加入在这里插入代码片在项目 app 模块下的 build.gradle 文件中加入dependencies {// 标题栏框架:https://github.com/getActivity/TitleBarimplementation ‘com.github.getActivity:TitleBar:9.2’}...
2021-11-29 17:43:14
153
原创 编译ijkplayer的 openssl,报此错误sh: make: not found
今天去编译ijkplayer,到执行./compile-openssl.sh all,编译openssl的时候报错:sh: make: not found,查了一下,没装make的原因,装一下就ok了。ubuntu下执行 sudo apt-get install make
2021-07-20 17:01:16
285
转载 Ubuntu vi 上下左右变ABCD问题解决方法
Ubuntu vi 上下左右变ABCD问题解决方法错误问题:vi上下左右键显示为ABCD的问题解决方法:只要依次执行以下两个命令即可完美解决Ubuntu下vi编辑器方向键变字母的问题。一.执行命令 sudo apt-get remove vim-common二.执行命令 sudo apt-get install vim...
2021-07-19 16:26:32
749
原创 Android apksigner 手动签名
项目场景:今天的包突然说为了安全,需要加固一下,加固后发现之前的签名无效了,需要重新签名问题描述:采用apksigner签名,但是发现在powershell里面没这个命令,立马想到肯定是环境变量没配置,找了半天发现在build-tools里面,配置到path里面去。 原因分析:配置好环境变量,一定要重启powershell解决方案:具体命令如下:apksigner sign --ks .\platform.jks --ks-key-alias androiddebugkey --ks
2021-07-13 16:12:18
985
2
原创 一秒解决虚拟机Ubuntu的复制粘贴
项目场景:本来之前已经装好虚拟机,解决好复制粘贴问题了,过了很久,忘记之前怎么解决的,今天突然发现虚拟机空间不够了,只能去扩容一下,扩容之后用 gparted 去重新设置分区大小,但是发现不管怎么样都不能重新设置主分区大小,相邻的那个扩容分区又不能删除,查了大半天没办法,后来手贱查到一个把gparted的iso文件下载下来,虚拟机改为CD/DVD启动方式,发现设置分区特别顺畅,想怎么改变大小都可以,当时隐约觉得有坑,但是还是手贱执行下去了,最后虚拟机没了,里面的资料没了,项目还好在git上面有,Fuck,
2021-07-07 16:57:19
2254
原创 添加github的ssh key,方便上传拉取GitHub上的项目
项目场景:要上传拉取GitHub上的源码,用git https的方式很卡,疫苗时机k,在那转着,所以狠把心添加好ssh key,速度快的飞起,至于怎么添加,官方指导非常的详细:https://docs.github.com/cn/github/authenticating-to-github/connecting-to-github-with-ssh/about-ssh但是问题描述:这里要注意并不是你绑定的那个邮箱,其实就是你登录GitHub的登录账号,不是邮箱也行,比如我的就不是邮箱这一步最
2021-07-01 12:20:36
167
原创 Android build:gradle版本为4.1.3,在native层不支持可变参数宏定义。
项目场景:build:gradle 升级后Android native 层代码崩溃,问题描述:我一般都喜欢升级为最新版本,最近把Android studio的build gradle版本升级为最新版本4.1.3,发现项目一运行就会崩溃,崩溃的地方居然是我JNI层的Log打印的地方,查了半天不知所以然,不知为啥,但是摸出了规律,就是Android build gradle版本为4.1.3,在native层不支持可变参数宏定义。builder gradle 为3.5.3 可以正常运行,找了半天不知为啥原
2021-06-16 15:28:01
380
原创 Android(Linux) usb串口通信连接,有轮子源码
系列文章目录Android jni层开发 利用NDK定位崩溃crash 位置.文章目录系列文章目录前言一、TLV协议是什么?二、使用步骤1.引入库2.读入数据总结前言Android usb 串口连接的轮子比较少,只发现了Google 官方有一个,但是比较老了,好像12年前的。并且拓展性不强,也没有基于什么协议来做,正好这段时间我们公司有这个需求,所以我也顺便造个串口轮子,供与大家使用,是基于TLV协议来写,如果你的usb设备并不是用TLV协议来接收发送消息,就需要对源码进行更改提示:以下
2021-05-18 21:33:43
574
1
原创 android c++ 明显定义了,但就是找不到函数
项目场景:Android ndk开发,最近查到jni 层的函数采用动态注册比静态注册效率更高,不用每次调用的时候去jni层搜索函数,注册的时候就建立好了一个映射表,一一对应起来。函数特别多的时候,这个优势就展示出来了。问题描述:这里去注册那些函数的时候,要去申明那些函数的数组,声明好他们的请求参数类型和返回值类型比如JNINativeMethod gNativeAPIMethods[] = { {"setDebug", "(Z)V", (v
2021-04-10 17:51:24
406
原创 ‘jni.h‘ file not found Android ndk 开发遇到的坑
项目场景:Android jni层开发中遇到的问题,ndk 和cmake的工具下载了最新的问题描述:在Android ndk开发中遇到个很奇怪的问题,新加一个 .h文件,老是找不到jni.h 头文件,报’jni.h’ file not found的错误,但是之前文件也不少用到了这个jni.h文件,没有发现错误,并且编辑器里有这个错误,照样可以正常运行代码。而我试着去新加一个 .cpp文件呢,只要同步几次确可以正常引入jni.h文件。百度谷歌搜索了一圈没找到办法。最后没辙忽略这个错误,反正能正常运行
2021-04-10 16:01:19
3284
原创 c++指针研究
1、int p; //这是一个普通的整型变量2、int p; //首先从P 处开始,先与结合,所以说明P 是一个指针,然后再与int 结合,说明指针所指向的内容的类型为int 型.所以P是一个返回整型数据的指针3、int p[3]; //首先从P 处开始,先与[]结合,说明P 是一个数组,然后与int 结合,说明数组里的元素是整型的,所以P 是一个由整型数据组成的数组4、int p[3]; //首先从P 处开始,先与[]结合,因为其优先级比高,所以P 是一个数组,然后再与*结合,说明数组里的元素
2021-04-08 10:54:49
127
原创 占有四个字节整数,安全的换算,不管大端和小端都能换算。
项目场景:今天做Android jni层开发,遇到一个代码一直没看懂,后面请教嵌入式开发人员,才基本弄懂,做个记录问题描述:这个函数可以得到,占有四个字节的int型大小,不管是大端还是小端,大端小端我也没彻底弄明白,大概是arm是大端,x86是小端,两个恰好相反,所以如果强行转换的话有可能就转换的数据不对。通过以下函数就没这个问题。/******************************************************************************Func
2021-03-22 16:22:07
350
原创 线程池执行任务的还会不抛出异常
背景:今天偶然学习到了,竟然线程池执行任务的时候,还不会抛出异常,让同事给我上了一课,立马去Google了一下,还真是这样,不过这里的水很深。看了一篇博客写的很好,不过自己状态不行,没完全通过源码分析的方式理解透彻,先做个记录,后续在好好学一下,免得再次被人上课,创伤… 博客地址:https://www.cnblogs.com/thisiswhy/p/13704940.html...
2021-02-26 15:21:09
324
原创 UVC camera 源码分析-整体框架
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例
2021-01-26 11:17:41
1032
原创 UVC camera 源码分析-整体框架
UvcCamera 这个轮子是日本人造的,GitHub的地址是:https://github.com/saki4510t/UVCCamera里面有有四大块:1、libjpeg;2、libusb;3、libuvc;4、UVCCamera
2021-01-26 10:38:34
431
原创 2021心灵感悟
2021-01-23立个flag:今后有什么心得体会、学到某个知识点,就来发一篇微博,完全抛开一切源头,用自己的话阐述出来,不管憋出来的字有多少,但是一定输出出来。我一直觉得看了某本书籍、某段精彩的文字、某段完美的代码、学习到了某个知识,不管当时感触多深,如果没有及时抛开它,用自己的话去阐述出来,去写出来,就绝对不是自己的东西,能在自己脑子里留下10%就很不错了。但是为啥这么久了,我自己却没落实起来呢?想想毕业这么多年了,博客不超过10篇。GitHub唯一的一个项目,还是靠通过出卖友情,来了个star。跟
2021-01-23 15:47:46
227
2
原创 嵌入式uboot 系统的常用命令
uboot 其实就是个轻量版的Linux,海思的嵌入式基本就是这个系统。1、连接串口的方法,网口模式下用xshell ssh root@192.168.199.1 后面的地址各家厂商不相同,串口模式下,直接把串口连上电脑,等端口出来后要用xshell 设置好属性值2、env/printenv :都是打印当系统环境变量; fw_printenv/fw_setenv(自己也可定义): 可以打印出在uboot中设置的环境变量的值。3、cat、vi、vim 基本也都可以用...
2020-12-04 16:23:55
276
原创 Android jni层开发 利用NDK定位崩溃crash 位置/ Fatal 错误
Android NDK 开发Jni 遇到Fatal 崩溃错误后,怎么定位crash的位置ndk-tack 使用方法1、新建一个文件,比如logcat.txt 用来存储,带有堆栈信息的崩溃日志。2、新建一个文件: 比如crash.log,用来存储通过ndk-stack转换后的日志。3、然后执行命令,网上查询了很多ndk-stack方法,并不管用,后面在stackOverFlow里找到一个恰好我能用的。先自个配置好环境变量。然后在存储logcat.txt 和crash.log 那个文件夹下面执行这个
2020-11-28 17:16:15
1000
原创 ADB通过WIFI连接Android设备
ADB通过WIFI连接Android设备有些设备不支持WiFi调试,关闭了,那是没有办法的,我手上的几个手机都可以,但是同事的华为的手机就…通常情况下,我们都通过USB线连接Android设备,以此达到调试的目的,但是我相信你一定遇到过下面的问题。USB线比较松的时候,ADB经常断开。USB线容易绊脚,这个时候要么人摔倒,要么手机碎屏。如果你的开发环境时Windows系统,当连接USB线...
2020-03-16 14:12:42
396
原创 老铁2019年终总结
2019年回想起来,没干出什么太大的动静来,刚开始从一月到七月一直在学英语,但是基本上是很难坚持高效的学下来,平均下来,每学三四天,就要经过一两天的痛苦期(集中不了注意力,就是不想学习,看着那单词就烦,控制不住自己去打开手机微信、去打开朋友圈、去看看有没有人给我发信息,事实上是啥信息都没有)但是过了一两天低谷期,就会走出来,慢慢的发现可以学下去了,但是可以学下去的状态也不是特别高效,由于那些词汇...
2020-01-01 21:54:42
466
原创 Activity 四个启动模式和若干intent标记,应用场景。
standard 默认模式,可以不用写配置。在这个模式下,都会默认创建一个新的实例。因此,在这种模式下,可以有多个相同的实例,也允许多个相同Activity叠加。例如: 若我有一个Activity名为A1, 上面有一个按钮可跳转到A1。那么如果我点击按钮,便会新启一个Activity A1叠在刚才的A1之上,再点击,又会再新启一个在它之上…… 点back键会依照栈顺序依次退出。应用场景:
2017-06-13 16:50:54
479
原创 AES,RSA,MD5/SHA1,DES区别
**这五个都是加密算法,各有优势,用于各种不同的场景。**AES:更快,兼容设备,安全级别高 RSA:非对称加密,有公钥和私钥 MD5、SHA1:都是不可逆的,防篡改的,用来校验数据真伪的,不是用来加密数据的 DES:本地数据,安全级别低,被废弃了AES:—>更快,兼容设备,安全级别高: 高级加密标准(英语:Advanced Encryption Standard,缩写:AES),
2017-06-06 19:17:39
3300
原创 android SDK Tools跟新后不能用ant进行打包问题,Could not load definitions from resource anttasks.properties. It co
2017年05月份,发现我跟新android SDK Tools 为最新版后不能进行ant打包了,之前都是可以的,打包的时候报的错误是: [taskdef] Could not load definitions from resource anttasks.properties. It could not be found. [taskdef] Could not load definition
2017-05-24 14:30:21
5104
1
原创 Error:Failed to open zip file. Gradle's dependency cache may be corrupt
Android Studio Gradle 的问题.具体问题内容:Error:Failed to open zip file.Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)Re-download dependencies and syn
2017-05-22 10:30:23
2047
原创 android 获取地理位置时为null
发现有很多android 手机获取地理位置,很多时候都不一定能够获取到,并且不一定准确,因为那个位置都是上次获取的时候拿到的,得更新。具体实现代码如下import android.app.Activity;import android.content.pm.PackageManager;import android.location.Criteria;import android.locati
2017-03-16 15:51:40
2170
原创 单列模式导致内存泄漏
Android中常见的内存泄漏汇总 集合类泄漏集合类如果仅仅有添加元素的方法,而没有相应的删除机制,导致内存被占用。如果这个集合类是全局性的变量 (比如类中的静态属性,全局性的 map 等即有静态引用或 final 一直指向它),那么没有相应的删除机制,很可能导致集合所占用的内存只增不减。比如上面的典型例子就是其中一种情况,当然实际上我们在项目中肯定不会写这么 2B 的代码,但稍不注意还是很容易出
2017-03-16 15:41:01
684
原创 Android sdk开发,eclipse和android studio打jar包的简易方法
程序猿们有没有突然间接到这么一个需求,这个项目突然间要做成一个sdk供第三方使用,要供第三方使用的话肯定得混淆编译啦,这里有个小技巧eclipse的编译环境。 1.把需要做成sdk的android项目设置为library,并且在bin下面的jar包拷贝出来。 2.D:\android-sdk\tools\proguard\bin 启动proguardgui.bat 3.input —》 A
2017-03-16 15:36:00
1020
原创 Android 系统级悬浮按钮的实现
具体的需求1、就是做一个系统级的悬浮按钮,就像iPhone 桌面的那个悬浮按钮效果一样,能随意拖动,并且手一放开,悬浮按钮就自动靠边。2、可以点击并且可以随意拖动。3、悬浮按钮自动靠边的时候,或者移动到边上的时候,自动隐藏半边。4、横竖屏切换都兼容实现方法1、就在WindowManager 里面添加View,这个View通过自定义控件来实现。2、在onTouch里的MotionEvent
2017-03-16 15:24:49
7058
4
原创 STAR 面试法则
STAR法则——经典面试工具 回忆下通常的面试场景,下面的词表示什么?1.“我会”2.“一般来说、通常”3.“我们、我的小组、我所属的部门”候选人所讲述的不一定就是行为事例,有可能是他个人的想法或书本理论。非行为事例主要有以下三种类型:(1)含糊事例。如“我时常花时间了解客户经理需求,而且客户经理也很满意”。这里“时常”的表述很含糊,对“了解客户需求”这一行为的时间没有进行具体的描述。(2)主观事
2017-03-14 11:36:24
2114
转载 Android二维码知识汇总
【eoeAndroid社区】二维码现在对大家很是重要,所以特意的整理了有关Android 二维码的知识帖,有实例教程、源码和问答贴,大家有时间可以到这里看一下,多多的学习下。希望能够给大家带来一些帮助。也希望各位同学也能够到社区整理些这种汇总贴,更能方便大家一起学习。帖子我们也会随时的更新,会给大家带来更多的知识。 ====================Android 二维码实例教程======
2017-03-13 18:01:16
681
转载 App自动化之使用Ant编译项目多渠道打包
http://www.cnblogs.com/qianxudetianxia/archive/2012/07/04/2573687.html#随着工程越来越复杂,项目越来越多,以及平台的迁移(我最近就迁了2回),还有各大市场的发布,自动化编译android项目的需求越来越强烈,后面如果考虑做持续集成的话,会更加强烈。 经过不断的尝试,在ubuntu环境下,以花界为例,我将一步一步演示如何使
2017-03-13 17:59:49
638
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人