ブックマーク / mokkouyou.blog.fc2.com (13)

  • mokkouyouの開発日記 NativeDriver

    NativeDriver sciroccoを調査中に見つけた別のandroidUIを含めた試験を出来るライブラリ。 http://code.google.com/p/nativedriver/ 概要のPDFは見るべし http://nativedriver.googlecode.com/files/NativeDriver_introduction.pdf 通常のJunitTestCaseとしてandroidのテストがかけるというのがメリット。 というわけで流してみます。 GettingsStart http://code.google.com/p/nativedriver/wiki/GettingStartedAndroid 自分でチェックアウト方式なので、svnより取得。もうねsubclipseとかでとっちゃえばいいと思う。 それで、androidフォルダ内のbuild.xmlを実行

    kkeisuke
    kkeisuke 2011/09/06
    android テスト
  • mokkouyouの開発日記 SeekBarの見た目をコードで設定

    SeekBarの見た目(style)を変更については以前書いたことがありますが、 過去記事 それをJavaのソースコードから設定してやりましょう。といった内容です。 来は、デフォルトの一部をうわがいてやるといった手法がとれればいいのですが・・・ そのデフォルトが常に同じ構造をもっているのか?が心配なのでやめておきます。 ※getProgressDialogして、LayerDrawableにキャストして・・・って手順 結局はxmlで定義していた部分をそれぞれ対応したクラスを使って設定していく。 そんな内容です。 Volumerの要望であったのですが、指定させるのが面倒っぽいので、どうせならパターンを用意して選択 といったほうが無難かなぁと落ち着いたのですが、せっかくなので。 SeekBar bar = new SeekBar(this); //背景部分を定義 GradientDrawabl

    kkeisuke
    kkeisuke 2011/07/29
    Android
  • mokkouyouの開発日記 ProgressDialogとAsyncTaskの(おそらく)正しい使い方2

    ProgressDialogとAsyncTaskのおそらく正しい使い方 の第二段です。 今度の問題ですが、Progress表示中に、キャンセル(戻るボタン)しても、AsyncTaskがキャンセルされないんだよなぁ という問題です。 などが勢いあまった連打で発生する事があるので、 握りつぶしてやると幸せになれるか、不幸になれるかのどちらかです

    kkeisuke
    kkeisuke 2011/02/09
    ProgressDialogをキャンセル不可にするのでなければ、ProgressDialogのキャンセルイベントをハンドリング
  • mokkouyouの開発日記 admob広告を入れてみた

    Android開発者の裾野を広げるためには収入手段だ!と思います。 いやね、技術欲だの、自分の欲しいアプリを作ったりとかでもいいのですが、 継続してメンテナンスをしていくにはその他+αは必要だと思うわけです。 コミュニティー参加してみたりとかできる人はそこでの地位獲得など。 企業でやってる人であれば企業活動の一環としてでもいいとは思うのですが、それ以外の人もいるわけです。 というわけで前置きが長くなりましたが、 iPhoneアプリの無料版ではほぼデフォルトといっていいレベルの広告ですが、 googleが現在実験中の広告は、トライアル参加のハードルがあまりにも高すぎます。 というわけで、買収されたadmobを調べてみました。 みましたが、ネット上に情報がなかったので(見つけられなかったもので) 人気アプリを持っているわけでもないのにadmob広告を試してみました。 まずは、admobに登録し

    kkeisuke
    kkeisuke 2011/01/09
  • mokkouyouの開発日記 WebViewで表示した他人様のページのフォームに値をつっこむ

    androidで荷物の追跡サービスのアプリを作ろうと思いましたが、 他人のふんどしを盗む(スクレイピング)といった行為が嫌いなので、 ページを表示して、伝票番号を初期表示してやるだけ(んで、保存できるようにする) ってのを想定していました。 で、実際のところ、類似アプリがあってやりたいことがほとんどできるので開発は未着手。 (独自サーバ経由しているっぽいのが気になるといえば気になるので再開しないとは限りませんが) ただ、ここで気になったのが、外部サイト(手を入れられない)に対して、 アプリ側から初期値を投入できるのか?というところ。 よくイベントをフックしたり、javascriptからアプリのコードを呼び出したりとかいう例はあるんですが、 そもそも、他人様のページに対して勝手なscriptの実行が出来るのか? というのは見かけたことないな・・・ ということで軽く調べて試してみました。 結果

    kkeisuke
    kkeisuke 2011/01/08
    Android
  • mokkouyouの開発日記 通知と着信の連携の確認

    通知音にも着信音量を適用という設定があって、 このチェックが入っている場合、通知音と着信音量が連携していまい、 Volumer++などの音量操作系のアプリではちょっと一工夫が必要になってしまいます。 この確認については標準APIにないし、 最近まで力業で確認していたのですが、 最近になってもう少しましな取り方をするように修正しました。

    kkeisuke
    kkeisuke 2011/01/06
    Android, 通知音にも着信音量を適用という設定があって、このチェックが入っている場合、通知音と着信音量が連携
  • mokkouyouの開発日記 ProgressDialogとAsyncTaskの(おそらく)正しい使い方

    プログレスダイアログの使い方として、 よく、以下の様な紹介がされています。 ・・・が、これには実は問題が隠されています。 結論だけ先に言ってしまえば、 「表示中に画面を回転させるとエラーが発生する可能性がある」 です。 その2も追加しました public class AsyncDemo extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); new DemoAsync().execute(); } class DemoAsync extends AsyncTask<Void, Void, Void> { private ProgressDialog mDia

    kkeisuke
    kkeisuke 2010/09/29
    android ProgressDialog IllegalArgumentException dismiss()
  • mokkouyouの開発日記 Marketでの公開停止

    Marketでの公開停止をするには公開停止ボタンを押すだけですが、 どうやら、直接リンクしたりすると、詳細画面に飛んで、なおかつ購入する事もできるようです。 私のNumNum for kids有料版は出したものの、全然売れなかったので、 メンテも面倒だし、公開を停止していましたが、突然購入されて焦りました。 というわけで、都合により公開を停止した場合には、 紹介文自体も修正しましょうという自戒です。 その際に、保存ではなく、公開なんてボタンをおして焦るお約束はしない方が無難ですよ。

    kkeisuke
    kkeisuke 2010/09/22
    公開停止ボタンを押しても直接リンクしたりすると、詳細画面に飛んで、なおかつ購入する事もできる
  • mokkouyouの開発日記 ステータスバーの高さを取得する

    独自Viewを実装する場合、canvasが返す高さがstatusバーを考慮してくれない場合があります。 ※AndroidManifest.xmlでNoStatusBarみたいなの設定した場合かな?? なんにせよ、そんな場合には ステータスバーの高さがほしくなります。 こんな感じにするととれたりします Window window= activity.getWindow(); window.getDecorView().getWindowVisibleDisplayFrame(rect); int statusBarHeight= rect.top; 他にもWindowクラスにはこれといった定数があったりしますので見てみるといいかも。 http://developer.android.com/reference/android/view/Window.html まぁ、Viewで取得するならWi

    kkeisuke
    kkeisuke 2010/09/20
    Android
  • mokkouyouの開発日記 フォーカス制御

    android:focusable="true"と android:focusableInTouchMode="true" だけど、面倒な場合両方とも設定してしまうが、名前の通り、当然異なる動作をするわけで、 そりゃぁ名前をみれば一目瞭然なんだけど、 DPADなどによってフォーカスを制御したい場合はandroid:focusableだけでよく、 android:focusableInTouchModeを設定してしまうと、タップした際に、1タップでフォーカス。 再度タップして確定みたいな動作になってしまうので注意。 普通と言えば普通ですが、メモ。

    kkeisuke
    kkeisuke 2010/08/30
    再度タップして確定みたいな動作になってしまうので注意。
  • mokkouyouの開発日記 RにあるリソースIDを変数名から取得したい

    MLにも回答したのでついでに Rにあるidの値を保存しておいて復元とか なにかとRにある値にはお世話になりたいことがあるかと思いますが、 残念ながら、値はコンパイルで変更になることがあるので困り者です。 というわけで、変数名から実際のint値を知る方法 (文字列から、リソースIDを取得) 以下のように変数名とカテゴリ?を指定してやると取得する事が出来ます。 例えばそのidを利用してBitmapを生成とか。 Bitmap iconBitmap = BitmapFactory.decodeResource(getResources(), iconId );

    kkeisuke
    kkeisuke 2010/08/28
    Android Resources getIdentifier
  • mokkouyouの開発日記 Activityもいいけど、Applicationも

    時々、複数画面にわたる値や、共通のリソースのキャッシュなどを考える時があります。 そんなときには、Activity間をIntentでたらいまわしや、 Activityにstatic変数(静的変数)として保持するのも悪くは無いですが、 Applicationを利用する事も考えてみてください。 「いつまでも、あると思うなActivity」 そもそも、Applicationの存在がマイナーです。 AndroidManifest.xmlにはタグを定義していると思いますが、 かといって継承したクラスを作るようなサンプルをあまりみかけなかったり、 デヴェロッパーサイトにもほとんど記載がありません。 というわけで、以下APIドキュメント http://developer.android.com/intl/ja/reference/android/app/Application.html 利用法はいたって

    kkeisuke
    kkeisuke 2010/08/09
    複数画面にわたる値や、共通のリソースのキャッシュなどを考える時。android.app.Applicationを継承したクラスを作成して、applicationタグ内にname=""と定義すれば利用は可能
  • mokkouyouの開発日記 GalleryからIntentを受け取る

    メモ書きです intent-filter <intent-filter> <action android:name="android.intent.action.SEND" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="image/png"/> <data android:mimeType="image/jpg" /> <data android:mimeType="image/jpeg" /> </intent-filter> content uriを受け取る Uri uri = intent.getParcelableExtra(Intent.EXTRA_STREAM); 各種情報 http://developer.android.com/reference/

    kkeisuke
    kkeisuke 2010/08/08
    intent-filter
  • 1