ひらい ぶらり Hi-Library

ぷろぐらみんぐについて。ときどきどうでもいいことについて。

GooglePlay で アプリを別のアカウントに移管する

「アプリを移譲することになった」 「やっぱり別のアカウントでアプリを管理したい」 ってのは割とよくある話だと思います。 こちらからどうぞ(英語必須) https://support.google.com/googleplay/android-developer/contact/dev_registration?extra.IssueT…

androidアプリ開発におけるカメラ問題に決着をつけようじゃないか 解決編

条件振り分けで取得方法を変える getContentResolver().insert()を使わない。MediaScannerConnection等を使って標準ギャラリーには反映させる。 そんな訳で、上記の具体的な解決方法を書く。 まず、getContentResolver()を使わないので、別の方法でカメラの…

androidアプリ開発におけるカメラ問題に決着をつけようじゃないか 問題編

そろそろ決着をつけようじゃないか。 鬼門鬼門ってもういい加減いいだろ。androidが発表されてから何年経ってると思ってるんだ。 情報で揃ってるだろJKwwwwwwww そんな風に思ってた時期が僕にもありました。 androidにおけるカメラから画像を取得す…

Android Studio:resource entry is already defined.

ビルド時にこんなエラーが出た。 9patchにしなければいけない画像が9patchになっていなかったので、以下の様な作業をしたら発生。 プロジェクトをリビルドしてもダメだった。リビルドってクリーン&ビルドじゃないのだろうか? hogehoge.png をリネームして …

ListViewの中にViewPagerを入れる場合の注意

今回ListViewのheaderに、横にスワイプしたりフリックしたりすることで画像が切り替わる様なビューを入れることになったのですが、困ったことになりました。 ここまで読んでピンと来て解決策だけ知りたい方はすっ飛ばして下の方を読んでくだい。 で、どんな…

すげえ!Android Studioで9patchの編集ができる!

プロジェクトツリーから*.9.pngファイルを参照すると、こんなエディタが開いた。 そもそもは9patchは画像をデザイナーさんに作ってもらったところ、左側に黒いピクセルがなくてビルドに失敗して「ちくしょう雑な仕事しやがって、週明けにけちょんけちょんに…

Android Studio にIdeaVimプラグインをいれる

参考 http://ytch.hatenablog.com/entry/2013/05/18/195707 リポジトリが見つからなかったので、リンク先と同じようにzipを落としてきてインストール。 ただしなんだかVim.xmlが見つからないというエラーが出ている(出ているけど動く) エラー出っぱなしな…

FragmentTabHost で TabWidget をBottom に配置する

非推奨になったTabHostを使えば、普通にbottomに配置出来たのですが、FragmentTabHostは何やらバグっているらしく、配置順やgravityを変更してもbottomに配置されませんでした。 どうやら既にIsuueとして報告されているようで、参照先のコメントにあるの様に…

Android4.1系 + FragmentTabHost + WebView で文字入力が出来ない

endBatchEdit on inactive InputConnection とか出て半角英数字を入力しようとすると、フォーカスが次元の彼方まで吹っ飛ぶ。 日本語入力は通る。 ( ゚д゚) 強引にInputConnectionをWebViewに渡して見ましたがダメでした。 どこかで半角英数字が入るとFocusが…

FragmentTabHost内部のFragmentでAsyncTaskLoaderを使ってたらargsが変わらない

結論:タイトルが長い 結論:onStopでgetLoaderManager().destoryLoader(id)してあげる こんにちはこんにちは 世間では何かとAsyncTaskじゃなくてAsyncTaskLoader使おうぜっていう風潮ですね。 僕もブームに乗ってAsyncTaskからAsyncTaskLoaderに乗り換えて…

width and height must be > 0 だからといって、widthやheightが実際0なわけじゃないこともある

java.lang.IllegalArgumentException: width and height must be > 0 Matrix matrix = new Matrix(); matrix.postScale(sx, sy); Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), matrix, true); 良い子の諸君! エラー文にwidthとかheigh…

android2.x系だと、AnimationSetのメソッドの呼び出し順によってはアニメーションが無視される

無視という表現が正しいかわからないけれども、何も起きなくなる。ただしAnimationListernerはAnimationEndを検知する。どういう時に起きるのかというと AnimationSet animationSet = new AnimationSet(true); RotateAnimation rotationAnimation = new Rota…

AnimationListernerのonAnimationEndでViewをremoveViewするとNullPointerExceptionが起きる

タイトル通りなので、onAnimationEndの中でそのままremoveViewしてはいけない。 結論だけ言うと、Handlerを使って処理を遅延させて回避する。 @Override public void onAnimationEnd(Animation animation) { new Handler().post(new Runnable() { @Override …

androidでファイル名を指定して保存するときに使えない文字列

Linuxベースだから"/"以外は使えると思ったら、普通にwindowsで使えない奴は使えない ↓らへん <>:*?"/\|そのはずが、GalaxyS3だと普通に"?"が入ってても動いた。別のandroid4.0系では動かなかったので、別にバージョンの差では無さそう。まさかの端末固有の…

androidのIntentで日本語ファイル名を扱う時の注意点

Uri型で渡すので、SDカードとかに保存されたファイル名を渡すときは以下のような感じでエスケープしないとダメ。 public void playMusic() { Intent it = new Intent(Intent.ACTION_VIEW); Uri uri = Uri.parse("file://" + Environment.getExternalStorageD…

resumeTimers pauseTimers を使う時の注意

WebViewを使うと電池の消耗が激しい時の解決方法 を書いた後に気づいたので書きます。 電池の勝手な消費が解決したわけですが、よくわからないままに終わらせるのはよくないなーと思ったのでリファレンスを覗いてみたらこんなことが書かれてました。 pauseTi…

WebViewを使うと電池の消耗が激しい時の解決方法

androidアプリを開発していて、特に変更した覚えがないのにレビューに「電池の消費が激しい、アンインストールした」 とか書かれてたので 「今回のアップデートではWebViewの初期URLを変更しただけでそんなことがあるわけ」 あったで、実際変更は上記の通り…

正確には、android4.0で、且つ解像度が1280を超える場合らしい。

その場合はタブレット端末と認識されて、勝手に余白ができてしまうようだ。で、GlaxyS3での見栄えが良くないので、android4.0以前のものと同じにしてくれと言われた。 タブレットで見にくくなるのは良いのだろうか・・・ともかくそういうことなので、どうに…

Android→PHP Base64encodeの値を渡す

諸事情でandroidからintentを使って標準ブラウザを起動して、GETパラメタにBase64でエンコードした値を サーバ側(PHP)で受け取って、Base64でデコードしなきゃいけなかったのですが、出来なかったのでメモ。結論から言うと PHP側の問題 GETなりPOSTなりでB…

CodeIgniter2.0.3 以降でSmarty3.0を使う

CodeIgniter2.0.3以降からは、system/core/Loader.phpのCI_Loaderクラスで「_ci_cached_vars」がprotectedになってしまったので、僕が以前書いた記事のライブラリでは以下のようなエラーが出てしまう Cannot access protected property MY_Loader::$_ci_cach…

hatena world?

hatena world!

CodeIgniter2.0 でSmarty3.0を使う

CodeIgniter2.0ではSmarty3系は使えない、みたいな記事を書いたんですが、使えました。すいません。 CodeIgniter2.0 でSmarty2.6を使う - ひらい ぶらり Hi-Library正確には、「CodeIgniterでSmarty2と同じ仕組みでSmarty3は使えない」です。当たり前ですね…

CodeIgniter2.0 でSmarty2.6を使う

追記(2011-04-28): 2011-04-28 - ひらい ぶらり Hi-LibraryCodeIgniter2 を試す (Smarty 編) : あかぎメモ を参考にCodeIgniter2.0でSmarty2.6を使おうとしたらちょいちょいエラーが出たのでメモ。1つめ PHP Warning: Call-time pass-by-reference has bee…

CodeIgniter2.0でDA Authを使う

表題の様な事をしたかったんですが、DA AuthはCodeIgniter2.0には対応していない。 2.0で使うには以下を変更する必要がある。コントローラーでは Controller => CI_Controller parent::Controller(); => parent::__construct(); モデルも同様に Model => CI_…

file_get_contents の代わりに http_getを使う

peclでインストールできるpecl_httpってのがある。 インストール方法は http://blog.cheki.net/archives/1307 この当たりを参照していただくとして 利点 timeoutとか色々設定できる 使い方 $body = http_parse_message(http_get($url))->body; 簡単。http_ge…

preference でintentを飛ばしたい

preferenceは何もxmlだけで書かなくても、intentで飛ばすことができるらしい。 僕は設定画面からOuth認証させたかったので、通常のxmlだけでは定義できないので普通のActivityに飛ばしたい。で、注意したいのがintentを使用するときにtargetClassはパッケー…

PHPでmemcacheのkeyに制御文字(コントロールコード)を使う場合の注意

PHPでmemcache関数でセットして、取り出すときはtelnet接続するという奇特なことをしている時にはまったのでメモ。 こんなことする人他に居るんだろうか・・・現象 としてセット。^Aは制御文字。 で接続。 で取得しようとすると「hoge^A6」とい…

log4phpでConversionPatternにタブを入れたい

結論:そのままタブをぶち込めばいいΩ ΩΩ逆に言えば"\t"とか"&#x9;"とか入れても駄目です。何も迷わずにTABキーを押してください。 vimの設定でタブを全部空白にしていたので変に時間食ってしまいました。 不貞寝したい。

携帯ゲートウェイのIPアドレス帯域の変更を監視する

タイトルのようなことがしたくて色々調べていると、Perlのモジュールに Net::CIDR::MobileJP ってのがあって、この中に各キャリアのIPアドレス帯域がのってるHPをスクレイピングするスクリプトが含まれている・・・ってことがこちらhttp://dsas.blog.klab.or…

MessagePackをPHPで使おうとしたら「undefined symbol: RETURN_NUL」ってでた

はい、お疲れ様です。 僕こと鬼チャラいプログラマーしんばしは困ったらすぐにGoogle先生に聞いてしまうのですが、マスターから「ルーク、ソースを使うのじゃ!」と言われてソースを眺めてみました。無事MessagePackをmake installし、めでたしめでたし。さ…