アプリなどを開発するブログ

React Native / Swift / Ruby on Railsなどの学習メモ。


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

緑茶 / ほうじ茶版STARBUCKSが欲しい

外でお茶したり、PCで作業する時に、 基本的にはカフェに入るわけですが、 そこで飲むものといえばコーヒーなわけです。 コーヒー自体は好きなんですが、 毎日飲んでいるとほんとに飽きてきます。 金は払うからコーヒーはいらない、場所だけ貸して。と言いた…

世界の正体がわかった気分になる素晴らしい動画

世界の正体がわかった気分になる素晴らしい動画がこちらです。 参考 : DDN JAPAN 【感動必見】脳機能を失い、死に向かった脳科学者が見た「僕らの生命の秘密」「人生の意味」に魂が打ち震えるほどの衝撃が http://japan.digitaldj-network.com/articles/1870…

高速でファイルのやりとりができるsharefest

高速でファイルのやりとりができるsharefest。 https://www.sharefest.me/ たぶん、Peer to Peer だからですかね? すばらしい。 ただ、相手のダウンロードが終わるまでタブを開いて待っていないといけないので、 用法は限られます。

Rails4で二重投稿防止

フォームのボタンが押されたらボタンをdisableにして、 二重投稿防止します。 簡単に実装できます。そう、Rails4ならね。 <%= form_for @user do |f| %> <%= f.submit "送信する", data: { disable_with: '送信中'} %> <% end %> ベンリ〜

Rails4 モデルのcreateの時だけvalidationしたいattribute

調べたら簡単でした。オプションに on: メソッド名をつけるだけ。 validates :name, presence: true, on: :create

YouTubeの埋込動画の表示を別途用意した画像にする

YouTube動画をHTMLに埋め込むと、 再生されていない状態では、おなじみのプレイヤーとサムネイルが表示されますが、 デザインとの兼ね合いなどで、サムネイルではなく別途用意した画像を表紙にしたい場合があります。 以下のようにすれば可能でした。 <div onclick="thevid=document.getElementById('thevideo'); thevid.style.display='block'; this.style.display='none'"> <img src="IMAGE_PATH_URL" style="cursor:pointer" /> </div> <…

Sony QX10 を Sony Camera Remote API を使って制御する

(adsbygoogle = window.adsbygoogle || []).push({}); 何だか面白いカメラ、Sony QX10を使ってアプリを作ってみます。 SDKやドキュメントの配布はこちら https://developer.sony.com/develop/cameras/ SDKはAndroidのみで、iOS用はありません。 Githubに個人…

iOSとAWS S3を連携する

Objective-Cで、iOSからサーバーアプリケーションを介さずに S3に直接アップロードしたり、ダウンロードしたりしたい。 そんな欲望に駆られる事があります。 Amazon公式から出ているこちらのSDKを使うのが良さそうです。 Getting Started with the AWS SDK f…

RailsでTurbolinks使うとjavascriptイベントが一部発火しない

Turbolinksとは Rails 4.0 に入る予定の turbolinks について調べた http://willnet.in/40 Rails 4のturbolinksについて最低でも知っておきたい事 http://kray.jp/blog/must-know-about-turbolinks/ なので、一部Jqueryプラグインなどがうごかなくなることが…

Herokuのサポートへ連絡する

昨年のHerokuのイベントでやってたトークセッションのスライド。 サポートに連絡するときのコツとかがまとまってて便利。

AVAudioSessionPortDescription まとめ

iOSで、今音声がどこから流れているのか、ヘッドフォンが接続されているのか、 Bluetoothヘッドフォンなのか、とかが知りたい時には、以下のようにして取得可能です。 AVAudioSession *session = [AVAudioSession sharedInstance]; NSArray *out = session.c…

Rails4でエラー Paperclip::Errors::MissingRequiredValidatorError

Paperclip::Errors::MissingRequiredValidatorError というエラーが出ました。 どうやらファイルタイプのバリデーションが必要なようです。 モデルに以下を記述すると通りました。 validates_attachment_content_type :attachment_name, content_type: ['vid…

FireChatが流行ってる。Multipeer Connectivityの記事まとめ

革新的なiOSチャットアプリ「FireChat」が話題に WIRED http://wired.jp/2014/03/31/apple-multipeer-connectivity/ 興味深いのは「近所」(Nearby)というオプションだ。 ここで、アップル(「iOS 7.0」以降)の「Multipeer Connectivity」フレームワークが…

Rails Adminをアンインストールする

Rails Admin使おうと思ってインストールしてみたけど、 Bootstrapのバージョンがコンフリクトしちゃってるのかうまく動かない。。 早いとこ諦めてアンインストール。 $ rails g migration dropRailsAdmins マイグレーションファイル *******_drop_rails_admi…

リサ・ランドールと物理学

5次元の存在を提唱する理論を提唱し、 今、物理学界のニューヒロインと呼ばれているリサ・ランドール博士。 「物理学者は頭ボサボサのおっさん」という僕のしょうもない先入観は軽く打ち破られました。 容姿も美しい方ですね。 リサ・ランドール博士のドキ…

Objective-Cでシングルトンクラス

メモ。 SingletonClass.h +(SingletonClass *)sharedInstance; SingletonClass.m +(SingletonClass *)sharedInstance { static SingletonClass *_sharedInstance; static dispatch_once_t pred; dispatch_once(&pred, ^{ _sharedInstance = [SingletonClass …

iOS7以降、UITableViewCellのsuperviewはUITableViewではない

iOS6までは、UITableViewCellのsuperviewはUITableViewでした。 が、iOS7から UITableView -- UITableViewWrapperView -- UITableViewCell という構造になったみたいです。 UITableViewCell内から、UITableViewを参照するような 作りをしていたものがあった…

Paperclip + Jcrop + Railsでサムネイルを正方形に切り抜き

Paperclipで画像アップロードができるアプリケーションを作る際に、 サムネイルを正方形に切り抜きたい場合があります。 Paperclipは勝手にサムネイルを正方形に切り抜いてくれる機能がついてますが、 写真の中心を切り抜く、というものなので、 ユーザーに…

サミエル・ウルマン「青春」

メモ。 青春 サミエル・ウルマン 青春とは人生のある期間を言うのではなく心の様相を言うのだ。 優れた創造力、逞しき意志、炎ゆる情熱、怯懦を却ける勇猛心、 安易を振り捨てる冒険心,こう言う様相を青春と言うのだ。 年を重ねただけで人は老いない。 理想…

時間がない人のためのAWS S3ざっくり料金表

AWS

※ 2014年4月時点の情報です。 いずれも月あたりの料金。 いずれも東京リージョンの料金。 1$ = 約100円として換算。 数値は正確なものではなく、ざっくり値段感をつかむためのものです。 ストレージ料金 月あたりどれくらいの容量を使うと、いくらかかるのか…

Google Maps iOS SDKで全てのマーカーが入るようにズームアウト

こんなかんじ - (void)zoomMapToShowAllMarkers { CLLocationCoordinate2D myLocation = ((GMSMarker *)_mapView.markers.firstObject).position; GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:myLocation coordinate:my…

form_tagでファイルアップロード時はmultipart:trueを省略しない[Rails4]

form_tagを使ってファイルアップロードフォームを作っていたらエラー発生。 undefined method `original_filename' for "my_image.png":String ちなみにcontrollerは def edit_photo if request.post? filename = params[:file].original_filename end end …

AVFoundationで動画をリサイズ + 反転する

前回の続きで、動画を反転させる処理を加えました。 というのも、iPhoneやiPadって、撮影時のデバイスの向きによっては 書きだした際に反転してしまったりするのです。 撮影 => 書出し まではよくても、AVAssetExportSessionを使って変換した際に たぶんVide…

AVFoundationで動画をリサイズする(+関連記事まとめ)

現在AVFoundationで動画撮影アプリを作っているのですが、 日本語のドキュメントがあまりないですね。 しかも結構他にない概念が多かったりして公式の英語ドキュメントを読んで理解するのは 結構骨が折れます。 で、動画リサイズするのは以下みたいな感じで…

iOSに「LINEで送る」機能を実装メモ

LINEで送る機能をiOSに実装するには以下の2つのライブラリを使えばよいらしい LineKit LineActivity Objective-C (iOS): LINE で送る http://snippets.feb19.jp/?p=414 iOS で「LINE で送る」を実装する http://griffin-stewie.hatenablog.com/entry/2013/02…

AFNetworking 2.0でファイルアップロード

Objective-Cでサーバーとの通信を手軽に書けるAFNetworking。 もう手放せません。 現段階で最新は2.0.1です。 ファイルのアップロードはこんな感じでできました。 -(void)uploadFile:(NSData *) fileData { AFHTTPRequestOperationManager *manager = [AFHTT…

Rails + Devise on Herokuでエラー

エラーが出た。 最新のDeviseではproduction環境の時にシークレットキーが必要らしい。 設定ファイルでコメントアウトされている以下の行を追加すればOK。 config/initializers/devise.rb config.secret_key = '<シークレットキー>'

WebRTCおもしろそう

時間空いたらためそう。 無料でLINEやSkypeのようなリアルタイムアプリが簡単に作れるSkyWay http://www.atmarkit.co.jp/ait/articles/1403/12/news035.html?fb_action_ids=10202019038020776&fb_action_types=og.likes&fb_source=other_multiline&action_ob…

iPhoneで通信速度を制限して色々試す

こんなことできたのか。便利。 iPhone実機(iOS6.x)で通信速度を制限する http://qiita.com/yimajo/items/efd3a033ac42afd93714

焼きそばパンと後輩で学ぶObjective-C入門① 関数について

関数とは 「私がこう言ったら、まずこれをやって、次にこれをやって、最後にこれをやってね」 というプログラムに対する命令のまとまりのことです。 これを使うことでプログラミングはグッと楽に、楽しくなります。 なぜ関数が必要なの? プログラムはある意…