<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[joephone的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/joephone77</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; joephone77]]></copyright><item><title><![CDATA[AIDL与Binder的关系]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/158978887</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/158978887</guid><author>joephone77</author><pubDate>Thu, 12 Mar 2026 22:31:19 +0800</pubDate><description><![CDATA[AIDL与Binder是Android跨进程通信的核心机制：AIDL作为接口定义语言，通过自动生成Stub和Proxy类代码，将开发者定义的方法调用转换为Binder可处理的格式；而Binder作为底层通信框架，负责实际的进程间数据传输。开发者只需编写AIDL接口，系统就会自动生成封装Binder调用的代码，使跨进程调用如同本地方法调用般简单。这种分工让AIDL专注于接口定义，Binder处理底层通信，大幅简化了Android跨进程开发的复杂度。]]></description><category></category></item><item><title><![CDATA[【面试八股】四引用，简答版]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/156490305</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/156490305</guid><author>joephone77</author><pubDate>Thu, 01 Jan 2026 19:21:45 +0800</pubDate><description><![CDATA[虚引用 仅用于跟踪对象回收状态且必须配合引用队列使用。弱引用 无论内存是否充足都会被 GC 发现后回收；强引用 持有对象直至显式释放且不被 GC 回收；软引用 仅在内存不足时被回收；]]></description><category></category></item><item><title><![CDATA[面试中如何谈Binder？]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/156399865</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/156399865</guid><author>joephone77</author><pubDate>Mon, 29 Dec 2025 23:03:25 +0800</pubDate><description><![CDATA[2. 优势：相比 Linux 传统 IPC（管道、Socket），仅需 **1 次数据拷贝**（传统 IPC 需 2 次完整拷贝：用户态→内核态→目标用户态）；Binder 借助内核共享缓存区 + 内存映射（`mmap`），客户端仅拷贝 1 次数据到内核缓存，服务端直接映射读取无需二次拷贝，等效实现高效传输，大幅提升通信效率。自带 UID/PID 身份校验，安全性更强，Binder 通信时会自动携带双方进程的 UID/PID，系统可据此校验进程身份合法性，防止恶意进程冒充调用，保障通信安全。]]></description><category></category></item><item><title><![CDATA[Android Studio 编写代码无错误提示（警告、报红等）]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/128096172</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/128096172</guid><author>joephone77</author><pubDate>Tue, 29 Nov 2022 13:09:01 +0800</pubDate><description><![CDATA[Android Studio 编写代码无错误提示解决方案]]></description><category></category></item><item><title><![CDATA[android中BuildConfig.DEBUG的使用问题]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/127582187</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/127582187</guid><author>joephone77</author><pubDate>Sat, 29 Oct 2022 02:40:58 +0800</pubDate><description><![CDATA[android中BuildConfig.DEBUG的使用问题]]></description><category></category></item><item><title><![CDATA[Android Studio “Cannot resolve symbol” 解决办法]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/122808946</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/122808946</guid><author>joephone77</author><pubDate>Mon, 07 Feb 2022 14:56:59 +0800</pubDate><description><![CDATA[遇到“Cannot resolve symbol” ，尝试多种解决方案，重启AS，重新Sync gradle，Clean build也无解。

在此分享，希望友友们都能少走些弯路。

在AS中点击“File” -&gt; “Invalidate Caches / Restart”，对话框选择“Invalidate and Restart”，清空 cache 并且重启。

然后一片清新。
...]]></description><category></category></item><item><title><![CDATA[Your project path contains non-ASCII characters. 解决办法]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/122364927</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/122364927</guid><author>joephone77</author><pubDate>Fri, 07 Jan 2022 15:11:51 +0800</pubDate><description><![CDATA[报“Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory.”错误的原因是你的项目包含中文路径或项目名称包含中文字符。

解决办法：不要使用中文命名的路径，项目名称不要用中文。




...]]></description><category></category></item><item><title><![CDATA[Android Studio debug 模式无法启动App]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/122197885</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/122197885</guid><author>joephone77</author><pubDate>Tue, 28 Dec 2021 17:10:11 +0800</pubDate><description><![CDATA[现象：按了Android Studio的‘debug app’按钮后，提示安装成功，但是App并没有启动。停留在Forced Closed上。

Android Studio版本：3.6.3

解决办法：File -&gt; Invalidate Caches / Restart... -&gt; Invalidate and Restart




...]]></description><category></category></item><item><title><![CDATA[RatingBar不可点击更改]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/59677706</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/59677706</guid><author>joephone77</author><pubDate>Thu, 02 Mar 2017 20:54:30 +0800</pubDate><description><![CDATA[android:isIndicator="true"]]></description><category></category></item><item><title><![CDATA[RecyclerView  自动滑动到底部]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/59533350</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/59533350</guid><author>joephone77</author><pubDate>Thu, 02 Mar 2017 15:53:57 +0800</pubDate><description><![CDATA[mRecyclerView.scrollToPosition(adapter.getItemCount()-1);]]></description><category></category></item><item><title><![CDATA[android Manager下载google servece play 出现Download interrupted: Unexpected HTTP Status 502]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/54969933</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/54969933</guid><author>joephone77</author><pubDate>Fri, 10 Feb 2017 14:11:56 +0800</pubDate><description><![CDATA[错误的网关,设置了无效的代理服务器]]></description><category></category></item><item><title><![CDATA[禁用返回键]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/52993224</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/52993224</guid><author>joephone77</author><pubDate>Tue, 01 Nov 2016 10:05:49 +0800</pubDate><description><![CDATA[public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK
            && event.getRepeatCount() == 0) {
        return true;
    }
    return super.onKeyDown(key]]></description><category></category></item><item><title><![CDATA[Android排错:has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/52982889</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/52982889</guid><author>joephone77</author><pubDate>Mon, 31 Oct 2016 15:37:38 +0800</pubDate><description><![CDATA[异常场景：

经常在应用中需要处理一些耗时的工作，诸如读取大文件、访问网络资源等。为了避免因程序假死而带来的糟糕用户体验，通常我们可以通过线程+Handler或者Android提供的AsyncTask来解决该问题，并一般以ProgressDialog等提示性控件来告知用户当前的程序进度。而标题中描述的异常则会常常出现在这样的场景中，并且往往掩盖了导致异常的真正的罪魁祸首。

 

问题]]></description><category></category></item><item><title><![CDATA[Android TextView（EditView）文字底部或者中间 加横线]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/52571662</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/52571662</guid><author>joephone77</author><pubDate>Sun, 18 Sep 2016 09:37:53 +0800</pubDate><description><![CDATA[tv = (TextView) this .findViewById(R.id. text_view ); 

中间加横线 
tv.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG ); 
底部加横线： 
tv .getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG );






]]></description><category></category></item><item><title><![CDATA[Android 设置EditText光标颜色及粗细]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/52330725</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/52330725</guid><author>joephone77</author><pubDate>Fri, 26 Aug 2016 18:07:48 +0800</pubDate><description><![CDATA[在android的输入框里，如果要修改光标的颜色及粗细步骤如下两步即可搞定：
1.在资源文件drawable下新建一个光标控制color_cursor.xml


    
    

2.设置EditText：android:textCursorDrawable="@drawable/color_cursor"










http://liyanji]]></description><category></category></item><item><title><![CDATA[Android软键盘弹出时把布局顶上去的解决方法]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/51887022</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/51887022</guid><author>joephone77</author><pubDate>Tue, 12 Jul 2016 10:57:50 +0800</pubDate><description><![CDATA[在mainfest.xml中，对那个Activity加：
android:windowSoftInputMode="adjustResize"]]></description><category></category></item><item><title><![CDATA[Android实现透明的颜色效果]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/51698538</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/51698538</guid><author>joephone77</author><pubDate>Fri, 17 Jun 2016 11:13:47 +0800</pubDate><description><![CDATA[android Button或者ImageButton背景透明状态设置 

设置Button或ImageButton的背景为透明或者半透明 

半透明 

透明 

　　颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255(00 到 ff)。对于 alpha，00 表示完全透明，ff 表示完全不透明。表达式顺序是“aabbggrr”，其中]]></description><category></category></item><item><title><![CDATA[Android Studio 编译不通过，Unable to find optional library: org.apache.http.legacy]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/50834358</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/50834358</guid><author>joephone77</author><pubDate>Wed, 09 Mar 2016 12:36:58 +0800</pubDate><description><![CDATA[如果你使用的 target sdk是23请在build.gradle加入



android{ useLibrary 'org.apache.http.legacy' }]]></description><category></category></item><item><title><![CDATA[Android sdk content loader 0%的解决方案]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/50424816</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/50424816</guid><author>joephone77</author><pubDate>Tue, 29 Dec 2015 11:04:49 +0800</pubDate><description><![CDATA[Eclipse在启动时，经常会碰到半天启动不起来的情况，罪魁祸首就是“Android sdk content loader 0%”，题主经常是受这玩意的百般折磨，大早上一来就被这扫了工作的激情，浪费了大把时间。Eclipse初始化不成功就干不了活，所以这事必须得解决。经过自己多次亲身测试，发现没有一种办法的百试百灵的，只有通过以下几种方案来一步一步地解决。


方法一（关闭后重启）：]]></description><category></category></item><item><title><![CDATA[Android中常用colors.xml]]></title><link>https://blog.youkuaiyun.com/joephone77/article/details/17609135</link><guid>https://blog.youkuaiyun.com/joephone77/article/details/17609135</guid><author>joephone77</author><pubDate>Fri, 27 Dec 2013 12:02:24 +0800</pubDate><description><![CDATA[常用的colors.xml:
 

 

    #FFFFFF 

    #FFFFF0 

    #FFFFE0 

    #FFFF00 

    #FFFAFA 

    #FFFAF0 

    #FFFACD 

    #FFF8DC 

    #FFF5EE 

    #FFF0F5 

    #FFEFD5 

    #FFEBCD 

    #FFE4E]]></description><category></category></item></channel></rss>