<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[leverage2009的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/leverage2009</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; leverage2009]]></copyright><item><title><![CDATA[android 设置字体样式]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/149974001</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/149974001</guid><author>leverage2009</author><pubDate>Wed, 06 Aug 2025 16:22:46 +0800</pubDate><description><![CDATA[/ 在页面加载完成后动态加载字体文件（例如通过JavaScript）设置完思源字体之后，APP整体行高太高了，需要修改字体，方法如下，也可以直接从网上下。Android Q及Android X 开发环境报错，需要升级。3）通过WebViewClient自定义加载逻辑。在Application初始化时进行设置。2. WebView设置字体样式。1. 全局设置字体样式。2）使用在线字体服务。]]></description><category></category></item><item><title><![CDATA[android studio 运行java main报错]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/147277857</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/147277857</guid><author>leverage2009</author><pubDate>Wed, 16 Apr 2025 15:24:01 +0800</pubDate><description><![CDATA[运行某个带main函数的java文件报错。]]></description><category></category></item><item><title><![CDATA[Android ScrollView嵌套X5WebView大片空白问题]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/145110948</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/145110948</guid><author>leverage2009</author><pubDate>Mon, 13 Jan 2025 11:37:46 +0800</pubDate><description><![CDATA[有些视频封面图较短，视频较长，部分手机视频加载之后刷新页面，高度不同导致视频截断，不能根本解决问题，弃用该方法。能解决问题，html代码中img和video标签不要另外设置width和height属性，不然还是会出现空白。2. 富文本加载可直接改变富文本将想加入的内容加入 减少层级 从而不使用scrollview。注：官方不建议scrollview嵌套webview 最好让webview自身滚动。scrollview嵌套后webview的高度不可控。4. 网页加载可选择原生的webview。]]></description><category></category></item><item><title><![CDATA[android 腾讯X5浏览器 a 标签链接 跳转不成功]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/144914183</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/144914183</guid><author>leverage2009</author><pubDate>Fri, 03 Jan 2025 17:14:47 +0800</pubDate><description><![CDATA[2. 处理target="_blank"跳转问题：当a标签的target属性设置为"_blank"时，不分网页可能无法在新窗口打开。，效果不佳，html中的_blank标签就是新建窗口打开，有时会打不开，采用另一种方法，直接原窗口JS打开。这样代码会创建一个新的X5WebView市里来处理新窗口的创建和加载，注意要先加入。//然后 复写 WebChromeClient的onCreateWindow方法。这样设置后，页面内的a标签跳转应该能够正常工作。4. 添加UserAgent。]]></description><category></category></item><item><title><![CDATA[android Glide加载长图]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/135697795</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/135697795</guid><author>leverage2009</author><pubDate>Fri, 19 Jan 2024 14:49:21 +0800</pubDate><description><![CDATA[原理：​先用Glide按图片原始大小加载一次图片，再获取加载的图片宽度和高度及屏幕宽度，计算缩放后的高度再赋值给对应的imageview，最后再把加载得到的图片设置到赋值后的imageview中以完成等比例缩放。解决方案：就是将ImageView的宽度设置为包裹内容这里看你的需求主要是最好动态计算设置宽高，获取网络图片后计算图片大小，在计算1/3比例的大小，然后动态设置ImageView的宽度就可以解决了。情况：图片尺寸大，加载在一个小尺寸的Imageview中， 展示的图片模糊。]]></description><category></category></item><item><title><![CDATA[Android 优化广告图加载]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/135646001</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/135646001</guid><author>leverage2009</author><pubDate>Wed, 17 Jan 2024 11:39:18 +0800</pubDate><description><![CDATA[作用是：下载完成后，把图片显示在你广告图上，由于glide有三级缓存机制，因此，最好是提前在接口返回的时候，进行预加载，然后进入到广告启动的流程中的时候就可以直接复用上一次的bitmap，不会浪费相应的时间。接口数据--->开始预加载广告图---》loadSplash---〉加载广告图并且无兜底图。]]></description><category></category></item><item><title><![CDATA[Android 启动页白屏优化]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/135645385</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/135645385</guid><author>leverage2009</author><pubDate>Wed, 17 Jan 2024 11:24:48 +0800</pubDate><description><![CDATA[其实看到这里，我们就知道怎么来解决白屏问题了，我们可以将 Window 的背景和 APP 启动页的背景设置成一样的，从视觉体验上让用户感觉一点开 APP 显示就是启动页面。其实，白屏现象很容易理解，在冷启动一个 APP 的时候，启动页还没完成布局文件的加载，此时显示的是 Window 窗口背景，我们看到的白屏就是 Window 窗口背景。如果内容布局比较复杂，可以采用背景图片的方式，但是由于存在不同尺寸和像素密度的屏幕，可能需要提供多张不同的背景图来适配各种屏幕，以避免图片拉伸变形。]]></description><category></category></item><item><title><![CDATA[Android 图片压缩]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81905426</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81905426</guid><author>leverage2009</author><pubDate>Tue, 25 Sep 2018 10:41:28 +0800</pubDate><description><![CDATA[说来惭愧，鄙人工作6年多，做Android也有四年，居然连图片压缩这块的功能每次都是上网搜，这次，还是整理整理，强化记忆。

转自：https://blog.youkuaiyun.com/cherry609195946/article/details/9264409

一. 图片的存在形式

1. 文件形式（即以二进制形式存在于硬盘上）

2. 流的形式（即以二进制形式存在于内存找那个）

3. Bitmap...]]></description><category></category></item><item><title><![CDATA[Android 视频压缩]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81911449</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81911449</guid><author>leverage2009</author><pubDate>Tue, 25 Sep 2018 10:21:05 +0800</pubDate><description><![CDATA[之前有提到，需要完成类似朋友圈功能，上传视频，自己录制的视频可以控制，图库中选择视频，也需要压缩才行，不然太耗费时间了。

转自：https://blog.youkuaiyun.com/qq_36421691/article/details/79113392

视频压缩是硬解的压缩，我最开始接触压缩是FFMpeg压缩，使用的是 https://github.com/chenzhihui28/VideoReco...]]></description><category></category></item><item><title><![CDATA[Cordova支持Android WebViews]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/78911658</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/78911658</guid><author>leverage2009</author><pubDate>Tue, 25 Sep 2018 10:11:56 +0800</pubDate><description><![CDATA[原文：http://cordova.apache.org/docs/en/7.x/guide/platforms/android/webview.html

Cordova19以后，安卓平台依靠CordovaWebView控件

Cordova19以前，依赖于CordovaActivity组件

 

1. 保证安装最新Cordova版本，从cordova.apache.org下载并解压其安卓包
...]]></description><category></category></item><item><title><![CDATA[Android 亮度]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81911422</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81911422</guid><author>leverage2009</author><pubDate>Tue, 25 Sep 2018 10:03:46 +0800</pubDate><description><![CDATA[用腾讯点播VOD的demo，跳转到这个页面亮度会变得特别亮，就抽时间看了看API，记录一下：

跳转到该页面的时候：updateCurrentLight()


private void updateCurrentLight() {
    Activity activity = (Activity) mContext;
    Window window = activity.getWindow...]]></description><category></category></item><item><title><![CDATA[Android 学习笔记]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/82834444</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/82834444</guid><author>leverage2009</author><pubDate>Tue, 25 Sep 2018 09:40:12 +0800</pubDate><description><![CDATA[1. 判断应用是否在最前端，前端直接将推送在页面显示，不在前端，推送到通知栏


public static boolean isForegroundDisplay(Context context) {
    String packageName = context.getPackageName();
    ActivityManager am = (ActivityManager)conte...]]></description><category></category></item><item><title><![CDATA[Android MediaRecorder录像]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/82759153</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/82759153</guid><author>leverage2009</author><pubDate>Tue, 18 Sep 2018 16:01:19 +0800</pubDate><description><![CDATA[近期小编正在做类似于朋友圈的功能，调用系统录像，华为机10s中就录出来41M，上传就要30-40s，测试提出BUG，产品提出需优化，小编在风中凌乱，没做过啊，，，近期终于完成需求，梳理一下，方便以后看。

一. 软编码和硬编码如何区分

软编码：使用CPU进行编码

硬编码：使用非CPU进行编码，如显卡GPU、专用的DSP、FPGA、ASIC芯片等

二. 软编码和硬编码比较

软编码：实现直接、...]]></description><category></category></item><item><title><![CDATA[分辨率、帧率和码率三者之间的关系]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/82753353</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/82753353</guid><author>leverage2009</author><pubDate>Tue, 18 Sep 2018 10:59:28 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/lipengshiwo/article/details/53169235

分辨率：单位英寸中所包含的像素点数；VGA：视频图像分辨率

码率：编码器没变变出的数据大小，单位是kbps，比如800kbps代表编码器每秒产生800kb（或者100kB）的数据

帧率：FPS（每秒钟要多少帧画面）；以及Gop（表示多少秒一个帧）

帧率：影响画面流畅度...]]></description><category></category></item><item><title><![CDATA[Android 自定义视频播放器]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81904991</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81904991</guid><author>leverage2009</author><pubDate>Tue, 21 Aug 2018 15:01:08 +0800</pubDate><description><![CDATA[由于录像之后，原先选用的腾讯VOD点播播放器显示出来竖屏都变横屏了，虽然选中了现在的腾讯VOD点播，还是把Android视频播放器了解了一番。

Android自定义视频播放器有以下三种：

一、MediaPlayer与SurfaceView相结合


// 为SurfaceHolder添加回调
mSurfaceView.getHolder().addCallback(callback);
// ...]]></description><category></category></item><item><title><![CDATA[Android与H5交互]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81903412</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81903412</guid><author>leverage2009</author><pubDate>Tue, 21 Aug 2018 11:16:16 +0800</pubDate><description><![CDATA[随着混合应用开发越来越多，需求场景的不断变化，碰到一个问题，最底层H5页面点击图片预览，是直接DIV图层的显示，而不是页面的跳转，所以点击返回按钮的时候，不能直接返回，要先调用js关掉图层，所以需要交给js进行处理。



常用的Java调用js，直接用loadUrl，但是没有返回值，不能进行回调，sdk19以上采用evaluateJavascript方法，在回调方法里又返回值，效率优于loadU...]]></description><category></category></item><item><title><![CDATA[Android MediaStore仿微信朋友圈获取图片及视频]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81866815</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81866815</guid><author>leverage2009</author><pubDate>Tue, 21 Aug 2018 10:34:26 +0800</pubDate><description><![CDATA[Android中所有的多媒体文件除了存储在物理硬盘上，还会将文件信息（路径、id、类型、）保存到数据库中，这样当我们想要获取这些文件的信息时，就不需要耗时的扫描硬盘，只需要读数据库就可以了。Android平台中称手机终端内存为内部存储空间，称SD卡为外部存储空间。针对内部和外部存储空间中的媒体文件信息是分开管理的，各自有独立的数据库管理。外部存储空间和内部存储空间对应的卷标为”external”和...]]></description><category></category></item><item><title><![CDATA[Android6.0动态权限申请]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81866076</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81866076</guid><author>leverage2009</author><pubDate>Mon, 20 Aug 2018 10:14:19 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/lhp15575865420/article/details/79210696

在Android6.0之前只需在AndroidManfiest.xml文件写明权限即可。但是在Android6.0之后也就是SDK&amp;gt;=23时，一些隐私权限需要动态申请，而且在用户同意授权之后APP才能拥有该权限。

如下9组权限需要动态申请。而且一组权限只要一个...]]></description><category></category></item><item><title><![CDATA[AS中gradle plugin version、gradle version和buildToolsVersion关系]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81065826</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81065826</guid><author>leverage2009</author><pubDate>Mon, 16 Jul 2018 15:24:21 +0800</pubDate><description><![CDATA[转自：https://blog.youkuaiyun.com/lixin88/article/details/61196274使用AndroidStudio 开发也已经2年了，每次gradle 或者studio 有推荐更新后,项目重新sync后都会报错，提示更新相应的其他版本，比如AndroidStudio、gradle、buildToolsVersion版本；先来说说概念AndroidStudio: 是Go...]]></description><category></category></item><item><title><![CDATA[Gradle学习]]></title><link>https://blog.youkuaiyun.com/leverage2009/article/details/81062786</link><guid>https://blog.youkuaiyun.com/leverage2009/article/details/81062786</guid><author>leverage2009</author><pubDate>Mon, 16 Jul 2018 15:06:14 +0800</pubDate><description><![CDATA[./gradlew clean clean项目./gradlew build 构建项目./gradlew assembleDebug or ./gradlew aD 编译并打Debug包./gradlew assembleRelease or ./gradlew aR 编译并打Release包./gradlew installRelease or ./gradlew iR Release模式打包并...]]></description><category></category></item></channel></rss>