その後のその後

iOSエンジニア 堤 修一のブログ github.com/shu223

2011-03-01から1ヶ月間の記事一覧

3月まとめ

3月も毎日書ききりました。(もちろん後追いあり) http://d.hatena.ne.jp/shu223/201103 で、4/2現在でブクマついてるのは以下の5記事。 Instagram API のOAuth認証をiPhoneで試してみました ...3users cocos2d のトランジションエフェクトのラッパークラス…

ボタンやアイコンなどの素材管理ツール

カメラボタンとか、背景とか、ちょっとモック作る際に過去のプロジェクトから流用したりするんですが、 いい加減数も多くなってきて過去のプロジェクトフォルダをたどるのがめんどくさい どのアプリにどんな素材があったか覚えていない ってことで、よさげな…

cocos2d のトランジションエフェクトのラッパークラスを公開しました

cocos2dのシーン間のトランジションエフェクトって非常に抱負でありがたいんですが、いつも書き方がわからなくなたりクラス名がわからなかったりして、サンプルプロジェクト開いて探して・・・というのが面倒でした。 たとえば [[CCDirector sharedDirector]…

Xcode 4 でのプロジェクトテンプレート作成手順

以前ファイルテンプレートを自作する方法について書いたので、プロジェクトも同じように簡単にできると思っていたら、どうも勝手が違う様子。 僕がやったプロジェクトテンプレート作成手順を書いておきます。 (標準のTab Bar Applicationテンプレートを複製…

UIBackgroundModes key を定義しておきながらバックグラウンド機能を実装してないとリジェクトされます

iOS

オーディオまわりの勉強がてら作った個人アプリがリジェクトされました。 理由はこちら。 2.16: Apps may only use background multitasking for one of the approved background modes; VoIP, audio playback, location, task completion We found that you…

AVAssetWriterでのファイル書き込みの進行状況を取得する

AVAssetExportSession を使う場合は progress なるプロパティがあって簡単にできたようですが、AVAssetWriter とかそれ関連のクラスにはそういったプロパティがなかったので、下記のように実装しました。 [assetWriterInput requestMediaDataWhenReadyOnQueu…

MKMapViewのピンをタッチせずにコールアウトを出す

MKPinAnnotationView の canShowCallout を YES にしておけばピンをタッチしたときにコールアウトが出るようになるのですが、下記方法でマップ表示時点で最初からコールアウトを出しておくことができます。 - (void)mapView:(MKMapView *)aMapView didAddAnn…

新しいAdMob SDK(Google AdMob Ads SDK for iOS)での広告設置方法

AdMob SDKをいつものように実装しようとしたら、ダウンロードしたzipの中身が違ってて焦りました。 以下、新しいSDKでの実装手順です。 (本家の参考ページ) 1. SDKのファイル群をプロジェクトに追加 README以外のファイルをガバッと選択してプロジェクトに…

埋もれるには惜しい当ブログのエントリー(2月編)

本ブログは1/27に開設して以来、すでに60記事近く書いていますが、 カメラアプリにFacebookへの写真投稿機能をつける ...4users Game Center のリーダーボード(スコアランキング)対応アプ...3users iPhone用グラフ描画ライブラリ s7graphview の使い方 ...…

cocos2dでテーブル表示

cocos2dとかopenFrameworksをiPhoneアプリで結構悩ましいのが、UIKitとの共存がどこまで可能なのかよくわからないところ。cocos2dはOpenGLベースだからうんぬんかんぬんみたいな。 今つくってるゲームアプリではUITableViewみたいなテーブルが必要なので、自…

UINavigationBar に UISegmentControlを置く

真ん中に置く場合 UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems: [NSArray arrayWithObjects: @"Daily", @"Weekly", @"Total", nil]]; [segmentedControl addTarget:self action:@selector(segmentChanged:) forContr…

SystemMediaPickerViewControllerでiPodライブラリ内の楽曲を選択する

このあたりのフレームワークは仕事であまり使う機会がないので存在すら知らなかったのですが、iPodアプリの楽曲選択のUIをそのまま使えるSystemMediaPickerViewControllerなる親切なクラスがあるのを知り、使ってみました。 1. 準備 MediaPlayer.frameworkを…

cocos2d v1.0.0 と Xcode4用テンプレート

ひさびさにiPhoneでゲームつくることになりそうなのでcocos2dについて調べてみたら、つい先日(3/1)cocos2dのバージョン1.0.0が出たばかりらしい。さらにXcode4のテンプレートも出たらしい。 なんてタイミングいいんだ!と喜び勇んでダウンロードしようとし…

Xcode 4 に自作ファイルテンプレートを追加する

Xcodeで新しいクラスを作ろうとすると、 こんな感じでテンプレートを選択できます。 が、見ての通りあんまり種類がありません。 (よく使うのはUIViewControllerのサブクラスと標準クラスぐらい) APIをコールするクラスとか、DBにアクセスするクラスとか、U…

GameCenterでどこまでサーバーサイド機能を代替できるか

たとえば、ユーザー同士で位置を共有するようなアプリを作ろうとすると、 サーバーに位置情報を送信し、 他ユーザーの位置情報一覧をサーバーから取得する、 というような実装になるのでサーバーが必要になります。 サーバーサイド開発なしで、GameCenter対…

UIPopoverControllerをiPhoneで使う

3.2でiPad用に新設されたこのUI、iOS4だと使えたりしないのかな、と思い試してみました。 iPadではちゃんと動作するところまで作って、iPhoneシミュレータで動作させようとすると -[UIPopoverController initWithContentViewController:] called when not ru…

Xcode 4 の Code Snippet Library にスニペットを追加する

先日のエントリーに引き続き、繰り返し作業撲滅シリーズ。 Code Snippet Library はXcode4で、Viewメニューから Utilities -> Code Snippet Library で開くとウィンドウ右下あたりに出てくるユーティリティで、ドラッグ&ドロップでコードスニペットを貼付け…

Facebook iOS SDK を使用して近況の投稿やプロフィール取得を実装する

先日書いた記事『カメラアプリにFacebookへの写真投稿機能をつける』では、SDKのダウンロードから、OAuth認証の実装方法、画像投稿APIのたたき方、まで書きました。 その後『EncountMe』でもFacebook対応することになり、プロフィールの取得や近況の投稿など…

アプリ開発の幅が広がりそうなiPhoneのアクセサリ

iOS

先日の記事を書いていてVGAアダプタについて調べてたらApple Storeのアクセサリページに行き着き、実にいろいろ出てることを知りました。 そういえば、かれこれ4年ぐらい、アクセサリの存在を忘れてました。その頃からすると時代はかなりすすんでいるようで…

UINibでのnibファイル読み込み実装手順

以前書いた記事:『nibファイルの読み込みパフォーマンスを改善するUINibクラス』 これを実際に実装してみました。 ※全面的にAppleのサンプルコードを参考にしました。 http://developer.apple.com/library/ios/#samplecode/TableViewUpdates/ 1. ビューのイ…

NSLogのフォーマット指定子一覧

ここにまとまってました。 Specifier Description %@ Objective-C object, printed as the string returned by descriptionWithLocale: if available, or description otherwise. Also works with CFTypeRef objects, returning the result of the CFCopyDes…

CoverFlow実装用ライブラリ OpenFlow

thefaj / OpenFlow CoverFlow API replacement for the iPhone こちらの記事で知りました。 http://iphone.longearth.net/2009/12/06/【iphone】coverflowを簡単に実装できるライブラリ/ さっそくOpenFlowDemoというプロジェクトをビルド&実行すると・・・…

CoreTelephonyやAVCaptureSessionのサンプルコード

iPhone Developer Centerを確認してみたところ、いくつかFirst Versionのも含め新しいサンプルコードがアップされていました。 PhotoPicker UIKit Content Update CoreTelephonyDemo CoreTelephony First Version ThreadedCoreData CoreData First Version R…

NSAssertの使いどころ

なんだかみんな使ってるらしい。 NSAssert((0 <= val) && (val <= 255), @"Value is out of range!"); 条件が真でないときにログはいてアプリ実行をとめるというもの。 どういうときに使ってるのか聞いてみたら、「こういう値を想定している、ってことを明示…

UIImageのピクセルデータへの変換等をラップするライブラリ SoloComponents-iOS

たまたま見つけて、試してみました。 andreyvit / SoloComponents-iOS iPhone/iPad components that are dead-easy to drop into your projects ATArrayView ATByteImage ATPagingView という3つのクラスが入っています。 ATArrayView デモプロジェクトを実…

ビューのトランジション(画面遷移エフェクト)を自作する際に参考になりそうなサンプルコード

いつも勉強会で大変ためになる話をしてくれる岸川さんのgithubでみつけたソースコード。 FlipCardNavigationView キャプチャ画像だと伝わりにくいですが、マス目をタップするとそのマス目が回転しつつ拡大しながら画面遷移する、というものです。 どう実装し…

アイデアを1日でアウトプット(リリース)できるレベルまでブレイクダウンする

個人でWebサービスを作る時に一番大変なこと 開発初日に動くものを作る 開発を始めたとしても、初日にやっていける感触が掴めなければやはりやる気が失せてしまいます。とにかく外部からアクセスできる何かを1日目で作り上げました。(HTMLだけでもいいので…

NSFileManagerによるファイル・ディレクトリ操作(非deprecated版)

こちらの大変ありがたい記事を参考にユーティリティクラスを整理していたら、用いているNSFileManagerのメソッドの多くが現在ではdeprecatedとなっていたので、修正したものをこちらに載せておきます。 //ファイル一覧の取得 + (NSArray*)fileNames:(NSStrin…

『とびでるカメラ』のできるまで

http://itunes.apple.com/jp/app/id397619605?mt=8 写真を適当に塗ると、うねうね動く画像ができて、それをTwitterアイコンにできます、というアプリ。 無料セール時に3日で6万ダウンロード、無料総合4位。 ができるまでを綴ったメモ。 6月 電子書籍のいち表…

Instagram API のOAuth認証をiPhoneで試してみました

弊社の技術部ブログに超親切な解説が出てたので、 参考にしつつiPhoneでも試してみました。 http://tech.kayac.com/archive/instagramapi.html さっそくですがまずiPhoneにとって重要なポイントその1、 Webからのアプリケーション登録において、Custom URL …