技德Remix OS 3.0上手体验(U盘启动)

技德科技的Remix OS发布了3.0版,基于Android 6.0棉花糖。对于不知道Remix OS的访客,这是一款操作和界面仿Windows 10的“桌面”操作系统,不仅仅是Android换了一层皮,在很多细节方面已经把Android改造成了PC操作系统。在继续话痨之前,先上图杀猫:

Continue reading 技德Remix OS 3.0上手体验(U盘启动)

Moto 360二代(2015)入手体验

懒癌晚期,加上公司政策的一些限制,没什么技术东西可写,只好拿买的电子产品滥竽充数凑一篇新博文。

其实买了有两个多月了(懒癌啊,不想写),对Moto 360 2nd Gen还是比较满意的,虽然没有想象中那么好,而且价格居然比一代贵(而且在我买了两周后它可耻地降价促销了……)。但是,作为智能手表中颜值颇高,且有Android和Moto信仰加持,至少也要给个7.5/10的评分。

Continue reading Moto 360二代(2015)入手体验

优雅并极客地添加/更改Android系统的字体

Android换字体有很多办法,其一是用iFont之类的工具,优雅但不极客。其二是用root权限直接到/system/fonts里替换DroidSansFallback来更改中文字体,极客但是非常不优雅!

看看/system/etc/fallback_fonts.xml吧,注释都告诉我们如何优雅并极客地添加字体了。下面以添加苹果iOS自带的中文字体STHeiti为例,详细讲述一下整个过程。

Continue reading 优雅并极客地添加/更改Android系统的字体

我的新小米盒子综合体验

本文所描述的是299元的“新小米盒子”(又称小米盒子二代)。既然是说体验,先介绍一下使用的环境吧:

  • Toshiba 42″ LED背光液晶电视(1080P)
  • 长沙长城宽带(12Mbps带宽)
  • 腾达W308R无线路由器(100M的LAN,300M的WLAN)
  • 一台Windows PC(局域网共享视频)

Continue reading 我的新小米盒子综合体验

凶残去广告插件Adblock Plus登陆Android平台

用过Firefox、Chrome或Opera浏览器的朋友,对Adblock Plus这个凶残的去广告插件肯定不陌生。Adblock Plus安装完之后,广告立刻消失啊!!!给各种广告商造成了天价损失啊,有木有!

好了,Android手机、平板的用户们,好消息总是不经意间来到,Adblock Plus登陆这个开放的操作系统平台了(其实登陆比较久了)!

Continue reading 凶残去广告插件Adblock Plus登陆Android平台

虚拟入侵游戏Ingress初始指南

2013年11月19日注:我手上有10枚Ingress的邀请码,需要的请在本文后面留言(电子邮件一栏填好GMail地址即可,评论正文不用写电子邮件以免被爬虫捉去发垃圾邮件。)。(不再玩Ingress了)

Ingress是什么?引用维基百科的话:

Ingress是一款扩增实境(Augmented Reality)大型多人电子游戏,由 Google 的 NianticLabs 开发,于2012年11月16日发布,现时处于封闭测试(Closed Beta)状态,需要获取邀请码才能加入。

所以,要玩Ingress的话,首先要去官网申请一个邀请码

Continue reading 虚拟入侵游戏Ingress初始指南

自己编译ownCloud for Android

之前介绍过ownCloud私有云服务了,下面讲一下怎么自己编译它的Android客户端。之所以要自己编译,原因有两点:

  • ownCloud在Play Store上要收费的,0.99刀
  • ownCloud在Play Store上限制了区域,即使愿意出钱也不能下载

搭建一个Android SDK环境不要我说了吧?不会的自己找块Google这样的豆腐撞了……下面以Fedora 18 64位系统为例,讲一下我的过程。

Continue reading 自己编译ownCloud for Android

解开蓝魔Amlogic方案JellyBean 4.1中的boot.img文件

是否很多筒子发现在4.0时代一直用的uImage解包打包脚本突然就不能用了,提示找不到uImage file?我开始也很纳闷,突然闲来想到是不是Amlogic又改回按标准的bootimg.h里面描述的格式来处理这个文件了?

刚刚一试验,果不其然!多年前做Motorola MB200的ROM时,曾去解包boot.img来改开机静态图片(我当时真是够无聊的),当时用的就是这个Perl脚本,实验证明现在还能用!(标准就是标准啊!)Google一圈还找到一个配合使用的shell脚本方便地将boot.img完全解开~

于是,HatMod项目今天华丽丽地加了commits了,各位可以去我的GitHub项目上抓取解包和打包脚本 (legacy目录下是解包和打包4.0时代的boot.img的!)。

由于W22PRO还没有官方4.1固件,因此我无法尝试是否打包后刷入能用,只是下载了W28的固件,去解包和打包了boot.img都是可以的,不过没有用真机测试。

把CWM Recovery刷入W22PRO的内置存储器中

之前TWRP的Recovery触摸操作看起来很是过瘾,但是鄙人表示一直用CWM用惯了啊有木有!所以自己fork了CT的代码然后merge了CyanogenMod的jellybean分支,自己创了一个jellybean-aml分支出来(在github我的项目上有,需要的自己去checkout)。

做uImage_recovery这个文件不难,我的HatMod项目里面有解包和打包脚本,先把官方固件的uImage文件解包出来,然后用自己编译得到的CWM recovery的root里面的内容替换(boot下面的两个ko模块可以删掉),init文件我还是用的官方的init,然后repack脚本用我后来上传的那个gzip开头的脚本,这样可以在生成镜像之前先做一次gzip压缩,不压缩的话是会提示体积过大而打包失败的。

上面讲了一堆略有点技术流的东西,下面说说怎么把这个uImage_recovery刷到我们的W22PRO机器内置存储器中!这样就不需要外置的microSD卡也能进入CWM Recovery了,可喜的地方还在于CWM Recovery支持从机器内置存储器(就是大小13GB的那个)读取zip刷机包来刷机,还支持adb sideload功能,总而言之就是把CWM Recovery刷到机器NAND后——腰不酸腿不疼了!

技术达人们自己写刷机脚本打包刷进去就好了。我也特意制作了一个直刷到NAND的zip包,所以下面讲最简单的办法:

  1. 下载zip包(我放在SourceForge上了,文件名为cwm-based-6.0.2.3-flashable.zip)
  2. 将zip包放在外置SD卡上,进入CWM Recovery或者TWRP Recovery(或者官方Recovery都可以!)
  3. 选择Install zip from SDcard,然后找到cwm-based-6.0.2.3-flashable.zip确定刷进去
  4. 看到屏幕显示“Complete”就表示完成了!(如果有任何Error字样出现表示失败了。。。)

怎样确认成功刷进去了呢?重启进入CM10,长按电源键弹出关机菜单,选择重启,然后选择Recovery(可能被翻译成“恢复模式”了),确认后等待机器重启。如果没有刷进去就会重启进入官方原生的Recovery,而如果成功刷入的话就会进入CWM Recovery了!当然还有很多验证办法我就不一一列举了。

对了,我的GitHub项目页面(都是源代码或者脚本):

小白们可能喜欢的是SourceForge的RamosROMs项目(都是刷机包、Recovery之类的成品)

编译CM10 for W22PRO的相关过程记录

先说一下git的操作好了,这个git其实我也是今年刚开始用,之前都是用svn的(subversion其实也不太会……说来这些版本控制工具我都记不住指令啊……)。

因为蓝魔W22PRO用的是Amlogic MX(meson6)方案,而Christiantroy已经专心耕耘艾诺精灵2很久了,他在github上的很多项目,只要有jellybean-aml分支的基本就是需要fetch拿来用的。不过有一点问题的就是,最近这位大哥在搞CM10.1去了,repo都没有更新上游(CyanogenMod)的改动,所以其它的部分如果用CyanogenMod的上游代码就会造成一些问题。还好有强大的git帮我们合并这些更改。

首先进入一些需要为Amlogic修改的目录(因为我已经做了这项工作了,减轻了各位的压力,大家直接fetch我的那些github项目就好了),git checkout jellybean-aml 确保在jellybean-aml这个分支里面,然后git remote -v看一下有没有上游CyanogenMod的repo,没有的话得先git remote add NAME git://XXXXXX 添加一个NAME远程仓库(这些全部大写的字母都是可以自行变动的),然后git fetch NAME把源码下载到本地,只需简单的一个git pull NAME jellybean就能把NAME仓库的jellybean分支合并到当前分支(jellybean-aml)了!如果有冲突的话会提示的,一般不会有冲突会自动merge并做一个ref节点,如果你没有自己开项目就这样好了。如果有的话(比如我),就需要git push MINE提交这次变动到自己的远程仓库(MINE)。再说一下啦,我已经做过这项工作了,短期内大家直接取我的项目源码就可以了。

上面讲了那么多git的废话……下面讲一下编译。

如果你还没有W22PRO的源码,请上我的非官方项目clone下来到合适的位置(如果你这不知道就不要看这篇文章了,谢谢……)

cd /PATH_TO_CM/
 . build/envsetup.sh
 lunch
 make -j4

老掉牙的几个步骤……lunch菜单选择cm_w22pro-userdebug那个就好了(输入数字回车),make -j4表示用四个线程并行编译。

在我的笔电上每次从头完整的编译要2~3个小时。我的硬件配置?AMD 四核 2.0GHz,4G RAM(显然有点小,为了避免内存消耗完毕而出错终止,强烈建议创建一个swap分区或者swap文件,大小至少1G,建议4G以上)。

还没有开始编译的记住了,放CM/Android源代码的那个分区建议40G以上,而且必须是EXT2/3/4或者BtrFS、XFS之类的Linux分区!