WebViewはWebViewClientをセットしないとブラウザを起動するんです。
いままでWebViewClientを指定しなかったことがなかったので、知りませんでした...。
GDDとは「Gut's Driven Development」の略です。簡単にいうとガッツ駆動方式のシステム開発です。
えぇまぁ、私の開発スタイルです。このBlogでは、そんなシステム開発の作業で発見したことを記録していきます。
バイク関連の記事もちょいちょい書き出しました。皆さんの参考になると幸いです。
(Google Developer Daysとか、Game Design Documentとはなんの関係ありません。)
2011年8月13日土曜日
2011年8月11日木曜日
[Android]USBドライバ(その3)
GDD Blog: [Android]USBドライバ(その2)で、簡単に接続させる方法を調べましたが、結局見つかりませんでした。その代わり、デバイスIDを調べる方法がありました!
デバイスマネージャ→プロパティ→詳細タブを表示し、プルダウンから「ハードウエアID」を選択し、android_winusb.infにそのIDを書くだけ。コレならいちいち調べなくてもいいので楽チン。
NexusOneの場合、
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4E12&MI_01
となっており、この右辺にハードウエアIDで出てくる長いほうを書けばOKっぽい。
デバイスマネージャ→プロパティ→詳細タブを表示し、プルダウンから「ハードウエアID」を選択し、android_winusb.infにそのIDを書くだけ。コレならいちいち調べなくてもいいので楽チン。
NexusOneの場合、
%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4E12&MI_01
となっており、この右辺にハードウエアIDで出てくる長いほうを書けばOKっぽい。
2011年8月8日月曜日
[Android]デバッグが開始できない(デバイスを認識しない)
AndroidSDKとADTって、結構頻繁にアップデートがあります。
いつもはeclipseの環境をコピーしてからアップデートしていたんですが、今日は時間がなくて、とりあえずアップデートしてみました。IDEはいい感じで動いていたんですが、デバック開始時にこんなメッセージが!
そして「Android SDK及びADVマネージャを開く」ボタンを押しても空っぽの画面が。。。
eclipseやマシンを再起動しても、状況は変わらず。
そうだ。アレだ!とEclipseを-cleanオプション付きで起動したら直りました。
いつもコレを忘れちゃうんですよね。
いつもはeclipseの環境をコピーしてからアップデートしていたんですが、今日は時間がなくて、とりあえずアップデートしてみました。IDEはいい感じで動いていたんですが、デバック開始時にこんなメッセージが!
Automatic Target Mode: Unable to detect device compatibility. Please select a target device.
そして「Android SDK及びADVマネージャを開く」ボタンを押しても空っぽの画面が。。。
eclipseやマシンを再起動しても、状況は変わらず。
そうだ。アレだ!とEclipseを-cleanオプション付きで起動したら直りました。
いつもコレを忘れちゃうんですよね。
2011年7月20日水曜日
[他]javaのパッケージ名登録サービスを利用する
androidアプリケーションでは、パッケージ名を使って、アプリケーションをユニークにするという仕組みがあります。しかしjavaの実装上、適当にパッケージ名をつけることができます。
また、企業であればドメインを使うのが一般的ですが、じゃあ個人は?といったとき、ちょっと困ってしまいます。で、調べてみると「パッケージ名登録」というサービスが...。しかも無料で利用できます。
サービスの提供元は、財団法人インターネット協会です。公的な団体だと思いますので、個人でアプリ開発してマーケットに登録するような人は1つ持っておくといいかもしれません。
また、企業であればドメインを使うのが一般的ですが、じゃあ個人は?といったとき、ちょっと困ってしまいます。で、調べてみると「パッケージ名登録」というサービスが...。しかも無料で利用できます。
サービスの提供元は、財団法人インターネット協会です。公的な団体だと思いますので、個人でアプリ開発してマーケットに登録するような人は1つ持っておくといいかもしれません。
2011年7月19日火曜日
[Android]ScrollViewとHorizontalScrollView
サイズの異なるデバイスの動作確認をしたいとき、小さな画面のデバイスを使うと、画面仕切れません。そこで、縦横にスクロールさせるためにScrollViewとHorizontalScrollViewを組みあわせてコンテンツをスクロールさせることがありました。
しかし、微妙なタッチを認識するのか、たてにスクロールさせようとしているのに横向きのスクロールがヒットしたりして、イライラします。
で、対面に座っている人に、「いいのがアルヨ」と教えてもらったのが、この2DScrollView。コレコレ。こういうの探していたのよ。
クラスも1つだし、Apache License2.0って書いてあるので、比較的使いやすいかも。
しかし、微妙なタッチを認識するのか、たてにスクロールさせようとしているのに横向きのスクロールがヒットしたりして、イライラします。
で、対面に座っている人に、「いいのがアルヨ」と教えてもらったのが、この2DScrollView。コレコレ。こういうの探していたのよ。
クラスも1つだし、Apache License2.0って書いてあるので、比較的使いやすいかも。
2011年7月5日火曜日
[Android]スキーマ起動に対応する
ブラウザのハイパーリンクで何かアクションしたい場合に使えます。
amコマンドでINTENT投げても起動します。えぇまぁ、 AndroidMAnifest.xmlにかくだけですよ。
amコマンドでINTENT投げても起動します。えぇまぁ、 AndroidMAnifest.xmlにかくだけですよ。
<!-- xxx://com.foo.bar/appname で起動可能になる -->
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="xxx" android:host="com.foo.bar" android:path="/appname"/>
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="xxx" android:host="com.foo.bar" android:path="/appname"/>
</intent-filter>
2011年7月4日月曜日
[Android]AppWidgetからActivityを呼び出したらエラーが...
先日、AppWidgetsを作成していて、ボタンを押下したらActivityを起動するために、ボタン押下でブロードキャストし、AppWidgetProvider#onReceiveで、Context#startActivityしてみると、こんなエラーが...。
で、調べてみると、Intent#setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)っていう風にする必要があるらしいことがわかった。っていうかメッセージをよく見ればわかるよね。
...英語読めるようになりたいな。
java.lang.RuntimeException: Unable to start receiver com.dustroid.dust04.CountDownAppWidget: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want?
で、調べてみると、Intent#setFlags(Intent.FLAG_ACTIVITY_NEW_TASK)っていう風にする必要があるらしいことがわかった。っていうかメッセージをよく見ればわかるよね。
...英語読めるようになりたいな。
登録:
投稿 (Atom)