画面回転時、navigationItem の 画像サイズを調整する

縦画面時は44px、横画面時は32px の画像を用意する必要があるが、 元からその2種類を登録するメソッドがあった。 - (void)setupNavigationBar { UIBarButtonItem *refreshBtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItem…

Coffeescript で 値を返さない

hoge = ()-> fuga = 1 return

Android で minSdkVersion は 対応しているのにインストール出来ない場合

N-06D のOS は 4.0.4 で minSdkVersion に 14 を指定しているのに、 インストール出来なかった。これは、N-06D のカメラに、オートフォーカスがないことが原因で、 permission に CAMERA を追加すると、自動でオートフォーカス必須に設定されてしまう。 そこ…

天気API

日本だけであればいくつかAPIが存在したが、 海外にも対応する必要があったので、海外のAPIだが、使用されているAndroidアプリの評価が高く、有料の、 wundergroundを使用してみた。http://www.wunderground.com/weather/api/d/docs?d=data/index&MR=1 サポ…

ScrollView の 影を消す

<ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:fillViewport="true" android:paddingTop="10dp" android:overScrollMode="never" > </ScrollView> android:overScrollMode="never" これで消えます。

Android で getMap() が null になる

これでは GoogleMap が null になってしまう。 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); setupMap(); } private void setupMap () { final FragmentMa…

nginx で F5 アタックに耐えるための設定

IPアドレスによって、1秒間に1リクエストに制限する設定。 超えた場合は、503を返します。burst の設定がある場合は、rate を超えても、burst回数までは許容し、rate のペースでレスポンスを返します。 limit_req_zone $binary_remote_addr zone=one:10m rat…

nginx + php-fpm fastcgi で キャッシュする

fastcgi_cache_path /var/cache/nginx/fscgi levels=1:2 keys_zone=fscgi_dayo:10m inactive=10m; server { listen 80; server_name test.com; access_log /var/log/nginx/access_dayo.log ltsv; error_log /var/log/nginx/error_dayo.log warn; root /var/w…

CarrierWave で mp3 保存時に 音の長さを保存する

Mp3Info は、パス指定でなければ利用出来ないので、 current_path によって、一時ファイルを開き直している。 class ItemDataUploader < CarrierWave::Uploader::Base include CarrierWave::MimeTypes storage :fog process :set_content_type process :chec…

AWS micro を使うときにやっておく設定

micro インスタンスは、その他のタイプとは違い、 バースト、低速モードというものがあり、 低速モードがあるのでsmallにしないと使い物にならないという人がいるが、それは嘘で、 CPUを制限し、低速モードにさせなければsmallよりも高速に処理を行うことも…

SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed

Internal Server Error SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed これで直る curl -o cert.pem http://curl.haxx.se/ca/cacert.pem mv cert.pem /usr/local/etc/openssl

ファイル容量が増えない

df -h これで使用ディスク100%になっているが、 実際にファイルを見ても見つからない場合、 du -h -d 1 プロセスがファイルを開いているが、ファイルは削除されている状態の可能性がある。 プロセスが使用中のファイルを調べ、deleted になっていると、その…

さくらインターネット VPS のリモートコンソールが開かない

java が起動しないことが原因。Macなら、 システム環境設定 > Java > セキュリティ > サイトリストの編集Windowsなら、 コントロールパネル > Java > セキュリティ > サイトリストの編集ここに、 https://secure.sakura.ad.jp を追加。 さらにChromeでは開け…

Rails で、データベースと表示される時間を日本時間にそろえる

Rails は、内部の日時をUTCで管理しているため、 DBに保存された時間と、表示される時間が異なります。$ config/application.rb config.active_record.default_timezone = :local config.active_record.time_zone_aware_attributes = false config.time_zone…

ActiveAdmin 検索メニューをカスタマイズ

いらない項目だけ非表示にする remove_filter :user 既存を残し、必要な物を追加する preserve_default_filters! filter :created_at, as: :date_range 条件によって項目を出す。 false の時は、デフォルトで表示される場合も、非表示になる filter :hoge, :…

ActiveAdmin で複合プライマリーキーを使う

composite_primary_keys の gem をインストールするmodel に、主キーを配列で指定、display_name も指定 class Hoge < ActiveRecord::Base self.primary_keys = :user_id, :teacher_id def display_name "#{self.user_id}, #{self.teacher_id}" end end これ…

ActiveAdmin で Undefined method ***s_url for #<Admin::***sController>

before_create do # hoge end この中の処理が原因だった。

appCCloud を使用時、画面遷移でクラッシュする

_adView = [[appCMoveIconView alloc] initWithViewController:self horizontal:appCHorizontalLeft vertical:appCVerticalBottom]; [self.view addSubview:_adView];追加した後、画面から抜けるときに削除しなければならない。 [_adView removeFromSupervie…

ロリポップ チカッパプラン

SetEnv が効かない Options を使うとエラー mysqldump が出来ない alter table 出来ない

fuelphp で session が保存出来なくて困った

なぜかクッキーにセッションキーが書き込まれない事があった。 $ fuel/app/config/session.phpencrypt_cookie を false にすることで対応出来た。本来は true のまま解決する必要があるが、権限がない環境だったため。

3.12: Apps should have all included URLs fully functional when you submit it for review, such as support and privacy policy URLs

3.12: Apps should have all included URLs fully functional when you submit it for review, such as support and privacy policy URLs 3.12We found that your app includes URLs which do not properly navigate to the intended destination, which is …

16進数でUIColor をつくる

#import <UIKit/UIKit.h> @interface UIColor (UIColorEx) +(id)colorWithRGBA: (uint)rgba; +(id)colorWithRGB: (uint)rgb; @end #import "UIColor+RGBA.h" @implementation UIColor (RGBA) +(id)colorWithRGBA: (uint)rgba { const uint r = (rgba & 0xFF000000) >> 24; c</uikit/uikit.h>…

AFNetworking で multipart/form-data を送る

こんな感じで使う HogeData* data = [[HogeData alloc] init]; //data.bin = ... //data.name = ... //data.mimeType = ... params = @{ @"image": data, @"name": @"name" }; Hoge* hoge = [[Hoge alloc] init]; [hoge request:@"" method:@"GET" params:pa…

Twitter アプリケーションの登録に、メール認証が必要になっている

現在新しいアカウントを作り、アプリケーションを作成するには、 携帯電話のメールを認証してからでないと、作成出来ない。

プログラムから動的に mp3 file を返すとき、safari で再生されない

携帯電話などではお馴染みだが、Rangeヘッダーがついている場合は、 206 のステータスで部分的に返す必要がある。safari でだけ再生されなかったが、 返しているデータバイト数が1バイト足りないためだった。 def main # 何かの方法で読み込む bin = load se…

UIImagePickerController は iOS7 で バグっていて動きません

動きませんよ

nginx Cybertrust 証明書更新方法

忘れるのでメモ hoge.key (申請時に作成した、秘密鍵) と hoge.cer (サーティフィケーションファイル) を用意する 中間証明書をダウンロード https://www.cybertrust.ne.jp/ssl/support/download_ca.html A. 携帯電話接続がある場合 [クロスルート(4階層)]…

UIRequiredDeviceCapabilities に bluetooth-le

iOS

デバイスを制限するため、 UIRequiredDeviceCapabilitiesを設定する場合がありますが、 iPhone4S 以上に制限するためだけに、bluetooth-leを設定すると、 審査に通りません。 説明しても無理です。

Google App Engine Java 404 ページ カスタマイズ

404 ページをカスタマイズする場合、 一旦自分のコントローラーでうける必要がある。 web.xml ... <servlet> <servlet-name>Jersey Web Application</servlet-name> <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class> <init-param> <param-name>com.sun.jersey.config.property.packages</param-name> <param-value>com.sam…</param-value></init-param></servlet>

Unity の AndroidManifest.xml や Info.plist は信用できない

Unityはビルド時に、ソースコードやビルド設定から AndroidManifest.xml や Info.plist を書き換え、自動設定するが、 正しく反映されない項目があるので、 自分でビルド前(ビルド後)に設定する必要がある。

Rails4 ActiveAdmin

Rails4 では ActiveRecord で更新可能なフィールドを指定する方法が変わった。 以前までの、 attr_accessible :name, :title これは使わなくなった。今後は、コントローラーでアクセスできるフィールドを指定するようになる。 ActiveAdmin.register User do …

ScriptableObject.CreateInstance でエディターが落ちる

ScriptableObject.CreateInstance で生成するクラスは、インナークラスだとエディターが落ちる

ポリゴンがちらつく

ポリゴンが重なって、ぎざぎざに表示される場合 ニアプレーンの値を大きくする。

VMWare の ディスクサイズを拡張する

Ubuntu12.04で作業した。 vmdk のサイズを増やす VMWare の設定からHDDのサイズを拡張する フォーマットされているサイズを変更する gparted-liveのisoをダウンロードし、イメージディスクをドライブに設定して起動。 GUIで領域を広げる LV の拡張 sudo lvex…

UnityのWindowsアプリでC++を使用する

C++でDLLを作成し、それをUnityでimportすることになる。 Unity側のDLLを使用するクラス Hoge.cs using UnityEngine; using System.Runtime.InteropServices; public class Hoge{ // .dll 拡張子は書かないでよい [DllImport("plugin")] public static exter…

Macで Unity 外部から動画を読み込んで再生

Assetsに追加する場合は、H.264に対応しているが、外部ファイルから直接読み込むと、 isReadyToPlay が true にならない。ffmpeg2theora などで、ogv フォーマットに変換する必要がある $ ffmpeg2theora hoge.mov IEnumerator Start () { // ローカルファイ…

アプリケーションで認証後にS3のコンテンツを返す PHP

Unity Texture 2D の種類と意味 どれを使えば良いか

!!!あとで追記する!!! Unity に画像をインポートすると、必ず変換処理が行われます。 Android、iOS向け、変換Formatの選び方を書きます。選択肢のTexture Format は、ハードウエアがダイレクトに読み込み出来るフォーマットが基本になっています。 非…

utf-8 のファイルにBOMをつける

nkf -w8 --overwirte [file name] 本来 UTF-8 に BOMをつけるのは間違いだが、 Windows では、つけないと動かない場合がある。

Unity で IOS のビルド時、framework を自動設定する

現在ネットでみつかるプログラムは、 xcodeproj 0.3.0 を使っており、 xcodeproj 0.6.0 を使った物が無かったので作った。公式ドキュメントは間違っているし、gemソース中のコメントも間違っているため、 自分で作りたい場合は、ソースを読んで作るしか無い…

RESTful API PUT リクエスト

サーバーへPUTリクエストを送ったときに、 パラメーターがうまく送れないという人がいるため、メモBodyに POSTパラメーターと同じ物を記述し、さらに Content-Typeに application/x-www-form-urlencoded を指定する必要がある。

Cloudn の Object Storage を Rails の Carrierwave で S3 の代わりに使用する

endpoint を定義すれば良い。 設定ファイルを独自に作成。 管理コンソールの、アカウント / セキュリティー証明書 の所に、 アクセスキーIDとシークレットキーは書かれている。自分は以下のように定義して使用しています。$ vi config/carrierwave.yml devel…

symfony1.4 の admin ジェネレーター でログインエラー

昔のソースをいじるときにはまるのでメモ。 csrf token: CSRF attack detected. ssl時のみセッションを保持する設定なのが問題だった。$ vi apps/admin/config/factories.yml session_cookie_secure: false

unicorn サブディレクトリで起動する

設定追加 ./config.ru # This file is used by Rack-based servers to start the application. require ::File.expand_path('../config/environment', __FILE__) map ENV['RAILS_RELATIVE_URL_ROOT'] do run MyAppName::Application end 公開用のディレクト…

node.js で 文字エンコード変換

npm install iconv node-iconv は、内部に libiconv のソースファイルを持ち、 インストール時にビルドし使用している。libiconv のバージョンは、libiconv-1.14 だった。libiconv はもともと EUCJP-WIN に対応していない。 パッチを当てて、ビルドし直す必…

seekg tellg が無効な値を返す

c++

ifstream is ("msg.bin", ios::in | ios::binary); if (is.fail()) assert (!"miss"); // ファイルサイズを調べる is.seekg (0, fstream::end); fstream::streampos end = is.tellg(); is.seekg (0, fstream::beg); ios::pos_type end = file->stream_->tell…

Unity で C# のファイルをコンパイル

C# ファイルから、読むことの難しいDLLにコンパイルすることが出来る。MonoFramework-MRE をインストール。 http://download.mono-project.com/archive/3.0.4/macos-10-x86/MonoFramework-MRE-3.0.4.macos10.xamarin.x86.dmgビルド mcs -r:/Applications/Uni…

3項演算子を左辺値にする

c++

int main () { int a = 0; int b = 0; bool c = false; c ? a : b = 4; cout << "a=" << a << endl; cout << "b=" << b << endl; cout << "c=" << c << endl; }

Nginx 1.3.13をインストール

socket.io をリバースプロキシさせたかったので、Nginx 1.3.13をインストールしてみた。 $ wget http://nginx.org/download/nginx-1.3.13.tar.gz $ tar xf nginx-1.3.13.tar.gz $ aptitude install libpcre3-dev zlib1g-dev libssl-dev libxslt1-dev libgd2-…

アプリケーションで認証後にS3のコンテンツを返す

Rails の controller 側 class DownloadController < ApplicationController def action # 認証処理 ... resource_id = 2 resource = Resource.find resource_id response.header['X-Accel-Redirect'] = '/reproxy' response.header['X-Reproxy-URL'] = reso…