サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
夏の料理
shitappaprogramer.seesaa.net
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 Android2.2からアプリをSDCardなどの外部ストレージに保存できるようになっているのだが、ディフォルトでこの設定はオフになっている。 まぁアプリの違法コピーとかを防ぐためにオフってるのかもしれないが。 とりあえずストレージを確保する為には余分なアプリは全部大容量外部ストレージに保存しておきたいので、Android2.3でもコピーをオンにする事が出来るか検証してみる。 残念ながらNexus SはSDCardを挿入できない。 代わりに"USB Storage"という外部ストレージを保持している。 入力するコマンドは: adb shell pm setInstallLocation 2 アプリをUSB Storageに移動させるには、設定→アプリケーション→アプリケーションの
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 Androidアプリでちとセンサーを使うことになって色々調べてるんだが、チト面倒な事になってるっぽい。 2.1以前はSensor.TYPE_ORIENTATIONという種類のフラグがあって比較的簡単に傾きセンサーを使用できたのだが、2.2から非推奨になってしまっている。 でどうするか。 答えは TYPE_ACCELEROMETER と TYPE_MAGNETIC_FIELD のセンサーで得た値から計算して出す。 ソースは色々乗ってて、 http://www.binzume.net/diary/2010-07 とか http://techbooster.jpn.org/andriod/ui/443/ にやり方が書いてある。 ただ、センサー系で一番めんどくさいのが、センサーが果たして
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 先日Android4.0でwebviewのloadUrlを使用する際、query string(URLパラメータの事)があると404エラーが返ってくるという糞仕様になってる話をしたが、とりあえず暫定的に解決する方法を見つけた。 一つはここに書いている方法。 ようはWebClientクラスを作成する際にonReceivedErrorメソッドで吸収すると言う方法。 MVCを意識してプログラムかかないとHTMLの方にも修正がかかる。 もひとつはパラメータを保存しておくpublicなHashMapが必要。 もう一つはここに書いている方法。 HTML5 Web Storageを使用する。 ただしこの場合だとHTMLがキャッシュされてた場合reloadがかかる為注意が必要。 自分の場合前者を
Androidで画像処理をしているとよく起こるのがOut Of Memory。 それを少しでも軽減するためにチョット調べてみた。 画像を扱う場合は、onDestroyの所で imageview.getDrawable().setCallback(null); としたり、 ActivityをContextとして長期間(Activityのライフサイクルを超えて)保持してはいけない。長期間保持するようなときにはApplicationをContextに使う。 など。 がー!作り直し~!><; 参考URL 1 参考URL 2
EclipseでそのままコードをJavaDocコンパイルしようとすると、「Javadoc この文字は、エンコーディング MS932 にマップできません」と出てくる。 ギャー!w そん位勝手に変換してくれといいたい。うん。 解決方法は簡単なんで取り合え椅子メモ。 「ファイル」→「エクスポート」→「Java」→「JavaDoc」でたどっていくと最終的に「JavaDocの引数を構成する」ダイアログになるので、 「追加のJavadocオプション」 で -noqualifier all -encoding UTF-8 -docencoding Windows-31J を足してやればいい。 これで他に問題が無ければ無事エクスポートできるはず。
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 OpenGLを起動して暫くするとGCが走り、約4万件のオブジェクトを100msec程かけてGCする…orz しかも定期的(数秒に一回)に起る…(;_;) どーも自分の作成したコード以外の問題っぽい… …と言うわけでチトGCに対して調査してみた。 AndroidのGCはMark-Sweep方式らしい。 GCの呼び出し方は下記の通り。どっちも同じ…?かどうかは調べてないので分からない。 1.System.gc(); 2.Runtime r = Runtime.getRuntime(); r.gc(); Mark-Sweepのロジック: 0: 全スレッドを止める 1: 絶対消してはいけないオブジェクトをMarkしてそのオブジェクトをスタックにPush 2: スタックからオブジェクトをP
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 またiPhone...orz 今度は Code Sign error: The identity 'iPhone Developer' doesn't match any valid certificate/private key pair in the default keychain などとふざけたエラーが起こってビルド→実行できない。 色々ググってみると、『キーチェーンアクセス』というアプリケーションが勝手に状態変更してしまって起こるエラーらしい。 これの左側にある『ログイン』を右クリックして『ディフォルト』にしたらなおるらしいんでやってみたが治らない。 Apple死ね、マヂで! ここによるとどうも『Xcodeをインストールした時のものをディフォルト』にしないといけないらし
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 iPhoneにscrollTopは無い。 代わりに、pageYOffsetがある。 一番下まで来た場合に何か処理をさせたい場合、scrollTopが無いiPhoneはpageYOffsetを使用するしかない。 ただ、pageYOffsetだけでは不十分。 pageYOffsetは現在の画面の一番上の縦位置が全体のどの位置までスクロールしたかがわかるだけ。一番下に来たかどうかかわからない。 なので、 window.innerHeight を足してやる事で画面下の位置が取得できる。 //画面下の位置取得 var bottomPos = window.pageYOffset + window.innerHeight; //スクロールできる縦の長さ取得 var max = documen
Interface Builderを使用していろいろいじくってたら"nib but the view outlet was not set."なるエラーが出た。 色々ググってみるとViewがFile's Ownerにコネクトされていないことが原因らしい。 Connections Inspectorで"view"にベースになるViewをコネクトしてやったらうまく言った。 参考リンク
Canvas無しで画面の解像度を取得方法を記載する。 Canvas意外の場所でも意外と画面サイズを取得する場合って結構あるのではないだろうか? 簡単なんだがググると中々出てこない。(泣 Display disp = ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)). getDefaultDisplay(); maxScrnWidth = disp.getWidth(); maxScrnHeight = disp.getHeight(); 以上!
下っ端プログラマーのもがきをつらつらと。 生活や、仕事のおぼえがきや、気になったニュースなどを書いていきます。 Androidではリソース…画像やらXMLやらmp3やら…を『R』ってクラスでIDを振って管理している。 Bitmapとか作成するとき、いちいちIOクラス使わないでいいんで非常に便利なのだが、一つ欲を言うと、外部ファイル…XMLからそれを使いたい…と思った人は多いのではないだろうか? 一応Rクラス内部で定義されている16進数のIDは外部ファイルからの読み込みも可能なのだが、画像なんかを追加すると割り振られているIDが更新されてしまう。 やはりココはXMLで変数名を指定して振られているIDを取得したい… で、作ったのが下のクラス。 ResourceMiner.java シングルトンパターンで作ってるのでエコ。w 使い方は簡単。 例)ResourceMiner.getInstance
とりあえずハマったとこ。 マーケットに必要な情報は全て登録されているのは前提。 マーケット情報自体は足りん所教えてくれるので問題ないと思う。 ハマったとこその1。 【購入しようとしたアイテムが見つかりませんでした。】 Eclipseにて、Export Signed Applicationでapkを出力してadb installとかでインストールした場合に起こった。 昔はこのやり方でも問題なかったようなのだが、IAB ver.3の最近の仕様ではこれが出来なくなってるっぽい。 とりあえずやる事は以下の通り。 1. google groupでテストユーザー用のメーリングリストを作成。 2. android consoleでテストユーザーのメールを登録。(上記メーリングリストに登録する各メール) 3. android consoleでAPKをベータ版として登録。 4. ベータ版を公開。 5. an
このページを最初にブックマークしてみませんか?
『とある下っ端プログラマーのおぼえがき』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く