<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[A=X+Y+Z]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/fei0724</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fei0724]]></copyright><item><title><![CDATA[关于0###00 pc 000614de /apex/com.android.runtime/lib/bionic/libc.so (abort+165)错误]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/121023856</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/121023856</guid><author>fei0724</author><pubDate>Thu, 28 Oct 2021 21:48:49 +0800</pubDate><description><![CDATA[参考https://issuetracker.google.com/issues/150633385

错误日志


10###00 pc 000614de /apex/com.android.runtime/lib/bionic/libc.so (abort+165)
20###01 pc 00005a95 /system/lib/liblog.so (__android_log_assert+176)
30###02 pc 001fbb57 /system/lib/libhwui.so (_ZN7and]]></description><category></category></item><item><title><![CDATA[监听html窗口焦点事件]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/103254241</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/103254241</guid><author>fei0724</author><pubDate>Tue, 26 Nov 2019 13:01:25 +0800</pubDate><description><![CDATA[&lt;!DOCTYPE html&gt;
&lt;html&gt;
&lt;head&gt;
  &lt;meta charset="utf-8"&gt;
  &lt;title&gt;使用html5的Page Visibility API来实现&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div&gt;
  document.hidde...]]></description><category></category></item><item><title><![CDATA[android判断app置于后台监听home键]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/81069275</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/81069275</guid><author>fei0724</author><pubDate>Mon, 16 Jul 2018 18:02:56 +0800</pubDate><description><![CDATA[from:http://blog.sina.com.cn/s/blog_474928c90100yrnh.html

 

背景：

用户按下Home键将程序置于后台运行或者应用启动其他activity，比如系统浏览器，短信等，需要向系统发送通知，用户做完别的操作后，点击通知栏，回到应用。
问题一
在什么时机发送通知？
用户按下Home的事件在应用层时捕捉不到的，因此只能从activity生命周期...]]></description><category></category></item><item><title><![CDATA[Android 7.0以上(包含8.0), popupWindow弹窗位置异常, 解决方案]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/81066976</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/81066976</guid><author>fei0724</author><pubDate>Mon, 16 Jul 2018 16:15:09 +0800</pubDate><description><![CDATA[通常我们的App中, 在标题的位置, 点击需要弹出菜单, 效果如下:



这很难吗? 拿起键盘就是干…


public void showAsDropDown(View anchor, int xoff, int yoff) {
    showAsDropDown(anchor, xoff, yoff, DEFAULT_ANCHORED_GRAVITY);
}

但是往往并不是我们想的那样,...]]></description><category></category></item><item><title><![CDATA[Android Elevation 无效分析]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/81031526</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/81031526</guid><author>fei0724</author><pubDate>Fri, 13 Jul 2018 14:55:29 +0800</pubDate><description><![CDATA[摘要：1.控件必须设置背景色,且不能为透明。2.阴影是绘制于父控件上的,所以控件与父控件的边界之间需有足够空间绘制出阴影才行。3.有网友提出图片尽量使用.png,防止图片过大导致oom或者elevation失效4.经过本人测试,除了上述原因外,还有:background是图片时、background直接设置具体颜色值时容易无效如:#ffaacc,background是shape时效果最好记录备忘,...]]></description><category></category></item><item><title><![CDATA[Android XML shape 标签使用详解（apk瘦身，减少内存好帮手）]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/81012931</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/81012931</guid><author>fei0724</author><pubDate>Thu, 12 Jul 2018 11:28:05 +0800</pubDate><description><![CDATA[Android XML shape 标签使用详解  一个android开发者肯定懂得使用 xml 定义一个 Drawable，比如定义一个 rect 或者 circle 作为一个 View 的背景。但是，也肯定也有人在能使用 Drawable 的地方选择使用一张 png 图（或者是一张 .9 图）作为 View 的背景，因为后者把问题交给 UI 设计人员去了，省事。当然，使用图片这种在项目中也很常...]]></description><category></category></item><item><title><![CDATA[Doze和App Standby的优化（API23）]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/79880497</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/79880497</guid><author>fei0724</author><pubDate>Tue, 10 Apr 2018 14:11:38 +0800</pubDate><description><![CDATA[参考地址：http://developer.android.com/training/monitoring-device-state/doze-standby.html 从Android 6.0 (API level 23)开始，Android提供了两个节电功能用来增加电池的续航时间。Doze 可以在设备长时间不使用时，通过延迟后台CPU和网络的活动来减少电池的消耗；App Standby将延迟没...]]></description><category></category></item><item><title><![CDATA[Html.fromHtml()中Html.TagHandler()的使用]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/78125297</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/78125297</guid><author>fei0724</author><pubDate>Thu, 28 Sep 2017 16:39:46 +0800</pubDate><description><![CDATA[前几天跑到这么个问题，要求显示这样的文字 1500/天 原价:20000元，而且文字的样式由服务器控制，所以我就自然的想到了Html.fromHtml()这个方法，它是用来解析Html的。好！我就用它来解析一下上面的文字的Html，先把上面文字的html贴出看看：<font
 style="color:#ff6c00;font-size:18px"> 1500/天&nbsp;原价:20000元 ]]></description><category></category></item><item><title><![CDATA[Android开发中使用WebView后程序进入后台依旧占用CPU的解决]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/52440575</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/52440575</guid><author>fei0724</author><pubDate>Mon, 05 Sep 2016 15:24:09 +0800</pubDate><description><![CDATA[开发的程序在论坛反馈板块下，用户抱怨使用以后，手机发热量增加，耗电量也随之增加，在新版本发布之前，被要求排查程序源码中可能的原因。

根据每个页面访问的情况，初步确定问题出现的两个地方分别是有admob的列表页、使用webview显示网页的页面；初步分析带有admob的列表页可能的原因是进入后台以后，虽然onPause()处理了事件，但是admob还是依旧运行中，所以出现了转入后台依旧高CPU]]></description><category></category></item><item><title><![CDATA[GSON使用笔记 -- 序列化时排除字段的几种方式]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/51852502</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/51852502</guid><author>fei0724</author><pubDate>Thu, 07 Jul 2016 16:44:45 +0800</pubDate><description><![CDATA[原文  http://blog.youkuaiyun.com/zxhoo/article/details/21471005 
主题 Gson 
GSON 是Google发布的 JSON 序列化/反序列化工具，非常容易使用。本文简要讨论在使用GSON将Java对象转成JSON时，如何排除某些字段。最简单的用法假设有下面这个类：class MyObj {public int x; 
  public int y;p]]></description><category></category></item><item><title><![CDATA[【Android】webview javascript 注入方法]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/50903793</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/50903793</guid><author>fei0724</author><pubDate>Wed, 16 Mar 2016 11:51:21 +0800</pubDate><description><![CDATA[Android中向webview注入js代码可以通过webview.loadUrl("javascript:xxx")来实现，然后就会执行javascript后面的代码。

但是当需要注入一整个js文件的时候，貌似就有点麻烦了。
不过理清以下思路，方法其实也很简单，如下：
我们通过在webview的onPageFinished方法中执行js代码注入：

第一种：
当webview加载]]></description><category></category></item><item><title><![CDATA[Android-WebView中远端链接使用本地js文件]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/50903782</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/50903782</guid><author>fei0724</author><pubDate>Wed, 16 Mar 2016 11:49:50 +0800</pubDate><description><![CDATA[Android-WebView中远端链接使用本地js文件

字数456 阅读230 评论0 喜欢9


原因

本例中加载的js库是 jquery
放在本地的原因是:
1.js库本身挺大，浪费流量
2.js库可能常年不更新

步骤

0.当然是把js文件放到assets目录中

Android Studio的assets目录默认不存在，需要手动创建
位置是 src]]></description><category></category></item><item><title><![CDATA[从Uri获得图片真实路径]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/50788574</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/50788574</guid><author>fei0724</author><pubDate>Thu, 03 Mar 2016 14:55:06 +0800</pubDate><description><![CDATA[public static String getRealPathFromURI(Uri uri, ContentResolver resolver) {

		String[] projection = { MediaStore.Images.Media.DATA };
		Cursor cursor = resolver.query(uri, projection, null, null, nu]]></description><category></category></item><item><title><![CDATA[Android项目中如何用好构建神器Gradle？]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/47422537</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/47422537</guid><author>fei0724</author><pubDate>Tue, 11 Aug 2015 16:36:12 +0800</pubDate><description><![CDATA[原文地址： http://www.youkuaiyun.com/article/2015-08-10/2825420




摘要：本文作者贾吉鑫为大众点评Android工程师，在进行团队并行开发时，分库遇到的问题很多都要通过Gradle脚本解决。Gradle虽为构建神器，但学习曲线比较陡峭，要想在Android项目中用好Gradle必须要做到三点。


优快云移动将持续为您优选移动开发的精]]></description><category></category></item><item><title><![CDATA[Java中JNI的使用详解第二篇:JNIEnv类型和jobject类型的解释]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/46740033</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/46740033</guid><author>fei0724</author><pubDate>Fri, 03 Jul 2015 11:57:42 +0800</pubDate><description><![CDATA[出处：http://blog.youkuaiyun.com/jiangwei0910410003/article/details/17465457

上一篇说的是一个简单的应用，说明JNI是怎么工作的，这一篇主要来说一下，那个本地方法sayHello的参数的说明，以及其中方法的使用

首先来看一下C++中的sayHello方法的实现:





[cpp] view
 plaincopy]]></description><category></category></item><item><title><![CDATA[Android NDK开发Crash错误定位]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/46728999</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/46728999</guid><author>fei0724</author><pubDate>Thu, 02 Jul 2015 17:20:46 +0800</pubDate><description><![CDATA[转载请注明出处：http://blog.youkuaiyun.com/xyang81/article/details/42319789




       在Android开发中，程序Crash分三种情况：未捕获的异常、ANR（Application Not Responding）和闪退（NDK引发错误）。其中未捕获的异常根据logcat打印的堆栈信息很容易定位错误。ANR错误也好查，Androi]]></description><category></category></item><item><title><![CDATA[Java基础知识——JNI入门介绍]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/46712741</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/46712741</guid><author>fei0724</author><pubDate>Wed, 01 Jul 2015 17:43:44 +0800</pubDate><description><![CDATA[Java类型和本地类型对应　　
　　在如下情况下，需 要在本地方法中应用java对象的引用，就会用到类型之间的转换：
　　1）java方法里面将参数传入本地方法；
　　2）在本地方法里面创建java对象；
　　3）在本地方法里面return结果给java程序。
　　分为如下两种情况：
　　Java原始类型
　　像 booleans、integers、floats等从Java程序中传到]]></description><category></category></item><item><title><![CDATA[深入了解android平台的jni---使用宏定义精简JNI接口函数名称]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/46698871</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/46698871</guid><author>fei0724</author><pubDate>Tue, 30 Jun 2015 18:15:52 +0800</pubDate><description><![CDATA[欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来，用它写博客，将会带来全新的体验哦：
Markdown和扩展Markdown简洁的语法
代码块高亮
图片链接和图片上传
LaTex数学公式
UML序列图和流程图
离线写博客
导入导出Markdown文件
丰富的快捷键
快捷键
加粗    Ctrl + B 
斜体    Ctrl + I 
引用    Ctrl]]></description><category></category></item><item><title><![CDATA[Fresco 如何在Android Studio中编译]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/46427111</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/46427111</guid><author>fei0724</author><pubDate>Tue, 09 Jun 2015 15:13:44 +0800</pubDate><description><![CDATA[最近facebook在github上托管了一个开源的图片处理项目 fresco，从它的描述上看对图片的处理已经非常完美了。 美中不足的的是这个项目是一个典型的Android Studio的项目，现在Android Studio 还不是那么普及，所以在编译的过程中难免会遇到问题。笔者也是刚开始用Android Studio


    由于fresco项目需要用到NDK，需要在编译之前需要先配]]></description><category></category></item><item><title><![CDATA[Android - Gradle架构中使用的“.so”库]]></title><link>https://blog.youkuaiyun.com/fei0724/article/details/45971845</link><guid>https://blog.youkuaiyun.com/fei0724/article/details/45971845</guid><author>fei0724</author><pubDate>Mon, 25 May 2015 18:09:36 +0800</pubDate><description><![CDATA[Gradle架构中使用的.so库

 

 

Android使用Gradle架构的Android应用，需要对.so库做特殊的处理，因为会找不到，就会导致编译正确，使用错误；常见的使用情况是根据不同的cpu，有不同的库，包括：armeabi，mips，x86等。
报错：
java.lang.UnsatisfiedLinkError: Couldn't load weibosdkco]]></description><category></category></item></channel></rss>