Android
xiegzds
这个作者很懒,什么都没留下…
展开
-
前端 开发组件
1https://element.eleme.cn/#/zh-CN/component/time-picker#methods2https://avuejs.com/component/radio.html原创 2021-12-22 17:46:42 · 180 阅读 · 0 评论 -
开发常用网站
http://nav.yundashi168.com/原创 2021-12-14 11:51:58 · 384 阅读 · 0 评论 -
Android 根据付款码判断是微信支付还是支付宝支付
```java在这里插入代码片根据前两位返回来的付款码和长度判断```string FormatCode = AuthCode.Substring(0, 2); if ((FormatCode == "10" || FormatCode == "11" || FormatCode == "12" || FormatCode == "13" || Fo.原创 2021-07-20 14:12:34 · 638 阅读 · 0 评论 -
2021-06-11
#Android 引用第三方so文件,打开窜口提示找不到引用的类(需求是引用第三方So文件,項目包名必須和so地一致,要不然用不了so庫,解決方案就是要新建模块并且主项目依赖新建的模块。)1首先要知道要so的命名空间是什么,2创建Android公共库模块, File – New – New Module,在弹出的对话框中选择Android Library3记得包名要和要so的命名空间一致,要不然会找不到jni方法4記得将so文件放到lib下...原创 2021-06-11 11:19:30 · 154 阅读 · 1 评论 -
Android 系统自带Dialog设置title字体大小
安卓系统自带的dialog 没有有settitle的方法private void setDialogFontSize(Dialog dialog,int size){ Window window = dialog.getWindow(); View view = window.getDecorView(); setViewFontSize(view,size);}private void setViewFontSize(View view,int size){ if原创 2021-05-12 14:24:22 · 947 阅读 · 0 评论 -
android 16进制数据转换工具
///** * 16进制数据转换工具 * * @author zch * */public class HexUtil { /** * 16进制数转成字节数组,如:字符N的16进制数是4e,则传入数组{'4','e'},将被转成字段数组,再用new String(byte[] * b)的方法可以打印出N来 * * @param data * @return */ public static byte[] decodeHex(char[] data) {原创 2020-12-18 10:29:52 · 909 阅读 · 0 评论 -
Android 混淆代码后Gson 解析为null
今天遇到一个问题程序打包apk之后 gson解析为null 原因是因为打包混淆出现的bug,记录一下-keepattributes Signature-keep class sun.misc.Unsafe { *; }-keep class com.google.gson.**{*;}-keep class xxx.xxxx.**{*;}#追后一行是javabean的具体目录将这个放到proguard-rules.pro 下...原创 2020-12-15 17:31:11 · 550 阅读 · 0 评论 -
android使用zxing实现自动对焦
接触到一个需求扫一维码的时候很难扫到,后来测试发现,是自动对焦问题。zxing的自动对焦线程始终都在执行,但是硬件无法支持连续自动对焦,而只在扫描界面启动后进行一次对焦,而我们在扫码的时候不可能保证在同一距离下扫码。解决方案:1在 AutoFocusManager类中加入//在这里插入代码片AutoStopTask autoStopTask; public class AutoStopTask extends AsyncTask<Object, Object, Object>{原创 2020-11-17 10:46:47 · 2479 阅读 · 0 评论 -
JSON字符串与HashMap相互转换
将json转map## /** * @param content json字符串 * @return 如果转换失败返回null, */ public static Map<String, Object> jsonToMap(String content) { content = content.trim(); Map<String, Object> result = new HashMap<>原创 2020-11-10 10:31:38 · 1843 阅读 · 1 评论 -
简单实现 6.0权限
一public void requestPermissions(int requestCode) {try {if (Build.VERSION.SDK_INT >= 23) {ArrayList requestPerssionArr = new ArrayList<>();int hasCamrea = checkSelfPermission(Manifest.permission.CAMERA);if (hasCamrea != PackageManager.PERMISS原创 2020-10-26 20:27:24 · 85 阅读 · 0 评论 -
Android studio 查看MD5和 SHA1值
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Ma原创 2020-10-22 16:01:07 · 261 阅读 · 0 评论 -
java.lang.OutOfMemoryError: Failed to allocate a 483498232 byte allocation with 6291456 free bytes
解决方式需要在清单文件的application中加上下面两行代码:android:largeHeap=“true”android:hardwareAccelerated=“false”原创 2020-10-14 17:52:18 · 1300 阅读 · 0 评论 -
java.io.FileNotFoundException: /storage/emulated/0/Pictures/QQ/video.mp4: open failed: EACCES (Permi
今天读取手机内置存储视频的时候出了了异常。后面自己总结了经验解决方式1首先检查AndroidManifest文件下有没有以下权限<uses-permission android:name=“android.permission.WRITE_EXTERNAL_STORAGE” />(2)6.0以上版本需要动态申请权限 如下所示public void requestPermissions(int requestCode) {try {if (Build.VERSION.SDK_INT &原创 2020-10-14 17:50:33 · 5846 阅读 · 2 评论 -
Android 获取内置存储和外置sd卡根路径方法
今天做一个简单的需求,获取手机里面的视频文件百度很多方法都不行,后面通过反射StorageManager获取内外路径。还是挺简单的方法如下private static String getStoragePath(Context mContext, boolean is_removale) {// is_removale false代表获取内置存储 true 代表外置sd卡根路径 StorageManager mStorageManager = (StorageManager) mContex原创 2020-10-14 17:40:22 · 1204 阅读 · 0 评论 -
Android studio data目录不能显示的问题
在打开Android studio中打开Android device monitor时,发现data目录不显示其他文件,如图:当我们去点击/data/目录时,发现什么都没有,这是怎么回事呢?原因在于data权限限制访问。解决方法如下:1、在Android studio的sdk目录中找到platform-tools目录,在这个目录下同时按住shift和鼠标右键,然后选择“在此处打开命令窗口”或者将sdk下的platform-tools添加到环境变量中,具体怎么配置环境变量我就不介绍了。2、输入adb原创 2020-09-24 14:25:44 · 3198 阅读 · 0 评论 -
android 状态栏为白色的时候图标不显示的解决方案
今天设置状态栏为白色的时候 状态栏图标不显示的问题百度了一下网上各种说法有些说的很复杂,最终找到一个简单粗暴的解决方案就是状态栏为白色的时候让图标显示为深色就行了。还是挺简单的具体看下面的代码if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { Window window = this.getWindow(); window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS原创 2020-09-08 11:05:13 · 1752 阅读 · 2 评论 -
wifi调试 安装apk
adb tcpip 5555adb connect 192.168.1.6adb disconnect 192.168.1.6adb usb原创 2020-07-09 17:01:55 · 319 阅读 · 0 评论 -
Android 清单文件设置禁止 软键盘弹出无效
清单文件 android:windowSoftInputMode=“adjustPan|stateHidden” 这个属性发现无效这时候去查找原因可能是其他地方设置了getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);全局收搜setSoftInputMode将这个注释掉就可以了...原创 2020-07-07 15:29:17 · 251 阅读 · 0 评论 -
运行没问题 打包出现Execution failed for task ‘:app:transformClassesAndResourcesWithProguardForRelease‘.
点击上面看详细信息如下图解决方案:build日志网上找警告WarningWarning: com.iflytek.voiceads.update.d.c: can’t find referenced method ’在proguard-rules.pro里面添加-dontwarn com.iflytek.**原创 2020-07-01 15:45:07 · 787 阅读 · 0 评论 -
Android点击通知栏 ,移除通知
通过点击系统通知栏移除 通知只需要一个方法Notification notification = new Notification();notification.setAutoCancel(true);原创 2020-06-05 16:52:00 · 1925 阅读 · 0 评论 -
Android 通过文件路径直接修改文件名
今天遇到一个录制视频需要修改文件路径的,因为开始录制视频的时候已经生成文件名称才去录制视频,解决办法就是录制视频结束后根据文件路劲修改文件名下面直接贴代码/*** 2 * 通过文件路径直接修改文件名* 3 ** 4 * @param filePath 需要修改的文件的完整路径* 5 * @param newFileName 需要修改的文件的名称* 6 * @return* 7*/public static String FixFil原创 2020-05-15 13:17:46 · 1601 阅读 · 0 评论 -
Android 生成MD5文件
今天遇到一个需求就是上传文件是要为MD5的文件,为了减少服务器压力。/*** SD卡文件MD5文件校验** @param file* @return*/public static String fileMD5(File file) { try { byte[] hash; byte[] buffer = new byte[8192]; ...原创 2020-05-07 15:26:44 · 453 阅读 · 0 评论 -
Android 获取OnItemClick item点击 事件中组件的内容
public void onItemClick(AdapterView<?>parent, View view, int position, long id)// parent是识别是哪个listview;// view是当前listview的item的view的布局,就是可以用这个view,获取里面的控件的id后操作控件// position是当前item在listview中适...原创 2020-04-29 14:48:29 · 1374 阅读 · 1 评论 -
Android从一个APP跳转到另一个APP的主界面或某页面
private void startNormalTest() {String packageName = “应用包名”;String activity = “应用包名.类名”;ComponentName component = new ComponentName(packageName, activity);Intent intent = new Intent();intent.setC...原创 2020-03-31 11:46:49 · 2504 阅读 · 0 评论 -
自定义键盘 KeyboardView的key 文字颜色发虚模糊
在key的xml中设置key文字不用keyLabel ,而用keyIcon,即用图片来代替文本,但是这种方法比较笨2.最简单的是在keyboardview中设置两个属性即可: android:shadowColor="@color/c_white" android:shadowRadius="0.0"shadowColor 设置跟你按键的背景色一致即可!...原创 2020-03-30 14:17:23 · 466 阅读 · 0 评论 -
android.os.FileUriExposedException: file://xxx
今天遇到一个下载安装apk失败是因为Google反对放宽私有目录的访问权限的,所以收起对私有文件的访问权限是Android将来发展的趋势。Android7.0之后直接使用本地的根目录即file:// URI是不安全的操作,所以会触发 FileUriExposedException这就意味着在Android7.0以前我们访问相机拍照存储时,如果使用URI的方式直接存储剪裁图片就会造成这个异常...原创 2020-01-11 12:43:43 · 616 阅读 · 0 评论 -
Android studio 导入项目乱码解决方案
1、修改Android studio 编辑器的编码:File==>Settings==>Editor==>File Encodings一般的编码格式有两种 GBK 或者UTF-82、还要修改模拟器的编码方式:编辑第二个build.gradle多加一行:compileOptions.encoding=“GBK”(如果不加,默认为UTF-8)...原创 2019-12-14 14:03:40 · 718 阅读 · 0 评论 -
Android 端实现mqtt消息接收
1为了搞这个MQTT百度收搜了很多资料都是用阿里云的MQTT虽然好用但是不符合我项目的需求,阿里云的mqtt达到一定的数量就要另行收费。所以公司决定自己搭建服务器实现节省成本第一步首先后台先搭建一个服务器主要讲下Android如何使用MQTT通讯。用到的软件或者框架有:EMQ:https://www.emqx.io/cn/org.eclipse.paho的MQTT通讯框架:https:/...原创 2019-12-14 11:50:02 · 6563 阅读 · 0 评论 -
android studio打包错误Error:error: failed to read PNG signature: file does not start with PNG signature
Error:error: failed to read PNG signature: file does not start with PNG signature.android studio 打包apk时报错.错误:错误:无法读取PNG签名:文件没有从PNG签名开始。一般都是图片格式有问题 可能是后缀更改了,可能是图片压缩时产生的问题。 重新处理图片再加载解决方法:找到对应的图片,右键...原创 2019-11-25 15:47:34 · 337 阅读 · 0 评论 -
Android开机启动APP广播
<receiver android:name=".BootBroadcastReceiver"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> <category android:...原创 2019-11-22 13:54:18 · 586 阅读 · 1 评论 -
Manifest merger failed : Attribute application@icon value=(@mipmap/gzds) from AndroidManifest.xml:
问题描述:这里不仅限于icon这一项,可能会出现其它的属性冲突错误。问题出现的原因是本工程的属性和第三方工程里的属性名称相同,AS在编译的时候未做区分,导致合并失败。在application头里添加:tools:replace=“android:icon, android:theme”...原创 2019-11-21 16:23:32 · 957 阅读 · 0 评论 -
java.lang.OutOfMemoryError :Coldnot not allocate JNI Env
先说一下 我的需求:某一个页面需要 每隔三秒进行刷新,刷新的数据是从网络上面拿下来的。而我每次刷新的时候 要十五条数据,所以我没隔三秒就会去请求数据。分析一下异常的原因:原本 我以为是线程的问题,因为我用的是异步,每次请求的时候都会开启一个线程。所以导致 会有很多个线程。但是经过请教后 知道了,这个和线程的多少没有关系,因为每个线程执行完自己的任务后就会销毁。不会存在线程过多导致内存泄露的问...原创 2019-11-21 14:49:49 · 607 阅读 · 0 评论 -
android 获取设备唯一值
1:获取CPU的编码值–这个肯定是绝对唯一的2:如果取不到CPU的编码就取以太网的MAC地址,不要取WIFI的地址3:如果取不到MAC地址的话,就取设备的序列号,序列号还是取不到 的话,那就只能去硬件编码了,1 先从Shared里面取,效率比较高,以后每次娶到了直接保存在Shared里面,然后依次取CPU MAC 序列号,设备号/*** * 获取设备的唯一编码 * 0:先取保存...原创 2019-11-15 15:02:17 · 1435 阅读 · 0 评论 -
Android 获取屏幕宽高的方法
//获取屏幕的高public static int getScreenHeight(Context context){ WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE); DisplayMetrics dm = new DisplayMetrics(); ...原创 2019-11-01 10:43:31 · 418 阅读 · 0 评论 -
android scrollview组件禁止滑动的方法
今天遇到一个需求,项目使用摄像头扫码支付,但是那个控件不能显示在屏幕上面 后来通过 scrollview组件禁止滑动的方法实现了java代码控制:ScrollView scrollView = (ScrollView)this.findViewById(R.id.sc_freement);scrollView.setOnTouchListener(new View.OnTouchListe...原创 2019-11-01 10:42:11 · 11017 阅读 · 0 评论 -
java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader
今天遇到了一个问题加载so库文件的时候出现这个问题。首先我百度了各种找不到so文件的原因来修改也没有解决我的问题后来我关机重启电脑并 clean Project就解决了找不到so文件的问题原因是因为我之前的放过不一样的so文件进去。然后在项目里面删除再添加其他的 so文件,这个问题是因为我之前的so文件没彻底删除导致的。我今天把它写下来避免下次忘记了...原创 2019-10-28 17:40:53 · 399 阅读 · 0 评论 -
网络请求传递参数 参数后面多了一个空格导致访问服务器失败
1首先将你访问的json 装换为String2然后将你返回来的字符串放到hijson里面3如下图然后看出问题了,在代码中有时候会看不到。吸取教训原创 2019-10-15 11:46:44 · 589 阅读 · 0 评论 -
Caused by: java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
今天还遇到了这个问题就是数组角标越界,是在什么情况出来的呢,1.因为我的集合里面本来就没有数据,我还想获取集合里面的数据list.get(i)留下了没有技术的泪水。...原创 2019-06-22 15:11:06 · 2880 阅读 · 0 评论 -
java.lang.RuntimeException: Parcel: unable to marshal value com.
今天出现这个错百度一下才知道我的javabean没有实现序列化导致的错误java.lang.RuntimeException: Parcel: unable to marshal value错误引起原因:1.在继承Parcel类中,需要读或者写其他的自定义类数据,这些自定义类数据需要实现Serializable序列化接口2.在继承Serializable类中,需要读或者写其他的自定义类,这些...原创 2019-06-22 15:08:30 · 2146 阅读 · 0 评论 -
Android 简单实现连续两次点击或连续多次处理业务逻辑
连续点击多次:final static int COUNTS = 5;//点击次数final static long DURATION = 3* 1000;//规定有效时间long[] mHits = new long[COUNTS];/*** 连续点击多次退出*/private void exitAfterMany() { /** * 实现双击方法 * ...原创 2019-06-11 14:15:51 · 1066 阅读 · 0 评论