<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[EmMouse的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/EmMouse</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; EmMouse]]></copyright><item><title><![CDATA[其实真的搞清楚了安卓四大组件的应用场景了吗]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/105320920</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/105320920</guid><author>EmMouse</author><pubDate>Sun, 05 Apr 2020 00:46:42 +0800</pubDate><description><![CDATA[其实经历这么多年来的安卓方面的开发，最后的感觉是，它太自由了，要实现一件事，可用的方式太多了。

举个例子：我想在两个APP之间同步一些状态或数据，你觉得用什么方式合适？

1、广播；

2、Messenger；

3、AIDL；

4、ContentProvider；

甚至还可以用SharedPreference（虽然这个跨进程共享方式已经被安卓废弃）；

1、刚开始接触安卓，就觉得广播最好...]]></description><category></category></item><item><title><![CDATA[android   android:persistent  service 空闲被回收]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/105311362</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/105311362</guid><author>EmMouse</author><pubDate>Sat, 04 Apr 2020 15:49:18 +0800</pubDate><description><![CDATA[网上有好多文章介绍app service 持续空闲30分钟后被回收，是因为app service脱离了可视组件的绑定，就被系统认为是空闲了，可是我们需要开发app service完全和可视组件没关系的deamon 服务，那么目前只有一招了，就是设置一下applicaton的属性：


android:persistent="true"


这个是需要system uid的：


android:s...]]></description><category></category></item><item><title><![CDATA[android 9.0 Android.mk 引用.so文件]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/104943840</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/104943840</guid><author>EmMouse</author><pubDate>Wed, 18 Mar 2020 14:18:35 +0800</pubDate><description><![CDATA[做下笔记：

LOCAL_PATH:=$(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE:=Gocsdk
LOCAL_MODULE_TAGS:=optional
LOCAL_MODULE_CLASS:=APPS
#LOCAL_PRIVILEGED_MODULE := true
LOCAL_SRC_FILES:=Gocsdk.apk
LOCAL_MO...]]></description><category></category></item><item><title><![CDATA[Android studio快捷键大全 和 eclipse对照（转）]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/89308153</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/89308153</guid><author>EmMouse</author><pubDate>Mon, 15 Apr 2019 11:08:09 +0800</pubDate><description><![CDATA[Android studio快捷键大全 和 eclipse对照（转）

Ctrl+空格代码提示 (同Eclipse中Alt+/)
Ctrl+Shjft+N  项目内查找文件 (同Eclipse中Ctrl+Shift+R)

double Shift...]]></description><category></category></item><item><title><![CDATA[aidl跨进程通讯的空指针异常]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/84942805</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/84942805</guid><author>EmMouse</author><pubDate>Mon, 10 Dec 2018 17:04:21 +0800</pubDate><description><![CDATA[java.lang.NullPointerException: Null reference used for synchronization (monitor-enter)
    at android.os.Parcel.readException(Parcel.java:1605)
    at android.os.Parcel.readException(Parcel.java:1552...]]></description><category></category></item><item><title><![CDATA[TextView超长显示后面的字符]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/83743918</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/83743918</guid><author>EmMouse</author><pubDate>Mon, 05 Nov 2018 09:48:59 +0800</pubDate><description><![CDATA[单行模式下，TextView超长后，默认会把后面的字符截掉变成“...”，但有个小技巧，可以让它一直显示后面追加的字符，前面变成“...”，

android:ellipsize=&quot;start&quot;

就这么简单，之前一直没留意过这东西。做下笔记。...]]></description><category></category></item><item><title><![CDATA[ViewPager的BUG ：点住TextView后无法滑动]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/54613392</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/54613392</guid><author>EmMouse</author><pubDate>Thu, 19 Jan 2017 10:39:27 +0800</pubDate><description><![CDATA[应该跟ViewPager的版本有关系，我遇到的问题如下：
ViewPager上有个TextView， 属于有singleLine和gravity 为 center, 然后发现点住TextView时滑动，此时Page无法滑动了，百思不解，后来发现把gravity改为left或right，都可以正常滑动，只要设置了center了就不行了，后来我只能用一个FrameLayout去把TextView装一]]></description><category></category></item><item><title><![CDATA[tar 分卷压缩 解压]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/53672621</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/53672621</guid><author>EmMouse</author><pubDate>Thu, 15 Dec 2016 16:57:40 +0800</pubDate><description><![CDATA[分卷压缩:

tar cjf - logs/ |split -b  100m - logs.tar.bz2

上面的命令是将logs这个文件夹分卷压缩，每卷100m，注意logs前面的空格，压缩完之后，分卷名称为logs.tar.bz2xx







解压:

先把所有分卷合并： 

 cat  logs.tar.bz2*>logs.tar.bz2
然后解压：]]></description><category></category></item><item><title><![CDATA[find grep sed 实现批量搜索文件，并替换字符串]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/53672318</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/53672318</guid><author>EmMouse</author><pubDate>Thu, 15 Dec 2016 16:53:42 +0800</pubDate><description><![CDATA[很容易忘，记录下：
find -name "*.xml"| grep "rCN" | xargs grep  测试字符1  -l | xargs sed -i "s/测试字符1/测试字符2/g"


find 就不说了；
第一个grep，不需要xargs，为何？因为这个grep查找的不是文件内容，而是路径本身，检查find的取得的文件路径是否包括"rCN"；
第二个grep，需要xar]]></description><category></category></item><item><title><![CDATA[彻底固定一个默认Launcher]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/53352190</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/53352190</guid><author>EmMouse</author><pubDate>Sat, 26 Nov 2016 15:39:43 +0800</pubDate><description><![CDATA[由于我们产品需要把自己的Launcher固定住，而且不允许任何情况去更换别的Launcher，于是查了一些帖子，下面这位仁兄写的比较靠谱，但依然没有彻底固定住
http://blog.youkuaiyun.com/fireness/article/details/48177923


其实这样做是最彻底的，普通用户怎么弄也弄不掉我的Launcher 了。
写下笔记：
系统版本：4.2.2， 文件：]]></description><category></category></item><item><title><![CDATA[ubuntu 64bit 下 arm linux gcc 无法运行]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/24481049</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/24481049</guid><author>EmMouse</author><pubDate>Fri, 25 Apr 2014 16:28:10 +0800</pubDate><description><![CDATA[$sudo apt-get install libstdc++6 
$sudo apt-get install lib32stdc++6]]></description><category></category></item><item><title><![CDATA[android横竖屏切换时候Activity的生命周期]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/21548365</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/21548365</guid><author>EmMouse</author><pubDate>Wed, 19 Mar 2014 18:15:23 +0800</pubDate><description><![CDATA[为自己提醒，写android程序，千万不能忽略了activity的生命周期问题。


1、新建一个Activity，并把各个生命周期打印出来 


2、运行Activity，得到如下信息 


onCreate--> 
onStart--> 
onResume--> 


3、按crtl+f12切换成横屏时 


onSaveInstanceState--> 
]]></description><category></category></item><item><title><![CDATA[Android ListView]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/21455797</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/21455797</guid><author>EmMouse</author><pubDate>Tue, 18 Mar 2014 14:23:19 +0800</pubDate><description><![CDATA[这几天刚碰到这这样的应用需求，为自己记一下。
1、换背景，包括默认背景和点击背景
2、Item个别TextView使用自定义字体，这使得必须自定义一个Adapter，动态修改字体。
实现效果：


activity布局，很简单就一个listview


    xmlns:tools="http://schemas.android.com/tools"
    android:]]></description><category></category></item><item><title><![CDATA[高并发高流量网站架构]]></title><link>https://blog.youkuaiyun.com/EmMouse/article/details/8839972</link><guid>https://blog.youkuaiyun.com/EmMouse/article/details/8839972</guid><author>EmMouse</author><pubDate>Tue, 23 Apr 2013 15:14:40 +0800</pubDate><description><![CDATA[Web2.0的兴起，掀起了互联网新一轮的网络创业大潮。以用户为导向的新网站建设概念，细分了网站功能和用户群，不仅成功的造就了一大批新生的网站，也极大的方便了上网的人们。但Web2.0以用户为导向的理念，使得新生的网站有了新的特点——高并发，高流量，数据量大，逻辑复杂等，对网站建设也提出了新的要求。
　　本文围绕高并发高流量的网站架构设计问题，主要研究讨论了以下内容：
　　首先在整个网络的高度讨]]></description><category></category></item></channel></rss>