基本編 1. Objective-Cで書く Obj-C使いたくないが諦める 結局Obj-C使うのが一番楽であることに気づくのだ 2. Xcodeを使う VimとかEmacsとかAppCodeで書きたいが諦める 結局Xcode使うのが一番楽であることに気づくのだ 設計編 3. 仕様とUIをしっかり設計してから実装する きちんと設計しないとあとから大量の手戻りが発生して泣きたくなる。 技術的に可能なことをやろうとしているのか 基本的な画面設計 メインのビュー部分 ナビゲーション方法(TabBarなのかNavigationBarなのかNavigationDrawerなのか) くらいは最低限調査・設計しておく 4. フレームワーク的ライブラリを使わない UIKitは既に十分にフレームワークになっており、新たな思想を持ち込む必要はない Reactive Cocoaを使うのはUIKitのMVCをよくよ
Xcode 4.4 から Objective-C が書きやすくなりました、という今更のいまさらな話ですが、ネット上に転がっている少し前のサンプルソースなどは古い書き方のものもあるようなので、今回はよく使う NSArray と NSDictionary と NSNumber の書き方についてだけ備忘録として残しておこうと思います。 NSArray インスタンスの生成 // 古い書き方 NSArray *oldArr = [NSArray arrayWithObjects:@"value1", @"value2", @"value3", nil]; NSMutableArray *oldMutableArr = [NSMutableArray arrayWithObjects:@"value4", @"value5", @"value6", nil]; // 新しい書き方 NSArray *n
はじめに iPhoneアプリは、Macが1台あれば作ることができます。 (OSのバージョンは10.7.4以降である必要があります) 「とりあえず動くものを作ってみよう!」といった感じで簡単なアプリを作ってみたいと思います。 「アプリの画面」や「画面の遷移」を視覚的に作成できる「Storyboard」を使いながら、 コードを書かずにできるとこまでを今回はやってみます。 Storyboardとは Xcode4.2から導入されました。iOS5以降を対象としたアプリの開発で使用出来ます。 下の画像のような画面で「画面内のUIパーツのレイアウト」や、「画面から画面への遷移」を視覚的に作成出来ます。 開発の準備 用意するものは以下の通りです。 OS X 10.7.4以降がインストールされたMac 開発ツール「Xcode」 Xcodeは無料でインストールできます。最新版のバージョンは4.6.2です。 X
『iOSアプリ開発に役立つTips』という Facebook ページをやっておりまして、そこで評判が良かった投稿(※)を 20 個ほど紹介します。 (※) Facebook ページの insights にある「クチコミ度」で判断しました アプリ実行中にコードを修正してそのまま実行中のアプリに反映させる アプリ実行中にコードを修正してそのまま実行中のアプリに反映させることができるXcodeプラグイン。 実機でもシミュレータでも使用可能とのこと。実機での動作検証中に修正して再インストールは時間かかるので、超ありがたいかも。 Injection for Xcode 投稿:2013/2/4 「PCのwebブラウザからiPhoneのカメラロールにアクセスできるようにするアプリ」のしくみ アプリ側でURLを発行している画面キャプチャがあるので、アプリにHTTPサーバ機能をもたせて(古いけどCocoaH
こんにちは。iOS / Mac 開発担当の金内です。 使って幸せなアプリには、サクサクとした動きが欠かせませんね。自分たちで作っているアプリが「サクサク」でなく「もっさり」と言われてしまうと残念な気持ちになりますが、反面「よし。こうなったら超最適化して超サクサクなハイパフォーマンスアプリを目指す!」と誓いを立てるよい機会でもあります。 そんな誓いを立てたあなたにピッタリのツールが Xcode に付属している Instruments(インストゥルメンツ)です。フェンリルのウェブブラウザ Sleipnir for Mac や Sleipnir Mobile for iPhone / iPad の開発でも大活躍しています。 Instruments は、一般的にはプロファイラという種類のツールにあたります。プロファイラは、どのオブジェクトがどれくらいメモリを消費しているとか、どのメソッドにどれくら
続いて、開発するアプリの登録を行います。アプリの登録では【1】アプリ名や識別名などの登録、【2】プロビジョニングプロファイルを作成しダウンロード、インストールします。 これらの準備が終わったら、App Storeへ公開するためのアプリ開発、パッケージング、アップロードといった流れになります。 「Jenkins Xcode Integration Plugin」でビルドを自動化 このアプリ公開までの作業のうち、いくつかをJenkinsによって自動化することで継続的にアプリを公開できるようになります。通常、アプリのビルドやパッケージングはXcodeから行うことになりますが、Jenkinsから実行する場合にはXcodeのコマンドラインツールである「xcodebuild」などを使って処理を行います。 Jenkinsジョブからシェルを起動してxcodebuildなどのコマンドを直接実行するか、「Je
割と知られてないだろうなーって事をザクっとまとめて書き残しておきます。 特急審査 iOSアプリの審査ってだいたい5営業日くらいですよね。「ふええ…この日までに公開しないといけないのに><」という全世界の幼女や、「スクレイピングしてたサイトの仕様変更でアプリが正常動作しなくなっちまったぜー」という野郎のために通常より早く申請して貰えるようAppleに懇願する事が出来ます。 やり方は以下サイトへアクセスして、アプリ情報と特急審査してほしい理由を英語で書いてあげればOKです。ただし、必ず特急審査してくれる訳ではなく、理由が弱かったり審査に忙しかったりすると拒否られちゃいます。でも、受理されれば1・2営業日くらいでチャチャッと審査してくれます。いちかばちかのファイナルウエポンです。 Request an Expedited App Review 申請後に5営業日以内にレビューされる割合 「App
先日「nicoマンガ」という非公式ニコニコ漫画サービスのビューアをAndroidでリリースしました。その時に同様な機能を実装したiOSアプリも作っていた事を前回のブログで書きました。 今まで誰かが作ったアプリを別プラットフォームへ移植、もしくは自分で作ったけど別プラットフォームにそのまま移植出来ないから大幅に仕様変更して移植は行なった経験はありましたが、ほぼ同じ機能を搭載したアプリをiOS->Androidと続けて開発したのは(たぶん)初めての経験でした。今回はその時に感じたことをメモ程度に書き残しておきます。 比較 この内容を考えてる時に思いついた事をつらつら比較してきます。実装やテスト内容に踏み込んだ比較はしません、書くのメンドウですしね。 項目 iOS Android 外部ライブラリ cocoa controlsサイトへ行けば大抵見つかる。探しやすいhubサイトの存在がアリガタイ 頑
こんなかんじのフィルターが作れるようになります。 このレジュメを元にした勉強会が「MTL主催【学生限定・iPhone勉強会】蜷川実花監修カメラアプリcameranのエンジニアが教える高速フィルターカメラアプリの作り方です。 学生の皆様はふるってご参加下さい。 GitHubのリポジトリは https://github.com/kasajei/MTLSeminar201303 です。 あと、Xcodeをダウンロードしてきてね☆ Xcode カテゴリ: 開発ツール 価格: 無料 アジェンダ プロジェクト作成 GPUImageの組み込み とりあえず、GPUImageを動かしてみる PIP Cameraみたいなおしゃれなフィルターを作ってみる プロジェクト作成 まずプロジェクトの制作をします Single View Applicationを選択 名前はMTLSeminar201303にしましょう 次
ちょっとした細かい事なんですけど、設定とかimportとか プロジェクトを跨がって使いそうなやつは最初にうちにやってること多いんですけど、 その辺のネタを少々・・・ 1.NSLogの拡張と、prefix.pch NSLogは、コンソールにその内容を出力してくれるわけですが、 NSLog(@"%s",__PRETTY_FUNCTION__); NSLog(@"%d",__LINE__); とすると、 __PRETTY_FUNCTION__:クラス及び関数名 __LINE__:行数 などを表示してくれます。 ただ、毎回これを記述するのは、 面倒なのでだいたいマクロにしたりしますが、 #define LOG(fmt,...) NSLog((@"%s %d "fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__); これをあるヘッダファイルなどに記述
テストしてますか! スマホブラウザ対応の結合テストとか辛いですね。そうですね。 というわけでSeleniumでiOSシュミレーターのブラウザを動かして見ました。 Seleniumには、iPhone driverというのがあるのでそれを使いますです。 http://code.google.com/p/selenium/wiki/IPhoneDriver 以下の行動をとります。もちろんMac上です。 XCode の4.2以上を入れます #git clone https://code.google.com/p/selenium/ #cd selenium #./go iphone #open iphone/iWebDriver.xcodeproj #Xcode が立ち上がるはずなので、適切なiPhoneを選択し、Runします 上記が全部うまくいくと、Xcodeのシュミレーター上で、RemoteD
# armv7 clang -arch armv7 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -c mattn.c ar mattn-armv7.a mattn.o ranlib mattn-armv7.a # i386 clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -c mattn.c ar mattn-i386.a mattn.o ranlib mattn-i386.a
導入 iOS 開発者のみなさん、こんにちは。 このブログでは主にチュートリアルだったりフレームワークの紹介みたいなことを書いてきました。 そこで、たまには中級者向けのエントリを書いて「Xcode バリバリ使って、ビシバシ Objective-C 書いてますよ」アピールします。 iOS 開発をはじめて一通り Framework は理解したけど Xcode 使いこなせてる感が足りない方、夢にまで EXC_BAD_ACCESS が出てくる方に参考になる記事となればと思います。 といっても Xcode はマッシブな IDE なので、4つのデバッグツールに分けて「あれ、それ知らなかった!便利じゃん!」な方法を紹介します。 ブレークポイント デバッグには切っても切れない関係ですね。アプリを実行中に指定した行で処理を中断し、そこからステップ実行で細かいデバッグを可能にしてくれます。 ショートカットキー
こんにちは!うきょーです! iOSアプリのテストのことをそろそろ1年くらい考えていて、1周した感じもするので、 ここら辺で一旦の区切りの意味でもなんとなく考えをまとめてみる。 ちなみにテストというのは主に単体テストにフォーカスした内容です。 こういう系のエントリを書くと、僕はわりと誤解を生みやすい書き方をしてしまうので先に断っておくと、 なんらかのアプリ開発手法や、テスト手法をDisっているわけではないです。 フレームワークがいろいろ登場したりしますが、それらをDisっている訳ではないですし、それぞれ素晴らしいものだと思っています。 同じくそのフレームワークを使っているプロジェクトも登場しますが、それらをDisっている訳でもありません。 もちろん特定個人をDisる内容でもありません。 という感じで、何かをDisってる記事ではないので、ご了承ください。 長めです。結局何がよかったの、っていう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く