「Android」カテゴリーアーカイブ

GALAXY S3 SC-06D

私はガラケーとS41HW(MVNO格安SIM)の2台持ちで運用してました。
格安SIMはbmobileのイオンSIMを使ってました。
当時は月額1000円もしないのが魅力でしたが、今となっては安いだけ。
S41HWの遅さとイオンSIMの速度的な不満も多かったため、SIM・スマホ共に買い換えました。
(S41HWはコンパクトで2台持ちには良かったのですが、流石に遅すぎでした・・・)

MVNOであるOCNモバイルONEが、LTE使用可能量の容量アップをしてるのを知り
SIMはOCNモバイルONEに決定。

毎日70MまではLTEで通信可能で、超過すると200kまで速度が落ちる仕組み。
それで税込千円未満です。

月2G制限のプランでも税込千円ちょっとという破格のお値段。

スマホは2年前当時のハイスペック機で、今では中古でお安くなった
GALAXY S3(SC-06D)にしました。
GALAXY S III SC-06D
重めのゲームなどをしなければ、十分現役で使えるスペックだと思います。
(ただS41HWからすると倍くらいでかい・・・)

ちなみにSIMフリーにしてある端末を中古で購入しました。
端末代金は中古で安いとはいえ掛かりますが、月々の通信費用は安く抑えられます。
通話・SMSのみのガラケーと月2GまでのLTE通信スマホの合計でも2千円程度です。

個人的に感じる問題は2つ。

SIMフリーにしてても、DOCOMOの端末にDOCOMO系のMVNO SIMを利用した場合
そのままではテザリングが行えない点。

戻るボタンが左ではなく右側な点。

これらはroot化しないと変更できないのでroot化することに決定。
(実際はこれ書いてる時点で既にroot化して、2つとも解決してます)

購入時からファームウェアが最新のAndroid4.1.2だったため
初期のファームにダウングレード出来ない問題に遭遇。
(SAMSUNGのロゴで止まって起動しなくなりました)

そのあたりの事は次回で。

S41HWに最初から入っている消せないアプリを削除

自分用メモです。
※システムに必要なアプリを削除してしまうと、動作しなくなる可能性があります。
自分用メモですが、真似して起動しなくなっても自己責任でお願いします。

まずはroot化しないとどうにもなりません。
S41HWをroot化

更にADB環境を作成する必要があります。
(ADB環境の構築は長くなるので省略します)

S41HW用ADBドライバ
※このADBドライバもAndroid SDKのバージョンによっては動きませんので
その場合はAndroid SDK内にあるADBドライバのandroid_winusb.infを書き換えて下さい。

書き換え方法(書き換えというより追記です)
NTx86とAMD64ビットのセクションがありますが、両方書いておけば違いを気にしなくても良いです。
android_winusb.inf内の[Google.NTx86]セクションと[Google.NTamd64]セクションに以下の行を追加。

;Huawei IDEOS
%SingleAdbInterface% = USB_Install, USBVID_12D1&PID_1038
%CompositeAdbInterface% = USB_Install, USBVID_12D1&PID_1038&MI_01

環境が整ったらコマンドプロンプトを起動しadb経由でAndroidのシェルを起動。

> adb shell

スーパーユーザー権限に移行(S41HWをroot化していないと移行できません)

$ su

ここでS41HWの画面に権限のダイアログが出るので許可する。

アプリが存在するマウントに書き込み権限を与えてマウントし直す。

# mount -o remount,rw -t yaffs2 /dev/block/mtdblock4 /system
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock8 /cust
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock7 /data

※ここからは実際にアプリの削除になります。

/system/app/にあるアプリを消す場合

対象のディレクトリに移動

# cd /system/app/

lsコマンドなどで消したいapkファイルを確認。
(名前から推測してファイル名をコピーしておきます)

rmコマンドで対象のファイルを削除。
(消したいアプリで拡張子がodexのものがapkと対で存在すれば、odexの方も一緒に消してよい)

# rm ファイル名(@@@@@.apk)

/data/app/にもプリインストアプリがある場合があります。

更にGreeとかハンゲーなどの消せない糞アプリは、更に別の場所にあります。
(私が消したのは以下でした)

# cd /data/cust/app/

# rm BookLiveDownloaderForEM.apk
# rm newsandranking.apk
# rm GreeApp.apk
# rm RefillsForEM.apk
# rm HangameShortcut.1.0.1.5.apk
# rm VideoMarket.apk

モバゲーは何故か上の3カ所に見つからなかったので
ファイル自体は消えないものの、アプリとして見えなくすることで解決しました。

まずはパッケージの一覧を確認。

# pm list package

jp.mbga.portalというモバゲーのパッケージが見つかったので、パッケージを無効化します。

# pm disable jp.mbga.portal

これでプリインストされた糞ソフト達は一掃することが出来ました。

ちなみ処理終了後のログアウトコマンドはexitです。

# exit
$ exit
>

書き込み権限を与えてマウントしたものを元に戻す必要がありますが
コマンドからやらなくても、端末を再起動すればマウントし直すので再起動しておきましょう。

(ログアウトせずにsu権限のままrebootコマンドで再起動してもOKです)

# reboot

AndroidでSambaを動かす(Samba Filesharing)

PCとAndroid端末をUSBケーブルで繋げば、SDカードをUSBデバイスとして認識し
PC上でSDカード内のデータを読み書き出来るようになります。
が、ちょっとしたファイルのやり取りの場合にUSBケーブル接続は面倒だったりします。

そこでネットワーク経由でファイル共有出来ないかと考えるわけですが
ネットワーク共有には何種類かの方法があります。

FTPでのファイル共有、HTTP通信によるファイル共有、Android端末からPCの共有ファイルを見に行く方法。
そして今回採用した、Android端末内のSDカードをPCに公開する方法。
そうです。
Linuxサーバーを立てたことがある人にはお馴染みのSambaがAndroidのアプリにもあるのです。

今回インストールしたのはSamba Filesharingというアプリです。
Google Play
※Samba Filesharingを動かすにはroot化によりroot権限を取得している必要があります。

インストールして画面を開くと、下のような画面が開きます。
Not Runnning(読んだままです、動いてない状態です)
Samba Filesharing_1

設定画面
Samba Filesharing_2

SDカードを共有するにはSettingから設定画面を開き、設定を行います。

Password Sambaにアクセスする際に使用するパスワードを設定します。
Username Sambaにアクセスする際に使用するユーザー名を設定します。
※普段のPCのログオンに利用しているIDとPASSを設定しておけば、Sambaにアクセスする際に
改めてIDとPASSを要求されることはなくなりますが、Android端末にはその情報を登録することになりますので
セキュリティ低下の懸念があるばあいは、全く別のIDとPASSを設定することをお勧めします。

Workgroup Name Windowsネットワークのワークグループを設定します。
NETBIOS Name Windowsの他の端末から、名前でアクセスする場合の端末名を設定します。

一応、ここまで設定すれば、Sambaサーバーとして動かすことが可能となります。

ここから先は、少し細かい内容の設定項目となります。

Wifi White List
Samba Filesharing_3

早い話、Samba共有を許可するアクセスポイントを登録・利用するかの設定です。

Enable White List Mode これにチェックを入れると、許可したアクセスポイントのみで、Sambaの共有が可能となります。
Edit White White List ここから許可するアクセスポイントを設定します。
許可したアクセスポイントのMACアドレスにWifi接続した場合のみ、Samba Filesharingのファイル共有が有効となります。

Wake Locks
Samba Filesharing_4

Wake On Lanなどのように、端末を起こすための設定です。
Multicast Lockにチェックを入れれば、マジックパケットによるWake On Lanが可能となります。

起動
Samba Filesharing_5

設定が終わればEnableをタップすることでSambaサービスが起動します。
止める場合はDisableをタップします。
Sambaのファイル共有を使わない時は、Disableでサービスの停止を行った方が
セキュリティや省電力のために良いと思います。
※Wifiを切れば自動的にOFFになりますが、任意にDisableにしなければ、Wifi再接続でEnableとなります。

ArtIME 日本語入力

日本語の入力システム(IME)は、S41HWに標準搭載のFSKAREN(富士ソフト製)を使っていました。
が、ちょっと使い勝手がイマイチだったので乗り換えることに。

IMEは色々なものが無料で配布されていますが、今回はArtIME 日本語入力を選んでみました。
ArtIME 日本語入力
ArtIME

キーのデザインを選べるのですが、背景をウィキペディアなどにすることも可能で
ウィキペディアを選択した場合は、入力中の語句が自動的にWikiで検索され
キーの背景にうっすらと検索結果が表示され面白いです。
KeyDesign

キーデザインをウィキペディアにすれば、当然ながらバックグラウンドで通信が行われるわけで
通信速度激遅のbmobileですと使い物にならないので、私はAndroid標準で利用しています(笑)

ちなみにネットワークを利用した変換も可能で、ローカルでの変換候補が出たあとに
追加でネットIMEの検索結果が候補としてあがってきます。

こちらも候補が出るまでに少し間がありますが、候補を探してる間に出るので
キーデザインのウィキの様に、使い物にならないわけではありません。
NetworkIME

SocailIMEだけでなくGoogle日本語入力APIにも対応しています!

キーボードの切り替えやマッシュの利用は、地球のマークを長押しすることでメニューが表示されます。
EarthMark

Pattern1

Pattern2

Pattern3

マッシュルームを追加することで、音声入力や顔文字入力、郵便番号から住所など
色々な機能を任意に追加することが可能となります。

MushroomSelect

ArtIMEで気に入らない点は、日本語・アルファベットのフリック入力の際に
数字が書かれていない(FSKARENでは、アルファベット時に数値入力もできる)点です。
数字に切り替えればいいわけですが、1~2個だけ数字を入れたい時なんかはあると便利なんですよね。

また、FSKARENにあってArtIMEにない入力方法が手書き入力なんですが
FSKAREN使ってて1回も手書き入力なんてすることが無かったので
個人的には正直いらない機能だと思います。

Googleの音声入力はかなり精度が高いので、今後は手書きよりこちらの方が使われるのではないかと思います。
(問題はしゃべれない場所では音声入力が使えないってとこですね・・・)

今回入れたマッシュルームは、面倒臭がりな人にはぴったりの「マッシュルームパック」です。
マッシュルームパック
MushroomPack
現バージョンで以下の機能がセットになったマッシュルームです。

【使用できるマッシュルーム】
● 絵文字まっしゅ
 - docomo、softbankの絵文字を入力できます
- auは、「Xperia Acro」のみ対応しています。
 - 連続10個まで入力できます
 - 最大35個の入力履歴を保存できます
●Myプロフィール
①Android4.0以上の端末の場合
 -プロフィールを表示します。
②それ以外の端末(2.3等)
 -電話帳に登録した自身の連絡先を選択して使用します。
 -自身の連絡先を登録していない場合は、新規登録をしてください。
● 連絡先の情報
 - 名前、電話番号などを出力
● メルアドピッカー
 - 複数のメールアドレス、ショートメール用の電話番号を出力
● メモまっしゅ
 - お好きなメモ(定型文)を登録し、入力することができます。
● 音声からの入力
 - 音声認識の結果を出力
 - 連続入力ができます。
● 時刻まっしゅ
 - 年月日、時刻を出力
 - 西暦から和暦へ変換して出力
 - 年月日、時刻のどちらか一方を出力することもできます。
●郵便番号まっしゅ
 - 郵便番号から住所を出力できます。
●ブックマーク
 - ブラウザのブックマークのURLを出力します。
●履歴まっしゅ
 - マッシュルームパックの使用履歴を出力します。

S41HWでスクリーンショットを撮る

スマホに関する記事を色々と書いていて不便に思うことが1点あります。
タイトルの通りなんですが、S41HWでスクリーンショットを撮れないのは、非常に不便です。

機種によっては、標準でスクリーンショットが撮れる物もあるようですが
撮れない機種が沢山ある状況なので書いてみました。

今回お勧めするのは、root化+マーケットで配布されなくなった、と面倒なアプリなんです・・・
(root化は既に記事にしているので、そちらを参照してください)

アプリの名前は「ShootMe」というアプリです。
ShootMe

以下のページにあるShootMe 0.8.1.apk – [Click for QR Code]のリンクをクリックしてDLしてください。

ShootMe APK Mirror
http://forum.xda-developers.com/showthread.php?t=1028591
※既にリンク先のサイトはなくなっているようです。

拡張子がzipになっていると思いますので、拡張子をapkに変更し、S41HWのSDカードに送り込みます。
送りこんだら、本体からフォルダ参照でファイルを選択すればインストールできます。

※本体の設定で「アプリケーション」→「提供元不明のアプリ」にチェックが入っていないと
マーケットからの入手ではないためインストール出来ません。
もちろんマーケット外からのインストールの為、危険性は十分認識した上でインストールしてください。

スクリーンショットを撮る方法も数種類から選べ(振る、音声反応など)
アプリ終了まで連続して撮ることも可能で、非常に便利なアプリケーションです。

但し、各種説明は日本語ではありません。

S41HWをroot化

注意:この内容は、S41HWが動かなくなる危険があります。
またメーカーの保証も受けられなくなります。
それでもチャレンジする場合は、必ず自己責任で行ってください。

今現在、S41HWは現行モデルではあるものの、他機種に比べるとスペックはかなり低めです。
特にメモリ周りは、アプリを多数インストするとすぐにきつくなります。
内部メモリ ROM:512MB/RAM:256MB

そこでまずMicroSDを16Gの物にしました。
SWAPなどもSDで行う予定なので、出来るだけ高速なメモリを選ぶことに。
規格的にはCLASS6ですが、実行速度は安物のCLASS10より評判が良い
SanDisk UHS-I対応 microSDHCカードを購入しました。

アプリケーションはSDカードにインストールすればいいから
SDカードの容量を増やしたし、これでメモリの問題は解決かというと、そうでもありません。

全てのアプリケーションがSDカードに移せるわけではないのです。
また、SDカードに移せても、ウィジェットが使えないアプリもあります。
(ジョルテなんかは、SDに移すとウィジェットが使えなくなります)

というわけで、SDカードにアプリケーションを移しても
移す前と同じようにアプリが動くようにすることにしました。

Link2SDというアプリが有名で、SDカードにアプリを移す手助けをしてくれるのですが
本体メモリにある場合と同じように動かすには、Link2SDをroot権限で動かす必要があります。

※root権限とは?
LinuxなどUnix系のOSでの管理者権限を持つユーザーのことです。
Androidも系統は同じなので、root権限=管理者権限となり
root権限で操作を行うことで、通常では出来ないことが出来るようになります。
但し、システムに重大な損傷を与える操作も可能となるため、その使用には十分な注意が必要です。

全体の流れとしては、以下のようになります。

1.S41HWをroot化

2.SDカードに新しいパーティションを作る

3.Link2SDインストール

次にSDカードのSWAP領域をAndroidから利用する方法です。

4.Busyboxインストール

5.Swapper2インストール

まずは、1.S41HWをroot化です。

※以下のサイトを参考にさせて頂きました。
http://ameblo.jp/spicy-rock/entry-11033183186.html
http://blog.goo.ne.jp/tksatsn/c/da1a0ff9e745eed6616ccc76d0aa0919

1-1.SuperuserをSDカードに事前にコピーする

以下のリンク先からファイルをDLしてSDカードにコピーします。
http://goo-inside.me/superuser/
※既にリンク先のサイトはなくなっているようです
※最新のファイルでは上手く行かなかったので、recommendedとなっている
su-3.0-beta4-efgh-signed.zipを利用したら上手く行きました。

ファイルは解凍せずに、そのままSDカードの最上位のフォルダに置けば問題ありません。

1-2.ClockWorkMod RecoveryのDL

以下のファイルをPCにDLして解凍します。
http://dl.dropbox.com/u/13427114/cwm-v4.0.1.5-u8510.zip
※既にリンク先のサイトはなくなっているようです

※通常は自動的に接続用のドライバがインストールされるのですが
Windows7の64bitマシンを利用している場合は、先にfastbootドライバを準備します。
以下のサイトより、Windows7の64bit用ドライバを事前にDLしてください。

Pulse_Drivers_xp_w7_w764.zip
※既にリンク先のサイトはなくなっているようです
Windows7の64bitの場合は、次に紹介する手順でUSB接続を行うと、不明なデバイスとなるので
上でDLしたドライバを当て、デバイスを正常に認識させてください。

1-3.S41HWをfastbootで起動

fastbootで起動するには、以下の手順で行います。

電源OFF(シャットダウン後に一度バッテリーを抜いて完全にOFFにしましょう)

volume downと電源ボタンを同時に押して起動
(EMOBILEのロゴが出て数秒くらいまで)

EMOBILEのロゴのまま停止すれば準備完了です。

1-4.USBケーブルを接続する。

USBケーブルを接続すると、自動でドライバが当たります。
※Windows7 64bitの場合は、上で書いたドライバを手動で導入します。

1-5.ClockWorkMod Recoveryを導入

USBで接続後、デバイスとしてS41HWを正しく認識出来たら
1-2でDLしたClockWorkMod Recoveryのバッチファイルを実行します。

解凍したファイルの中のinstall_recovery.batを実行すればOKです。

1-6.Superuserを導入

1-1でDLして事前にSDにコピーしておいたファイルを利用し、Superuserを導入していきます。

一旦電源を落とします(シャットダウン後に一度バッテリーを抜いて完全にOFFにしましょう)

volume upと電源ボタンを同時押しで起動します。
※fastbootはvolume downでしたが、今回はvolume upです。

メニューが表示されたら「install zip from sdcard」を選択します。
メニューの操作は、ボリュームアップ/ダウンがメニューの上下、決定は電源ボタンです。
※この時点でメニューから本体のバックアップが取れるようになっていますので
本体のバックアップを取り、万一の場合にバックアップから戻せるようにしましょう。
バックアップはSDカードに保存されますので、SDカードからバックアップファイルを
PCなどにコピーし保存しておくと、将来SDカードが壊れた際も復旧が可能となります。

SDカードに事前に入れておいたsu-3.0-beta4-efgh-signed.zipを選択します。

確認の選択肢が出ますので「Yes--Install」を選択して導入完了となります。

次に、2.SDカードに新しいパーティションを作るです。

パーティションの操作を行ったことがある方であれば難しくはありません。
※SDカードにSWAPも作成しようと考えている場合は、この時点でSWAP領域も作成しておきましょう。
SWAP領域は、128M~256M程度の領域を確保し、フォーマットのタイプでLinux-Swapを選択してください。
また、必ずEXT3の後ろに作成し、第3のパーティションとして作成してください。

パーティションの操作を行ったことがない方は、以下のサイトに詳しく方法が纏められています。
参考にしてください。
SDカードに新しいパーティションを作る
※ちなみに私の場合ですと、上記で紹介したツールですと、Link2SDがEXT3を正常に認識できませんでした。

EXT3が上手く認識しない場合は以下のツールで作成。
Partition Master Free
※Partition MasterではSWAP領域は作成できないので、ツールを併用して作成してください。

3.Link2SDインストール

MarketからLink2SDをダウンロードしてインストールします。

Link2SDを起動するとパーティションのタイプを聞かれますので
上で作成したパーティションのタイプであるext3を選択します。
※私の場合は、Partition Wizard でパーティションを作成した場合
ここで正しく認識できず、Partition Masterでパーティションを作成した場合は
正しく認識出来るという現象になりました。

正しく認識出来れば導入は完了です。
あとはアプリを選択して、「リンクを作成する」でSDカードにアプリが移動されます。
※Link2SDの使い方は、検索すると詳しいサイトが沢山出て来ます。

SDカードのSWAP領域をAndroidで利用する場合は、以下の操作で認識させます。

4.Busyboxインストール

MarketからBusyboxをダウンロードしてインストールします。
但し、Busyboxのバージョンによって、後述するSwapper2の情報が、正しく表示されなくなるので
特定のバージョンのBusyboxをインストールすることをお勧めします。

特定のバージョンのBusyboxをインストールするには、MarketからBusybox InstallerをDLします。

Busybox Installerを実行すると、バージョンとインストール先のパスが選択できますので
バージョンのみ変更し、をクリックしてください。
Busybox Installerで1.18.0をインストール
※最新のBusyboxだとSwapper2にてSwapの表示がbuffers: KB になる。

5.Swapper2インストール

MarketからSwapper2をダウンロードしてインストールします。

設定で以下の項目を変更します。

Advanced Preferences → Use Swap Partitionにチェック。

Advanced Preferences → Busybox locationの内容を/system/xbin/busyboxに変更。

SWAPをONにして、Swapper2のメニュー画面の「Info」を選択し、SWAPの情報が正しく表示されればOKです。

再起動後もSWAP利用が適用されるように、設定で「Run Swapper at Stasrtup」にチェックを入れておきましょう。

以上で、SDカードへのアプリ移行(ROM不足対応)とRAM不足対応は完了です。