Androidアプリ開発したい!

IT屋がGalaxySを手に入れてからAndroidに興味が湧き、いろいろと開発したりしてます。 GalaxyNexusがメイン機となり、ようやく普及し始めたAndroid4.0への関心が高いです。 仕事では、iPhone向けとかのソシャゲ作ってます。

2012年06月

さっそくADT20の新機能でTab + Swipeを使ってみたが思わぬエラー発生


Androidプロジェクト作成の画面もがっつり変わってますね。

スクリーンショット 2012-06-29 9.30.59.png

アイコンも最初に作れるとは。
いつものドロイド君でテスト端末が埋まるのはこれで無くなりそうだ。

スクリーンショット 2012-06-29 9.31.15.png


これが噂のテンプレActivity作成の選択ですな。

スクリーンショット 2012-06-29 9.31.51.png

Blank Activityを選択して、
Navigation Typeに「Tab + Swipe」を選んだ。

スクリーンショット 2012-06-29 9.32.07.png

他にも色々あるみたい。
今後増えそうね。

スクリーンショット 2012-06-29 9.32.18.png

というわけで、さっそく起動してみる。
ちゃんとスワイプする!

52620aaa.jpg
しかし画面を回転させたら異常終了しました。
うむ・・・細かいところは自分でやれということか。
まあ確かに画面回転とか無効にする場合は不要な処理になるし、
あくまでも最小限のコードでタブ+スワイプを実現ということですね。

というわけで、
その辺の修正をやろうとgitにプロジェクトを共有したらいきなり
エラーでまくり!?
スクリーンショット 2012-06-29 20.28.39.png

サポートパッケージが読めなくなってるっぽい
(スワイプのやつ)

困ったらとりあえずclean。
しかし、状況は変わらず。。。ちゃんと調べるとしよう(笑) 

原因はgitリポジトリに追加したときにプロジェクトのパスが変わって、
その時にサポートパッケージの参照パスがそのままになっていました。

スクリーンショット 2012-06-29 20.39.11.png

しかも、残念なことにエラーになってるライブラリだけをremoveしたりできないようだ?
なんか自動で判別してるっぽいので、この手のイレギュラーは相手にしてない?

どうもlibsフォルダに突っ込んだライブラリが自動的に
Android Dependenciesに追加されるようです。

なので、一旦「android-support-v4.jar」を適当な場所に移動します。
もちろんeclipseが認識できるようにeclipse上でドラッグドロップしないとダメかも。。。

とりあえずプロジェクト直下に移動しました。
引き続きエラーでてます。 
スクリーンショット 2012-06-29 21.48.26.png

そして再びドラッグドロップして、libsフォルダに入れると
自動的にAndroid Dependenciesに追加されてエラーも消えました。
スクリーンショット 2012-06-29 21.52.38.png
昔のJavaプロジェクトみたいなプロジェクトの設定からビルドパス指定を手動でやる必要は、
無いので楽といえば楽ですね。イレギュラーでハマりやすそうですが。。。
 


Windows上のVMからMacのVMにLinux環境をコピー(続き)

ホストオンリーアダプタが使えなくて、
MacのコンソールからsshでVMのLinux操作ができなくてちょっと苦戦したので、
その手順になります。

仮想サーバの設定ではなく、VirtualBoxの環境設定を開きます。

VirtualBox>環境設定

スクリーンショット 2012-06-29 10.50.35.png


ホストオンリーネットワークを追加します。

「ネットワーク」タブ>「+」マークのボタンを押してvboxnet0を追加

スクリーンショット 2012-06-29 10.39.03.png

IPアドレスの設定とサブネットマスクの設定がMacPCとあってるか確認。

ドライバーみたいなマークを押すと出てきます。

スクリーンショット 2012-06-29 10.38.55.png


今度は、対象のLinux仮想サーバーで、
作ったホストオンリーアダプタをネットワーク設定に追加してサーバーを起動します。

仮想環境選択>設定ボタン>ネットワーク

スクリーンショット 2012-06-29 10.39.18.png


ifconfigコマンドにて、
さきほど設定したvboxnet0のipアドレス「192.168.56.101」を発見しました。

>ifconfig

スクリーンショット 2012-06-29 10.57.19.png

というわけで「192.168.56.101」に対してsshコマンド発行で、
無事ssh接続できました。

>ssh 192.168.56.101
スクリーンショット 2012-06-29 10.56.31.png


というわで今度こそ無事にインポート完了ですw

Windows上のVMからMacのVMにLinux環境をコピー

実際、普通にエクスポートしてインポートするだけですけどねw
Windows -> Windowsはやったことあったけど、
Macは初なので一応メモとして残します。

【エクスポート手順】

メニュー>仮想アプライアンスのエクスポート

対象のOSを選択

39acd5e6.png

保存先はどこでもいいです。Macに渡す方法は共有フォルダとかUSBとかご自由に

209aaa4a.png

おわり!


【インポート手順】

メニュー>ファイル>仮想アプライアンスのインポート

スクリーンショット 2012-06-29 9.39.00.png

選択をクリックしてファイルエクスプローラー起動

スクリーンショット 2012-06-29 9.39.21.png

先ほどエクスポートした.ovaファイルを選択します。

スクリーンショット 2012-06-29 9.39.52.png

ファイル指定して「続ける」をクリック

スクリーンショット 2012-06-29 9.40.09.png

インポート中やで!

スクリーンショット 2012-06-29 9.40.28.png


インポート終了。たぶん2,3分くらい。

スクリーンショット 2012-06-29 9.43.41.png


無事に起動できました。

ちなみに私は、Windowsでの乱雑に設定したネットワーク設定が残ってて、
そのまま起動したらエラーになりました。
「設定>ネットワーク」で不要なネットワークアダプタをすべて無効にして
最小構成(1つだけ)にしたらちゃんと起動しました!

※むしろここをしっかり残すべきだった?さっとやってしまったのでキャプチャーがない
スクリーンショット 2012-06-29 9.46.06.png

はい。終わりです。とても簡単でしたね。

わざわざ開発メンバー全員が1からOSインストールとか
時間勿体ないですからね〜

ぜひぜひツールを有効活用して効率良く開発しましょう!
すばらです。 

GALAPAGOS A01SHがついにAndroid4.0.3へ進化

いよいよ来ましたね〜
きっとみんなも待ち望んでいたはず?

逆にAndroid 3.2.1とか希少価値が出てきそうだけど、
ちゃんとAndroid4.0.3に更新しました。

失敗したらどうなる?もう二度と3.2.1に戻れないだと?(お客様では戻せないとのこと)
だが、かまわんやれ!!!

IMG_20120627_181131.jpg

専用のダウンロードマネージャですか。りっち!

IMG_20120627_181154.jpg

更新が終わったので再起動中

IMG_20120627_181812.jpg

無事起動した。

IMG_20120627_181954.jpg

あれ。。。?まだ3.2.1じゃん。まさかのマイナーバージョンアップ?

IMG_20120627_182017.jpg

と、思ったらアプリが増えとる。
Android 4.0更新アプリだと・・・やりおる

1340789121964.jpg

というわけで、アプリ起動して更新して再起動して
無事にAndroid 4.0.3になりました。

Screenshot_2012-06-27-21-00-46.png

もちろんAndroid 4.0以降なので、ちゃんとスクリーンショット(音量下げる+電源)が取れます。
※ただし、シャッター音が超うるさい気がする・・・これはどうにかならないのか????

Screenshot_2012-06-27-21-00-59.png

あと開発者向けオプションもしっかり出てるので、
開発用にも今後使えそうだ。

もちろんさっそくUSBデバッグをMacでやりましたが、
Android 4.0.3アプリもバッチリできました。

Screenshot_2012-06-27-21-23-34.png


すばらっ!!(言ってみたかっただけ)


 

Android Layout EditTextの警告


EditText配置したらこんな警告が・・・
なんとなく言わんとしてることはわかるが、念のためGoogle翻訳先生!!

警告>

This text field does not specify an inputType or a hint

Google翻訳>

このテキストフィールドには、inputTypeやヒントを指定していません


8ee19188.png

つまり、hintがあればいいわけだ。


2d9b8e29.png

確かに検索するときとか、フィールドだけあっても
何入力すればいいかわからないですもんね。
かといって、ラベルとか置いたら画面の小さいスマートフォンとしては、
利便性が損なわれるし、ヒントが推奨というわけか。



持ってる端末
・Galaxy S root化済    (2.3.6)
・Galaxy Nexus          (4.1.1)
・GALAPAGOS A01SH (4.0.4)
・ONDA Vi10              (4.0.3) 
・iPod Touch           (iOS 6.0)
記事検索
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

  • ライブドアブログ