アプリのバージョンを設定/取得するには
アプリのバージョン情報をプロジェクトに設定するには
Info.plistファイルのBundle versionに値を設定します
Bundle versionは初期値「1.0」ですが任意の値に設定可能です
また、値を取得する際は
[[NSBundle mainBundle] objectForInfoDictionaryKey: @"CFBundleVersion"];
となります。
地図アプリを起動する方法
アプリ内から地図をアプリを起動する方法です。
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:URL]];
URLに何を入れるかで表示されるマップが変わります。
・Google Map
@"http://maps.google.com/mapsq=夢の国"
・Apple Map
@"http://maps.apple.com/mapsq=夢の国"
上記の場合、「夢の国」をキーワードにして地図表示してくれます。
それ以外のオプションはこちら
バックグラウンドでアプリを動かさない方法
アプリを表示しているときのみ動かしたい場合の設定方法です。
①Info.plistに”Application does not run in background”という項目を追加します。
②Valueに”YES”を設定します。
上記の設定で、アプリを表示する場合は必ず最初(AppDelegate)から処理が始まります。
デバッグのみ表示されるログを出すには
デバッグ時のみ表示されるログを作成する方法です。
よく使われる方法ですが、便利なのでメモ、、。
全体で読み込まれるファイルや「アプリ名-Prefix.pch」ファイルなどに以下のマクロを定義します。
// Debag Log
#ifdef DEBUG
#define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
#define DLog_M NSLog(@"%s [Line %d]", __PRETTY_FUNCTION__,__LINE__)
#else
#define DLog(...)
#define DLog_M
#endif
// Release Log
#define RLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__)
DLog,DLog_Mはデバッグ時のみ表示されるログ
RLogはリリース時も表示されるログになります。
使い方は以下のように。。
DLog(@"%@", @"テスト");
DLog_M;
RLog;
以上。。
実行スレッドを確認する方法
処理が行われているスレッドを確認したい場合、NSThreadクラスの以下のメソッドを実行する。
// メインスレッドで実行されているか
if([NSThread isMainThread]){
NSLog(@"メインスレッド");
}else{
NSLog(@"サブスレッド");
}
// スレッドの内容
NSLog(@"currentThread:%@", [NSThread currentThread]);
これで誰が処理しているかわかるはず・・・。
iPadでモーダルビューを表示する方法
さんぽです。。
iPadでモーダルビューを表示する場合、ちょっとだけiPhoneとは異なります。
UIViewController *vcModal = [[UIViewController alloc] init];
[vcModal setModalPresentationStyle:UIModalPresentationPageSheet];
[self presentViewController: viewController animated:YES completion: nil];
二行目のsetModalPresentationStyleが異なる箇所です。
表示する画面領域を指定します。
・UIModalPresentationCurrentContext
親と同じサイズ
・UIModalPresentationFullScreen
フルスクリーン
・UIModalPresentationPageSheet
幅が768ポイント、高さは今の高さ
・UIModalPresentationFormSheet
540×620ポイント
となるそうです・・・。