れさくのブログ

れさくのブログ

*

1日目:計算機を作ろうとしたらUSBドライバの勉強が進んだの巻

   

~前回までのあらすじ~

AndroidSDKは重い。
AndroidSDKは複雑怪奇。

前回の長い長いレポートが、それを物語っています。
繰り返しになりますが、Androidアプリ開発は初心者が独学でどうこうできるレベルではありません。

「いやー、自分Hellow Worldレベルですよー」という一見すると謙遜めいたセリフは、
つまりこの複雑怪奇な「開発のための事前準備」ができるよ(ドヤ
という自信の表れなのです。

開発は、開発環境がゼロから構築できることが大切。
その後のプログラミングなんて、しょせんはif文書ければいいんですよ。(自論暴論キター!)

初心者はきちんとしたスクールに通って、先生に付いて習う。

かと言って、ダラダラ学ぶのは仕事をしている人にとっては現実的ではありません。
(学習自体が目的な学生さんや、余暇でプログラミング習うよ、という人はそれで良いと思います)

「短期間で」「実践的に手を動かして」「ゼロからリリースまで」「マネタイズも含めて」学べるスクールって、ほとんどないと思います。

クラウドナインアップスを除いては。

という訳で八幡山に向かいます。

開発環境はバッチリ。
実機もバッチリ。
どれ持って行こうかなー。
IMG_9659
多すぎー!(ガビーン
そして関係ないのも結構混じってるー!(ガビガビーン

これにしよう!
ドッギャー---ァン!
IMG_9662
よりによってそれー?!(ガビガビガビーン

ジョジョスマホ。
S-MAXさんにも寄稿させて頂いた、伝説のスマホです。

小松先生「凄いですね、ジョジョスマホで作ったアプリ起動できました?」

れさく「えっ?いや、まだそこまでは・・・(あれっ?いきなりハードル上げてきてるよこの先生)」

そんな具合にスクール初日が始まりました。

eclipse起動。

そしてFileからNew→AndroidApplicationProject。
これだけで最低限のHellowWorldと書かれた雛形アプリが開発できる状態で起動します。
WS000063
あっさり成功。
独学で苦しんだ数年間はなんだったんだ・・・。
やはりきちんとした場所でできる人から学ぶべきです。

さて、エミュレータは重いので、実機をパソコンにUSBケーブルで繋ぎます。
そしてeclipseでビルド実行すると、アプリが実機の方で立ち上がるのです。

なぜそんなことができるのか?

実はAndroid端末には最初からそういう機能が用意されているのです。

「開発者向けオプション」です。

Androidアプリを開発する人のための機能です。

この「開発者向けオプション」は普通は機能メニューの中にあったりしますが、
中にはどこかのボタンを7回連打しないと出てこない裏メニュー扱いの機種もあるそうです。
遊び心ですね。
ところで昔のPHSには電測モードというのがありまして電源を切った後に「2」+「6」+「7」+「0」押しながら電源を入れると「TEST-D」と表示されるのでそこで「0938118181」と入力すると基地局のCS-IDと電磁界強度が画面に表示されて(続く

手順はこんな感じ。簡単簡単ッ!

1.「開発者向けオプション」でUSBデバッグにチェックを入れる。
IMG_9643
これでUSBケーブル経由で、パソコンで開発したアプリを実機上で動かせます。
画面左上にゴキ・・・ドロイド君マークがありますね?
これが出ると開発者向けモード成功です。

え?「疑似ロケーションを許可する」は何かって
何でしょうね?これ全然気にすることないですよ本当ですよ関係ないんだってば
「『疑似ロケーション』オレ(制作者)だけが 位置情報詐称できることを許可しろォォォォーーーーッ うおおおががががが だが! ユーザーには許可しないィィィィィーーーッ 疑似ロケーションは許可しないィィィィィィィーーーッ!!」

2.ジョジョスマホをUSBケーブルで繋ぎます。
ズギュゥゥゥゥゥウン
以上。実に簡単です。
ほらジョジョスマホの名前が・・・
WS000067
あれ・・・ない・・・

エミュレーターしか載ってません。

画面右下に表示されるUSBドライバのインストールアニメーションでは、エラーは起きませんでした。

実機には間違いなくドロイドマークが出ていて、「開発者向けオプション」が活きている。

普通こういうことは無いそうです。

おかしいですね、ジョジョスマホは至ってフツーのスマホですし。(ええーっ?!)

ともあれ、Windows固有の問題で講義を遅延させられません。
他の生徒さんに迷惑が掛かります。

ここから先はれさくの世界。
「ザ・ワールド!オレだけの時間だぜ!」ってヤツです。

ジョジョスマホにふさわしいじゃないですか!
嬉しいですね。
ウソです。
嬉しくないです。

調べまくります。試しまくります。
しかし耳に入ってくる講義内容。(時間止まってないジャン)
皆さん進んでいきます。
焦りますね。
でも大丈夫。
今話している内容はプログラミング。
プログラミングなんてしょせんif文。
環境さえ整えば一気に追いつき追い越せるッ!

ともあれだ。
実機に問題ない(開発者モードになっている)のであれば、
パソコンのドライバまわりが怪しいに決まっている。

その視点で調べると、大当たり。

Google USB DriverでAndroid端末をWindowsに認識させる

コントロールパネル→ハードウェアとサウンド→デバイスマネージャー

誰だって見たくないデバイスマネージャーの画面を開きます。
WS000008
とっても見たくない!マーク
ジョジョスマホのメーカー「LG Electronics Inc.」が「ほかのデバイス」になっています。
「ほかのデバイス」とか言ってますが、要は「不明なデバイス」です。

この!の「LG Electronics Inc.」右クリック→プロパティ
WS000009
?マークとか「不明」とか「インストールされていません」とか不穏な言葉がいっぱいです。
「詳細」タブをクリックしてみましょう。

「デバイスの説明」と書かれてるあたりを突っついてみましょう。
WS000010

「ハードウェアID」を選ぶと、こんな画面になります。
WS000071
下に表示されてる

USB\VID_1004&PID_61F1&REV_0231&MI_04
USB\VID_1004&PID_61F1&MI_04

をメモっておきましょう。

次に
C:\adt-bundle-windows-x86_64-20140702\sdk\extras\google\usb_driver
にある「android_winusb.inf」をテキストエディタで開きます。
WS000013

[Google.NTx86]と[Google.NTamd64]と書かれている箇所があります。
それぞれの下あたりに以下を書き足します。
——————————————-
;LG Electric Inc.
%SingleAdbInterface% = USB_Install, USB\VID_1004&PID_61F1
%CompositeAdbInterface% = USB_Install, USB\VID_1004&PID_61F1&REV_0231&MI_04
——————————————-

こんな感じです。
WS000014
良く見ると、Google Nexus OneとかGoogle Nexus 7についても似たようなことが書かれてます。
下の方にはGoogle Glassまで出てきます。

どうやら「特殊な端末」のUSBドライバをインストールするためのことが書かれているようです。

ジョジョスマホのどこが特殊なんでしょうね?

さて、「全般」タブに戻って「ドライバの更新」をクリック
WS000009

なんで聞くんだよコンピューターなら自分で考えてよ。
WS000011
「コンピューターを参照してドライバーソフトウェアを検索します」を選びます。

「参照」で先ほどの
「C:\adt-bundle-windows-x86_64-20140702\sdk\extras\google\usb_driver」
を選択して次へ。
WS000012

すると・・・

ドライバーが正常にインストールされました!
WS000066_1
(インストールに2,3分掛かりました。)

認識しました!!!
WS000074

ところでMacにそもそもドライバーの概念がありません。
つまりこんな苦労はそもそも無縁。
Macな開発者が急増してる理由の一つかなあと思ったり。

さあ後はコーディングです。
追いつけ追い越せ。
大丈夫、プログラミングなんてif文(ry

できました。
そして実行ボタンを押すと・・・・
WS000072
大丈夫、まだ慌てる時間じゃない。

しかしエディター上ではエラーはありません。
このエラーメッセージでレッツggrks。

Your Project contains error s please fix them before running your applicationエラー

「debug.keystoreの有効期限切れ」らしいです。
このパソコン、古いdebug.keystoreがあるらしいです。

古いdebug.keystoreとは?
スクールのヘルプスタッフさんが助けてくれます。
これだそうです。
画像1

このディレクトリ・・・見覚え有ります。
そう、昔々・・・
2010年!
それは位置ゲーとジオメディアの発展が(ry
あの時のプロジェクトの名残です。
過去というものは・・・
ディアボロの名ゼリフを心の中で吐きつつもサクッっと削除。

そして
IMG_9645
デキター

なんという達成感。
WindowsとかWindowsとかWindowsのこととか。
よく分かったよ。(大腸の仕組みが)

-つづく-

 - 5日間でできるAndroidアプリ開発

adpc

adpc

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

  関連記事

unnamed
APKファイル署名のデッドロック?

Androidアプリリリース直前の段階で最大の疑問。 【課題】 大昔に「署名なし …

eclips2
0日目:Androidアプリ開発環境をMacに設定しかけて途中からWindowsに設定する

~前回までのあらすじ~ 「ちょっと!蕎麦の出前まだなの?」 「すみませんねェ、今 …

unnamed
プロローグ:ジオの奇妙な冒険

2010年! それは位置ゲーとジオメディアの発展が起業家の思想と生活を変えた時代 …

写真 2014-11-21 2 41 32
2日目:スタバで授業の復習をしたら駅コレAndroidアプリができてしまった(前編)

クラウドナインアップスのAndroidアプリ教室、2日目です。 今日はデータの読 …

5日目:クラウドナインアップスAndroid教室最終日

一部で好評! 八幡山ってどんなところよ?シリーズ。 京王線の八幡山駅を出て左に進 …

10671457_837472396304552_3584240601328250199_n
2日目:スタバで授業の復習をしたら駅コレAndroidアプリができてしまった(後編)

~これまでのあらすじ~ スタバでスタバなうを作った。 さて、この勢いでもっと何か …

いよいよ本番:eclipse上でプロジェクトをコピーする

クラウドナインアップス卒業後も先生に質問しまくったりサンプルコード頂いたりしまく …

manifes2
3日目:アトム・ハート・ファーザー~カメラアプリを作るッ!

あ…ありのまま 今 起こった事を話すぜ! 「AndroidManif …

4日目:地図アプリを作る~人生の位置情報を求めて~

「そもそも八幡山ってどんなところよ?」 そんな声が聞こえてきそうです。 こんなと …

ic_launcher
おまけ:本当は大変なAndroid開発

スクールで作ったapkファイルがあれば、「新規で」アプリリリースするなら簡単。 …