- 博客(84)
- 资源 (10)
- 收藏
- 关注

原创 常用控件记录
<android.support.v7.widget.CardView android:id="@+id/cv_demo" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="50dp" android:layout_centerInParent="true" app:cardBackgroundColor="@c.
2021-01-05 19:49:10
353
1

原创 long yong linux 命令
关机命令:1、halt 立刻关机2、poweroff 立刻关机3、shutdown -h now 立刻关机(root用户使用)4、shutdown -h 10 10分钟后自动关机如果希望终止上面执行的10分钟关机,则执行:shutdown -c即可。5、shutdown -h 14:15 希望在14:15关闭计算机6、shutdown -r now...
2018-09-14 08:08:50
177

原创 android 编译源码 持续更新
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc lib
2018-09-11 08:55:17
512
原创 若依中整合JodConverter实现文件在线预览
使用@Autowire注入 documentConverter。# 开启多个LibreOffice进程,每个端口对应一个进程。# LibreOffice进程重启前的最大进程数。第三步 配置DocumentConverter。第四步 使用DocumentConverter。解压文字编码和libreoffice。# 设置LibreOffice主目录。第一步 安装Libreoffice。如果安装失败记得更新数据源。安装LibreOffice。卸载LibreOffice。第二步 maven依赖。
2024-08-07 14:25:50
1321
2
原创 定位相关常识高德百度国家地理局
一般用国际标准的GPS记录仪记录下来的坐标,都是GPS的坐标。earth上采集到的是39°31’20.51,那么应该这样换算,31分就是31/60度,20.51秒就是20.51/3600度,结果就是39。earth上采集到的是39°31’20.51,那么应该这样换算,31分就是31/60度,20.51秒就是20.51/3600度,结果就是39。解决方案:请确保采集到的数据是哪个坐标体系,需要转换到哪个坐标系,再进行坐标转换。A、原始坐标系弄错,比如以为自己是GPS坐标,但其实已经是GCJ-02坐标。
2023-08-23 15:58:20
432
原创 通过usb利用adb实现android手机和pc机通信
如:adb forward tcp:8000 tcp:9000 的意思是,将PC端的 8000 端口收到的数据,转发给手机中的 9000 端口。(3)启动PC端应用,连接端口为8000的 server(adb 创建的)之后,就可以传输数据了。(3)adbd 进程将数据发送给端口为9000的 server(手机端应用创建的)传递是双向的,(2)启动手机端应用,建立端口为9000的 server,并处于监听状态(LISTENING)(1)PC端应用将数据发送给端口为8000的 server(adb 创建的)
2023-01-12 17:18:35
3549
原创 使用Fiddler进行手机抓包
方法二:在fiddler主界面,将鼠标移到【online】上面,就可以查看本地的IP地址了,如果你的fiddler没有显示【online】,可以通过【fiddler菜单——View——Show Toolbar】将【Show Toolbar】勾选中,就会显示【Online】信息了。一个手机可以安装多个证书,但是每安装的一个证书里面都设置有IP地址,所以:安装的证书和电脑IP是一一对应的,当前的这个证书只能针对某一台电脑使用,更换电脑后,该证书将不能使用,只能重新安装与更换的电脑的IP相同的证书才能使用。
2022-11-10 15:53:26
6550
原创 andoird基础-事件分发
在 Activity 的 dispatchTouchEvent 方法中拦截消息后,消息会直接断掉,不会往任何地方传递,只有 Activity 的 dispatchTouchEvent 方法收到 ACTION_DOWN 消息。当 dispatchTouchEvent 方法,返回 false 时,首先会拦截 ACTION_DOWN 消息,消息不会继续传给子控件,而是传给父控件的 onTouchEvent,然后继续回传。同样,如果 onTouchEvent 方法没有拦截继续拦截消息,则消息会继续传递。
2022-10-15 16:31:46
813
转载 宝塔linux解决无法启动Nginx的问题
后来去官网搜寻,发现是依赖的问题。以下是相关代码,自行根据需要在终端执行就可以解决nginx问题了。rpm -i --nodeps gd-2.2.5-7.el8.x86_64.rpm #忽略依赖安装。前几天在使用宝塔安装Nginx的时候遇到了一个问题。全部执行后就可以完美解决相关问题了。成功解决的话,留下一个赞吧。缺失libtiff.so.5。缺失libXpm.so.4。缺失libgd.so.3。
2022-09-25 15:27:03
2870
原创 SnapHelper翻页效果两行代码带你实现不一样的RecyclerView
比如我们实现的第一个效果,当RecyclerView处于静止的时候,SnapHelper处理的方式就是把停止后的Item的中心依附于RecyclerView的中心。当我们进行滑动的时候,RecyclerView中的Item停止的位置是取决于你滑动时的速度(Fling),可能会出现的情况是最终我们停止的位置可能位于两个item之间,当然也有可能正好位于某个item的中间。效果滑动停止后Item的中心会被附加到RecyclerView的中心,说的直白点就是滑动停止后会显示一个完整的Item。...
2022-07-30 13:41:11
1163
转载 在mt6735中添加新的开机logo与开\关机动画
制作一组图片平时我们看到的动画以及其他视频,其实是由一张张图片循环播放而来的,每播放一张图片叫“1帧”,一般用1秒播放多少张图片来计算帧数,比如1秒钟播放12张图片,就是12帧。注意制作的图组比如part0,至少一张,无上限,但是图片太多,开机会很慢,一组图片要是帧数的整数倍,比如12帧,一组可以12、24、36张图片。注意关机动画生成的是system/media/shutanimation.zip开机动画则是system/media/bootanimation.zip,修改时注意两者的区别。...
2022-07-27 09:15:48
464
原创 Ubuntu16.04搭建mtk6737 安卓7.0 MTK 编译环境搭建
安装Ubuntu16.04安装远程ssh安装java 8报错有如下无法定位:libwxgtk2.8-dev mingw32lib32bz2-1.0 lib32readline-gplv2-dev在 Ubuntu16.04 中libwxgtk2.8-dev 已经升级为 libwxgtk3.0-dev;lib32bz2-1.0 已经升级为 libbz2-1.0:i386;lib32readline-gplv2-dev 已经升级为 lib32readline6-dev;所以:mingw32
2022-07-08 17:48:08
455
原创 Linux ubuntun 手动安装配置OpenJDK1.8
下载、解压JDK配置JAVA_HOME环境变量在主目录下输入以下命令,配置java环境变量添加完成后按Esc键输入:wq保存退出,输入以下命令使环境变量生效查看java版本查看系统版本
2022-06-23 09:58:53
875
原创 Android不同应用之间实现共享数据
Android不同应用之间数据的共享有许多方式,但是我觉得还是使用sharedPreference比较简单和轻量级。如果程序B想要访问程序A的sharedPreference可以通过下面的语句来实现当然在A程序里创建SharedPreference的时候也需要使用Context.MODE_WORLD_READABLE属性。另外 SharedPreference还有Context.MODE_WORLD_WRITEABLE属性。根据SDK的解释,就是允许别的应用程序来对 SharedPreference进行写
2022-06-15 09:04:35
2397
原创 若依SpringBoot2.x配置HTTPS访问同时支持HTTP
SpringBoot2.x配置HTTPS访问,总体上可以分为两大步:一.生成SSL证书;二.配置HTTPS访问。一.生成SSL证书取得SSL证书的方法有:(1)阿里云购买免费的ssl证书 (2)用命令生成ssl证书命令生成证书生成客户端证书二.配置HTTPS访问将证书文件:client.p12复制到resources目录下修改application.yml修改启动类添加servletContainer()和initiateHttpConnector()两个方法,完整代码如下:启动Spr
2022-06-07 11:26:18
5419
3
原创 tomcat开启https访问
tomcat设置https端口时,8443和443区别:相当于 配置里8080和80的区别一样:关于证书的获取可以直接使用命令获取keytool -genkey -v -alias testKey -keyalg RSA -validity 3650 -keystore /tomcat/tomcat/test.keystore也可以用第三方获取详见阿里或者腾讯获取证书在tomcat中配置https1).把keystore证书上传到你的tomcat服务器上(如果你的tomcat在本地,那么不移
2022-06-06 16:42:40
2613
原创 Linux部署环境搭建redis5.0.5安装
有需要的可以去官网上下载安装:https://redis.io/一:下载下载命令: wget http://download.redis.io/releases/redis-5.0.5.tar.gz二:解压解压到 /usr/local 目录下解压命令: tar -zxvf redis-5.0.5.tar.gz -C /usr/local/进入 /usr/local/redis-5.0.5 目录下,进行编译:进入目录: cd /usr/local/redis-5.0.5 编
2022-05-05 17:57:29
1357
1
原创 HuTool的使用
https://hutool.cn/Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;...
2022-04-14 08:50:08
849
原创 springboot关于@value的使用
首先说明一下 @value的本质问题Spring 依赖注入 是依赖 set方法set方法是 是普通的对象方法只能在setAppId方法上加注解,另外class需要加 @Component等注解,这样spring才能扫描到mport org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component; @Componentpublic class GlobalVal
2022-03-24 16:20:07
934
转载 Android性能优化之UncaughtExceptionHandler定制自己的错误日志系统
前言:每当我们app测试的时候,测试人员总是对我们说这里崩溃了,那里挂掉了!我们只能默默接受,然后尝试着重现bug,更可悲的是有时候bug很难复现,为了解决这种现状所以我们要尝试这建立一个自己的bug日志系统。实现原理:Java为我们提供了一个机制,用来捕获并处理在一个线程对象中抛出的未检测异常,以避免程序终止。我们可以通过UncaughtExceptionHandler来实现这种机制。具体实现:public class CrashManager implements UncaughtExcept
2022-03-08 10:45:06
820
原创 android的基本使用和常见问题
对Android中的finish()方法的简单使用finish()官方解析:Call this when your activity is done and should be closed. The ActivityResult is propagated back to whoever launched you via onActivityResult().也就是说,当你打开的Activity已经执行完成并且需要被关闭的时候可以调用这个方法,当你按返回的时候,他将返回到当前Activity的发起者。
2021-12-06 11:44:53
117
原创 svga2.6 引入编译报错 解决方案
加入//SVGAimplementation’com.github.yyued:SVGAPlayer-Android:2.6.1’编译老是报错
2021-11-24 15:44:25
845
转载 JAVA的(PO,VO,TO,BO,DAO,POJO)解释
java的(PO,VO,TO,BO,DAO,POJO)解释PO(persistant object) 持久对象在o/r映射的时候出现的概念,如果没有o/r映射,没有这个概念存在了。通常对应数据模型(数据库),本身还有部分业务逻辑的处理。可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。VO(value object) 值对象通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应是抽象
2021-11-24 09:37:58
262
原创 计算机基础知识
什么是掩码?什么是掩码?简单来说掩码就是一串二进制码。比如:00000101。就是个数字。掩码的作用是用来存储和操作“状态(State)”。大致用法和逻辑总结:用二进制码存储状态,通过位运算(&, |, ^, ~, >>, << 等)来操作状态。为什么使用掩码?掩码其实只是一种定义。为什么使用掩码其实本质是为什么使用二进制和位运算。在计算机编程中,直接做二进制运算——即位运算的效率更高。而且表达上更简洁。缺点可能就是理解起来比较难一点。理解:二进制代码 一位代表
2021-11-03 11:22:24
284
原创 anroid 数据库 LitePal
LitePal 数据库的关系查询的时候LitePal.find(PcmAMeasurePointDb.class, it.getId(), true);true 只能查询到一级的关系 再深的话不能查询不到 需要再次使用查询语句查询
2021-10-10 10:28:48
75
原创 树莓派4B基础
Linux/树莓派raspbian 32/64查看getconf LONG_BITgpio 查看和状态32位系统执行下面的命令安装:wiringPi updated to 2.52 for the Raspberry Pi 4Bcd /tmpwget https://project-downloads.drogon.net/wiringpi-latest.debsudo dpkg -i wiringpi-latest.debgpio -v64为系统需要手动编译:sudo apt-get
2021-09-27 11:27:19
530
原创 python基础学习笔记
Python注释python中单行注释采用 # 开头。python 中多行注释使用三个单引号(’’’)或三个双引号(""")。学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。Python 标识符在 Python 里,标识符由字母、数字、下划线组成。Python列表列表中值的切割也可以用到变量
2021-09-25 16:29:18
295
原创 mtk6735(8735)LCD屏幕显示90°旋转
需要做系统底层的修改,具体实现方法如下(以实际项目为例):480*800 Lcd旋转90°更改MTK_LCM_PHYSICAL_ROTATION的值MTK_LCM_PHYSICAL_ROTATION = 90所涉及到的文件有:bootable/bootloader/lk/project/xxxxxx.mkdevice/raindi/xxxxxx/ProjectConfig.mkkernel-3.10/arch/arm64/configs/xxxxx_defconfigkernel-3.10
2021-08-14 11:36:08
1053
原创 安卓蓝牙通信
这篇文章使用的是传统蓝牙的技术,Android4.0以后推出了BLE蓝牙机制。开始我也下尝试使用BLE实现两台平板间数据传输。但是仔细深入了解以后,BLE分外围设备和中央设备,通常我们手机连接手表或者一些智能设备都使用BLE的方式进行的数据传输。但是手机和手机通过BLE方式传输会有一个问题,需要我们自己将其中一台设备通过API处理成模拟外围设备,但是我在将一台设备模拟成外围设备进行数据传输的时候还是无法成功发送数据,网上很多地方说Android自身不支持手机和手机间通过BLE传输数据,但我也没有在官网找到明
2021-07-24 16:38:17
589
1
原创 MTK平台如何兼容多个LCD
LCD兼容方案受限于硬件资源,通常一台整机都会兼容多个器件。LCD也不例外,本文以MTK6739平台为例进行分析,如何兼容多个LCD。基本的LCD兼容就不多做说明了,可以参考MTK驱动文件Driver_All_in_One中如何配置lcd的方法。方案1:硬件读ID方案硬件读ID分为两种,一种是读取GPIO口,一种是读取ADC口。如下原理图中LCD_ID接的是MTK6739平台的AUXIN2 ADC接口。2.软件通道确认。使用ADC2(AUXIN2)进行客制化时,请注意channel..
2021-07-19 16:04:51
1131
1
原创 MTK平台充电调试总结
摘要:调试电池的充放电管理,首先需要深入了解锂电池的电池原理和特点,充放电特性以及基本的电池安全问题。然后需要对MTK的电池管理驱动程序有深入的了解,理解电池充放电算法的基本原理。在此基础上,对充放电导致的问题进行调试优化。 ...
2021-07-13 15:21:19
4635
3
原创 mtk调试
UART Log在USER版本上是默认关闭的,ENG版本则默认打开。由于UART Log对Performance有影响,所以对于一些Performance的测试我们都会要求关闭UART log进行测试对比。在某一些问题上面,UART log对系统的影响也可能导致user版本和eng版本有不同的行为。针对这种差异,我们从JB9.MP这个分支开始做了一个新的feature,ENG版本在开机到Launcher之后自动关闭UART Log,从而使几乎大部分的测试在eng版本和user版本上得到一致的测.
2021-07-09 17:58:27
568
原创 mtk6735常识
除了通过usb可以使用adb,使用网络同样可以。先用usb连接adb服务,输入命令adb tcpip 5555手机就是会显示restarting in TCP mode port: 5555这样,adbd服务就会进入TCP模式,端口5555。电脑端使用下面的命令连接手机adb服务adb connect [ANDROID-IP-ADDR]:5555断开连接命令为adb disconnect [ANDROID-IP-ADDR]:5555切换回usb模式,使用命令adb usb...
2021-07-01 10:58:40
790
原创 java 基础知识 常见错误记录
java byte类型如何存取大于127的整数当我们给b赋值成130后,会出现错误信息,这是因为byte的取值范围时-128到127我们知道130的二进制位10000010,我们把它当成有符号的数值看的话,应该是个负数,而计算机中是以补码的形式存储的数字,因此要在此数值的基础上“符号位不变,其他位取反加一”,然后就是我们所需要的值,取反:11111101,加一:111111110,该数值为-126;最后说一下大于127的整数被存储的简单规则就是用这个数值减去256,比如130-256=-126by
2021-06-17 10:26:08
168
原创 MTK按键扫描原理
一.MTK按键扫描原理:不同的MTK平台内部提供的按键数目各有不同,但是扫描原理大致一样,这里以MTK6253为例来讲解记录。MTK提供6*7共42个矩阵键盘,加上Power键总共43个按键,其中BB芯片引出6根行线ROW,7根列线COL,如下图。下面来说明一下扫描原理:在初始化或是没有按键的情况下,ROW设置为输出,COL设置为输入。BB芯片的内部设有一个按键中断,在没有任何按键的情况下,所有CLO线为高电平,ROW线为低电平,一旦有按键按下,比如key10(ROW1,COL2)有
2021-05-20 14:53:11
1419
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人