<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Soul Of Free Loop &#187; 手机</title>
	<atom:link href="https://zohead.com/archives/category/digital/phone/feed" rel="self" type="application/rss+xml" />
	<link>https://zohead.com</link>
	<description>Uranus Zhou&#039;s Blog</description>
	<lastBuildDate>Sat, 19 Jul 2025 15:42:46 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.8</generator>
	<item>
		<title>Zenfone 2更换电池和LineageOS</title>
		<link>https://zohead.com/archives/zenfone2-battery/</link>
		<comments>https://zohead.com/archives/zenfone2-battery/#comments</comments>
		<pubDate>Fri, 24 Apr 2020 11:16:07 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[手机]]></category>
		<category><![CDATA[LineageOS]]></category>
		<category><![CDATA[Zenfone 2]]></category>
		<category><![CDATA[华硕]]></category>
		<category><![CDATA[电池]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1617</guid>
		<description><![CDATA[华硕 Zenfone 2 问题 我在 2016 年购买华硕 Zenfone 2 旗舰版手机（具体型号为 ZE551ML）在换成 Nubia Z17 之后就临时给老妈用了，毕竟这款曾经的 Intel 处理器手机还是比较结实耐用的。老妈春节前跟我说 Zenfone 2 手机已经开不了机了，我便直接给老妈买了新的手机，过年疫情之后才把挂了的 Zenfone 2 手机带回来。 前段时间收拾东西的时候才想起来放在角落的 Zenfone 2 手机，试了试手机问题为：开机手机震动，但屏幕上没有任何输出，等一会似乎就自动重启了，不断开机震动循环直到强制关机。 联想到老妈之前习惯了手机充电时一直放着不管，等用的 [&#8230;]]]></description>
				<content:encoded><![CDATA[<h2 id="zenfone2-issue">华硕 Zenfone 2 问题</h2>
<p>我在 2016 年购买华硕 <a href="https://zohead.com/archives/zenfone2/">Zenfone 2</a> 旗舰版手机（具体型号为 ZE551ML）在换成 Nubia Z17 之后就临时给老妈用了，毕竟这款曾经的 Intel 处理器手机还是比较结实耐用的。老妈春节前跟我说 Zenfone 2 手机已经开不了机了，我便直接给老妈买了新的手机，过年疫情之后才把挂了的 Zenfone 2 手机带回来。</p>
<p>前段时间收拾东西的时候才想起来放在角落的 Zenfone 2 手机，试了试手机问题为：开机手机震动，但屏幕上没有任何输出，等一会似乎就自动重启了，不断开机震动循环直到强制关机。</p>
<p>联想到老妈之前习惯了手机充电时一直放着不管，等用的时候才拔下充电器。我又查了查华硕官方论坛其它用户反馈的类似问题，估计是手机电池已经报废了，便从淘宝上买了华硕 Zenfone 2 的电池准备更换试试。</p>
<h2 id="change-battery">更换电池</h2>
<p>参考 iFixit 上的介绍，准备拆机工具，首先卸下后盖：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442991/zenfone2-open.jpg" alt="Zenfone 2 后盖"></p>
<p>可以看到 NFC 线圈在后盖上，把后面一共 14 颗螺丝全部卸下，就可以显出电池了：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442993/zenfone2-sep.jpg" alt="Zenfone 2 后盖和电池"></p>
<p>这一步拆电池就需要掌握力道和巧劲咯，因为电池背面是用强力胶粘上的，腾讯视频上有个 Zenfone 2 的拆机视频是从上面的排线那直接有力拉出胶带，可惜我这台手机这么操作并没什么用，只能拿工具把电池撬下来，过程中特别要注意电池上下的排线。</p>
<p>看看拆下来的旧电池尸体，电池型号是华硕 C11P1424，输出为 3.85 V - 11.5 Wh，容量 3000 mAh，生产日期是 2015 年 5 月 28 日，生产厂家是常熟华普电子：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442994/zenfone2-teardown.jpg" alt="Zenfone 2 原电池"></p>
<p>再看看淘宝买的新电池，型号和规格完全一样，只是生产日期是 2019 年 7 月 1 日，生产厂家为东莞新能源科技：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442985/zenfone2-battery-pack.jpg" alt="Zenfone 2 新电池"></p>
<p>这里发现个大问题，卖家发来的电池直接带了金属外壳，但又没有 Zenfone 2 手机电池上粘的排线和配件。从下面的图可以看得很清楚，原电池外壳背面还直接粘上了包括 TF 卡槽和两个 SIM 卡插槽：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442985/zenfone2-battery-accessory.jpg" alt="Zenfone 2 电池外套配件"></p>
<p>这就意味着要么我把原电池外壳粘的这一层很薄的配件贴纸撕下来，再准确地贴到新电池外壳的相同位置上；要么就得把原电池和新电池的外壳都去掉，再把新电池放到原电池外壳。</p>
<p>由于我实在对直接撕原电池外壳的配件贴纸没啥自信，只能分别去掉两个电池的外壳。这一步我真是差点使出了洪荒之力了，因为两个电池外壳都粘的异常地紧，而且不能把包含了排线和配件的原电池外壳弄坏，最主要旧电池可以随便整，新电池却不能有啥损伤。</p>
<p>费了好一番功夫，再看看拆下来的新旧电池，右边的旧电池已经被我拆的挂彩了 ^_^：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442990/zenfone2-new-old-battery.jpg" alt="Zenfone 2 新旧电池"></p>
<p>最后重新装好手机开机，终于又看到华硕标志了：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442982/zenfone2-asus-boot.jpg" alt="Zenfone 2 新电池开机"></p>
<h2 id="zenfone2-lineageos">刷 LineageOS</h2>
<p>开机恢复出厂设置，看看手机系统还是华硕 “最新” 的 Android 6.0 官方国际版系统（购买时是 Android 5.1 系统）。刚好以前就知道 LineageOS 支持过 Zenfone 2 手机，只是现在没有继续更新了，虽然版本停留在 LineageOS 14.1（Android 7.1.2）了，但也是值得一刷的，看看 LineageOS 对华硕 Zenfone 2 支持情况的说明：</p>
<p><a href="https://lineageosroms.com/zenfone-2-z00a/" target="_blank">https://lineageosroms.com/zenfone-2-z00a/</a></p>
<p>LineageOS 官网上已经不能下载 Zenfone 2 的系统了，还好我从 XDA 开发者论坛上下载到了官方最后维护的 Zenfone 2 LineageOS 14.1（20180127 每夜版）系统。</p>
<p>刷机之前需要先从华硕官网下载解锁工具解锁 bootloader（这一点华硕还是比较厚道的），接着可以从 <a href="https://dl.twrp.me/Z00A/" target="_blank">TeamWin</a> 官网下载并刷入适用于 ZE551ML（Z00A）的 TWRP recovery，然后就是在 TWRP recovery 里刷 LineageOS 系统咯，这些就不做介绍了。</p>
<p>刷完之后看看 LineageOS 的欢迎画面：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442989/zenfone2-lineage-welcome.jpg" alt="Zenfone 2 LineageOS 欢迎画面"></p>
<p>基本接近原生系统的 LineageOS 还是挺符合我的胃口的，详细版本信息如下：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442988/zenfone2-lineage-system.png" alt="Zenfone 2 LineageOS 系统版本"></p>
<p>Zenfone 2 刷了 LineageOS 系统之后运行很流畅，除了 FM 广播不能用之外系统没太大问题。我使用时首次开启蓝牙会失败，关机再重新开机就好了。虽然由于 Intel 处理器的原因有些国产 App 存在兼容性问题，但当个备用机还是妥妥的。</p>
<p>最后我把 Zenfone 2 的 LineageOS 系统、TWRP recovery 以及 Addon SU 都上传到百度网盘了，虽然估计没什么人会用到了，有需要的同学还是可以刷了玩玩哈。</p>
<p><a href="https://pan.baidu.com/s/1npdMDPbKcDFso-19JJdNZg" target="_blank">https://pan.baidu.com/s/1npdMDPbKcDFso-19JJdNZg</a>（提取码：<strong>nbfs</strong>）</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/zenfone2-battery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sentio Superbook初步体验</title>
		<link>https://zohead.com/archives/sentio-superbook/</link>
		<comments>https://zohead.com/archives/sentio-superbook/#comments</comments>
		<pubDate>Wed, 13 Feb 2019 13:36:31 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[手机]]></category>
		<category><![CDATA[数码]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[DisplayLink]]></category>
		<category><![CDATA[Nubia]]></category>
		<category><![CDATA[Sentio]]></category>
		<category><![CDATA[Superbook]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1568</guid>
		<description><![CDATA[关于 Sentio Superbook 2016 年的时候我写了篇 使用DisplayLink显卡组装Android Superbook 的文章，介绍如何使用 Motorola Lapdock 扩展坞和 DisplayLink USB 显卡实现手机扩展笔记本的效果。差不多 9 月份我就下单支持了 Kickstarter 上 Sentio 团队推出的 Superbook 项目，并花了 154 美元选择了 1080p 屏幕的高配版本（99 美元基础费用 + 30 美元升级费用 + 25 美元运费）。 比较坑的是 Superbook 项目众筹达到目标之后，Sentio 团队中间一拖再拖，不断出现供应 [&#8230;]]]></description>
				<content:encoded><![CDATA[<h2 id="about-sentio-superbook">关于 Sentio Superbook</h2>
<p>2016 年的时候我写了篇 <a href="https://zohead.com/archives/displaylink_superbook/">使用DisplayLink显卡组装Android Superbook</a> 的文章，介绍如何使用 Motorola Lapdock 扩展坞和 DisplayLink USB 显卡实现手机扩展笔记本的效果。差不多 9 月份我就下单支持了 Kickstarter 上 <a href="http://www.sentio.com/" target="_blank">Sentio</a> 团队推出的 <a href="https://www.kickstarter.com/projects/andromium/the-superbook-turn-your-smartphone-into-a-laptop-f" target="_blank">Superbook</a> 项目，并花了 154 美元选择了 1080p 屏幕的高配版本（99 美元基础费用 + 30 美元升级费用 + 25 美元运费）。</p>
<p>比较坑的是 Superbook 项目众筹达到目标之后，Sentio 团队中间一拖再拖，不断出现供应商及硬件固件相关的问题，导致我的 Superbook 等了两年多直到 2019 年 1 月份才从香港发到我手上。此处需要额外吐槽的是联邦快递，即使 Superbook 价格里已经包含了关税，联邦无视 Sentio 提供的价格单仍然主动报关，导致到手时我还是另外付了 100 人民币左右的关税。</p>
<h2 id="开箱及外观">开箱及外观</h2>
<p>毕竟只是廉价众筹的产品，Superbook 的外包装也挺简单：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442953/superbook-box-front.jpg" alt="Superbook 包装正面"></p>
<p>众筹版本额外赠送了 Superbook 笔记本保护套及一张 A 面贴纸，自带的电源适配器则是 12V 3A 的：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442951/superbook-accessory.jpg" alt="Superbook 附件"></p>
<p>包装里只附带了一张 A4 纸的简单使用说明，先看看主机正面，金色机身正面也只有 Superbook 字样，和我的 Acer Chromebook 14 比起来还是很小巧的：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442951/superbook-a-all.jpg" alt="Superbook A 面"></p>
<p>整个机身只有左侧的一个 USB Type-A 扩展接口（可外接其它 USB 设备）以及和手机连接的 USB Type-C 接口。</p>
<p>从 D 面可以看到具体型号是 Superbook S1，由于没有处理器之类的不需要散热孔，D 面也只有一个重置按钮：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442956/superbook-d.jpg" alt="Superbook D 面"></p>
<p>B 面和 C 面如下，打开时感觉转轴稍微有点生硬，11 寸的 1080p IPS 屏幕下面就是 Sentio 的图标，C 面做了点磨砂处理，键盘上方只有电池和工作状态指示灯：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442952/superbook-b-c.jpg" alt="Superbook B 面和 C 面"></p>
<p>主要关注下键盘，可以看到 Superbook 主要就是为 Android 专门设计的：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442956/superbook-keyboard.jpg" alt="Superbook 键盘和触控板"></p>
<p>键盘上最上面一排开始就是 返回、主页及切换窗口按键，接着是常用的屏幕亮度和音量控制键等，最下面增加了搜索键和专门的 Sentio 按键（实现一些 Superbook 设备自身的功能）；支持多点触摸的触控板用起来手感也只能说是中规中矩。</p>
<h2 id="superbook-report">初步使用</h2>
<p>由于 2016 年我预订的时候用的还是华硕 Zenfone2 手机，选的配件还是官方的 USB Type-C 转 Micro-USB 线，还好现在换的 Nubia Z17 手机也是 USB OTG 功能的，只是需要自己购置 USB Type-C 转 Type-C 的线咯。</p>
<p>按照官方 <a href="http://sentio.wikia.com/" target="_blank">Sentio Wiki</a> 页面上的说明，连接 Android 手机之前，手机上需要安装 <a href="https://play.google.com/store/apps/details?id=com.displaylink.presenter" target="_blank">DisplayLink Presenter</a> 和 <a href="https://play.google.com/store/apps/details?id=com.sentio.desktop" target="_blank">Sentio Desktop</a> 这两个 App。</p>
<p>DisplayLink Presenter 相当于 Superbook 自带 DisplayLink USB 显卡的 Android 驱动程序（只负责镜像手机屏幕）；Sentio Desktop 就是一个应用启动器，运行之后会启动一个类似桌面环境，用户可以在 Sentio Desktop 中运行手机里的其它 App。</p>
<p>我的 Nubia Z17 上 DisplayLink Presenter 工作倒是没问题，但 Sentio Desktop 始终卡在要求 Android 多窗口支持这一步上，我的手机虽然运行的是 Android 7.1.1 系统，但是 Nubia 官方系统把这个重要特性给阉割了（有过 Nubia 手机使用经验的同学们估计也知道 Nubia 的系统有多坑）。</p>
<p>一番搜索之后，我在 Sentio Wiki 上的 <a href="http://sentio.wikia.com/wiki/Troubleshooting/Getting_Started" target="_blank">Troubleshooting/Getting Started</a> 页面上找到解决办法，通过 adb 运行下面两个命令并重启手机（第一条命令用于开启 Android 多窗口支持）：</p>
<pre class="brush: bash; title: ; notranslate">
settings put global enable_freeform_support 1
pm grant com.sentio.desktop android.permission.WRITE_SECURE_SETTINGS
</pre>
<p>这样 Sentio Desktop 程序好歹能在我的 Nubia Z17 手机上运行起来了：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442941/sentio-desktop.png" alt="Sentio Desktop"></p>
<p>Sentio Desktop 桌面环境看起来也是比较简洁的，左下角的启动图标可以弹出搜索运行 App，右下角通知区域则包含常用的功能开关，蓝牙、WLAN、音量都可以直接控制，设置图标弹出的 <strong>快速设定</strong> 界面略显简单。</p>
<p>手机屏幕实际投射到 Superbook 上我才发现 Nubia Z17 即使通过 adb 命令开启了多窗口支持，Sentio Desktop 桌面环境里还是只能同时显示一个 App，并不能实现自由调整窗口大小更别说多窗口运行 App 了。</p>
<p>Sentio Desktop 初步使用起来，手机上的 Chrome 浏览器、视频播放器等支持横屏的 App 经过放大投射到 Superbook 上显示效果还是不错的，只是播放高清网络视频和玩一些游戏的时候会略有些卡顿。Superbook 的键盘和触控板也能直接控制手机，Android 通知栏也能点击通知图标弹出来：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442941/sentio-desktop-chrome.png" alt="Sentio Desktop App 和通知栏"></p>
<p>不过对于不支持横屏显示的 App，例如 Nubia 自带相机这种投射到 Superbook 上效果就很一般了：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442941/sentio-desktop-app.jpg" alt="Superbook 竖屏显示"></p>
<p>这个问题还是多窗口支持被阉割了导致 App 无法以单独窗口形式运行导致的，暂时只能让 Nubia Z17 手机系统来背锅了，后续我可以换像一加这种使用类原生系统的手机来测试咯，毕竟这样会使 Sentio Desktop 桌面环境的使用体验大打折扣。</p>
<h2 id="superbook-issue">问题</h2>
<p>部分使用 USB Type-C 接口的手机例如我的 Nubia Z17 连接 Superbook 之后，Superbook 为手机充电的功能并不能工作，而且 USB 连接也不太稳定，需要通过 <kbd>Fn + P</kbd> 键关闭 Superbook USB 充电功能之后才能正常使用，不太确定是否与我购买的 USB Type-C 数据线有关。</p>
<p>另外我在测试 Android 电视棒的时候还是发现有些问题，我用的是之前买的 <a href="https://zohead.com/archives/mk809iv-1080p/">MK809IV</a> Android 电视棒，由于 Android 电视棒一般只支持通过自带的 HDMI 接口进行输出，我的住处也没有 HDMI 显示器或者电视，导致 Android 电视棒接上 Superbook 之后也没有任何反应无法使用。</p>
<p>即便对于我买的这种可以自由安装 App 的 Android 电视棒，也会因为电视棒 Android 4.4 版本太低而无法使用 Sentio Desktop App，更别说很多厂商提供的电视棒还无法自行安装卸载 App 那就更加不可行了。</p>
<p>因此 Sentio Superbook 的限制就是所连接的设备必须支持 DisplayLink USB 显卡，我曾经在项目众筹阶段向发起人提议做成像 Motorola Lapdock 那样，将屏幕的 HDMI 输入开放一个接口可以让外部设备连接，并增加硬件开关切换 HDMI 输入和显卡通过 USB Hub 显示，不过这样硬件做起来比较复杂也就没被采纳。</p>
<h2 id="summary">总结</h2>
<p>接着我还找了 Chromebook、Windows 10 笔记本等设备分别接到 Superbook 上，由于 Chrome OS 和 Windows 10 系统都自带了 DisplayLink USB 显卡驱动，接上之后都能自动识别并扩展屏幕到 Superbook，做为外接显示器来用体验还是比较满意的。</p>
<p>经过这段时间的使用，Superbook 还是能解决我的某些需求的，只是由于 Nubia Z17 手机的各种限制体验会受些影响。目前 Superbook 基本被我由于之前买的一个老款 Intel Computer Stick，这类 PC stick 设备升级到 Windows 10 系统之后接上 Superbook 就可以做主屏幕显示了，不用额外接显示器和键盘鼠标当成一台 Windows 备用机来用还是不错咯。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/sentio-superbook/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>动手拆机更换华硕PadFone A86手机电池</title>
		<link>https://zohead.com/archives/padfone-a86-battery/</link>
		<comments>https://zohead.com/archives/padfone-a86-battery/#comments</comments>
		<pubDate>Thu, 16 Mar 2017 15:56:38 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[手机]]></category>
		<category><![CDATA[A86]]></category>
		<category><![CDATA[PadFone]]></category>
		<category><![CDATA[华硕]]></category>
		<category><![CDATA[电池]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1393</guid>
		<description><![CDATA[PadFone A86 问题 去年我把日常使用的手机更换为华硕 Zenfone 2 旗舰版之后，便将原来用的华硕 New PadFone Infinity（A86）手机和平板基座一起给老妈用了，她拿来看看听听歌，看看电影、广场舞视频之类的还是不错的。 不过最近家人反映 PadFone A86 出现不能正常开机的问题，我拿到手之后发现手机开机出现启动画面之后就不断循环重启，有时甚至连 Recovery 都进不去，只能插着充电器才能勉强进入系统。进入系统之后虽然手机电量显示为 100%，但拔掉充电器之后没过几分钟就会自动关机。 这种情况看起来很像是手机电池老化不顶用了，在华硕论坛上搜索一番才发现台 [&#8230;]]]></description>
				<content:encoded><![CDATA[<h2 id="padfone-a86-problem">PadFone A86 问题</h2>
<p>去年我把日常使用的手机更换为华硕 <a href="https://www.asus.com.cn/Phone/ZenFone_2_ZE551ML/" target="_blank">Zenfone 2</a> 旗舰版之后，便将原来用的华硕 <a href="https://www.asus.com/tw/Phone/The_new_PadFone_Infinity_A86/" target="_blank">New PadFone Infinity（A86）</a>手机和平板基座一起给老妈用了，她拿来看看听听歌，看看电影、广场舞视频之类的还是不错的。</p>
<p>不过最近家人反映 PadFone A86 出现不能正常开机的问题，我拿到手之后发现手机开机出现启动画面之后就不断循环重启，有时甚至连 Recovery 都进不去，只能插着充电器才能勉强进入系统。进入系统之后虽然手机电量显示为 100%，但拔掉充电器之后没过几分钟就会自动关机。</p>
<p>这种情况看起来很像是手机电池老化不顶用了，在华硕论坛上搜索一番才发现台湾用户已经对 A86 的这个问题广泛吐槽了，解决方法就是自己动手拆机换电池（基本都是过保之后出现这个问题）。</p>
<h2 id="replace-battery">更换电池</h2>
<p>虽然华硕把 PadFone A86 这款曾经的旗舰机设计成全金属机身风格，根本不让打开后盖换电池，但为了这款过保的老手机专门跑一趟维修站就明显不太划算了。我到淘宝上搜索同款电池，连拆机工具一起也才 30 大洋。先让收到的工具、新电池和即将被拆的老手机合个影：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442867/padfone-a86.jpg" alt="PadFone A86 手机" title="PadFone A86 手机"></p>
<p>拆机之前最好先把手机里的 SIM 卡以及插槽，还有 MicroSD 存储卡都拿出来。刚好我的手机之前不小心给右下角摔出一个口子，就从这里开始拆吧，沿着金属边框整个打开就差不多了，只是要注意力道：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442868/padfone-a86-teardown.jpg" alt="开始拆机" title="开始拆机"></p>
<p>操作还是比较简单的，下面是后盖打开的样子：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442867/padfone-a86-open.jpg" alt="PadFone A86 手机内部图" title="PadFone A86 手机内部图"></p>
<p>占了很大一块的就是电池了（不过容量也才 2400 mAh），掀开铜贴纸，从下图中圈出来的地方拔下老的电池，再将新买的电池换上去即可：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442867/padfone-a86-battery.jpg" alt="PadFone A86 手机电池" title="PadFone A86 手机电池"></p>
<p>最后把后盖重新装上，打开电源开机，一切顺利，PadFone A86 手机终于可以正常启动看到 ZenUI 系统咯：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442868/padfone-a86-welcome.jpg" alt="PadFone A86 手机系统" title="PadFone A86 手机系统"></p>
<p>最后祝大家玩的开心 ~~~。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/padfone-a86-battery/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>使用DisplayLink显卡组装Android Superbook</title>
		<link>https://zohead.com/archives/displaylink_superbook/</link>
		<comments>https://zohead.com/archives/displaylink_superbook/#comments</comments>
		<pubDate>Tue, 26 Jul 2016 16:31:39 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[Andromium]]></category>
		<category><![CDATA[DisplayLink]]></category>
		<category><![CDATA[Kickstarter]]></category>
		<category><![CDATA[LapDock]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[OTG]]></category>
		<category><![CDATA[Superbook]]></category>
		<category><![CDATA[USB]]></category>
		<category><![CDATA[Zenfone 2]]></category>
		<category><![CDATA[显卡]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1257</guid>
		<description><![CDATA[关于 Superbook 前几天在 Kickstarter 上看到一个挺有意思的 Superbook 众筹项目，其主要目的是以 99 美元的价格实现 Android 手机插上数据线连接 Superbook 就能变身笔记本，该项目由 Andromium 团队推出，截至我写此文章的时候该项目已经筹集到 80 多万美元，感兴趣的朋友可以看看其 Kickstarter 项目主页： http://getsuperbook.com/ 初看该项目介绍，发现还是比较类似 Motorola 前几年推出的 LapDock 笔记本扩展坞装备的，只是 LapDock 是专门给 Motorola ME865 等手机设计 [&#8230;]]]></description>
				<content:encoded><![CDATA[<h2 id="关于-superbook">关于 Superbook</h2>
<p>前几天在 Kickstarter 上看到一个挺有意思的 Superbook 众筹项目，其主要目的是以 99 美元的价格实现 Android 手机插上数据线连接 Superbook 就能变身笔记本，该项目由 Andromium 团队推出，截至我写此文章的时候该项目已经筹集到 80 多万美元，感兴趣的朋友可以看看其 Kickstarter 项目主页：</p>
<p><a href="http://getsuperbook.com/">http://getsuperbook.com/</a></p>
<p>初看该项目介绍，发现还是比较类似 Motorola 前几年推出的 LapDock 笔记本扩展坞装备的，只是 LapDock 是专门给 Motorola ME865 等手机设计的，其它设备如果想要使用 LapDock 必须支持 USB Host/OTG 以及 HDMI 输出功能而且需要准备各种转换线。</p>
<p>Superbook 主要特性包括：</p>
<ul>
<li>可支持所有包含 USB OTG 功能的 Android 手机；</li>
<li>11.6 寸 1366x768 的 IPS 屏幕；</li>
<li>10 个小时的续航支持，连接上手机后可以为手机充电；</li>
<li>也可以支持树莓派、MiniPC 等类型的设备；</li>
<li>在自带了键盘和多点触控触摸板的基础上也有扩展的 USB 接口方便用户使用；</li>
<li>与手机共享数据，这点和 LapDock、华硕 PadFone 底座类似。</li>
</ul>
<p>Android 手机连接 Superbook 之后，Superbook 上运行的是 <strong>Andromium OS</strong> 界面，<strong>Andromium OS</strong> 也是支持多窗口运行 Android App 的，其界面和 <a href="http://www.jide.com/remixos-for-pc">Remix OS</a> 还是有点相似的。</p>
<p>在稍微看了 Superbook 的技术细节之后，我发现其不需要手机支持 HDMI 或者 MHL 等视频输出功能，而是基于 DisplayLink 提供的 Android 显示输出功能实现的，具体可以参考 <a href="http://www.displaylink.com/downloads/android">DisplayLink for Android</a> 的介绍页面。</p>
<p>这样看起来 Superbook 和 LapDock 的最大区别就是 Superbook 在笔记本扩展坞自身的 USB Hub 上额外集成了一块 DisplayLink 的 USB 显卡以支持 Android 手机的 USB 显卡视频输出功能。这样不仅可以兼容更多种类的 Android 手机，而且只需要一根 USB 数据线也能让用户使用起来更简单。</p>
<p>刚好我手头上还有一块之前捣鼓 Ubuntu for Android 时购买的 DisplayLink USB 2.0 接口的显卡，应该就可以配合闲置的 Motorola LapDock 以及支持 USB OTG 功能的华硕 Zenfone2 手机（刚好不支持 HDMI 或 MHL 视频输出功能）来自己组装一个简陋版本的 Superbook 咯。</p>
<h2 id="手机-lapdock-组装-superbook">手机 + LapDock 组装 Superbook</h2>
<p>如果读者也有兴趣自己组装一台 Superbook 试试看，首先需要确认你的手机支持 USB OTG 功能，还需要一块 DisplayLink 的 USB 显卡，如果能外接 USB 或者蓝牙的键盘或者鼠标的话操作也会更方便，另外如果显示设备不是 LapDock 的话那最好还需要一个带电源的 USB Hub 给显卡供电（LapDock 直接带键盘鼠标并支持供电就不用考虑这些了）。</p>
<p>首先手机上需要安装 <a href="https://play.google.com/store/apps/details?id=com.displaylink.presenter">DisplayLink Presenter</a> App，可以通过 Google Play 商店直接安装，安装之后无需做任何设置，只要手机接上了 DisplayLink 显卡或者扩展坞该 App 就会自动开始工作，该 App 界面中的说明：</p>
<div style="width: 370px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737370806/displaylink_presenter.jpg" width="360" height="640" alt="DisplayLink Presenter" /><p class="wp-caption-text">DisplayLink Presenter</p></div>
<p>接着就可以把手机和 USB 显卡以及 LapDock 连接起来了，还请忽略图中各种凌乱的转接头和连接线 ^_^：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442947/superbook_lapdock.jpg" width="640" height="360" alt="LapDock 连接" /><p class="wp-caption-text">LapDock 连接</p></div>
<p>Zenfone2 手机直接连 LapDock 的 Micro-USB 接口，DisplayLink USB 显卡插在 LapDock 的扩展 USB 接口上（见上图圈出的地方），并通过 HDMI 线与 LapDock 的 Micro-HDMI 接口相连，这样打开 LapDock 盖子的时候，LapDock 就能同时给手机和 USB 显卡供电。</p>
<p>此时我们可以先确认下 USB 显卡设备是否已经找到，在终端中运行 <code>busybox lsusb</code> 命令（Android 需要 busybox 支持）可以看到手机中所有的 USB 设备，下面的截图是插上 USB 显卡之前和之后的输出信息对比：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442947/superbook_usb_dev.jpg" width="640" height="314" alt="DisplayLink USB 显卡设备" /><p class="wp-caption-text">DisplayLink USB 显卡设备</p></div>
<p>上面命令输出中设备 ID 为 <code>17e9:03c1</code> 的 USB 设备就是 DisplayLink USB 显卡了。</p>
<p>一切正常的话，这时应该就能在 LapDock 屏幕上看到手机屏幕的镜像了，通过 LapDock 的键盘和鼠标还能更方便的进行输入操作，应该可以初步达到 Superbook 的效果咯。这个是我在 LapDock 上运行 Android Chrome 浏览器的效果，屏幕大了看起来更方便：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442950/superbook_web.jpg" width="640" height="360" alt="LapDock Superbook 浏览网页" /><p class="wp-caption-text">LapDock Superbook 浏览网页</p></div>
<p>还可以用来玩手机游戏，不过游戏最好是支持横屏的，能支持鼠标（触摸板）和键盘控制的话效果更好。当然如果你玩的游戏能支持 USB 或者蓝牙手柄，那玩起来就更加 happy 一些咯：</p>
<div style="width: 650px" class="wp-caption alignnone"><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442946/superbook_game.jpg" width="640" height="378" alt="LapDock Superbook 玩游戏" /><p class="wp-caption-text">LapDock Superbook 玩游戏</p></div>
<p>当然到这一步还只是通过 DisplayLink 显卡实现了简单的手机屏幕镜像的功能，如果你需要实现和未来 Superbook 类似的体验，可以安装 Google Play 商店中的 <strong>Andromium OS</strong> App 了，链接如下：</p>
<p><a href="https://play.google.com/store/apps/details?id=com.andromium.os">https://play.google.com/store/apps/details?id=com.andromium.os</a></p>
<p><strong>Andromium OS</strong> App 说明中虽然说的是目前支持手机连接兼容的 Dock 扩展坞，不过像我这样直接使用 DisplayLink USB 显卡也是可以的哦。</p>
<p>具体连接和操作步骤可以参考 Andromium 论坛中的<a href="http://andromiumos.freeforums.net/thread/5/setting-andromium-samsung-phone-dock">介绍帖子</a>，其实和上面的连接方法是基本一样的，只是将 DisplayLink Presenter App 换成了 Andromium OS，而且使用方式上还是有一些需要注意的限制。</p>
<h2 id="后记">后记</h2>
<p>虽然本文只是写了下最简单的使用 LapDock 搭配 DisplayLink 显卡组装一个简陋版 Superbook 的方法，但从 Superbook 的 Kickstarter 项目在 38 个小时内筹集到 50 万美元的速度来看，Superbook 还算是比较引人关注的。</p>
<p>官方也说明了筹款额达到 100 万美元之后会考虑增加 1080p 屏幕的版本（额外增加 30 美元），如果 129 美元的 1080p 版本的 Superbook 能够正常生产出来而且比较稳定的话，我应该会考虑入手的，至少使用上还是比 LapDock 这种要方便很多的。另外毕竟现在 Android 手机的硬件配置已经比较强悍了，这样我一直比较期望的 Linux on Android 效果在稍做修改之后应该也能在 Superbook 上发挥出来了。</p>
<p>总之还是希望 Andromium 的 Superbook 项目能够顺利完成的哦，最后祝大家在这个火热的季节还能玩的开心。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/displaylink_superbook/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>为Zenfone 2开启NFC SIM卡刷公交支持</title>
		<link>https://zohead.com/archives/zenfone2-nfc-sim/</link>
		<comments>https://zohead.com/archives/zenfone2-nfc-sim/#comments</comments>
		<pubDate>Wed, 06 Jul 2016 17:34:35 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[生活]]></category>
		<category><![CDATA[NFC]]></category>
		<category><![CDATA[SE]]></category>
		<category><![CDATA[SIM]]></category>
		<category><![CDATA[SWP]]></category>
		<category><![CDATA[Zenfone 2]]></category>
		<category><![CDATA[公交卡]]></category>
		<category><![CDATA[华硕]]></category>
		<category><![CDATA[支付]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1246</guid>
		<description><![CDATA[我在 4 月份买的华硕 Zenfone 2 ZE551ML 手机已经上手使用一段时间了，当初也看中这款 Zenfone 2 ZE551ML 手机是支持 NFC 功能的，测试使用 NFC 标签配合 Trigger+Tasker 触发任务或者 Smart Lock 智能解锁都是比较好用的。同样我还试过开启招商银行的「掌上生活」App 中的「一闪通」功能（其实就是银联云闪付）进行 NFC 刷手机支付。 不过在使用中国联通的 NFC SIM 卡进行刷公交或者地铁时发现存在问题，根本无法使用，鉴于网上也有不少别的用户碰到这种问题（比较坑的是有人已经给 NFC SIM 卡充完值才发现刷公交或地铁没反应）， [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>我在 4 月份买的<a href="https://zohead.com/archives/zenfone2/">华硕 Zenfone 2 ZE551ML 手机</a>已经上手使用一段时间了，当初也看中这款 Zenfone 2 ZE551ML 手机是支持 NFC 功能的，测试使用 NFC 标签配合 <a href="https://zohead.com/archives/tasker-nfc/">Trigger+Tasker 触发任务</a>或者 Smart Lock 智能解锁都是比较好用的。同样我还试过开启招商银行的「掌上生活」App 中的「一闪通」功能（其实就是银联云闪付）进行 NFC 刷手机支付。</p>
<p>不过在使用中国联通的 NFC SIM 卡进行刷公交或者地铁时发现存在问题，根本无法使用，鉴于网上也有不少别的用户碰到这种问题（比较坑的是有人已经给 NFC SIM 卡充完值才发现刷公交或地铁没反应），这里我把解决的方法写出来供大家参考。</p>
<h2 id="nfc-问题说明">NFC 问题说明</h2>
<p>首先说下开启联通 NFC SIM 卡刷公交功能的流程：</p>
<ol>
<li>首先确认所在城市以及你使用的移动运营商支持 NFC SIM 卡刷公交，这个到网上都可以找到相应的介绍，我所用的南京联通是和智汇市民卡合作支持手机 SIM 卡刷公交的；</li>
<li>在中国联通沃支付网站上确认你所使用的手机是否在其「手机钱包」业务的兼容机型列表中： <br />
<a href="https://epay.10010.com/wop/wallet">https://epay.10010.com/wop/wallet</a></li>
<li>去营业厅将手机 SIM 卡更换为 NFC SWP SIM 卡，联通的话必须去其自有营业厅办理，社会营业厅无法办理，换 NFC SWP SIM 卡一般是免费的；</li>
<li>接着需要在自有营业厅开通手机钱包业务；</li>
<li>下载中国联通<a href="https://epay.10010.com/">沃钱包</a> App，可以在「沃钱包」App 中注册联通沃支付账户；</li>
<li>在「沃钱包」App 中安装「手机钱包」卡包功能插件；</li>
<li>确认「卡包」中能找到手机公交卡就可以在公交地铁充值网点进行充值及手机刷公交和地铁了。</li>
</ol>
<p>刚好我使用的 Zenfone 2 手机是在联通手机钱包业务兼容机型列表中，Android 系统版本是 <code>5.0.2</code>，打开「沃钱包」App（版本：<code>3.5.0</code>）也能正常安装「手机钱包」卡包功能插件（版本：<code>1.4.0</code>）：</p>
<div style="width: 370px" class="wp-caption alignnone"><img alt="沃钱包 App" src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442970/wo-wallet.jpg" width="360" height="640" /><p class="wp-caption-text">沃钱包 App</p></div>
<p>进入「卡包」功能还能认到手机 NFC SIM 卡的公交卡：</p>
<div style="width: 370px" class="wp-caption alignnone"><img alt="NFC SIM 公交卡" src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442861/nfc-sim-bus-card.jpg" width="360" height="640" /><p class="wp-caption-text">NFC SIM 公交卡</p></div>
<p>不过悲剧的就是拿着手机到任何一个公交或者地铁充值点都不能识别到卡信息，充值机或者公交刷卡机、地铁闸机都没有任何反应，当然也没有办法充值或者刷卡了。</p>
<h2 id="问题分析">问题分析</h2>
<p>Android 手机上的 NFC 支付功能是使用 NFC 的卡模拟工作方式，出于对 NFC 通信安全的考虑，如果需要使用 NFC 卡模拟，除了手机自带的 NFC 控制器外，还需要 SE（Secure Element）元件即安全元件，它的作用是用来存储用户的敏感信息，例如银行卡卡号、密码之类的，其一般采用硬件加密方式。</p>
<p>目前 Android 上常见的 NFC 卡模拟 SE 方案有：</p>
<ul>
<li>SE 元件内置在手机中；</li>
<li>SE 元件内置在 SIM 卡中；</li>
<li>SE 元件内置在专用 SD 卡中；</li>
<li>Google 推出的 HCE 技术，即 Host-based card emulation。</li>
</ul>
<p>前 3 种由于需要特定手机或者 SIM 卡、SD 卡等硬件支持，因此 Google 搞了基于主机的卡模拟模式，如果使用这种方案系统可以将一个 App 或者一个云端作为一个虚拟 SE 来实现 NFC 支付，这样可以摆脱对硬件的依赖。Android 5.0 或者 6.0 之后 Google 也默认使用 HCE 方式的主机卡模拟方案。</p>
<p>像本文开头说的招商银行一闪通就是使用的第一种手机内置 SE 方案，而今天我们所要使用的 NFC SIM 卡当然就是用的第二种 SIM SWP 方案，也是广大移动运营商们主推的方案，经过搜索我发现华硕 Zenfone 2 采用的 Broadcom BCM20795 NFC 芯片是支持 SIM SWP 方案的，联通手机钱包业务也说明 Zenfone 2 已经通过 NFC 支付测试。</p>
<p>另外我还发现一个有趣的现象就是虽然 Zenfone 2 手机开机点亮屏幕的状态下刷公交或者地铁没有任何反应，但如果我重启手机并在刚刚显示启动 Logo 的时候刷公交却是有反应的（只是没有充值提示余额不足），这就说明手机刚开机的时候 NFC SIM SWP 是能正常工作的，启动完成进入系统之后反而不行了。</p>
<p>后来我还看到有网友在华硕官方论坛上反映了这个问题，并建议华硕在手机设置中增加类似于一加手机中的 NFC 支付使用手机内置 SE 还是 SIM 卡 SE 的选项，不过华硕并没有对此进行更新处理，因此我认为 Zenfone 2 硬件是支持 NFC SIM SWP 支付的，只是由于系统 ROM 原因不能正常使用，应该可以通过其它方法开启。</p>
<h2 id="修改配置支持刷-sim-卡">修改配置支持刷 SIM 卡</h2>
<p>经过一番搜索之后我发现网上有 Nexus 6 用户也碰到类似的问题：</p>
<p>*<a href="https://paoyuan.org/2015/11/14/nexus-6-android-marshmallow-nfc-swp-sim-support" target="_blank">NEXUS 6 ANDROID MARSHMALLOW NFC SWP-SIM 支援</a></p>
<p>可以通过修改 Android 系统的 Broadcom NFC 配置文件来开启手机的 SIM SWP 支持，我的 Zenfone 2 手机 NFC 配置和上面的 Nexus 6 配置有一些差别，经过多次修改测试发现现在也可以使 NFC SIM SWP 功能正常工作了。</p>
<p>NFC 配置文件的修改都需要先开启手机的 root 权限哦，首先修改 <code>/system/etc/libnfc-brcm.conf</code> 配置文件增加以下内容：</p>
<pre class="brush: diff; title: /system/etc/libnfc-brcm.conf; notranslate">
+NFA_MAX_EE_SUPPORTED=3
+ACTIVE_SE=0xF3
+DEFAULT_ISODEP_ROUTE=0xF3
+NFA_HCI_STATIC_PIPE_ID_F3=0x70
+NFA_HCI_STATIC_PIPE_ID_F4=0x71
+UICC_LISTEN_TECH_MASK=0x0
</pre>
<blockquote>
<p><strong>注意</strong></p>
<p>注意上面显示的是 patch 文件格式，<code>-</code> 号开头的为需要删除的内容，<code>+</code> 号开头的为需要增加的内容，实际修改时请删除开头的 <code>-</code> 号或 <code>+</code> 号。</p>
</blockquote>
<p>上面的 <code>NFA_MAX_EE_SUPPORTED</code> 值为 3 表示开启多种 NFC SE 元件支持，<code>ACTIVE_SE</code> 和 <code>DEFAULT_ISODEP_ROUTE</code> 都设为 0xF3 表示默认使用 SIM SWP SE 元件，剩下的 3 个参数不一定需要设置。</p>
<p>接着修改 <code>/system/etc/libnfc-brcm-20795a20.conf</code> 配置文件：</p>
<pre class="brush: diff; title: /system/etc/libnfc-brcm-20795a20.conf; notranslate">
 ###############################################################################
 # Pre-Discovery Startup Configuration (256 bytes maximum)
-NFA_DM_PRE_DISCOVERY_CFG={0A:C2:08:02:00:C3:04:40:4B:4C:00}
+NFA_DM_PRE_DISCOVERY_CFG={0A:C2:08:01:00:C3:04:40:4B:4C:00}
</pre>
<p>上面的这两个配置文件修改完成之后重启手机，到公交或者地铁充值点去充值刷卡应该就有反应了哦，不过需要注意默认还是只有手机点亮的情况刷卡才有反应。</p>
<h2 id="后记">后记</h2>
<p>NFC SIM 卡的公交卡余额充值功能在各地似乎不太一样，上海之类城市是支持直接在联通的「沃钱包」App 中进行充值的，而我这边「沃钱包」的卡包列表中虽然能看到南京 NFC SIM 卡的智汇卡，但并不能正确显示卡中的余额，也没法直接通过手机 App 进行充值。</p>
<p>总体来说联通的「沃钱包」App 的使用体验还是挺符合其企业形象的，一贯的很难用而且不稳定，像下面这种 App 中找不到 NFC SIM 卡包的报错还是经常会碰到：</p>
<div style="width: 370px" class="wp-caption alignnone"><img alt="沃钱包找不到 NFC SIM 卡包" src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442972/wo-wallet-error.jpg" width="360" height="640" /><p class="wp-caption-text">沃钱包找不到 NFC SIM 卡包</p></div>
<p>当然最后还是要说一下本文只是在南京公交地铁以及联通 NFC SIM 卡环境下使用测试的，如果你使用的环境不同并不能保证就一定能把 NFC SIM 支付用起来哦，祝玩的开心～～～。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/zenfone2-nfc-sim/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>入手华硕Zenfone 2旗舰版</title>
		<link>https://zohead.com/archives/zenfone2/</link>
		<comments>https://zohead.com/archives/zenfone2/#comments</comments>
		<pubDate>Fri, 22 Apr 2016 15:15:45 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[手机]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Atom]]></category>
		<category><![CDATA[PadFone]]></category>
		<category><![CDATA[Zenfone 2]]></category>
		<category><![CDATA[华硕]]></category>

		<guid isPermaLink="false">https://zohead.com/?p=1218</guid>
		<description><![CDATA[最近发现使用了两年多的华硕 New PadFone Infinity A86 手机在稍微多安装了一些国产 Android App 之后已经有点力不从心了，启动完成之后一般情况下可用运行内存在 400MB 左右，经常出现开了一个 Chrome 页面再退出之后启动器就要重新加载的情况，而且最多也只能保留两个后台应用，看来 2GB RAM 的 Android 手机已经跟不上这个手机 App 体积奋起直追桌面端程序的时代了。这两个月看到国内外好多厂商都发布了新机，果断准备挑选一款合适的手机升级。 目前我对手机的要求也算比较简单了： Android 手机，作为一个伪谷粉还是受不了水果机的诸多限制； 3G [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>最近发现使用了两年多的华硕 New PadFone Infinity A86 手机在稍微多安装了一些国产 Android App 之后已经有点力不从心了，启动完成之后一般情况下可用运行内存在 400MB 左右，经常出现开了一个 Chrome 页面再退出之后启动器就要重新加载的情况，而且最多也只能保留两个后台应用，看来 2GB RAM 的 Android 手机已经跟不上这个手机 App 体积奋起直追桌面端程序的时代了。这两个月看到国内外好多厂商都发布了新机，果断准备挑选一款合适的手机升级。</p>
<p>目前我对手机的要求也算比较简单了：</p>
<ul>
<li>Android 手机，作为一个伪谷粉还是受不了水果机的诸多限制；</li>
<li>3GB 或者更大的运行内存；</li>
<li>1080p 屏幕，对 2k 屏没有什么兴趣；</li>
<li>必须支持联通 4G，能顺带支持移动 4G 双网通更好；</li>
<li>屏幕最小 5 寸，表示小屏手机完全回不去了；</li>
<li>支持 NFC，指纹解锁倒不是特别在乎；</li>
<li>接近原生 Android 的体验，比较抵触国内各种修改版的广告机；</li>
<li>最好能支持外接存储卡；</li>
<li>能支持快充那是最好不过了；</li>
<li>root 方便，能自带或者很方便的安装 Google 套件；</li>
<li>bootloader 最好能够直接解锁。</li>
</ul>
<p>初步考虑的是华为 Nexus 6P 和一加 2 这两款手机，看到 Nexus 6P 的价格再想想海淘的路稍微有点犹豫。本来一直对海外销量挺好的一加手机感兴趣，但看了参数发现一加 2 直接没有 NFC 功能，后来看到其创始人谈到 NFC 功能被删除的原因只是觉得用的人少而且功能被夸大，只能说这种明明目光短视却死不承认的态度还真是有点小醉呢。</p>
<p>最后经过一番搜寻对比还是找到了基本都能满足我要求的华硕 Zenfone 2 手机（我还真的谈不上是华硕的粉丝哦 -_-#），刚好最近华硕的天猫官方店铺搞促销活动， 4GB RAM 64GB ROM 的 Zenfone 2 从 2399 元降到了 1599 元，而且还能领优惠券继续减价，这样就不用考虑什么了，直接下单购买。</p>
<p>从上海到南京快递走了一天之后手机到手发现华硕天猫店还是比较厚道的，在这种促销力度下还是送了不少赠品：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442992/zenfone2-packages.jpg" alt="Zenfone2 全套" title="Zenfone2 全套"></p>
<p>分别送了充电宝、原装耳机、自拍杆、贴膜、手机壳，而且没有像某些网友评价的那样国行版本默认不给快充充电器。</p>
<blockquote>
<p><strong>福利</strong></p>
<p>现在购买的华硕 Zenfone 2 手机在首次使用时会提示激活两年 100GB 的 Google Drive 奖励,我的 Google Drive 空间又成功扩容了，而且似乎用 Zenfone2 手机注册新的 ASUS WebStorage 云存储账户也是有空间奖励的。</p>
</blockquote>
<p>至于手机的外观实在没有什么好说的 — 因为看起来这款 Zenfone 2 就算和我之前用的 PadFone Infinity 相比也似乎没有什么太好的设计元素在里面。</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442986/zenfone2-front.jpg" alt="Zenfone2 正面" title="Zenfone2 正面"></p>
<p>Zenfone 2 是全塑料机身，正面还是延续了华硕之前众多老机型用的 3 个触控按键，除了最上面的电源键，手机正面以及左右两边就没有其它按键了，音量键被挪到了背面：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442982/zenfone2-back.jpg" alt="Zenfone2 背面" title="Zenfone2 背面"></p>
<p>背面上方还是有 ASUS 的 LOGO，下面的 intel inside 标志表示这是一款使用 Intel Atom 处理器的手机。初看起来是不是觉得这土豪金的配色应该质感还不错?背面倒是一直沿用了华硕之前一些手机的弧形后盖，而且表面还是华硕用了一万年的金属拉丝效果，但比较悲剧的是这用在纯塑料后盖上的结果就是手摸上去触感比较差（赶紧套上赠送的手机壳压压惊 ^_^）。</p>
<p>值得一提的是华硕把电源键放在最顶端似乎是考虑到 5.5 寸的尺寸下用户能更好的按到，但实际上不管是否套上手机壳，这个电源键的手感都是很差的，还好 Zenfone 2 支持 ZenMotion 双击亮屏和息屏一定程序上可以缓解这个问题。</p>
<blockquote>
<p><strong>提示</strong></p>
<p>华硕 ZenMotion 功能还可以支持在锁屏状态下以特定的触控手势启动指定的 App，例如我就设置了锁屏状态下在屏幕上划一个 <code>V</code> 字就启动微信，划一个 <code>Z</code> 字就启动支付宝。</p>
</blockquote>
<p>好吧，其实我写这篇博文最主要的关注点还是手机里附带的这颗 Intel Atom Z3580 处理器了，可以到 Intel 官网上看到其技术参数：</p>
<table>
<thead>
<tr>
<th>规格</th>
<th>参数</th>
</tr>
</thead>
<tbody>
<tr>
<td>发行日期</td>
<td>Q2’14</td>
</tr>
<tr>
<td>缓存</td>
<td>2 MB</td>
</tr>
<tr>
<td>指令集</td>
<td>64-bit</td>
</tr>
<tr>
<td>指令集扩展</td>
<td>SSE4.1/4.2, SSSE3, SSE3, SSE2, AES-NI</td>
</tr>
<tr>
<td>光刻</td>
<td>22 nm</td>
</tr>
<tr>
<td>内核数</td>
<td>4</td>
</tr>
<tr>
<td>线程数</td>
<td>4</td>
</tr>
<tr>
<td>脉冲频率</td>
<td>2.33 GHz</td>
</tr>
<tr>
<td>最大内存大小</td>
<td>4 GB</td>
</tr>
<tr>
<td>内存类型</td>
<td>LPDDR3 1600</td>
</tr>
<tr>
<td>最大内存通道数</td>
<td>2</td>
</tr>
<tr>
<td>最大内存带宽</td>
<td>12.8 GB/s</td>
</tr>
<tr>
<td>物理地址扩展</td>
<td>32-bit</td>
</tr>
<tr>
<td>显卡基本频率</td>
<td>457 MHz</td>
</tr>
<tr>
<td>色同步脉冲频率</td>
<td>533 MHz</td>
</tr>
<tr>
<td>英特尔® 无线显示技术</td>
<td>Yes</td>
</tr>
<tr>
<td>英特尔® 虚拟化技术</td>
<td>Yes</td>
</tr>
<tr>
<td>英特尔® 64</td>
<td>Yes</td>
</tr>
<tr>
<td>空闲状态</td>
<td>Yes</td>
</tr>
<tr>
<td>增强型英特尔 SpeedStep® 技术</td>
<td>Yes</td>
</tr>
</tbody>
</table>
<p>看起来处理器频率也够用了，我所关注的无线显示、虚拟化和 64 位都是支持的，虽然用雷兔兔之类的跑分可能和现在新出的高通 820 之类的 CPU 会有些差距，但日常使用肯定是没有太大问题的。</p>
<p>上手开机之后发现 Zenfone 2 国行版系统（CN 版本，现在仍然是 5.0 系统）里预装了好多个国产 App，例如手机百度、UC 浏览器之类的（当然 Google 套件是没有的）。正当我想直接下载一个 Google Apps 安装器来先试试的时候，我又发现国行 Android 系统的位置信息服务也是由百度提供的，这个就不好忍了，立马下载国际版 WW 版本固件并进行刷机。</p>
<p>得益于 4GB 的运行内存，Zenfone 2 实际运行起来还是非常流畅的，刚刷完机之后系统里看到的空闲内存有 2.8GB 左右，把我原来手机上安装的 100 多个 App 还原之后发现正常运行时 Android 系统的空闲内存也在 2GB 左右，这样必须能很欢畅的使用各种 App 后台了。</p>
<p>至于 Android x86 的兼容问题，由于前几年我也用过联想 K800、XOLO X900 这两款使用 Intel Atom Z2460 处理器的手机，知道这些使用 x86 CPU 的手机在某些 Android App 的兼容性上会有些坑。</p>
<p>华硕 Zenfone 2 这几天用下来发现应用的兼容性相比以前来说确实也有不小的提升了，可能由于我比较少装游戏 App 的关系，我在 Zenfone 2 上暂时还没遇到直接不兼容的程序（像 MX Player 之类的 App 是可以安装 x86 专用版本的）。另外我在开启 root 并安装 x86 版本的 xposed 框架之后再尝试之前用的一些 xposed App 看起来也是没有什么问题的。</p>
<p>说到 Zenfone 2 的续航表现，比较可惜的是华硕在这么硕大的机身里却只塞进去了一个 3000 mAh 的电池，看看我这两天使用下来的电池曲线：</p>
<p><img src="http://res.cloudinary.com/digwht2y0/image/upload/v1737442983/zenfone2-battery.jpg" alt="Zenfone2 续航" title="Zenfone2 续航"></p>
<p>一般正常使用的话 Zenfone 2 差不多能顶上一天多一点（我在住处和公司都是连接 WiFi，其它则是使用联通 4G 网络），比较轻度的使用可能才能接近两天，和百度里看到的其它网友写的续航表现基本相符，虽然我都已经完全习惯了 Android 手机的一天甚至半天一充，但由于这款手机的外形完全谈不上轻薄，所以我还是略有点失望的，还是希望华硕后续的 5.1 或者 6.0 系统版本升级能优化续航表现呢。</p>
<p>最后还是总结说下 Zenfone 2 作为一款拥有 4GB 大内存而且性价比挺高的手机，一般的用户使用起来应该还是非常顺手的，另外 x86 的 Android 手机现在其实可玩性也是很高的哦，祝大家玩的开心。</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/zenfone2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Android使用Trigger+Tasker设定NFC标签</title>
		<link>https://zohead.com/archives/tasker-nfc/</link>
		<comments>https://zohead.com/archives/tasker-nfc/#comments</comments>
		<pubDate>Tue, 03 Nov 2015 18:14:53 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[NFC]]></category>
		<category><![CDATA[Secure Settings]]></category>
		<category><![CDATA[Sleep as Android]]></category>
		<category><![CDATA[Tasker]]></category>
		<category><![CDATA[Trigger]]></category>
		<category><![CDATA[飞行模式]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=1065</guid>
		<description><![CDATA[现在用的华硕 New PadFone Infinity A86 手机一直都是支持 NFC 功能的，只是之前一直没怎么用过，基本只有在查询公交卡余额的时候才用一下（这里顺便安利一下南京市政府组织开发的 “我的南京” App，可以通过手机 NFC 查询公交卡余额），最近将手机 ROM 升级到 Android 5.0 之后终于觉得 5.0 自带的 Smart Lock 功能会比较适合我了，可以使用蓝牙、NFC 标签等实现手机智能解锁功能。 升级 Android 5.0 另外一个方便的地方就是我的 Chromebook 也支持 Smart Lock 功能，两边都开启之后如果 Android 5.0 以 [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>现在用的华硕 New PadFone Infinity A86 手机一直都是支持 NFC 功能的，只是之前一直没怎么用过，基本只有在查询公交卡余额的时候才用一下（这里顺便安利一下南京市政府组织开发的 “我的南京” App，可以通过手机 NFC 查询公交卡余额），最近将手机 ROM 升级到 Android 5.0 之后终于觉得 5.0 自带的 Smart Lock 功能会比较适合我了，可以使用蓝牙、NFC 标签等实现手机智能解锁功能。</p>
<p>升级 Android 5.0 另外一个方便的地方就是我的 Chromebook 也支持 Smart Lock 功能，两边都开启之后如果 Android 5.0 以上的手机在 Chromebook 旁边并且已经解锁，那 Chromebook 也可以自动解锁无需再输入密码登录。</p>
<p>经过一些研究之后，还是买了一些 NFC 标签，准备用之前就捣鼓过的 <a href="https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm" target="_blank">Tasker</a> App（收费 2.99 美元）实现 NFC 标签的各种触发操作，不过这还需要配合使用 <a href="https://play.google.com/store/apps/details?id=com.jwsoft.nfcactionlauncher" target="_blank">Trigger</a> App（基本功能免费，增强功能通过应用内购买），因为 Tasker 没有直接支持 NFC 触发条件，Trigger 倒是有在检测到 NFC 标签之后执行 Tasker 任务的功能，需要特别注意的是 Trigger 必须在安装好 Tasker 之后安装。</p>
<p>Trigger 的 NFC 标签功能具体如何操作也比较简单这里就不介绍了，只需要在执行的动作里勾选 “Tasker” - “Tasker任务” 并选择实际需要执行的 Tasker 任务即可，这里我以两个实际例子说明 Tasker 如何实现稍微复杂一些的任务。</p>
<p><strong>1、一个 NFC 标签实现自动开启停止睡眠追踪：</strong></p>
<p><span style="color: #000080;"><em>需求：</em></span></p>
<p>平时我会使用 <a href="https://play.google.com/store/apps/details?id=com.urbandroid.sleep" target="_blank">Sleep as Android</a> 软件（免费试用 14 天）监控睡眠状况，其功能非常完善而且实际使用起来也很方便（虽然可能不会非常准确 ～～ 哈哈），只是这个 App 是一直在前台运行的比较耗电，而且每天晚上睡觉之前就需要手工开启，早上醒来之后再手工停止，因此就想到在床头贴上一个 NFC 标签实现睡觉之前刷一下自动启动睡眠追踪并开启飞行模式以省电，早上起来之后再刷一下这个 NFC 标签可以停止睡眠追踪并自动关闭飞行模式。</p>
<p><span style="color: #000080;"><em>问题：</em></span></p>
<p>幸好 Sleep as Android 是自带 Tasker 插件，可以在添加任务时选择插件，并指定 “睡眠追踪”，之后就能配置具体执行哪种操作（启动或者停止睡眠追踪之类的）；</p>
<p>另外飞行模式的切换在新的 Android 系统中已经不能直接修改了，这时需要祭出大杀器 <a href="https://play.google.com/store/apps/details?id=com.intangibleobject.securesettings.plugin" target="_blank">Secure Settings</a> App 了，安装之后也会自动增加一个 Secure Settings Tasker 插件，不过后面的操作要求手机必须 root，root 之后启用 Secure Settings 的 System+ Module，这样将 GPS、飞行模式之类的控制功能安装到系统分区就能控制飞行模式之类的切换了。</p>
<p><span style="color: #000080;"><em>Tasker 任务配置：</em></span></p>
<ul>
<li>睡眠追踪 Tasker 插件 - 开始 睡眠追踪，并设置条件：<strong>%AIR = off</strong>；</li>
<li>Secure Settings Tasker 插件 - Airplane Mode Enabled，并设置条件：<strong>%AIR = off</strong>；</li>
<li>睡眠追踪 Tasker 插件 - 停止 睡眠追踪，并设置条件：<strong>%AIR = on</strong>；</li>
<li>Secure Settings Tasker 插件 - Airplane Mode Disabled，并设置条件：<strong>%AIR = on</strong>；</li>
<li>等待 - 3 秒；</li>
<li>Secure Settings Tasker 插件 - NFC Enabled，并设置条件：<strong>%AIR = on</strong>。</li>
</ul>
<p>上面的 5 个步骤顺序不能搞错，而且对应的条件也很重要。</p>
<p><span style="color: #000080;"><em>机制解释：</em></span></p>
<p>第 1 个任务先判断如果当前手机飞行模式（Tasker 中以 %AIR 变量表示）是关闭的，则认为要开始睡眠追踪，接着第 2 个任务在同样的条件下就通过 Secure Settings 启用飞行模式，第 3 个任务则是发现如果飞行模式已启用则认为已经是在睡眠追踪状态，这时就需要停止追踪，第 4 个任务类似跟着就是关闭飞行模式；</p>
<p>第 5 个和第 6 个任务稍微特殊一点，因为我们在启用飞行模式之后 NFC 功能也同样会被禁用的，这样就没法在早上醒来时刷 NFC 标签了，这样就需要在前面几步都做好之后先等待几秒钟，然后判断如果飞行模式已开启则通过 Secure Settings 自动再将 NFC 功能也开启，而且这两个任务不能直接在第 2 个任务（开启飞行模式）之后就执行，因为开启飞行模式之后 %AIR 得到的飞行模式状态不是马上就能更新过来。</p>
<p><strong>2、一个 NFC 标签实现自动开启关闭百度地图：</strong></p>
<p><span style="color: #000080;"><em>需求：</em></span></p>
<p>这个需求就比较常见了，在我的 SUV 汽车仪表盘附近贴一个百度地图导航专用 NFC 标签，实现刷一下自动开启 GPS 并启动百度地图导航，等导航结束了再刷一下就自动退出百度地图并关闭 GPS。</p>
<p><em><span style="color: #000080;">问题：</span></em></p>
<p>开启关闭 GPS 的问题和飞行模式类似，还是通过 Secure Settings 插件来实现，Tasker 直接支持启动其它 App 的操作，也支持杀死其它 App。</p>
<p><span style="color: #000080;"><em>Tasker 任务配置：</em></span></p>
<ul>
<li>Secure Settings Tasker 插件 - GPS Enabled，并设置条件：<strong>%GPS = off</strong>；</li>
<li>启动应用 - 百度地图，并设置条件：<strong>%GPS = off</strong>；</li>
<li>按钮 - 后退（此任务重复添加 5 次或以上），并设置同样的条件：<strong>%GPS = on</strong>；</li>
<li>杀死应用 - 百度地图，并设置条件：<strong>%GPS = on</strong>；</li>
<li>Secure Settings Tasker 插件 - GPS Disabled，并设置条件：<strong>%GPS = on</strong>。</li>
</ul>
<p><span style="color: #000080;"><em>机制解释：</em></span></p>
<p>具体机制还是和上面比较类似的，使用 Tasker 内置的 %GPS 变量根据当前 GPS 状态执行对应的任务操作，值得一提的是第 3 个任务这里为了优雅一点我先用发送多次返回按键的方式模拟退出百度地图的操作，当然对于百度全家桶系的手机 App 我是很乐意直接杀死禁止后台服务和唤醒之类的，因此倒数第二步我还是加上了杀掉百度地图的任务 ^_^，最后再关闭 GPS。</p>
<p>有一点需要说明的是由于 Tasker 没有直接判断某个 App 是否在前台运行的方法（虽然可以另外安装 <a href="https://play.google.com/store/apps/details?id=org.kc.tasker.processes" target="_blank">Tasker Process Running</a> 这类插件判断某个 App 是否在运行，但其不好区分前台后台，百度地图这种在后台运行的情况不好处理），因此这两个例子里我都是直接用 Tasker 自带的飞行模式或 GPS 当前状态判断要执行什么操作的。</p>
<p>总之使用 Tasker 配合 NFC 标签并安装需要的插件还是能实现各种特殊的功能滴，本文中使用的所有 App 的链接都是 Google Play 官方地址，国内用户可以自行访问国内各种手机市场下载安装，祝玩的开心～～～</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/tasker-nfc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>在XOLO X900上实现Ubuntu for Android</title>
		<link>https://zohead.com/archives/ubuntu-for-xolo-x900/</link>
		<comments>https://zohead.com/archives/ubuntu-for-xolo-x900/#comments</comments>
		<pubDate>Sun, 06 Jan 2013 19:19:49 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[12.04]]></category>
		<category><![CDATA[Atom]]></category>
		<category><![CDATA[DisplayLink]]></category>
		<category><![CDATA[HDMI]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[LapDock]]></category>
		<category><![CDATA[Lava]]></category>
		<category><![CDATA[Motorola]]></category>
		<category><![CDATA[OTG]]></category>
		<category><![CDATA[Ubuntu for Android]]></category>
		<category><![CDATA[udlfb]]></category>
		<category><![CDATA[USB]]></category>
		<category><![CDATA[X11]]></category>
		<category><![CDATA[x86]]></category>
		<category><![CDATA[X900]]></category>
		<category><![CDATA[XOLO]]></category>
		<category><![CDATA[Xorg]]></category>
		<category><![CDATA[显卡]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=378</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/ubuntu-for-xolo-x900/ 由于 Lava XOLO X900 使用的 Intel Atom Z2460 这一 x86 的 CPU，我们就可以做一些改动，让其实现初步的 Ubuntu for Android 效果，而且运行的是 x86 版本的 Ubuntu，相对于 ARM 版本（不能运行私有软件，没有源代码的话啥都干不了）来说实用性要好很多的。 先看看实际的效果图： 现在我在这个 Android 手机里的 Ubuntu 上已经开始正常运行 Skype、Ubuntu One、sopcast  [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/ubuntu-for-xolo-x900/" target="_blank">https://zohead.com/archives/ubuntu-for-xolo-x900/</a></p>
<p>由于 Lava XOLO X900 使用的 Intel Atom Z2460 这一 x86 的 CPU，我们就可以做一些改动，让其实现初步的 Ubuntu for Android 效果，而且运行的是 x86 版本的 Ubuntu，相对于 ARM 版本（不能运行私有软件，没有源代码的话啥都干不了）来说实用性要好很多的。</p>
<p>先看看实际的效果图：</p>
<p><a href="http://zohead.com/wp-content/uploads/ubuntu-android-x900.jpg" target="_blank"><img class="alignnone" title="Ubuntu for Android on XOLO X900" src="http://zohead.com/wp-content/uploads/ubuntu-android-x900.jpg" alt="Ubuntu for Android on XOLO X900" width="690" height="523" /></a></p>
<p>现在我在这个 Android 手机里的 Ubuntu 上已经开始正常运行 Skype、Ubuntu One、sopcast 等应用，而且 Ubuntu 和 Android 系统是共存同时运行的，Ubuntu 是运行在外部屏幕上的，对 Android 完全没有影响，不需要 VNC 登录之类的。</p>
<p>Canonical 公司提出的 Ubuntu for Android 请参考这里：</p>
<p><a href="http://www.ubuntu.com/devices/android" target="_blank">http://www.ubuntu.com/devices/android</a></p>
<p>这里提到的 Canonical 的 Ubuntu for Android 的要求有：</p>
<ul>
<li>双核手机，内存最少 512MB；</li>
<li>支持 secondary frame buffer；</li>
<li>支持 USB OTG</li>
</ul>
<p>对于 XOLO X900 来说，第二点要求 secondary frame buffer 暂时无法满足，因为官方的 kernel 只注册了 <strong>/dev/graphics/fb0</strong> 一个 frame buffer 设备。但由于支持 USB OTG，我们这里暂时用支持 Linux frame buffer 的外置 USB 显卡来实现。</p>
<p>需要的设备及配件：</p>
<ul>
<li>Motorola LapDock 100（做显示器及键盘鼠标输入，同时接 USB 外置显卡，你完全可以用自己的显示器）</li>
<li>DisplayLink USB 显卡</li>
<li>USB OTG 线</li>
<li>HDMI 线</li>
</ul>
<p><strong><span style="color: #0000ff;">1、准备 x86 Ubuntu 环境：</span></strong></p>
<p>由于 XOLO X900 只有 16GB 的 ROM 空间，为了速度和扩展考虑，最好可以将 Ubuntu 安装在隐藏未启用的 microSD 插槽上，最好使用 Class 10 的 microSD，这样不会对 Ubuntu 的性能造成影响。</p>
<p>你可以参考这个视频（只有 Youtube 哈）查看如果启用隐藏的 microSD 插槽：</p>
<p><a href="http://www.youtube.com/watch?v=6-FkK7Htohs" target="_blank">http://www.youtube.com/watch?v=6-FkK7Htohs</a></p>
<p>下面是找一个合适的 Ubuntu 系统，如果你有时间的话，完全可以用 VMware 安装一个虚拟机到 SD 卡上。如果你像我一样不想浪费时间安装，可以到网上下载现成的 VMware vmdk 映像并直接拷贝到 SD 卡上。</p>
<p>我选择的是下面这个 Lubuntu 12.04 系统，因为使用 LXDE 桌面，速度比较快，这个网站也有完整的 Unity 桌面环境的 Ubuntu 12.04 系统哦：</p>
<p><a href="http://www.trendsigma.net/vmware/lubuntu1204.html" target="_blank">http://www.trendsigma.net/vmware/lubuntu1204.html</a></p>
<p>你可能需要另一个 Linux 虚拟机来将 Lubuntu 映像里的所有文件拷贝到 SD 卡里（最好能对 SD 卡进行分区，我是建立了一个 ext4 的分区）。</p>
<p><strong><span style="color: #0000ff;">2、准备需要的 DisplayLink USB 显卡驱动：</span></strong></p>
<p>由于 XOLO X900 官方 kernel 对 frame buffer 支持并不完整（缺少 defio 等支持），官方 3.0.8 kernel 源代码里的 DisplayLink USB 显卡驱动 udlfb 无法正常编译。</p>
<p>我基于下面的 udlfb 项目的 0.4 版本修改了一个新的可直接用于 XOLO X900 官方 kernel 的 udlfb 驱动（默认代码加载之后无法正常显示图像）：</p>
<p><a href="http://git.plugable.com/gitphp/index.php?p=udlfb" target="_blank">http://git.plugable.com/gitphp/index.php?p=udlfb</a></p>
<p>我修改过的 udlfb 0.4 驱动的下载地址：</p>
<p><a href="http://miseal.googlecode.com/files/udlfb-v0.4.tar.bz2" target="_blank">http://miseal.googlecode.com/files/udlfb-v0.4.tar.bz2</a></p>
<p>相对默认 0.4 版本的主要改进为：</p>
<ul>
<li>解决在 Linux 3.0.8 中无法正常编译的问题；</li>
<li>解决 kzalloc 分配内存失败的问题，以 vmalloc 替代；</li>
<li>增加卸载驱动时的释放内存处理；</li>
<li>自动根据 EDID 判断显示器分辨率，默认使用 EDID 得到的分辨率；</li>
<li>如果 EDID 无法得到合适的分辨率，使用默认 1280x1024 分辨率；</li>
<li>增加模块参数，加载模块时可以指定初始分辨率</li>
</ul>
<p>编译方法请参考之前写的编译 XOLO X900 自定义 kernel 的文章：</p>
<p><a href="https://zohead.com/archives/xolo-x900-kernel/" target="_blank">https://zohead.com/archives/xolo-x900-kernel/</a></p>
<p>如果你想直接用我编译好的，请访问此链接下载：</p>
<p><a href="http://miseal.googlecode.com/files/x900-kernel-config-modules.7z" target="_blank">http://miseal.googlecode.com/files/x900-kernel-config-modules.7z</a></p>
<p>编译好的 <strong>udlfb.ko</strong> 在解压缩出来的 <strong>modules</strong> 目录中，建议将 <strong>modules</strong> 目录拷贝到 <strong>/system/lib</strong> 目录中。</p>
<p><strong><span style="color: #0000ff;">3、测试 udlfb 驱动是否可用：</span></strong></p>
<p>通过外置带电源的 USB HUB 接上 DisplayLink USB 显卡（Motorola Lapdock 就是一个带电源的 USB HUB 哈），并将显卡接到外置显示器上，root 过之后，在 shell 中运行 <strong>su</strong> 然后运行：</p>
<p><strong>insmod /system/lib/modules/udlfb.ko</strong></p>
<p>如果一切正常的话，驱动将自动判断你的显示器分辨率，并在显示器中显示绿屏。</p>
<p>然后运行下面的命令检查 frame buffer 设备是否正常，一般应有正常的设备节点信息输出：</p>
<p><strong>ls -l /dev/graphics/fb1</strong></p>
<p>如果你的显示器不支持 EDID 或者默认的 1280x1024 分辨率不支持，也可以加载驱动时手工指定分辨率，例如：</p>
<p><strong>insmod /system/lib/modules/udlfb.ko init_xres=1024 init_yres=768</strong></p>
<p>上面的命令即将初始分辨率设置为 1024x768。</p>
<p><strong><span style="color: #0000ff;">4、屏蔽 Android 本身对 USB 键盘鼠标的支持：</span></strong></p>
<p>由于 XOLO X900 默认支持 USB OTG，通过 OTG 接上 USB 键盘鼠标之后，可以直接对 Android 进行操作，而且任何对键盘和鼠标的操作都会解锁手机，这对于我们运行 Ubuntu for Android 是毫无益处的，而且会导致重复的 input event 发到 Android 界面上。因此我们需要屏蔽 Android 本身对 USB 输入设备的支持。</p>
<p>首先接上 USB 键盘和鼠标（通过 USB HUB），并确定是哪个 input 设备，同样在 root 中 su 运行：</p>
<p><strong>ls /dev/input/event*</strong></p>
<p>你会看到很多个 event 设备，一一用下面的命令（把 X 换为具体的设备名）确定到底哪个是你所插上的 USB 键盘和鼠标，cat 之后在键盘上敲键或者移动鼠标，正确的设备将会有输出：</p>
<p><strong>cat /dev/input/eventX</strong></p>
<p>假设确定好鼠标和键盘分别为：<strong>/dev/input/event10</strong> 和 <strong>/dev/input/event11</strong>。</p>
<p>然后运行 <strong>dmesg</strong> 确定 USB 键盘和鼠标的设备名，你可以看到类似这样的输出：</p>
<pre class="brush: bash; title: ; notranslate">
usb 1-1: new high speed USB device number 2 using penwell_otg
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 7 ports detected
usb 1-1.1: new full speed USB device number 3 using penwell_otg
input: Motorola Mobility Motorola HD Dock as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.1/1-1.1:1.0/input/input11
generic-usb 0003:22B8:0938.0003: input,hidraw0: USB HID v1.01 Keyboard [Motorola Mobility Motorola HD Dock] on usb-0000:00:02.3-1.1/input0
usb 1-1.3: new low speed USB device number 4 using penwell_otg
input: BTC USB Cordless Mouse as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.3/1-1.3:1.0/input/input12
generic-usb 0003:1241:0003.0004: input,hidraw1: USB HID v1.10 Keyboard [BTC USB Cordless Mouse] on usb-0000:00:02.3-1.3/input0
input: BTC USB Cordless Mouse as /devices/pci0000:00/0000:00:02.3/usb1/1-1/1-1.3/1-1.3:1.1/input/input13
generic-usb 0003:1241:0003.0005: input,hidraw2: USB HID v1.10 Mouse [BTC USB Cordless Mouse] on usb-0000:00:02.3-1.3/input1
usb 1-1.6: new high speed USB device number 5 using penwell_otg
</pre>
<p>上面的 <strong>Motorola Mobility Motorola HD Dock</strong> 和 <strong>BTC USB Cordless Mouse</strong> 即为 USB 键盘和鼠标设备的设备名，记下这些。</p>
<p>编译 <strong>/system/etc/excluded-input-devices.xml</strong> 配置文件，将上面的 USB 键盘和鼠标设备名加入进来，然后重启手机，在 USB 输入设备上的操作就不会影响 Android 系统。</p>
<p>例如我的配置文件内容如下：</p>
<pre class="brush: xml; title: ; notranslate">
&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;devices&gt;
&lt;device name=&quot;Unipoint HID&quot;/&gt;
&lt;device name=&quot;RMI4 Unipoint&quot;/&gt;
&lt;device name=&quot;Motorola Mobility Motorola HD Dock&quot;/&gt;
&lt;device name=&quot;BTC USB Cordless Mouse&quot;/&gt;
&lt;/devices&gt;
</pre>
<p><strong><span style="color: #0000ff;">5、在 Android 中切换到 Ubuntu 环境：</span></strong></p>
<p>首先 su 运行 shell 创建一个目录作为 Ubuntu 分区的挂载点（这里假设为 /system/sd）：</p>
<p><strong>mount -o remount,rw /dev/block/mmcblk0p2 /system</strong><br />
<strong> busybox mkdir -m 777 /system/sd</strong><br />
<strong> mount -o remount,ro /dev/block/mmcblk0p2 /system</strong></p>
<p>你可以使用我写好的这个切换到 Ubuntu 的脚本 <strong>startubuntu</strong>（我这里是挂载了 SD 卡第一个 ext4 分区，请根据需要自行修改）：</p>
<p><a href="http://pastebin.com/raw.php?i=9r21dR7L" target="_blank">http://pastebin.com/raw.php?i=9r21dR7L</a></p>
<p>我在脚本中将 Android 中的 /mnt/sdcard 目录挂载到了 Ubuntu 里的 /sdcard 目录，Android 系统的 /system 目录挂载到了 /android/system 目录，这样可以很方便的在 Ubuntu 中访问 Android 系统中的数据。</p>
<p><strong><span style="color: #0000ff;">6、准备运行 X 的环境：</span></strong></p>
<p>假设你已经切换到 Ubuntu，首先安装 DisplayLink 的 X 驱动：</p>
<p><strong>apt-get install xserver-xorg-video-displaylink</strong></p>
<p>然后安装输入模块：</p>
<p><strong>apt-get install xserver-xorg-input-evdev</strong></p>
<p>安装成功之后，修改 <strong>/etc/X11/xorg.conf</strong> X11 配置文件（Ubuntu 12.04 中没有这个配置文件，需要在 <strong>/usr/share/X11/xorg.conf.d</strong> 目录中自己增加新的配置文件，我的为：<strong>52-displaylink.conf</strong>），内容为下面的链接：</p>
<p><a href="http://pastebin.com/raw.php?i=WjcfFWc2" target="_blank">http://pastebin.com/raw.php?i=WjcfFWc2</a></p>
<p>注意请将其中的 input 设备和分辨率改为自己需要的。</p>
<p><strong><span style="color: #0000ff;">7、运行 X - 最终的 Ubuntu for Android：</span></strong></p>
<p>产生 X 的初始配置文件 <strong>/root/.xinitrc</strong>：</p>
<p><strong>#!/bin/sh</strong><br />
<strong> xrandr -o 0</strong><br />
<strong> startlubuntu</strong></p>
<p>第二行的 <strong>xrandr</strong> 命令是专门为 DisplayLink udlfb 驱动修改的，没有这个的话可能会导致 X 环境中的菜单项不能正确显示。第三行的 <strong>startlubuntu</strong> 你可以替换成你需要的 X 命令（例如：xinit lxsession）。</p>
<p>然后运行 <strong>startx</strong> 就可以启动 X 桌面环境了。</p>
<p>某些情况下如果这样运行 startx 还是有问题，可以在 <strong>startx</strong> 时增加参数：</p>
<p><strong>startx -- :0 vt1</strong></p>
<p>如果这样可以的话表示 X 使用的 VT 不正确，这时你可能需要将 <strong>/etc/X11/xinit/xserverrc</strong> 改为下面这样以强制指定 X 使用的 VT：</p>
<p><strong>#!/bin/sh</strong><br />
<strong> exec /usr/bin/X -nolisten tcp vt1 "$@"</strong></p>
<p>8、总结：</p>
<p>这样实现的 Ubuntu for Android 实际还是有一些不足的：</p>
<ul>
<li>必须要有外置的 USB 显卡太不方便，而且热插拔 USB 显卡会导致 X server 直接挂掉，最好的解决方案是启用 HDMI frame buffer；</li>
<li>暂时没有声音输出，可能可以用 USB 声卡，或者将声音输出至手机（能想象的到的丑陋）；</li>
<li>不支持通过 USB HUB 进行充电，应该是要修改 kernel 才能支持</li>
</ul>
<p>本文的内容均为我根据实际使用所写，没有考虑到通用的情况，其中有任何问题欢迎提出指正哦 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/ubuntu-for-xolo-x900/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>构建Lava XOLO X900非官方kernel</title>
		<link>https://zohead.com/archives/xolo-x900-kernel/</link>
		<comments>https://zohead.com/archives/xolo-x900-kernel/#comments</comments>
		<pubDate>Thu, 20 Dec 2012 13:38:43 +0000</pubDate>
		<dc:creator><![CDATA[Uranus Zhou]]></dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[Atom]]></category>
		<category><![CDATA[cifs]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[Intel]]></category>
		<category><![CDATA[K800]]></category>
		<category><![CDATA[Lava]]></category>
		<category><![CDATA[OTG]]></category>
		<category><![CDATA[U盘]]></category>
		<category><![CDATA[x86]]></category>
		<category><![CDATA[X900]]></category>
		<category><![CDATA[XOLO]]></category>
		<category><![CDATA[Z2460]]></category>
		<category><![CDATA[印度]]></category>
		<category><![CDATA[模块]]></category>
		<category><![CDATA[联想]]></category>

		<guid isPermaLink="false">http://zohead.com/?p=371</guid>
		<description><![CDATA[本文同步自（最佳显示效果请点击）：https://zohead.com/archives/xolo-x900-kernel/ 本文目标为 Lava XOLO X900 这一印度咖喱味手机，同样 Intel Atom Z2460 的芯，移植 kernel 的方法和之前的联想 K800 手机基本一致，具体请移步下面的链接： https://zohead.com/archives/k800-kernel-otg-udisk/ 经过确认 XOLO X900 默认也是 Android 4.0.4 ROM，同样 3.0.8 kernel，当然硬件会有所不同，不过 OTG U盘所需要使用的 usb-stor [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>本文同步自（最佳显示效果请点击）：<a href="https://zohead.com/archives/xolo-x900-kernel/" target="_blank">https://zohead.com/archives/xolo-x900-kernel/</a></p>
<p>本文目标为 Lava XOLO X900 这一印度咖喱味手机，同样 Intel Atom Z2460 的芯，移植 kernel 的方法和之前的联想 K800 手机基本一致，具体请移步下面的链接：</p>
<p><a href="https://zohead.com/archives/k800-kernel-otg-udisk/" target="_blank">https://zohead.com/archives/k800-kernel-otg-udisk/</a></p>
<p>经过确认 XOLO X900 默认也是 Android 4.0.4 ROM，同样 3.0.8 kernel，当然硬件会有所不同，不过 OTG U盘所需要使用的 usb-storage 模块也是和 K800 一样默认没有开启的。</p>
<p>基于基本相同的 kernel source，先使用 Medfield 默认的配置 i386_mfld_defconfig，发现与现有的 kernel 差距比较多，然后用 Moto 的 i386_mfld_moto_defconfig 编译出的模块加载依然 panic。没办法，硬着头皮与实际运行中 kernel 情况进行对比，发现基于默认配置 i386_mfld_defconfig 进行修改是比较好的方法，而且看得出 XOLO 相对联想还是做了一定的优化，去掉了像 CONFIG_DEBUG_KERNEL 之类的很多调试选项，默认允许了 tun 驱动等。另外声卡相关的配置不同的地方也比较多，经过最终改动和确认，编译之后，先已能成功加载并使用之前在 K800 上编译的那些模块。</p>
<p>XOLO X900 的内核模块和配置文件的下载地址：</p>
<p><a href="http://miseal.googlecode.com/files/x900-kernel-config-modules.7z" target="_blank">http://miseal.googlecode.com/files/x900-kernel-config-modules.7z</a></p>
<p>使用方法和 K800 的基本一致，只是 CIFS 文件系统的使用上有变动：</p>
<p>insmod des_generic.ko<br />
insmod md4.ko<br />
insmod cifs.ko</p>
<p>ASIX Electronics 的 USB 以太网卡的驱动 asix.ko 也已经更新到官方最新的版本（kernel 自带的版本无法使用）。</p>
<p>现已基本可以确认我改动之后的 kernel 和 X900 现有 kernel 的相似性已有 90% 或以上了，不过由于 X900 手机悲剧滴将 bootloader 给锁了，无法刷未签名的 kernel，暂时还没有太好的办法来直接替换 kernel 进行测试哦。</p>
<p>另外有一些需要说明的地方：</p>
<ol>
<li>XOLO X900 现有 kernel 中支持 Kineto GAN 虚拟网卡驱动（支持 VOIP 网络电话的），Moto Razr i 公开的 kernel source 中却并没有这个的支持，为此我手工增加了这个的驱动（上面下载的 kernel configuration 中也有的）；</li>
<li>目前还有 apwr3_0、pax、sep3_7 这三个非免费开源的内核模块没有源代码，暂时也没有办法在网上找到，不过从现在来看，似乎 X900 实际运行时也未使用这三个模块。</li>
</ol>
<p>同样我不对任何导致你的手机 panic 挂掉的后果承担责任，有任何问题欢迎提出指正哦 ^_^</p>
]]></content:encoded>
			<wfw:commentRss>https://zohead.com/archives/xolo-x900-kernel/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
