2017年10月25日星期三

一次為國內版Samsung Galaxy S6 (SM-G9209) root機及安裝 Google Service過程

是咁的,話說有朋友有部國內版Samsung Galaxy S6 (SM-G9209),問我點解無Google Play Store,裝Apps好麻煩,可唔可以裝返Google Play Store

事前準備:
1. 要root/裝 Google Play Service,當然係先裝個 custom recovery。用開TWRP,當然係上TWRP網站下載對應型號的recovery

2. 喺Samsung機上改recovery,當然係要用Odin,所以亦上Odin網站下載了

3. Google Play Service安裝檔,當然係上OpenGApps下載。S6 CPU係ARM64,Android Version係6,唔想裝咁多嘢,所以揀nano variant

4. Root的部份,以往會用SuperSU,但今時今日識用梗係用Magisk,Open source得嚟仲可以自由隱藏root,唔洗root完連開個Pokemon Go都唔得

5. 要用Odin成功連接PC與S6,下載Samsung Android USB driver

萬事俱備(我以為係),開工。

過程:
1. 安裝 Samsung Android USB driver,關S6,按vol down+home+power進入download mode,連接PC,運行Odin,成功!

2.嘗試用Odin寫入TWRP recovery,出現"CROM locked"而失敗;上網搵到原來要上Samsung Apps下載一個叫CROM Service的App去unlock bootloader先;

3. Unlock了bootloader同入download mode,用Odin寫入TWRP recovery,成功!但reboot後發現recovery就置換回原本的;

4. 試了幾次都如是,所以先嘗試root了機先,由於無TWRP,所以Magisk亦裝不了,唯有用ChainFire的CF-Auto-Root,下載了相應型號的CF-Auto-Root,再用Odin寫入,成功了!

5. 因為始終想用Magisk,所以root了後,dump了boot partition出來,用Magisk Manager的Patch功能來改Boot partition,然後用SuperSU的unroot清除CF-Auto-Root,最後再用Odin寫入已Patch的Magisk Boot Partition,成功用Magisk root!

6. 在已root的情況下寫入TWRP不同version,但皆無法進入custom recovery,反反覆覆嘗試都失敗,唯有回復至原廠recovery;

7. 在沒有custom recovery的情況下,下載ChainFire的FlashFire app,嘗試安裝Google Play Service,但出現error說system partition不夠空間;

8. 下載所需空間更小的pico variant,再次嘗試,但都係出現system partition空間不足情況。翻查記錄檔,原來只差1xx KB左右的空間。上網找資料,原來可以用gapps-config檔可微調安裝的元件。

9. 以gapps-config排除了Google TTS元件,終於成功安裝Google Play Service。Reboot 後終於見到Google登入和Google Play Store

10. 但會每隔一段時間出現"Google Play服務已終止",查logcat說取不到location權限。最後進入應用程式,查看每一個與Google有關的應用,檢查權限,發現Google Play Service一個權限也沒被授予,設定完權限後,已再沒有"Google Play服務已終止",所有功能亦正常使用,成功了!

結案!