その後のその後

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

iPhone

海外アプリレビュー依頼先

最近リリースした、KOF-eという無料アプリを北米でもっとDLしてもらうべく、 海外におけるAppBankさん的なサイトはないものかと(日本語で)ググってみたところ、 開拓者な方々がいろいろと情報を残してくださっていたので、そのまとめです。 海外レビューサ…

UnityプロジェクトのLibraryは削除してもよい?

Library配下には何やら意味不明ファイルが沢山生成されて、バージョン管理システムにコミットする必要はないのかな?と調べてみたら、どうやら必要そうでした。 http://www.cis.sojo-u.ac.jp/~izumi/Unity_Documentation_jp/Documentation/Manual/Behind%20t…

オープンソースのカスタムUIシリーズその5 : CWUIKit

UIKitになく、かつUIKitベースなオープンソースのUIライブラリを紹介していきます。 いきなりその5から始まるのは、過去に書いた、 UIPopOver風のWEPopover カバーフローのOpenFlow フリップカード風のFlipCardNavigationView グラフ描画のs7graphview に続…

iOSのフレームワークやクラスを紹介するサイト "iOS Frameworks"

A curated catalog of iOS frameworks and classes for the pragmatic iOS developer と銘打たれた、iOSのフレームワークやクラスを紹介するサイトを見つけました。 http://iosframeworks.com/ と紹介してみたものの、ざっと見た感じではイマイチかも・・・ …

機能が豊富(そう)なビジュアライズライブラリ "PowerPlot"

線グラフだけなら以前紹介したs7graphviewが手軽でおすすめなのですが、 今回発見したPowerPlotのexampleのページをみると、 と、なにやら機能が豊富そうです。 ただ、downloadのページをみると、 と、CHAPCHAまであったりしてなんだかめんどくさい・・・ と…

GeoHexのレベルとサイズの対応

先日のgeohexエントリに引き続き、国産アルゴリズムGeoHexについてです。 下記コードで各レベルにおけるhexSizeをログにはいただけですが、コード書かずとも知りたい人もいると思うので、載せておきます。 for (int j=0; j<15; j++) { NSLog(@"level:%d, hex…

Objective-C版GeoHexを試してみました

GeoHexとは 独自の座標系を用いて世界中(GoogleMapsのカバー範囲)を隙間の無いHex(正六角形)で埋め尽くし、Hexによって世界中の全ての緯度経度の地点を表現するための仕様。Hexの大きさは25段階(レベル)で指定できる。・見た目がcool!!・隣接する6つのHex…

UIKitのクラス名と、UI Automationでのクラス名の対応

UIAutomationをちょろっと使用してみたのですが、 「UIKitのあのクラスはUIAutomationでは何て名前?」 ってのをサッと知りたかったので、AppleのUIAutomationのリファレンスを見つつ、UIKitとUIAutomationのクラス対応表みたいなものを作ってみました。 ビ…

otoolでバイナリの内容をいろいろと調べる方法

new BSDライセンスについて調べていたら、こちらの有名な事件に関してのまとめ記事に行き当たり、 NatsuLion for iPhone クローン (略) から学んだこととかまとめ その中でこんな記述がありました。 今回の場合は、まず、Twitterville が見た目上ソックリで…

インストールしているアプリ一覧を共有するサービスappsfireのしくみ

ここで開発者の方が自らヒントを出してくれています。 http://forums.macrumors.com/showthread.php?t=1121778 I'm a Product Manager at Appsfire. We're happy you've found the app and hope you're enjoying.Everything we do is within Apple's guideli…

CCDirector のソース解析

CCDirectorのソースを解析してたときのメモがあったので、載せておきます。 (UIKitとcocos2dの併用時にCCSceneの遷移でハマっていたので、原因の目星をつけられるようソースを読んでました) CCDirectorの正体 CCDirector *director = [CCDirector sharedDi…

大量の画像ファイルを圧縮したzipファイルをiPhoneで解凍するのに要する時間

画像をたくさん使いたい、でもバイナリサイズ20MBは超えたくないという場合に、 1. 初回起動時にサーバーからダウンロードする 2. zipで圧縮しておいて初回起動時に解凍する 3. あきらめる。なんとか切り詰める といった選択肢があるわけですが、サーバー連…

cocos2d を使用したゲームアプリのソースコード集

実装の参考になるかもしれないので、cocos2d を使ったアプリのソースコードをいろいろと集めています。 Gorillas https://github.com/Lamentum/Gorillas ビルドするのにプロジェクトをもろもろ整備する必要あり。 https://github.com/Lamentum/iLibs と coco…

cocos2dでの3Dアプリケーションの開発を可能とするエクステンション「cocos3d」

"cocos3d"なるcocos2dエクステンションが出たようです。 http://brenwill.com/cocos3d/ とりあえずダウンロードしてデモを動かしてみました。 デモのビルド方法 cocos2dとcocos3dのソースが入ってないので、追加してやる必要があります。以下追加手順です。 …

cocos2dの使いどころ

最近cocos2d+UIKitでゲームアプリを開発していたのですが、どうも遷移、アニメーション、階層構造でハマることがやたら多く、よく考えてみたら今つくってるゲームは弾幕もないしパーティクルもないし遷移エフェクトは必要ないしで、あんまりcocos2dのメリッ…

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

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

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

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

cocos2dでテーブル表示

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

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…

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

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

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…

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 キャプチャ画像だと伝わりにくいですが、マス目をタップするとそのマス目が回転しつつ拡大しながら画面遷移する、というものです。 どう実装し…

iOS4でバックグラウンド音声録音する方法

音の録音機能の実装はやったことなかったんですが、それ系のアプリのソースや参考書のサンプルもあるし、ネットにも情報たくさんあるだろうから30分ぐらいでさっくりいけると思っていました。 が、もろもろすんなり行かなかったので書き残しておきます。 Aud…

アニメーションをAS3のTweenerっぽく書けるObjective-Cライブラリ TweenC

フリーで公開されてるライブラリ。 http://www.tweenc.com/ iPhoneにおけるアニメーションをこんな感じでTweener風に書けるようになります。 // animationViewを1秒かけて(20, 400)に移動させる [TweenC animateView:animateView withAnimation:kTweenEaseIn…

iPhone用グラフ描画ライブラリ s7graphview の使い方

OpenCVを使って画像処理する際に、パラメータチューニングなどで 画像のヒストグラムをみる必要があって試したライブラリ。 値を渡せばグラフを描画したviewを生成してくれて、 それをaddSubviewするだけ、という大変ありがたいシロモノです。 以下、大まか…

UnitTestでハマった点

UnitTestのやり方、ちょっと検索したらザクザクでてきました。 親切な日本語の記事がたくさん。 その中でこちらの記事が超親切で、更新日もつい最近でとても参考になりました。 http://kozy.heteml.jp/l4l/2011/01/iphonetddsentestingkit.html ただ少しハマ…