スポンサーリンク

スマホ導入までの紆余曲折を振り返る - アプリ開発のために,ガラケーから個人用Android端末に乗り換えるまでのログとメモ

エンジニアの立場で,個人用のスマホ端末を所有するまでには,けっこう試行錯誤があった。

下記はその備忘録。



Webアプリやデスクトップアプリの開発が非常に好きだった。

それだけに,モバイル上での開発の「無意味な制約の多さ」が,嫌で嫌で仕方なかった。

  • ガラケー上では,開発の縛りが酷過ぎる。自由が無い。
  • PCとケータイで,自分で自由にできる事や,自作でフリーに作れる物に関し,「落差」が余りにも大きすぎる。

と個人的にいつも思っていた。


そのため,モバイル上での開発・プログラミングに目を向けようなどとは,正直これっぽっちも思わなかった。

「PCでできる事」「PCで作れる物」との落差が,歴然とし過ぎていたためだ。


手を出すだけ無駄と感じていたし,手を出す余地や自由は実際になかった。

Webにしても,その頃のモバイルはフルブラウザではなかった。

その点,HTML/JavaScript/CSSなどのWeb知識をある程度持っている身として,モバイルは単なる「狭い牢獄」のような環境に見えた。



できる事が少なすぎるので,モバイル経由でのWebアプリ利用は,一種の「時間の無駄」と考えていた。

そんな事に手間+暇+コストを取られるぐらいなら,PCだけでいい,と思ったのだ。



技術者として,開発が本当に好きだからこそ,モバイル開発には目もくれなかった。

この複雑な感情,果たして非エンジニアには理解できるだろうか?

(※理解していただく必要は別にないと思っているが)



それで,日本でAndroid搭載端末が発売されるよりも前の時点で,個人として

  • 「ポケット開発環境」があればいいのに。

と,常日頃ねがっていた。

そのころの記録:

touchではないiPod (mini + nano + classic) で,自作はどこまで可能か(2008年11月の時点で)
http://language-and-engineering.hatenablog.jp/entry/20081106/1225988771

  • 「iPhone SDKでの開発は・・・自作アプリ公開には費用がかかり,環境はMac OSXのみであり,コードのネット上掲載にもNDAの縛りがある。」
  • 「・・・今後はぜひ iPhone SDK が可能な限りオープン化し,端末は”ポケット開発環境”になって頂きたい。」

まだ日本では,「Android」なんて耳にする機会がほぼ無かった頃の話だ。



上記のエントリを書いたときには,まさか,

その前の月(2008年10月)の時点で既に「Google製のiPhone」みたいなものが,

世界のどこかで発売開始している。とは夢にも思わなかった。



時は流れ,オープンなAndroidが,クローズドなiPhoneのシェアをあっさり奪った。


私の望んでいた「自由なポケット開発環境」の時代がようやく到来してくれたのだ。

Appleワールドは,そういう世界をもたらさなかった。

(※私はiPodとiPadのヘビーユーザである事を併記しておく。決して,Appleが嫌いとかではない。ただ,両ブランドを比較した際のオープン性・自由度の違いは,やはり歴然としているだろう。)


そしてAndroidアプリ開発に徐々に足を踏み入れた。


ここでは,アプリ開発そのものの話はしない。

「Android端末の実機の導入」という観点に絞る。


実機の導入については,以下の時期の試行錯誤を経て今に至る。

  • (1)実機端末無しで,アプリ開発をエミュレータのみで頑張って済ませようとしていたころ。
  • (2)SIM無しの端末を,開発の試験機として粘って使っていたころ。
  • (3)ガラケーからAndroidに乗り換え,Wifi接続オンリーでパケット最低額を狙い,節約を試みていたころ。
  • (4)Wifiオンリーという利用法が実際には無理だと気づき,逆にこれはフル活用しないと損だ・・・と気付いたころ。


各段階において,その時点で入手可能な情報をもとに試行錯誤した。

参考にしたURLのリストがあるので,ログとして下記に列挙しておく。

(1)エミュレータのみで頑張ってたころ

これは開発環境のセットアップ手順を読めばわかる。

今から1時間で,Androidアプリの開発環境を構築し,Windows上でサンプルを動作させる手順
http://language-and-engineering.hatenablog.jp/entry/20110724/p1

(2−1)Android実機をSIMなしで利用

まずは敷居の低い,ローコストな方法から順番に試していった。(いきなりハイリスクな行動はしない。)

当然ながら,違法な行為は一切せず。


SIM無しで電源が入りさえすればいい,という状況下で,wosimが役立った:

docomo携帯電話 Xperia用アプリケーション wosim
http://siter.jp/android/wosim/

  • 通常 Xperia では FOMAカードを抜いた状態で電源を入れると機能が制限されてしまいます。音楽を聴くことも、カメラで写真を撮ることも、wifiでインターネットをすることもできません。全てのアプリが使用不可
  • wosim を入れると大丈夫。XperiaにFOMAカードが入っていなくてもアプリが使用できます。


FOMAカード無しでXperiaを利用する(その2)
http://xperianow.com/category/wifi/

  • 機内モードをonにすることで、起動時のSIMカードチェックを回避:シャットダウンのたびにいちいち機内モードONにするのもなぁ・・・・と
  • シャットダウンの際、自動で機内モードonにしてくれる「tGentleBoot」なる有償アプリもあったが、やっと無料アプリがリリースされた。「wosim」といい、マーケットからダウンロード可能。オシムとよむのか。「without SIM」の略か
  • SIMカード無しで、WiFi接続もOKです。APがオープンネットワークとWEPの場合は接続できますが、WPAなどの暗号化通信を使っている場合は接続できず
  • あたり前のことですが、wosimのオンとオフにかかわらず、FOMAカードが無い状態では3G回線を使った通信ができませんので電話やSMSは利用できず

(2−2)AndroidからWifi

SIMカードは無いけど,ネットワーク通信が絡むアプリを作るようになると,wosimを使いながら無線LAN(Wifi)に接続する必要が生じた。

スマホにもタブレットにも,LANケーブルは挿せない。

無線LANの設定や画面の調整など、Androidスマホの知っておきたい基本設定
http://trendy.nikkeibp.co.jp/article/...

  • 1.無線LANを使って通信料を節約する。データ通信に無線LAN(Wi-Fi)だけを使えば、通信料の節約につながる。2段階定額通信契約をしている場合に効果がある
  • 携帯電話の回線よりも通信できるエリアが狭まるが、無線LANの使える自宅や勤務先など決まった場所で使うことが多ければ無線LANのみで設定しても困ることは少ない


Android Wi-Fi設定の基本
http://www.taosoftware.co.jp/blog/200...

  • アンドロイド携帯端末は、主にWi-Fiで通信を行い、Wi-Fiでアクセスできない外出時等に3G通信を行うのが普通


Galaxyの場合
http://blogs.dion.ne.jp/lasatosi/arch...
Wi-Fiネットワークの「logitecuser」と「logitecgameuser」:「WPSボタン接続」という項目>「2分以内にWi-FiアクセスポイントのWPSを押してください」と出る


Android(アンドロイド)IPアドレス固定
http://www.akakagemaru.info/port/andr...


GALAXY S II SC-02C の「WPSボタン接続」が便利すぎる
http://www.ksflower.org/?p=972

  • Wi-Fi設定にて「WPSボタン接続」という項目があり,これを選択してルータのAOSSボタンを長押しすれば簡単に接続。長々と「SSID(Service Set ID)」の認証キーを一言一句間違えないように手打ちしなくても済んだ


WPA2-PSK
http://e-words.jp/w/WPA2-PSK.html

  • 無線LANの暗号化を行うWPA/WPA2のパーソナルモード(WPA/WPA2 Personal)
  • ユーザが8〜63文字のパスフレーズを決めて、それぞれの機器に手動で入力・設定


Wifiのホームネットワークとしての実現手順のメモ:

J:COMでネット利用時に,無線LANルータを導入し,PCとiPadからWi-Fi接続する方法 (ケーブルモデムにつながらない時のための,設定手順のメモ)
http://language-and-engineering.hatenablog.jp/entry/20111015/p1

(2−3)PIN+PUK,およびSIMカードの単体販売について

そのうち,当然ながらWifiだけでは足りなくなる。

GPSを使ったアプリなど,屋外での3G通信が無いと成立しないアプリも多数あるからだ。

それで,SIMカードは必要,ということになった。


最初のうちは,可能な範囲でガラケーと差し替えてみたり,適切な範囲で貸し借りをする事もあった。

だが,たとえ合意の下であっても,他人のSIMを遣わせてもらうというのは問題だった。

何かでミスると,PINコードやPUKコードが必要になるためだ。

第334回:PINコード とは
http://k-tai.impress.co.jp/cda/articl...

  • いわゆる暗証番号のことです。PINコードの“PIN”とは、個人を識別する番号という意味の“Personal Identification Number”


SIMカードがPUKでロックされています
http://kanamerin.blog78.fc2.com/blog-...

  • PINコードを3回間違えてロック


USIMロックの恐怖! PUKってなんじゃらほい(死語?)
http://blog.goo.ne.jp/krmmk3/e/230593...

  • PINコードの入力に失敗すると今度はSIMカードごとに設定されたPUKコードを入力しないとロックされた状態から元に戻せない。
  • PUKコードは保証書に書いてある。購入したときのパッケージを調べて入力


そして,SIMカード単体での運用も考慮した。

ここでは技適マークの有無によって,手を出してよいかどうか左右される事になる。

本日SIMロック解禁! ドコモのSIMカード単体販売を実際に体験してきました
http://weekly.ascii.jp/elem/000/000/0...

  • 1)技適マークなしのSIMフリー「Nexus S」で通常サイズのSIMを発行
  • 2)技適マークありのSIMフリー「IDEOS」、「iPhone4」で、SIMとマイクロSIMの両方を発行。・・・


第5回 FOMAカードなしでも使える? 技適マークはどこにある?——「GALAXY Tab」
http://plusd.itmedia.co.jp/mobile/art...

  • 日本で販売される携帯電話端末には、総務省の「特定無線設備の技術基準適合証明等」のマーク(いわゆる「技適マーク」)が、バッテリー収納部分や端末裏面に印刷されることが多い

しかしSIMカードを単体で運用するぐらいなら,より大きな自由を手に入れるためには,いっそ…。

こうして,個人所有のガラケーを捨てるべき時が来たのだった。


(3)いよいよ据えかねて,実機を導入

IS11SHのADB接続のポイント:

Eclipseよりも先にadbに認識させること

USBケーブルつなぐ前にSHARPのサイトから3つダウンロードして導入

  • SHARP共通
  • 機種特有
  • ADDON

SHARP共通 ADB USBドライバ
https://sh-dev.sharp.co.jp/android/mo...


IS11SH 個別機種用USBドライバ
http://k-tai.sharp.co.jp/support/a/is...


Eclipse側と接続するためのコマンド:

D:\dev\java\android-sdk-windows\tools>android update adb
adb has been updated. You must restart adb with the following commands
       adb kill-server
       adb start-server

D:\dev\java\android-sdk-windows\tools>adb kill-server

D:\dev\java\android-sdk-windows\tools>adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

D:\dev\java\android-sdk-windows\tools>adb devices
List of devices attached
〜シリアルID〜     device

(4)フル活用しないと損だと気付いた段階

早めにこれを気付くべきであった。

ガラケーやApple SDKが障害となり、モバイルに関する先入観を植え込まれていたために,スマホの有用性に気付くのに遅れてしまったのだと思う。


補足

Android実機としてシャープのIS11SHをとりあえず使っており,数々の利点を享受している。


しかし,改善の余地があると感じた点もある。

この端末の難点を記録しておく。

Android OS 全般で共通の項目も含まれる。

  • OSバージョン: 2.3.3


感じた難点の一覧:

  • スライドキーは,打ち間違い多すぎて使い物にならず。
  • 画面ロックまでの時間を設定できないか,と思わせるわかりづらさ。消灯時間も。
  • メール本文など複数行の編集UIで、初回カーソル当て後にキャレット位置が左上に戻ってしまう。
  • タブレットと比べて、画面の縦横固定の開始と解除がめんどい。
  • 画面が上下逆に回転してくれない。
  • マーケット利用時にバックグラウンドデータを有効にするが,チェックしても何も起こらないので初回戸惑う。
  • 書きかけのメールの保存が煩雑すぎる。4タップも必要だが1タップにすべき。
  • メール書き途中に送信ボタンを間違えて押しやすいUI。送信ずみメールも再送信してしまいやすい。
  • プリインストール済みの辞書アプリの辞書切り替えがだめ。国語か英和か?という基本的な区分だけがわかりさえすれば良いのに、商標名とロゴマークに埋もれて,何の辞書なのか素早く判別できず煩雑。
  • メモ帳の改行コードの扱いがだめ。Gmailアプリからメール本文をメモにコピペしようとすると改行が崩れる。仕方ないので,いったんGmailから携帯メールにテキストを送り,携帯メール上で転送ボタンを押してからテキストボックス内で文章を全選択してコピー・ペーストする。そうすると改行が崩れない。

あと,テザリングができないのも,だんだん不満に感じてきた。

理由は,タブレットの普及に伴い,各種のスマートデバイスの通信費を一本化したくなったから。

PCとかFLASHとかいろいろ is11sh テザリングについて
http://kz1234.blog110.fc2.com/blog-en...


テザリングについての質問です。 au is11shでテザリングは可能みたいなんですが…...
http://detail.chiebukuro.yahoo.co.jp/...


IS11SHをパソコンに繋いでインターネットはできないですか? | スマートフォンはgooスマホ部
http://sp.oshiete.goo.ne.jp/qa/view/7...

(利用して1年半たった時点での追記)

なんか,全体的に,動作がもっさりしてきたような・・・

何の操作をしても,どのキーを押しても「ホームは応答していません」のエラーばっかり頻発するようになった。

内部ストレージは,まだ半分ぐらい空きがあるんだけど。


これは,契約が2年縛りだから,乗り換えを促すための時限爆弾ってこと?

買い換えろって?

ホームエラーを無くしたい【SH-12C】 | スマートフォンはgooスマホ部
http://sp.oshiete.goo.ne.jp/qa/view/9...

  • 重いホームアプリを削除せよ
  • 本体の容量がいっぱいかも


価格.com - 『エラーが頻出します』 シャープ AQUOS PHONE SH-12C docomo のクチコミ掲示板
http://bbs.kakaku.com/bbs/J0000005232...

  • ホーム画面に置いているウィジェットを減らせ
  • バックグラウンドで動くアプリをアンインストール
  • オールリセット
  • 再起動してだめならほぼアプリが原因。特にホームアプリの多重起動


「ホームは応答していません」android スマートフォン: 雑録since2013
http://necpc6001.seesaa.net/article/3...

  • 不必要なソフトをアンインストールか,SDカード上へ移動
利用して1年10か月経った時点での追記

こりゃだめだろ。

電話機としての基本的な機能すら利用に支障がある。

  • ホームが応答しません。が頻発
  • ホームにアイコンが表示されない。時間がたつと表示される場合もあるが、ホーム画面をスライドしたらアイコンが消えたという事が何度もある。たまにランダムにアイコンが復活するが、複数のアイコンが同一箇所に重なっているという訳のわからない挙動が起こったりする。
  • 全ての動作が遅い。電話に応対しようとしたら画面が固まって操作できず、いつの間にか留守電の録音まで進んでしまうほど時間がかかった、なんてこともある。あと、入力キーボードがなかなか消えてくれないなど。
  • SDカードが認識できなくなる割合が多い。いきなり撮影した写真が保存できなくなったり、ダウンロードしたファイルにアクセスできなかったりという意味不明の挙動をするので、カードのせいだと気づくまで時間がかかる。アストロファイルマネージャーで該当フォルダを開いて「空」になっているのを見て初めて気づく。

本体は熱くなるし、電池は一日で切れるし。

買い替えろってことね…。