自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 超简单的Android圆形进度条

效果图:代码优化/简化、教科书级别注释、复制粘贴即可用代码:package com.zistone.factorytest0718.view;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.Rect;import android.gra

2021-02-23 15:31:11 9628 5

原创 Android柱状图(纯手撸、可左右滑动)

前言:Android本身是没有柱状图这个控件的,不过网上有不少强大的开源库,酷炫又方便,这里不再赘述。效果图:(标清+大水印)凑合着看代码:皆尽所能的优化/简化了代码,实际代码量就两百来行,教科书级别的注释,复制粘贴就能用package com.zistone.factorytest0718.view;import android.content.Context;import android.graphics.Canvas;import android.graphics

2021-02-22 17:01:50 1618 3

原创 最简单的方式实现ListView多选

仅仅是实现多选的话其实还是蛮简单的,BaseAdapter+ListView即可实现。效果图代码一、ListView添加选择属性为多选<ListView android:id="@+id/lv_device_steelUpdateBind" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="5sp" android:choiceM

2021-01-05 16:20:54 1240 2

原创 XamarainForAndroid调用SO的方式之一

以下篇幅只是一个思路,并不是最优解、不提供代码一、打包Jar打Jar包的方式有很多种,我这里用的一个上古时代的Eclipse,把调用SO库的Java文件打成Jar包。二、生成DLL建一个Android绑定库的项目用来生成DLL在Android绑定库的项目里把生成的Jar添加至Jars目录下给Jar设置属性:不复制、EmbeddedJar重新生成一下应用程序DLL就自动生成了,在bin/Debug下三、导入DLL和SODLL属性:始终复制、内容.

2020-09-25 14:16:50 684

原创 APK安装失败:Failed to extract native libraries, res=-2

项目中使用了SO库就会导致打包后的APK安装失败,遇到好几次了,索性写下来加深一下印象。需要在AndroidManifest.xml加上android:extractNativeLibs="true"属性,网上有人说是去掉android:extractNativeLibs="false",但是你都没有这个属性。。。重新打包安装Success...

2020-09-24 09:42:20 9769 2

原创 支持Android和PC的DES、SM4的ECB模式的加解密

代码在Android端和PC端均已验证过测试数据为16进制,Base64自己转一、效果图二、代码DES的实现1、手动实现/** * DES算法的ECB模式的加密、解密 * 注意:ECB模式下没有IV(偏移量) * 注意:因为使用的填充模式是NoPadding,参数传入前判断是否对齐,否则异常 * * @param dataBytes 如果是加密则代表明文,如果是解密则代表密文 * @param keyBytes 密钥 * @param mode 加

2020-09-03 09:50:12 2738 3

原创 Android7.0及以上在程序启动的时候安装第三方APK

参考众多大神的博客后简化出来的,代码不多、一共四步,有问题欢迎交流。一、AndroidManifest.xml里添加<!-- 7.0之后禁止在应用外部公开file://URI,这里使用FileProvider类临时访授权 --><provider android:name="android.support.v4.content.FileProvider" andr...

2020-05-04 14:47:39 417

原创 Android判断是否挂载外置SD/TF卡

如果程序启动前就已经挂载了卡,那么需要使用StorageVolume类的反射来实现!因为广播的方式只能在程序启动后检测到卡的插/拔,所以合理的方式应该是同时使用广播和StorageVolume类。StorageVolume类:/** * 判断外置sd卡是否挂载 * * @return */private boolean isExistCard() { boolean resu...

2020-03-13 10:02:05 1510 4

原创 记一次Location specified by ndk.dir (xxx) did not contain a valid NDK and and couldn't be used的解决技巧

异常:原因:导致异常的原因有两个:1:路径的格式不对(其实一开始就想到这个问题了,我是直接用NotePad++打开的导致没有错误提示)2:要具体到ndk的版本解决!!!...

2020-03-12 10:17:06 8868 1

原创 记一次GenerationTarget encountered exception accepting command : Error executing DDL的解决技巧

将生成的SQL语句复制到图形化界面工具,我这里用的是Navicat Premium,然后美化SQL(格式化)一下,这样就是一个字段一行,方便后面排查错误。字段名是黑色的即合法的,蓝色的则是保留字段。所以column和row这两个字段是保留的,改掉就行了。...

2020-02-20 11:13:19 1785

原创 Android6.0的BLE通信

前言:从Android 6.0之后,想要扫描低功率蓝牙设备应用除了蓝牙权限还需要拥有访问设备位置的权限,不然在扫描的时候会抛异常SecurityException: Need ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission to get scan results,另外,使用6.0的API不需要注册广播,不需要注册广播,不需要注...

2020-01-14 19:24:34 1760 3

原创 Android6.0的BLE以Notify的方式接收数据

Log欲善其事,先利其器。推荐一款功能强大的测试工具:nRF Connect一般情况蓝牙设备所有的UUID都是硬件工程师提供的,但也有例外,比如和我对接的硬件工程师连UUID是什么都不知道……那你就需要自己动手丰衣足食,使用nRF Connect这款工具来查看你的设备的UUID。一、使用的Android自带的bluetoothimport android.bluetooth....

2019-11-08 11:01:12 5662

原创 @LastModifiedDate不起作用的解决办法

在实体中添加注解 @EntityListeners(AuditingEntityListener.class)监听实体变化 在自动更新时间戳字段增加 @LastModifiedDate 在Spring boot启动类增加注解 @EnableJpaAuditing启用JPAp审计(自动填充默认值) 如果你是使用JPA的save(实体)方法去更新数据是没有问题的,如果是使用...

2019-09-03 11:32:02 10706

原创 只使用NDK将C/C++编译成SO

机器配置不行,这里就不用AndroidStudio了,只是用下它里面的NDK。没必要专门去官网下载一个NDK!因为AndroidStudio本身是自带有NDK的。在自带的NDK里面有个ndk_helper目录,除了Android.mk文件,还有一些示例。我这里只取三个文件作修改后即可用。在ndk-bundle下新建一个名为jni的目录,将上面的这些文件都复制一份到里面。这是因...

2019-08-27 16:57:00 2762

原创 XamarinForAndroid调用SO的思路

开始前先整理下思路,先分两种情况:有源码SO是Linux下的文件,但我们是在Windows下开发,那么生成它一般都是借助NDK编译生成。但是这里使用的是Xamarin开发Android,所以最便捷的方式是编译成DLL库供调用,而不是编译成SO。无源码一、使用JNI的方式调用SO,测试成功后打包成Jar包二、使用Xamarin自带的“绑定库”功能将Jar包包含进去,生成DLL供调...

2019-08-27 11:36:11 1481

原创 CentOS里用命令行运行不挂断的Java程序

运行不挂断的Java程序cd到你Jar包所在的目录,执行命令nohup java -jar xxx.jar && :在后台运行nohup:不挂断的运行,就是指用nohup运行命令可以使程序永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意nohup没有后台运行的意思!&才是后台运行然后显示信息nohup: ignorin...

2019-08-23 15:22:54 527 1

原创 用IDEA把SpringBoot项目打包成Jar包运行

先看运行结果再贴下配置信息,工具和框架的版本都不算老吧。一、pom.xml里的打包方式改成Jar包二、确认一下pom.xml里有没有导入Web开发所需要的相关Jar包三、再确认一下pom.xml里有没有打包用的Maven插件四、按着我的高清大图一步步走,绝对成功,相信我再说一遍:建议将MANIFEST.MF放到src的根目录下!!!如果出...

2019-08-22 17:38:07 579

原创 Java的Socket实现长连接以及数据的发送和接收

做个笔记,在接收16进制数据的时候乱码了,原因是没有转byte[]发送。既然是长连接就免不了心跳检测,这里使用了一种比较简单的做法:服务端对当前线程计时,如果超过某个时长没有收到任何数据就关闭该线程对应的Socket。代码复制粘贴即可运行。发送时:将16进制的String转byte[]接收时:将读取到的byte[]转为16进制的String运行结果客户端impor...

2019-08-01 18:56:39 13595 5

原创 Node.js报错信息Error: Cannot find module 'XXX'

在桌面新建一个记事本里面写上我们熟悉的HelloWord保存为后缀为js我写的只是个HelloWord而已,不涉及到任何包管理工具,所以也别去折腾什么NPM了,这个错误只是单纯的找不到文件。简单的解决办法:在桌面空白处摁着Shift键不放鼠标右键,选中在此处打开命令窗口然后再编妥妥的,或者在DOS界面键入路径。总结:其实就是个路径的问题啦~...

2018-03-23 14:59:21 11380 1

loading.gif

正在加载的GIF图(灰白、圆形、64*64)

2020-09-11

Android_Dependency的Jar包

Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需 要用Java反射。android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用PackageManager的API。

2020-03-17

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

TA关注的人

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