Darkened underpass

android

上個月才買入一台二手Nexus 6,原本沖著它的便宜,沒想到這款機型其實在 USB 連接電腦有點毛病,不少機主表示micro-ubs 接口只能充電,無法成功線接電腦/桌機筆電,而我手上拿到的正是機王。這樣的缺陷(不知是軟體、硬體還是線材)使得手上的 Nexus 6 無法進行刷機、root ,就只是一台中規中矩的 android 手機。

為了撫平我內心的失落(?),前幾天看到一台二手的 Nexus 9 據稱因 google play 無法使用只賣 900元,立即衝動地買下,以滿足自己想集滿 Google Nexus 產品線的毛病。

雖說衝動歸衝動,但好歹做了點功課先查一下它有哪些客製化的 Rom 可用,更換新電池是否困難等等。沒錯,買這種二手平板、手機最大的樂趣就是軟硬體的”搗鼓修理”,Google play 不能使用? 小問題反正我買來就是為了刷機帶入各種版本的作業系統。

手邊有七~九台手機平台,其中也有 iphone / ipad,但我個人仍偏好 android,最主要是 iOS 系統光是要繞過 apple store 下載軟體就很折騰, android 則可試刷不同版本,甚致不必靠 google service 架構自行安裝各式 apk 應用(但其安全風險是另一回事)。在百家爭鳴的 android 生態圈裏,還是挑選大廠牌的主打機款,才會有較多業餘開發者投入各種客製的 ROM 製作好讓一般使用者享受刷機樂趣。不過似乎近期上市的安卓平板越來越難搗鼓,例如有一台 samsung tabA 8,還未能成功 root 刪除原廠強加的無用軟體。

OEM unlock

到貨開箱檢查,肉眼看起來機況不錯:螢幕擦拭得很乾淨機身也沒什麼太礙眼的擦傷刮痕,急著開機,但機子卻因電力耗盡無反應,接上電源線約三刻鐘後才出現電池小圖,方能順利開機進入系統,整個充電過程非常非常緩慢(約十小時才到七成滿)。

先試著解開 bootloader,但第一次透過電腦端下 adb 指令卻回傳失敗訊息,原來是得先在平板的 developer mode 底下同意可用”Enable OEM Unlock”後才能在 bootloader 成功操作。

各版本安裝過程

接下來第二步就是刷入 twrp recovery,再”卡刷”安裝 LineageOS 16. 1。安裝過程與第一次啟動開機都很順利,卻沒想到進入系統後整個螢幕觸控毫無反應,只能強行關機放棄 Android 9.0 pie 。

原本想先裝回官方釋放的 stock rom,以測試原機主賣家所說的 google play 不能使用問題能否解決,但下載了幾個版本都出現錯誤訊息,這時候機子已經變成無法順利進入系統的軟磚狀態(soft bricked),但幸好還是能透過 adb/usb 與電腦之間溝通。

於是先試著透過線刷(sideload)安裝 LineageOS 14.1 ,雖然傳回進度條 100%成功的訊息,但重開機後卻一直只停留在 google logo 畫面。想著死馬當活馬醫就乾脆給它刷入 divestOS 15.1/8.1/Oreo,沒想到很快地安裝好且順利開機進入作業系統,不過因為只是試看,故一開始沒刷入 gapp,在 divestOS 底下試玩了幾把雖然它很乾淨輕量,但似乎也有不少 bug,例如要點入 developer mode 就是一直出現錯誤訊息。

找到 mobile01 有一篇分享nexus9 刷機心得,我似乎和作者在14.1 /16.0 遇到相同的狀況且手上這台機子也是 lte 版本,所以決定改刷 lineageOS 15.1 試試,這回總算是成功了!!!

隨便再新註冊一個 google 帳號,使用 google play 也沒問題,收工。

#nexus #littlethings #android

手邊最常用來看電子書的7” 平板已經使用六~七年,之前曾給它改刷了CyanogenMod 13,去年初又自己親手替它換了副廠電池,所以機子還算頭好壯壯,如此低階的入門平板電腦居然可以陪我共渡這麼久的時間實在太感人,因此趁著手邊的平板手機安卓家族昇級作業系統的勢頭,也順手一併將它從 Lineage OS 13 改成了 Lineage OS 16, 昇級到吃派的等級( Android 9 pie)。

heimdall 安裝 twrp

原以為三星機子刷機應該和 Nexus 系列差不多,直接透過 adb 先刷入 recovery 軟體 TWRP 再透過後者進行清除、安裝即可。沒想到這套作法在三星平板的身上卻行不通, TWRP 操作指引只說須利用 Odin 來安裝 TWRP,但 Odin 只能在 windows 作業系統下執行,不甘心的我硬是在平板 download mode 連接狀況時,下了操作 nexus 4 安裝twrp 的指令,其結果當然是被打槍,但 linux mint 文字指令列提示我可以安裝 heimdall 來進行 flash

搜詢一下,原來 heimdall 是一款開源、跨平台的三星機子刷機工具軟體,其亦提供圖形操作介面,但它的知名度似乎遠不如Odin。總之在 heimdall 的協助下,總算順利地把 twrp 刷入了 t235y 平板。(在這番折騰下,才知道原來不同的廠牌機型所使用的 twrp 版本檔案也會不同.....)

拆電池

本以為安裝好TWRP 接下來就該否批極泰來一帆風順,沒想到真正的挑戰才要開始。先按照XDA-Developers LineageOS 16.0 Android 9 for SM-T235, SM-T235Y 下載了相應的 ROM/ Gapp 後放入平板內部儲存空間(internal storages),再讓 t235y 進入 TWRP recovery 模式。

但沒想到這台老機子在 TWRP wipe 過程中卻無預警螢幕莫名其妙地暗下來,即便按任何鍵都無反應,接上電源線螢幕也沒出現任何訊息圖示。這時候只好使用暴力的移除平板背殼,把內部的電池導線拔開後再重新接上。不要問我為什麼,自從替 t235y 換過電池的這一年多來,已經遇上三四次平板整個無反應的狀況。如果接上電源線還會出現電池符號,那大概沒電所以關機,但如果電池符號沒能出現,我就會複製上述動作重接內部電池導線,通常就可以順利開機(猜想是電池導線接觸不良?)

在刷入 Lineage OS 的過程中,大概出現了三四次這種完全當機的狀況,但我還是死橕著讓逼它終於順利跑完了 TWRP wipe/ install 的刷機流程,最後總算見證平板終於順利地進入 android 9 的使用畫面(流淚灑花)

使用了 Lineage OS 16 兩天的感想,新系統似乎更為耗電,其間還出現過三四次莫名當機再自行重啟的狀況(抖)。但就一台低階入門型平板,它在過去六七年間的表現已是鞠躬盡瘁死而後已,或許之後不該折騰它了。

#android

近來在為 Nexus 6/ Nexus 4 刷機作業系統時,發現一款從 Lineage OS 分家的 Divest OS 手機作業系統,其強調注重手機使用隱私。目前其開發進度到了 Divest OS 18.1 (Android 11),支援的手機廠牌主要有: OnePlus , Google, LG, Samsung.... 。因為昨天才成功給 Nexus 4 安裝好 Lineage OS 17.1,而 Nexus 6 還在頭痛其與電腦之間無法透過 USB 有效連接驅動的困擾,原無意試用 Divest OS。但在它早先版本的支援名單看到 Samsung Galaxy Nexus ,正好拿自己手邊這支不再服役的舊手機來嘗試一番。

其安裝程序並不複雜,特別是自己近來為了搞定 Lineage OS 方漸漸明白”行家”口中所謂的 fastboot, bootloader, recovery, adb, SDK 是什麼意思。按 Divest OS 官網安裝指引(根本就是把讀者引到 lineaga OS 的安裝說明頁Orx),先在fastboot 刷入它的 recovery 軟體,再透過 adb sideload 指令利用 USB 傳輸線連接電腦與手機方式把下載至電腦的 Divest OS 映像檔案過度到手機上進行刷機昇級。

上述過程大約十分鐘之內就可以搞定完成刷機,等最久的時間反而是下戴 Divest OS image, 官網控制的流量速度非常緩慢。

Divest OS 搭配的應用程式市集是開源的F-Droid,雖然我也試著刷入 Gapps 但並未成功,所以目前手機上的應用軟體看起來少得可憐。 另外相機功能無法正常運作,這點之前使用 LineageOS 13,Galaxy Nexus 也無法拍照的情況是一樣的。

#android, #samsung, #nexus

入手 Google Nexus 4 近兩年,一開始是試著安裝 Ubuntu-Touch,再改回原廠 ROM (Android 5.1.1),倒也是相安無事地使用。只是近來把玩過 google pixel 3a 運行的 android 11,又新入手 Nexus 6,這支手機的地位大幅滑落,現在已成為我搗鼓各版本手機作業系統的禁臠。以下簡單地記錄一下成功昇級 Lineage OS 17.1 (約 android 10)前前後後要留意的一些眉角。

bootloader unlock

據說任何安卓手機必須先解鎖才能進行 root/ 刷入 recovery ,刷了 recovery 程式才可能再去變動安裝其它的作業系統安裝包(ROM, factory images)。幸而這支二手 Nexus 4 買入時已解開 bootloader 權限,所以此步驟可跳過。查了一下所謂的 bootloader 功能是啟動每一台電腦/手機的開機軟體,其作用大概就是使用者按下電源鍵(硬體介面)後,機子過電後開始通知軟體接手相關工作才能順利正常使用電腦或手機。聽說不少廠牌都會鎖自家的手機或電腦筆電的 bootloader ,其原因大概是不想讓使用者亂搞,如果 bootloader 被解鎖就好像實體物品的保固封條遭破壞一樣的意思吧。

root 與刷機工具 recovery image TWRP

目前 lineageOS 開發者給 Nexus 4 適用的版本到了 17.1(非正式),找到最簡單的安裝方式是透過 TWRP 這套工具進行”卡刷”。 TWRP官網上載明 nexus 4 的安裝方式 ,簡言區分了手機本身已 root 與 unroot 兩套不同作法。我個人是透過 unroot 方式,利用 adb 連接桌機/筆電與手機,替 Nexus 4 安裝 TWRP。試起來還算簡單,但要先下載 android SDK Platform Tools 及適用電腦的手機 USB 驅動程式。

重分配手機系統磁區容量

此步驟是一連幾天各種實驗最讓我頭痛的地方。原廠劃分給 Nexus 4 系統的容量大約是 850 M,當欲利用 TWRP 刷入 LineageOS 17.1 ROM,就會出現容量不足失敗的警告。 LOS 開發者在 xda-developers 論壇也提醒強調 system partition 至少要有 1.3G,才能成功刷入 LineageOS 14 之後的版本。因此他提供了一些如何調整提高 system partition 的方式。但該篇教學文提到 parted 程式早已無從下載,我是另外從 How to resize partitions on an android phone using Parted 找到可協助執行手機分割區的檔案。結合這兩篇文章的胡亂操作,終於成果地擴增了系統區的容量。(下方第一張圖是取自 hovatek, 大約是手機出廠預設的容量分配,第二張圖則可看出已把 system 改成了 1982 mb)

安裝 Lineage OS 17.1

至於最後一步 —— 下載 ROM 與安裝,則是參考 Download and Install Lineage OS 17.1 for Google Nexus 4 based on Android 10,把 Lineage OS / Gapp zip 檔案存入手機後,再利用 TWRP wipe, install,順利把 Nexus 4 昇級為 Android 10。

新昇級的作業系統算是乾淨,沒什麼手機製造商硬要給你放入手機還無法輕易刪除的亂七八糟軟體。我的手機用途主要是讀 email (訂一堆 newsletter)、ptt、tweets 了解一點外界的熱門話題、存放一兩本電子書以便在沒網路的地方讀點東西。這支手機連裝可通話的 sim card 都沒有(手上唯一的門號是繳100元可撐六個月的預付卡),平日沒用通訊軟體社群網路,就是一整個走清心寡慾取向。 目前用起來拍照、google play 一切正常,就是不知道是否可正常電信通話 XDXD

#android #nexus

最近搗鼓幾支安卓二手機/平版電腦的作業系統昇級。其中先嘗試的是 Nexus 4 不小心又把它變磚(電源重置後開機螢幕一直停留在 google logo 畫面)。查了一下自己過去留下的文件記錄,還可以在 fastboot 的狀態下透過桌機/筆電替偽磚的 N4 改裝 ubuntu touch,讓手機起死回生。但當時沒進一步記錄如何再把手機從 ubuntu- touch 改裝回 android。自己試著利用 nexus root toolkits 來安裝 Google 封存的 Nexus 4 mako ROM 一直失敗。

所以本文就是來記錄如何”正確地”把手機刷入其適配的作業系統包(ROM),以免自己未來有需求時可快速回想起來。以 N4 mako 為例,先從官方下載欲安裝的出廠映象檔案( factory image, ROM)。把解壓縮該映象檔包裝,裏頭有好幾支檔案( flash-all.sh /flash-all.bat/ image-xxxx-xxxx.zip/ bootloader-xxxx-xxxxxx.img....)。

將手機接 USB 與電腦線連,關閉手機電源後調至 fastboot 狀態(一般是同時壓住電源與聲音大小鍵數秒),再在電腦上操作剛才解壓縮的資料夾。windows 執行flash-all.bat; linux/ MacOS 則執行flash-all.sh, 此時電腦就會自動替手機刷入原廠作業系統。刷完乾淨的作業系統後,手機就自動重開機,通常第一次進入系統的時間會比較久。

原來就是這麼簡單,難怪我自己當時連記都懒得記.....XD

#android

話說自從代買Google Pixel 3a XL 入手,就很想試試 android 10 以上的作業系統環境。雖然幾度企圖將手邊常用的nexus 4 改裝 Lineage OS 17.1 卻一直失敗,再者這支手機漸漸出現了按鍵老化的毛病,便心癢想找支 google 手機家族的老五 nexus 5 二手機。前幾天偶而在拍賣網站看到 nexus 6 二手機價格居然比前者還便宜,便趕緊入手下標買了一台。(OS: 不是說討厭手機螢幕超過 5”嗎....)

google 手機家族 nexus 一系的合作代工廠商變遷無需我多嘴(其實我也是看維基百科頁才知道原來有 nexus 6 / nexus 6p 之分,之前看到的二手機多是華為代工的 nexus 6p 故興趣缺缺)。這回入手價 1000元台幣,昨天收到機子狀況還算差強人意,至少沒什麼明顯的碰撞傷痕,先使用酒精為它擦拭清潔。

目前使用中的是 Android 6.0.1 版本的作業系統,賣家出貨前應是作了資料清除系統還原,所以開機連網後系統提示我進行版本補丁的更新修復 (結束後發現系統已是 Android 7.1.1 , 但早已被 google 放生, 2017 年後不再維護 shamu 的昇級更新)

週末再來研究如何刷機昇級 lineage OS

#littlethings #android #nexus

幾天前網購一台 Google Pixel 3a XL (64G)整新機,價格約莫 4仟元出頭,此款約兩年前上市當時價格約莫 1萬2(所以一年的折舊跌價率約三成)。雖然此等汰市機價格我還是嫌貴,不過為了孝敬老人家而非自用,在一番功能需求與 CP值比較後還是挑它入手。

根據家中長輩需求:最好是習慣的安卓機、不要中國品牌、螢幕尺寸大(5.5”)但又不要太大......。所以挑選的範圍就只有 Asus、Samsung (+ Sony) 這兩家廠商。我自己使用的是上古世代的 google nexus 4 二手機(另有不常用的 iphone SE/ iphone 7+),查看新機行情才知道目前隨便一款品牌最新旗艦機都要二萬元以上 @@。這種”時尚”生命期短的旗艦機價格拉高也就算了,現在螢幕越作越大,主流規格為 6.5”~ 6.8”,我個人並不喜歡過大的尺寸( 4.7”~5” 為適中)。

說起來長輩目前使用的是五年前上市的 Asus ZenFon 3,用了四五年手機電池已經發脹急需更換。機子本身倒還算勇健,只是不知道老人家平日的操作習慣(主要是看油管和 Line,其它大概就是亂按地誤觸下載),莫名其妙地把一些基本的設定按鍵刪移稍失。因此我想著乾脆替她換一台新手機,好讓自己名正言順地接收舊機子後再來搞怪(例如 root 或刷機)。

在瀏覽新手機品牌機型介紹時,忽然瞥見 google pixel 系列。我一直覺得掛上 google 品牌名號手機,外觀設計稱不上什麼細膩質感但硬體配件還不錯(特別是處理器),倒是符合阿宅工程師形象的較真勤健,我自己從 Nexus S 用起到目前的 Nexus 4,最滿意的就是可以找到許多刷機資源,那麼看來 Google 接手 Htc 手機生產系設備與人才軟體的 pixel 系列似乎也可以試試。

老實說若是自用,我大概不會下手買 pixel (花 1千元台幣買二手的 Nexus 5 都會猶豫很久) ,但既然是為了給老母,她不用什麼酷炫花俏功能(AR, 3D, 美照等),故捨棄 pixel 5/ pixel 4 價格仍偏高的市場主流機款,挑了一款尺寸、硬體配備、價格較合需求的 pixel 3a。又看一看螢幕稍大的 XL 價格差不到數百元,但更適合老人家”追劇”( 雖然她有一台 ipad,但似乎更習慣安卓操作?)

等了兩三天,機子順利到手,自己先把玩順便代安裝長輩習慣常用的軟體與通訊資料備份,原來最惱人的是自行貼保護膜時,耐心排壓擠掉週邊小氣泡的麻煩 :p。

#littlethings #android