サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
衆院選
unagi-brandnew.hatenadiary.org
それなりの記述(Environment.getExternalStorageDirectory)でマルチにいけると思ったのだが、国内機種を中心にいろいろある。 SDカードパスまとめ - hidecheckの日記 環境変数に持ってるらしい。 System.getenv("EXTERNAL_STORAGE_ALL")で取得結果です。 /mnt/sdcard:/mnt/usbdisk:/mnt/ext_cardSystem.getenv("EXTERNAL_ALT_STORAGE"); ・EXTERNAL_STORAGE ・SECOND_VOLUME_STORAGE ・THIRD_VOLUME_STORAGE ・EXTERNAL_ALT_STORAGE環境変数についてはSO-03DにはEXTERNAL_STORAGE_ALLというのがあ り、 /mnt/sdcard:/mnt/usbdisk:/
基本ですが。 明示的 Intentチュートリアル intentを受け取る側はActivityクラスのgetIntentメソッドを使用すれば良い。 また、intentに付加情報が設定されている場合はget〜Extraメソッドを使えば 取り出すことができる。 // キーを使ってパラメータを取得 final String var = intent.getStringExtra("com.suddenAngerSystem.displayString"); text.setText(var); Intentを使って画面を遷移する(明示的Intent) « Tech Booster Intentはthis.getIntent()メソッドで受け取ります。 ただし、IntentによらないでsubActivityが起動した場合、 nullとなります。受け取り処理はnullチェックを入れるなど、 値に注意し
ブラウザやホームランチャーアプリには、「デフォルトでの起動」なるものがある。 各暗黙的インテントの条件が同じものがあれば、それらをまとめるて、その中から「デフォルト」な受け取り元を設定して記憶しておくことができる。 最近、ブラウザ内リンクからの公式Twitterや非公式Facebook対応アプリの起動をよく見かけるが、それぞれ対応しているアプリと並んでブラウザがそれぞれ暗黙的インテントから該当選択肢として表示されるが、ブラウザアプリ設定画面からのデフォルトの設定は、通常起動のブラウザ向け暗黙的インテントの「デフォルト設定」のみ。 渡してるデータ ブラウザからそれぞれのリンクを叩く。 I/ActivityManager( 195): START {act=android.intent.action.VIEW cat=[android.intent.category.BROWSABLE] da
自動ログインを完全におこなう。 ご利用可能な機器・設定方法:かんたんログイン機能、自動ログイン機能 | サービス・機能 | NTTドコモ IEEE802.1x /data/misc/wifi/wpa_supplicant.conf 日本語よりわかりやすい。 symlink で実体は、/system/etc/wifi/wpa_supplicant.conf Androidデフォルト ctrl_interface=eth0 update_config=1 network={ ssid="docomo" scan_ssid=1 key_mgmt=WPA-EAP IEEE8021X eap=TTLS identity="hoge-mopera@docomo" password="hoge" phase2="auth=PAP" } TTLS→PAP ctrl_interface=eth0 updat
アプリを単体で売るよりか,「親アプリ無料」の「子アイテム有料」な大手ゲームプラットフォーム的なのが流行るのか。などと思いながらもまあとりあえず,コピペですぐつくれるようにしておく。 記事を集める なんせ「いまさら」感もあるので,人気記事をググって眺めてみる。 Androidアプリにアプリ内課金を実装してみよう (1/4) - @IT Androidアプリ内課金の管理・テスト・セキュリティの8つのポイント (1/3) - @IT 2. アプリ内課金 - ソフトウェア技術ドキュメントを勝手に翻訳 Androidでアプリ内課金を始めるための基礎知識 (1/3) - @IT いろいろ説明してるが,概要としては,この絵でいい。 サンプルを動かす なんでもサンプルから動かしてとりあえずモチベーションを高める。 2.3 アプリ内課金の実装 - ソフトウェア技術ドキュメントを勝手に翻訳 Implement
なんかよく分かった感がない。なんとなくやってるような気がする。 とりあえず人気関連記事を。 AsyncTaskでバックグラウンド処理を行う - Android Wiki* AsyncTaskでユーザビリティを向上させる | Android Techfirm Lab Developer Blog 〜開発メモ書き系〜:AndroidでAsyncTaskを使ったバックグラウンド処理 いろんな場合があるので,なかなか定型化しづらいように思うので,オフィシャルなリファレンス。 AsyncTask | Android Developers じっくり和訳しながら読んでみる。 使い方 AsyncTaskを使用することをサブクラス化する必要があります。サブクラスでは、少なくとも1つのメソッド(doInBackground(Params...),onPostExecute(Result)とか)をオーバーライド
開発者に向けて公開されているEvernoteAPI情報はいろいろある。 Evernote API Overview Emacs Evernote mode - Ruby Mobile Integration Overview Evernote Affiliate Program Evernote Site Memory Everboard - PHP Note Export Format Android向け Evernote for Android Developing On Android メモの操作やアクセス方法はいくつかある。 Evernote HTTP API Thrift API Reference Evernote Synchronization via EDAM インテントでEvernote Androidらしくインテントで公式アプリに渡していく方法もある。 サンプルコードの
AdMobいれてみようとしたが,機能更新中のドキュメント更新中の模様。 WEBでみかける情報もいまでは古いのでその雰囲気。 XMLでセットする Google AdMob Ads Android Banner XML ここをみながら設定する。IDとかサイズ指定などの記述は一切不要だったりする。 表示されたバナーに "Adview missing required XML attribute "adsize" サイズ指定はなかったはずなのだが。どこかに記入するのか。 調べてみると,ドキュメントが更新されていないらしい。 problem with 4.1.0 - "Adview missing required XML attribute "adsize" We haven't had a chance to update all of our documentation fully yet.
以下2つの記事の合わせ技です。 AndroidMarketのリンクURLを考えてみる インストールしているアプリのAppBrainのインストールURLリストを吐く AndroidMarketのアプリ画面を連続で複数スタック状に表示させて,連続でインストールやアンインストールやそのアプリの詳細情報を確認したりできます。 複数端末へのアプリコピーなどにも使えると思います。 USBなどで,adb shell を使える状態にしたら, 以下で,Androidにインストールしているアプリの情報をshスクリプトに書き出します。 $ adb shell pm list packages -f | \ grep -v /system | tr -d "\r" | \ awk -F = '{ printf("am start -n com.android.vending/.AssetInfoActivity
注文した。 とりあえず、ぐぐる。 Macbook Air 11'' を Ubuntu 10.10 とデュアルブートにしたまとめ http://d.hatena.ne.jp/Craftworks/20101115/1289846714 Macbook Air 11inchにUbuntu 10.10をインストールした http://d.hatena.ne.jp/chobi_e/20101030/1288406730 デュアルブートにする。 パーテーションやブートローダの話がある。とりあえず本家の記事でやろうと思う。 MactelSupportTeamAppleIntelInstallation Dual-Boot: Mac OSX and Ubuntu https://help.ubuntu.com/community/MactelSupportTeam/AppleIntelInstallat
「サーバープッシュ」とか「クライアントプル」とかいう言葉のように,基本的にはスマートフォンではすべて擬似プッシュなもので「ステータスをもつサーバに一定の時間間隔で問い合わせる」というものだけかと思っていたのだがそうでもない。 プッシュ型サービス覚え書 自分の言葉でわかりやすく書いてる。 IPポート待ち受け ポーリング(フェッチ) コネクション張りっぱなし SMSトリガー接続 現在は,2の形式がjson形式などを利用してAndroidアプリでの実装が一番多いのではないかと思う。 2,3で基本的実装がどうなってるのか整理してみる。 ポーリング(フェッチ) 各種プロトコルを使って定期的に問い合わせする方式で,POP,IMAPなどのメール系,HTTPをつかったりの擬似的プッシュ。 コネクション張りっぱなし 本家プッシュ。C2DMが例として挙げられていた。「KeepAlive」という言葉が大事なキー
SDKのサンプルに入ってるし、サイトにもある。 http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.html ドキュメントサイトに書いてある位置にはないけど、実際はサンプル群の中にはいってる。 android-sdk-linux_86/samples/android-8/ApiDemos/src/com/example/android/apis/app/DeviceAdminSample.java 全部まとめて、Apidemos を。 http://developer.android.com/intl/ja/resources/samples/get.html $ android list target id: 8 or "Goo
FroyoでSDカードにアプリがインストールできるということなのだが、 Androidのアプリのインストール先を指定できるらしい。 $ adb shell pm setInstallLocation 2 The setInstallLocation command changes the default install location 0 [auto]: Let system decide the best location 1 [internal]: Install on internal device storage 2 [external]: Install on external media この「pm」というコマンド、 PackageManager の略だと思うのだが、こんなかんじ。 usage: pm [list|path|install|uninstall] pm list
apkがSDカードにあるとして、 <activity android:name=".PackageInstallerActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="content" /> <data android:scheme="file" /> <data android:mimeType="application/vnd.android.package-archive" /> </intent-filter> </activity> <activity android:name=".UninstallerActi
こんなコードが基本。 PackageManager pm = context.getPackageManager(); ApplicationInfo appInfo = pm.getApplicationInfo("app.package.name", 0); String appFile = appInfo.sourceDir; long installed = File(appFile).lastModified(); 以前、こういうのはやってみたが、なんかメンドクサイ。 単純に「インストールしているアプリケーションの一覧」が欲しいだけなのだが。 アプリケーションリストを取得する から。 // パッケージマネージャを利用 PackageManager pm = getPackageManager(); // インテントで取得するアクティビティ種類を指定 Intent intent =
おもしろそうなので、まずはドキュメントをみる。 Google Projects for Android: C2DM 処理の流れは、 Androidアプリを起動して受信登録する。 外部アプリ上でAndroidにメッセージを送信しようとボタンなどを押す。 AndroidアプリがC2DMサーバからメッセージを受信する。 だと書いてる。 C2DMサーバを経由するようだ。 Enabling C2DM. An Android application running on a mobile device registers to receive messages. Sending a message. A third-party application server sends messages to the device. Receiving a message. An Android applica
OSアップデートとかしてたら、すべて初期化された。 当然アプリもすべて消えてる。 まあ、他にもやり方はあるのだろうけど、 マーケットリンクをすべて書き出す。 マーケットにパッケージ名でアクセスするURLの形式 http://market.android.com/details?id=com.chnavi.android2ch market://details?id=com.chnavi.android2ch adb shell を利用して、パッケージを書き出す。 $ adb shell pm list packages -f | sort package:/data/app/com.google.android.apps.chrometophone-1.apk=com.google.android.apps.chrometophone package:/data/app/com.googl
どんな連携ができるか (defconst android-mode-keys '(("d" . android-start-ddms) ("e" . android-start-emulator) ("l" . android-logcat) ("c" . android-ant-compile) ("i" . android-ant-install) ("r" . android-ant-reinstall) ("u" . android-ant-uninstall))) Ctrl+c Ctrl+c からそれぞれで、 アンインストールは、うまくできないような。 "android create project" & ACTIVITY_NAME コマンドラインからプロジェクトを作成すると、 ACTIVITY_NAMEがうまく置換されてない。 http://code.google.com/p/
連携できるそうです。 PHOTOSHOP.COM MOBILE APP FOR ANDROID™ テキトーに翻訳してみる アンドロイドケータイ上で画像を編集したいときは、 どんなアプリからでも「Photoshop.com Mobile1.1 エディタ」を利用することができます。 (Photoshop.com アプリをAndroidにインストールしてください。) このエディタは「Intent.ACTION_EDIT」というアクションで操作できます。(MIME-TYPEは「image/*」) 以下が、あなたのアプリのアクティビティから「Photoshop.com Mobileエディタ」を起動する方法です。 // アクティビィティのメソッドの中で Uri imageToEditUri = … // 編集する画像のuri String imageToEditMimeType = … // “ima
インストールしているアプリが多すぎて表示が遅くて困る。 取得コード 参考になりそうなものを集める。 // 起動可能なIntent Intent intent=new Intent(Intent.ACTION_MAIN,null); // デスクトップから可能なIntent(つまり通常のアプリケーション) intent.addCategory(Intent.CATEGORY_LAUNCHER); // 通常のアプリケーションのリストを取得 PackageManager manager=getPackageManager(); List<ResolveInfo6gt; infoes=manager.queryIntentActivities(intent,0); TextView textView = (TextView) findViewById(R.id.textView); for (i
暗黙的インテントがアプリ内部から発行されると、そのアクションに対応できるアクティビティをもつアプリが選択されて、それが一つの場合は起動、複数の場合は選択ダイアログが表示される。 ACTION_*の種類 ACTION_CALL ACTION_VIEW ACTION_SEND ACTION_SET_WALLPAPER ACTION_WEB_SEARCH など多数の種類がある。 http://developer.android.com/intl/ja/reference/android/content/Intent.html メーラを起動させる場合 Intent it = new Intent(); it.setAction(Intent.ACTION_SENDTO); it.setData(Uri.parse("mailto:hoge@hage.com")); it.putExtra(Inte
第4回 簡単なRSSリーダーを作ってみる 第5回 RSSリーダーの要、パース機能を知る 第6回 詳細画面を付けて、簡易RSSリーダーの完成 という記事があって、コードをまとめてみて動かしてみようかと。 XMLの受信、パース、表示の流れはクラウドアプリでは必ず必要だと思うので。 ファイル構成 rssreader |-- AndroidManifest.xml |-- bin |-- build.properties |-- build.xml |-- default.properties |-- libs |-- local.properties |-- res | |-- layout | | |-- main.xml | | `-- item_row.xml | `-- values | `-- strings.xml `-- src `-- com `-- sample `-- rss
コマンドラインで聴くとき簡単に聴けるように書いておこうかと。 チャンネルをまとめる いま公開されているチャンネル TBS QRR LFR NSB INT FMT FMJ ベースとなるコマンドライン プレーヤーはmplayerを使う。 $ ./rtmpdump -vr rtmp://radiko.smartstream.ne.jp/TBS/_defInst_/simul-stream | mplayer - チャンネルを引数で渡す rtmpdumpディレクトリの中に置くのを前提に。 #!/bin/sh RTMPDUMP=./rtmpdump MPLAYER=/usr/bin/mplayer case "$1" in TBS|QRR|LFR|NSB|INT|FMT|FMJ) [ -f "${RTMPDUMP}" ] || exit 1 "${RTMPDUMP}" -vr rtmp://radi
プロトコルはrtmpなので、どうにかサーバ経由で、 Androidで聞けないかなあということであれこれ試してみる。 flvstreamerでファイルに保存 synapticで検索窓にrtmpと入力して検索すると、flvstreamerなるものがヒットする。 RTMP client と書いてあるのでとりあえずいれてコマンドを叩く。 $ flvstreamer FLVStreamer v1.8e (c) 2009 Andrej Stepanchuk, The Flvstreamer Team, license: GPL ERROR: You must specify a hostname (--host) or url (-r "rtmp://host[:port]/playpath") containing a hostname どうやら rtmp://host[:port]/playpat
アクティビティ間の連携は、必ず使うことになるので。 明示的 起動したいアクティビティをパッケージ名とクラス名で直接指定する。 Intent intent = new Intent(helloworld.this,XXXXX.class); intent.setAction(Intent.ACTION_VIEW); startActivity(intent); コマンドラインから $ am start -n パッケージ名/.アクティビティクラス(com.suddenAngerSystem/.BroadCastIntentの様な) 暗黙的 起動したいアクティビティをインテントフィルタの属性とパラメータURIで指定する。 コマンドラインから $ am start -a アクション名(android.intent.action.EDIT等) -d content://xxxxx(file:/xxや
今となっては, PreferenceFragment に変わられ deprecated となっているが簡単に設定画面が作れる. ネットで調べると, 面倒なのが多かった気がしたので貼っておく. settings.xml をレイアウトとして作る. <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="fill_parent" android:layout_width="fill_parent" android:orientation="vertical"> <LinearLayout android:id="@+id/main" android:layout_width="fi
書籍でみかけたりはしてた。 が、頭の中で整理できてない気がするので、すっきりしようと。 1. webkit上にHTMLを表示 WebView webView = new WebView(this); webView.loadData("<h1>まずはHTMLを表示</h1>", "text/html", "utf-8"); setContentView(webView); 2. javascriptも表示 String html = "<script type='text/javascript'>alert('jsですよー');</script>\n" + "<h1>まずはHTMLを表示</h1>"; WebView webView = new WebView(this); // JavaScriptを有効にする webView.getSettings().setJavaScriptEna
このページを最初にブックマークしてみませんか?
『コードを貼り付けながら。』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く