ほげほげ

プログラミング、英会話、ヨガ、料理などの備忘録など。

2014-01-01から1年間の記事一覧

Android ListView

ListViewでヘッダを設定するとOnItemClickListnerに渡されるポジションが1つずれてくる。 ヘッダもitemの一つになっているということだろうか。

AsyncHttpClient を AsyncTask無いから呼び出すと落ちる

タイトルの通り。プッシュ通知をしたくて、レジストレーションIDをAsyncTaskないで取得して、そのままAsyncHttpClientを使ってサーバーに送信しようとしていた。 ExceptionはNullPointerExceptionだった。AsyncHttpClient の呼び出しをメインスレッドで行う…

Android GCM で SERVICE_NOT_AVAILABLE

レジストレーションIDの取得時にSERVICE_NOT_AVAILABLEとなって、レジストレーションIDの色ができなかった。マニフェストのreceiverとserviceのパッケージ名を省略していたのが、原因でした。 OK <receiver android:name="<ちゃんと書く>.GcmBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND" > <intent-filter> </intent-filter></receiver>

Android Studio googleの拡張機能系を追加

GCMなどの拡張機能を追加する。 libsにjarをドロップしなくて良い。 プロジェクト右クリック Open Module Settings Modules -> Dependencies で必要なライブラリを選択する 選択肢に出てこない場合は、SDK Managerを起動しインストールする。 Sync Project w…

Android Studio で jarを追加

Android Studioはまだプレリリースみたいな感じなので、よくバージョンアップされているようです。 jarの追加方法をぐぐってみると結構面倒っぽかったのですが、0.5.2では簡単になっていました。 jarをlibsフォルダにドロップする Sync Project with Gradle …

Android Applicationクラスのサブクラス

二年ぶりくらいにAndroidアプリつくろうと思っています。 ほとんどiPhoneやっていたのですが、iPhoneではAppDelegateが起点となってアプリが動いています。Androidはというと、デフォルトのプロジェクトでは起動時のActivityを作成するものアプリ自体の起点…

EC2 ディスク容量の追加

参考 http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ec2-add-volume-to-instance.html 手順 インスタンスを停止(Stop) スナップショットの作成 作成完了後のスナップショットを選択し、右クリックCreate Volumeを選択 作成したい容量など設定し…

EC2 ファイルディスクリプタの上限を上げる

sudo vim /etc/security/limits.conf #以下追記 * soft nofile 20000 * hard nofile 20000 # 再起動 sudo reboot

【雑メモ】lighttpd max-procs

lighttpd のvhostsのconfの設定で、fastcgiの設定max-procsを1から2に変更してさばけるリクエストの増加を確認。ただ、システム全体のメモリの影響もありそうだから、なんとも言えないけど。 緊急時の対処で使うかも。ちなみにPHP_FCGI_CHILDREN 16から32だ…

php namespaceなしのライブラリを使う

PHPで自分はnamespaceを使っているけど、利用したい外部ライブラリはnamespaceを使っていない場合という状況がある。外部ライブラリで定義されるクラスは基本グローバルに作られるので、\ClassName とバックスラッシュ付きで、使用する必要がある。外部ライ…

mongo ドキュメント内の配列に要素を追加する

ドキュメント内の配列に要素を追加する方法。 $pushを使用する。 ブログ記事のドキュメントを例に簡単に使用方法をメモ。 参考$push — MongoDB Manual 2.6.0 ダミーデータの準備 db.articles.insert({'author':'hoge','body':'bodybodybody', 'comments':['c…

mongo ドキュメント内の配列の件数を指定して取得

ドキュメント内の配列の件数が多い場合など、ページングのようにいくつかの件数毎に取得したかったので、調査しました。テストデータのインサート(ブログ記事を例に、1記事のドキュメント内に、コメントの配列が複数ある設定) db.articles.insert({'author':…

MongoPHP を1.5.1にバージョンアップしてハマった

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mongo.so' - /usr/lib64/php/modules/mongo.so: undefined symbol: php_json_encode in Unknown on line 0EC2上のAmazon Linux,PHP 5.3.2,lighttpd 1.4.35, ものとmongop…

MongoCollectionのinsertの成功判定

http://www.php.net/manual/ja/mongocollection.insert.phpMongoCollectionのinsertの成功判定って、どう判定するのがベストなのかな。オプションはデフォルトを使用しているのでw=1です。ok==1で判定でいいのかな、errmsgとの整合性はそれでよさそうだけど…

UITabBarのボタンを大きな画像で表示する

一般的にはtabはアイコン的な画像(30x30)とタイトルのテキストで作成することが多いです。 カスタマイズの手法など探してみても、背景や文字色、アイコン色のカスタマイズの方法が上位に出てきます。今回は以下のようにtabのボタン全体を画像で表現したかっ…

アプリリリース情報

iPhoneアプリ「俺の心スライドでロック解除してみろよメーカー」をリリースしました。 twitterで話題なったロック解除画面を簡単に作成するアプリです。俺の心スライドでロック解除してみろよメーカーsekitakaエンターテインメント無料

Google map for iOS でカメラの移動でハマった

現象 2点を含む、矩形を出来るだけ大きな倍率で表示したかったので、以下のコードをviewDidLoadのマップ作成後に書いた。 しかし、倍率は最小の状態になって、世界地図のような見え方をしてしまった。 // 2点が収まるように拡大してマップを表示 GMSCoordina…

iPhone【ステッカー探索】をリリースしました

忘れ物にさようなら!!StickNFind社製のbluetoothデバイスが近距離にあるか、調べるアプリです。 簡単に使えて、わかりやすいことを目指してアプリを開発しました。ステッカー探索 〜Stick-N-Findのステッカー発見ツールを使って、忘れ物を防止しよう〜seki…

S3でコンテンツタイプを変更する

ファイルのプロパティにMetadataという項目があり、レスポンスヘッダを編集できるので、 指定したいコンテンツタイプを入力すれば良い。 選択肢になくても、直接編集できる。

xcode template からのグループとフォルダ

Xcodeのプロジェクトテンプレートで空のグループをディレクトリと同期をとって作成しておく方法。Definitionsに以下のように記述すれば、よい。dummyは空のフォルダ。 TargetIndicesが空なのは、バンドルリソースとして認識させないため。 <key>SDK</key> <dict> <key>Path</key> <string>dummy</string> <key>T</key></dict>…

iPhoneアプリ【ご近所再発見】リリース

ご近所再発見というアプリをリリースしました。現在地の周りの色々な施設を見つけることができるアプリです。ご近所再発見sekitakaLifestyleFree

AWSドメイン取得からRoute53設定まで。

任意のインスタンスに指定したドメインでアクセスするまで。 インスタンスを新規作成 Elastic IPを取得し、インスタンスに割り当てる お名前.comなどで、ドメインを取得する(AWSではドメイン取得はやっていない) お名前.comのDNS設定で、Route53のDelegation…

mongodb インクリメント

mongodbでインクリメントする。 db.hoge.update({"cond":"condition"},{"$inc":{"target":1}}) ; targetがインクリメントする要素名。 ただし、targetの値はintである必要がある。 stringに対して、$incを適用した場合は、以下のエラーが出力された。 Cannot…

mongo shell で全レコードに操作

// カーソルに対して、forEachで全件ループできる db.hoge.find().forEach( function (rec) { // printjson(rec) ; // 確認のため表示 // 何かする // 今回の例は、valという要素をintに変換する rec.val = parseInt(rec.val) ; db.hoge.save(rec); });

プッシュ配信の証明書の書き出しでハマった

分類で「証明書」を選択していないと、左側の小さい三角が出てこないので、 p12ファイルの書き出しまで、進めなかった。

「本屋さんの平積み」リリース

iPhoneアプリ「本屋さんの平積み」をリリースしました。書店の平積みを参考に、話題の本や旬の本を紹介していくアプリです。 隔週をめどに情報を更新していきます。本屋さんの平積み 〜色々な本に出会ってみよう〜sekitakaブック無料

SmartNews風のスクロールするメニューUI

SmartNewsのタブのようなスクロールするメニューのUIを作成したので、デモプロジェクトを公開します。https://github.com/sekitaka/ScrollMenuBarDemo

CGContextAddArcToPointの使い方

CGContextAddArcToPointを使うことによって、厳密な角度の計算をしなくても、 直線と直線の交わりをスムーズに円弧で描画することができる。 文章での説明が難しいからコードとイメージ図を載せてメモ。 結果 図のように、上の左右を角丸にしたタブもどきの…

UIViewのサブクラスのdrawRectをオーバーライドしたら、真っ黒

描画はできるものの、矩形内は基本黒で塗りつぶされてしまっていた。 基本を透過するには、init~で、backgroundColorをセットする必要があった。 -(id)initWithString:(NSString *)string color:(UIColor *)color frame:(CGRect)frame{ self = [super initWi…

Pythonコマンドラインで、時間のかかる処理をローディング中に見せる

コマンドラインで、時間のかかる処理を行うと、標準出力の見た目上、処理が停止しているのかわからない。 ドットを1秒おきに表示して、フリーズしてないことをアピールするコード。 import sys,time,threading #時間のかかる同期処理 def longFunction(): t…