秋葉原に行ったらサーマルプリンター付きのAndroidデバイスが売ってたので買った。
☆緊急速報☆
— イオシス公式 (@iosys_official) 2022年12月28日
Androidターミナル SUNMI V2
未使用品 税込9,980円
プリンター搭載の業務用ハンディターミナルを200台以上入荷!!
⏬商品ページ⏬https://t.co/AaxRidDuoA
2022年界隈でちょっとブームになった一般人向けではないAndroid端末!!#イオシス #SUNMI #逸般人向け pic.twitter.com/dvFBN02u5i
軽くセットアップしようとしたところ、独自OSでGoogle Playも無くてできることが少なそうなのでmagiskのインストールをしてみた。
まとめ
事前条件
- SP Flash Toolがインストールされている
- SP Flash Toolのドライバーがインストールされ、Androidが認識されている(端末の電源を切っているとき)
- ADBコマンドが使える
- インターネットがある
- https://github.com/dafish7/Sunmi-v2-Firmware- から必要なファイル群(rar)をダウンロードして展開している
- すべて自己責任でできる
ファームウェア
なにか情報がないかXDAを見ていたところ、先人がいたのでありがたく使わせていただく。
GitHubのREADMEにURLがあるので、そちらからrarファイルをダウンロードし展開する。
中には Firmware/
ディレクトリと auth_sv5.auth
、 magiskのイメージが入っている。
下記の投稿のように各ファイルを設定し、 Download
ボタンを押す。
なお、SP Flash Toolの設定から事前に Check LIB DA match
のチェックを外しておく必要がある。
Sunmi V2の電源を切り、USBで接続するとファームウェアが上書きされる。 このファームウェアを書き込んだ場合、シリアル番号が変わってしまう ので自己責任で。
たぶんファームウェアの中を書き換えたら変更できると思うが試していない。
開発者モード
ファームウェアを書き込んで起動したらセットアップする。体験モードのようなものがあるが、これはリセットされてしまってこのあとの作業が無駄になってしまうため、セットアップ時にネットワークにつないで端末の有効化まで行う。
いつものように設定→端末情報→OSバージョンを連打でadbコマンドが呼び出せるようになる。
Magisk
上記からダウンロードし、adbコマンドでインストール。
adb install ~/Downloads/Magisk-v25.2.apk
ファームウェアをダウンロードしたときに同梱されていたパッチを端末に入れておく。
adb push magisk_patched-25200_Lf52l.img /sdcard/Download
Magiskを起動し、アプリの指示に従って再起動する。再起動後、Magiskのインストールを行う。
方法
というオプションのところで、先程のパッチを選択して*1インストールをすると完了。
その他
個人的にいらないアプリを消した。とりあえずプリンターは動いている。
応用市場
adb shell pm uninstall --user 0 woyou.market
店舗センター
adb shell pm uninstall -k --user 0 com.sunmi.usercenter
ユーザーフィードバック
adb shell pm uninstall -k --user 0 com.sunmi.newuserfeedback
ギャラリー
adb shell pm uninstall -k --user 0 com.sunmi.gallery
コピー&ペースト
adb shell pm uninstall -k --user 0 com.huaqin.factoryservice
ログ
adb shell pm uninstall -k --user 0 com.sunmi.toolbox.log.v2
遠隔協力
そのままでは消せないので、セキュリティ→端末管理アプリ で無効化する必要がある
adb shell pm uninstall --user 0 com.sunmi.remotecontrol.pro
この記事でできてないこと
Google Playはインストールできていない。
rootで動いているので入れることはできると思うが、時間の関係で特に試してない。
今後やりたいこと
どうやら一部界隈(?)で話題の端末らしく、ライブラリを作って公開してくれている方がいるので、Androidアプリに組み込んでなにか出力してみようと思う。
React Nativeで書けるのはかなり楽でいい!
*1:デフォルトでもいいのかもしれないが試してない