![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android
文章平均质量分 50
夢鑰
不积跬步无以至千里,不积小流无以成江海.
展开
-
安卓部分手机使用webview加载链接后白屏(Android低版本会出现的问题)
es6语法运行在低版本的Android手机上会导致手机白屏。原创 2024-03-06 16:08:06 · 2458 阅读 · 0 评论 -
Bitmap 处理图片修改为透明背景,改变主颜色
项目新需求在后端根据用于填写的信息要生成文档,再填写完信息后会在终端上进行签名和收集指纹,并且指纹还需要覆盖到前的名字上面,达到签字按手印的效果。一想SO easy!,不就是两个图片重叠起来不就可以了么。但是指纹提取的图片是存白色的背景,需要改成透明的。指纹纹路还是黑色的,需要改成红色的,一时难住了,于是乎各种百度各种搜。Bitmap未发现的方法还有很多,具体主要使用到了setPixel方法。原创 2023-02-28 08:55:35 · 2935 阅读 · 3 评论 -
使用Lame库实现wav、pcm转mp3
因为使用android录音后生成的文件是wav或者pcm格式,项目要求最后的文件需要是mp3格式,于是就使用到了lame库。第一次编译还是有挺多坑的,比如上面需要注意的那几点。t=N176t=N176Lame官网https://sourceforge.net/projects/lame/files/lame/Demo地址https://gitcode.net/weixin_41620505/pcm-and-wav-to-mp3。原创 2023-02-10 15:51:18 · 3080 阅读 · 1 评论 -
Android设置本地字体文件ttf
产品告诉UI设计设计图时要使用炫酷字体。因为Android不像网页项目可以使用浏览器本机的字体,Android只有那几种字体。原创 2023-01-10 17:13:37 · 3732 阅读 · 0 评论 -
Android 使用 okhttp3和retrofit2 进行单文件和多文件上传
开发项目中需要进行单文件多文件的上传功能,下面演示的ApiResponse是自己分装的返回值,要根据自己的项目来完成。使用的mvvm框架,kotlin协程。看下大体思路和传参形式,仅供参考记录总结,要根据自己的框架进行参考改造。原创 2022-10-26 16:13:07 · 2626 阅读 · 0 评论 -
Android studio 打包release版本 apk 换方式了?
有一段时间没有搞Android,在基本操作打release包的时候竟然一直打包不成功,一直报但主要还不提示打包失败;在经历一段煎熬各种搜索各种找,终于找到了另一种可以生成release包的方法。再看下面之前是默认你已经生成好了 jks文件,jsk是什么我这里就不提了;学无止境,跟不上时代了。原创 2022-10-26 15:51:35 · 4549 阅读 · 2 评论 -
Android 外接设备获取驱动和获取申请权限
公司要开发一个终端产品,这个产品外接了很多设备,比如:指纹、身份证识别、高拍仪等,但是外接的设备不可以使用普通的权限申请的方式,要使用UsbManager 来进行权限的检查和权限申请。上面就是对UsbManager处理的标签。原创 2022-10-20 08:57:49 · 2869 阅读 · 0 评论 -
Android 使用Poi 修改Doc文档
在界面上填写或者选择然把选择填写的内容赋值到word文档里。文档就是模板。Android 版本不同读取文件要做好适配。Android 版本不同读取文件要做好适配。我使用的Poi是3.9版本。原创 2022-09-28 14:16:27 · 540 阅读 · 0 评论 -
TextView 跑马灯效果
1、重写TextViewclass TextViewMarquee : AppCompatTextView { constructor(context: Context?) : super(context!!) {} constructor(context: Context?, attrs: AttributeSet?) : super( context!!, attrs ) { } constructor(context: Con...原创 2022-05-12 11:06:11 · 293 阅读 · 0 评论 -
超高效率的处理 两个集合
一种是for循环方式,一种是stream 方式;在处理数据量很大是会相差上千倍。原创 2022-02-08 22:15:00 · 1236 阅读 · 0 评论 -
WindowManager.LayoutParams Flag 含义
在弄悬浮窗时,设置WindowManager添加的view禁止点击时,view禁用到ontouch,onclick,isenable都是不管用的,醉了。只能设置WindowManager.LayoutParams的 flag。WindowManager.LayoutParams的 Flag 是获取点击聚焦事件的。原创 2022-01-29 10:30:00 · 931 阅读 · 0 评论 -
使用 AccessibilityService 获取手机屏幕显示的Activity
//tip?.text="${event.packageName}${name}" // 开启悬浮窗 可以显示到窗口上 loge("${event.packageName}${name}")原创 2022-01-24 18:18:22 · 3282 阅读 · 0 评论 -
android webview 加载富文本图片自适应
fun imgReset(){ webView.loadUrl( "javascript:(function(){" +原创 2022-01-08 10:15:00 · 508 阅读 · 0 评论 -
完美解决android软键盘挡住输入框方法,还不顶标题栏
非透明状态栏下使用adjustResize和adjustPan,或是透明状态栏下使用fitsSystemWindows=true属性原创 2021-12-18 10:00:00 · 5185 阅读 · 0 评论 -
android平滑动画效果--搜索框
/** * 过度动画 * @param activity * @param sharedElement 执行动画的view */ fun start(activity: Activity, sharedElement: View?) { val intent = Intent(activity, WorkManagementQuerySearchActivity::class.java) val mOptionsCompat原创 2021-12-19 13:15:00 · 1443 阅读 · 1 评论 -
android 关闭暗夜模式
android 关闭暗夜模式原创 2021-12-15 12:30:00 · 2769 阅读 · 0 评论 -
android.content.ActivityNotFoundException: No Activity found to handle Intent 下载文件遇到
android.content.ActivityNotFoundException: No Activity found to handle Intent 下载文件遇到奇葩问题原创 2021-12-14 13:15:00 · 458 阅读 · 0 评论 -
android activity方式的dialog
效果展示1、设置主题(在AndroidManifest的activity中设置android:theme="@style/DialogActBgStyle") <style name="DialogActBgStyle" parent="Theme.AppCompat.Light.NoActionBar"> <!--是否悬浮在activity上 为true时 如果手机有虚拟的底部导航 会把底部虚拟的导航遮挡--> <i.原创 2021-12-13 16:18:40 · 3239 阅读 · 0 评论 -
android 处理 富文本 神器 JSOUP
加载富文本很常见,基本每一个项目都会有富文本展示,但是富文本的图片有时会超出屏幕显示,导致布局加载不美观;或者富文本中带有超链接的 <a> 标签、或者获取富文本中的图片地址、或者.......;使用jsoup可以很方便的解决:主要步骤就是:先通过getElementsByTag获取html标签,在通过attr 获取标签的属性 或者给属性设置值设置富文本中图片宽度充满、或者指定大小,高度自适应; /** * @param src 需要处理的..原创 2021-08-24 10:01:45 · 638 阅读 · 0 评论 -
android studio 离线配置 gradle和依赖
import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.util.ArrayList;import java.util.LinkedList;import java.io.BufferedInputStream;...原创 2021-08-18 17:05:33 · 2512 阅读 · 2 评论 -
android11 创建文件夹、拍照并回显
创建文件夹 /** * 创建一个用于拍照图片输出路径的Uri (FileProvider) * * @param context * @return */ public static Uri getUriForFile(Context context, File file) { return FileProvider.getUriForFile(context, getFileProviderName(context),...原创 2021-08-16 14:39:12 · 1391 阅读 · 0 评论 -
android 获取本地图片、视频
获取所有图片 public static void getPhoto(Context context) { Uri imageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; ContentResolver mContentResolver = context.getContentResolver(); String[] projImage = {MediaStore.Images.Media._ID ...原创 2021-08-16 14:24:44 · 1092 阅读 · 0 评论 -
Webview性能优化-小结
1、Webview预加载App启动就初始化一次WebView。副作用是WebView的初始化必须位于主线程,但主线程会阻塞其他业务代码导致ANRpublic class App extends Application { @Override public void onCreate() { ... WebView webView = new WebView(this); // 无脑初始化一次Webview webView.destro原创 2021-05-18 10:33:21 · 646 阅读 · 0 评论 -
Android JS 交互=坑
Android调用js1、在Android中htmlWeb.addJavascriptInterface(this, "android");//需要操作的事件 @JavascriptInterfacepublic void startActivity() {}2、在js中<div> onclick="callAndroid" </div>&l...原创 2019-09-17 16:19:20 · 105 阅读 · 0 评论 -
Android 自带的字体库、字体样式
1、设置字体android:fontFamily=“字体样式”1、sans-serif-smallcaps (左边只设置字体,右边设置加粗)2、sans-serif3、cursive4、sans-serif-black5、sans-serif-condensed-light6、sans-serif-thin7、serif8、serif-monospace9、sans-serif-medium10、sans-serif-light11、sans-serif-c原创 2021-03-11 17:10:17 · 9386 阅读 · 3 评论 -
android自定义混淆字典及生成混淆字典文件
1、开启混淆在debug状态下不要开启混淆,开启后有可能不能打断点2、配置混淆# 指定代码的压缩级别 0 - 7(指定代码进行迭代优化的次数,在Android里面默认是5,这条指令也只有在可以优化时起作用。)-optimizationpasses 5# 混淆时不会产生形形色色的类名(混淆时不使用大小写混合类名)-dontusemixedcaseclassnames# 指定不去忽略非公共的库类(不跳过library中的非public的类)-dontskipnonpubliclibrary原创 2021-03-09 13:24:25 · 3396 阅读 · 1 评论 -
NestedScrollView嵌套WebView导致底部有空白
1、重新设置Webview的宽高 val params: ViewGroup.LayoutParams = parentingSchoolListDetailedWeb.layoutParams params.width = resources.displayMetrics.widthPixels.minus(SizeUtils.dp2px(30f)) params.height =原创 2021-03-03 15:03:54 · 561 阅读 · 1 评论 -
Gradle使用命令行打包apk
1、准备Gradle,下载Gradle官网下载实在太慢了(除非你可以科学上网)选择腾讯镜像(镜像地址)里面不只有Gradle,还有其他的如sdk、ubantu选择Gradle下载就好分分钟钟下载完,下载完直接解压就可以2、配置环境变量...原创 2021-02-28 19:06:04 · 508 阅读 · 0 评论 -
微信支付:app端提示微信签名失败,errCode=-2;后台服务端返回成功
1、微信有两个平台:一个开放平台一个商户平台看开放平台V2版文档;注意给微信传参的参数要小写;app端配置开放平台的签名 最好是打包正式版后获取的签名;后台服务端有两次验签的过程,一定要第一次验签传什么,第二次也要传的一摸一样的;...原创 2021-02-27 09:40:05 · 1078 阅读 · 0 评论 -
实现RecycleView横向、竖向无限循坏(基于自定义RecyclerView.LayoutManager)
1、横向循环(代码中有注解)public class LooperLayoutManager extends RecyclerView.LayoutManager { private static final String TAG = "LooperLayoutManager"; private boolean looperEnable = true; public LooperLayoutManager() {} public void setLooperEna.原创 2020-12-22 16:44:26 · 965 阅读 · 1 评论 -
RecycleView的操作(自定义SnapHelper、ItemDecoration)
设置RecycleView的Item每次滑动的个数通过重写SnapHelper来实现RecycleView每次滑动的Item个数,使用方法: PagerSnapHelper( 6 ).attachToRecyclerView(Rv)import android.view.Viewimport androidx.recyclerview.widget.OrientationHelperimport androidx.recyclerview.widget.RecyclerViewimp原创 2020-11-27 09:42:40 · 460 阅读 · 0 评论 -
Android 基于Web Html实现webrtc 直播 调取Native操作
选择控件原生WebviewX5webView (腾讯内核)XWalkView(因特尔浏览器内核-----已停止维护)我的结果原生Webview(失败)X5webView (失败—但是使用QQ打开后可以使用)XWalkView(成功----目前只是用在Android5.1.1、Android6.0.1两版本测试成功;在Android10.0上不知道是什么原因失败------会增加apk体积40M或者20M)代码权限 <uses-permission android:na原创 2020-08-19 11:20:43 · 792 阅读 · 0 评论 -
MotionLayout 常用属性
1、基本使用了解开始状态设置给view添加属性结束状态设置和开始状态设置一样效果设置添加关键帧(KeyFrameSet)KeyPosition:(位置关键帧) parentRelative:(简单) 是相对于母体坐标 左上(0,0) 右下(1,1) deltaRelative:(复杂) 根据起点到终点的 差值 作为xy轴 pathRelative:(复杂)在起点到终点拉一条线,起点0终点1KeyCycle: 里面包含很多 周期 函数 squ原创 2020-07-27 11:22:13 · 830 阅读 · 0 评论 -
Dialog和DialogFragment 设置背景透明
dialog设置主题样式 <style name="pro_dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item><!--边框--> <item name="android:windowIsFloating">true</item><!--是否浮现在activity原创 2020-07-23 17:41:35 · 936 阅读 · 0 评论 -
android SVG 常用语法
Path指令M = moveto(M X,Y) :将画笔移动到指定的坐标位置L = lineto(L X,Y) :画直线到指定的坐标位置H = horizontal lineto(H X):画水平线到指定的X坐标位置V = vertical lineto(V Y):画垂直线到指定的Y坐标位置C = curveto(C X1,Y1,X2,Y2,ENDX,ENDY):三次贝赛曲线S = smooth curveto(S X2,Y2,ENDX,ENDY)Q = quadratic Belzier c原创 2020-07-10 16:59:04 · 445 阅读 · 0 评论 -
Android 角标适配
小米手机默认逻辑当应用向通知栏发送了一条通知 (除了进度条样式和常驻通知外),应用图标的右上角就会显示「1」。值得一提,角标的数字代表应用的通知数,即应用发送了「x」条通知,角标就会显示为「x」。2. 开发者如何自定义角标数如果开发者不满意默认逻辑,想要自定义角标的数字,可以通过调用接口告知系统,参考代码如下:try { Field field = notification.getClass().getDeclaredField(“extraNotification”); Ob原创 2020-06-19 09:57:53 · 1336 阅读 · 1 评论