More Related Content
Android Hacks - Hack18 ~ Hack20 Swift : クラス継承とプロトコル拡張を比べてみる #yidev milkcocoa入門@milkcocoa meetup#1 Scrum with Redmine Backlogs What's hot (10)
【Swift】 それ、enumとstructでやってみましょう!! 第7回 カジュアル Swift 勉強会 @ 青葉台 オープニング #cswift SEゼミ2015 - リーダブルコード勉強会のまとめ 【PlayFab】UnityAdsのリワード広告を統合する方法 Viewers also liked (8)
20120422i phonedeveloperworkshoppublished 20111030i phonedeveloperworkshoppublished 20120219i phonedeveloperworkshoppublished 20120616i phonedeveloperworkshop CoreDataをバックグラウンドで扱うためのTips Similar to 20120826i phonedeveloperworkshop (20)
iPhone develop for Beginner iPhoneアプリ開発を楽に楽しくするサイトまとめ 24時間でiOSアプリ-Twitterクライアント-の作成にチャレンジ BNN CAMP vol.3 インタラクションデザインの現在―プログラミング初心者のためのopenFrameworks入門 1 キーボードで完結!ハイスピード Xcodeコーディング デジタルアートセミナー#2 openFrameworksで学ぶ、 クリエイティブ・コーディング Session 1: openFrameworks入門 「変化と戦うロガー開発(iOS_App_Extensions編)」#yjdsw4 24時間でiOSアプリ-Twitterクライアント-の作成にチャレンジ ver1.1 第3回yidev coding guideline読み RFC Viewer開発を通して学ぶ!! iOS開発のパターン化 ⑬I phoneアプリを作ってみよう!(超初心者向け) 軽量EvernoteクライアントSmartEverにおけるアプリ高速化の工夫と課題 More from Yoichiro Sakurai (13)
開発を加速させるRetty式チーム開発術 Reloaded Google admobmediationで広告最適化 20121028i phonedeveloperworkshop 20120413 nestakabaneworkshop 20120316 designerworkshoppublished 20110424i phonedeveloperworkshoppublish 20120826i phonedeveloperworkshop
- 2. iPhone Developer Workshop
とは?
iPhoneアプリ開発者の交流
技術情報の交換
比較的初心者の方も多いです
というか自分もそこまで熟練者ではないです
そのため、もしかしたら間違ったことを言ってしま
うかもしれませんがご容赦ください
一緒にアプリ開発の勉強をしていきましょう!
- 4. 製作
iPhoneアプリ
世界夜景旅行 for iPhone
MusicPlayerSleepTimer
MusicPlayerSleepTimerFree
世界名作アプリ
iPadアプリ
世界夜景旅行
工場夜景探検
夜桜花見旅行
Web
さくさく日記
http://iphonework.biz/
iPhone Developer Workshop
http://workshop.iphonework.biz/
- 6. 今回の小技集
キーバインド
キー入力の効率化による開発スピードアップ
Build Settingの利用
プリプロセッサマクロとその組み合わせ
スキーマの作成
Build Settingとの組み合わせによる
ワンクリックでの環境選択
info.plistのスイッチング
Build Settingの応用
素材準備の効率化
@2xのファイルを1/2に一括リネーム縮小
- 11. Build Setting の利用
Build Setting とは?
その名のとおり、Build時の設定を保存しておける
プリセット
どんな時に役に立つ?
プリプロセッサマクロを設定して本番/開発で
環境をかえたいとき
それに合わせて次のスキーマも活用する
必要がある
- 13. プリプロセッサマクロは
どう活用するの?
#ifdef ∼ #elif ∼ #else ∼ #endif を活用
∼の部分には条件式を書きます
∼の部分にプリプロセッサマクロの値を書くと、
マクロの定義がされていれば真と判定されます
#ifdef DEBUG
DEBUGが設定されている場合の処理
#elif HOGEHOGE
HOGEHOGE設定されている場合の処理
#else
DEBUGもHOGEHOGEも設定されていない場合の処理
#endif
- 16. 実例
以前関わったあるプロジェクトにおいて、Webとの連携があ
り、本番環境と試行環境で別々の接続情報を保持していた
// baseURL
#define baseURL @"http://hogehoge.example.com/"
//#define baseURL @"http://development.example.com/" // devlopment
// hostname
#define hostname @"hogehoge.example.com"
//#define hostname @"development.example.com" // devlopment
// facebook app id
#define facebookAppId @"129387101XXXXX???"
//#define facebookAppId @"119382XXXXXX????" // devlopment
環境を切り替えるたびにコメントアウトを設定していたが
結構面倒だったりする
- 17. スキーマの作成
スキーマを作ると、Run, Test, Profile, Archiveなどでそれぞ
れに自分の作った Build Settings を選択できる
この機能により、様々な状態をワンクリックで
切り替えることが可能になる
具体例
iPhoneDevWS & Run : 本番かつDEBUG有り
iPhoneDevWS & Release : 本番かつDEBUG無し
iPhoneDevWSDev & Run : 開発環境かつDEBUG有り
iPhoneDevWSDev & Release : 開発環境かつDEBUG無し