アプリがスプラッシュ画面ですぐ落ちる

久しぶりにビビった。
なんやかんやXcodeでテストとかなんやかんやしてて
iPhoneから作成中のアプリを長押し☓で消して、マーケットからダウンロードして起動させたら
スプラッシュ画面でいきなり落ちる。

→もっかい長押し☓で再度ダウンロードインストール

→同じ結果

まさかのクリティカルエラーがある状態でリリースされてる
って思って本気焦った。

とりあえずiPhoneをつないでOrganizer起動
Console見ながらもっかいアプリを起動させる
やっぱりスプラッシュで落ちる

Consoleにぐわーっとエラーがあるんで読んでみたら

This generally means that another instance of this process was already running or is hung in the debugger.

なんか残ってるっぽいからiPhone再起動

無事起動!!!

単純やけどちょっとビビった

今度から変な動きしたらiPhone再起動します。

Icon already includes gloss and bevel effects = YES やのにiTunesで光沢がある。→インストールしたら光沢なし。

アイコンにある光沢を消す為に

Icon already includes gloss and bevel effects = YES

にしてある。
今までずっとこれでいじってないのに、アップデートしたらiTunes上では光沢がある。
おかしいと思ってインストールしたら、iPhone上ではきちんと光沢が消えている。
なにこれ

iPhoneアプリからメール送信(メール送信アプリを起動させずに)

よーするにモーダルビューでって事
sharekitでやる方法がよくわからんかったからもう実装した。
参考は下記
アプリからメール送信する方法 - あらきんぐのiPhoneアプリ開発ブログ

iPhoneアプリの【レビューを書く】URL

がやっとこさわかった

http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=xxxxxxxxxxx&mt=8&type=Purple+Software

xxxxxxxxxxxはアプリID

アプリIDは iTunes Link Maker でリンクを作成した時に出てくるidと同じ

参考
http://oneworld-inc.jp/blog/?p=38

三項演算子とNSStringとNSMutableArrayへのNSNullと

NSObject *a = ([rs stringForColom:@"hohe"] == nil)?[NSNull null]:[rs stringForColom@"hohe"];

↑castしろって怒られる

NSObject *a = nil;
if([rs stringForColom:@"hohe"] == nil){
    a = [NSNull null];
}else{
    a = [rs stringForColom@"hohe"];
}

こっちいける
とにかくDB内にnullがあってもaをNSMutableArrayにつっこめばOK
nullチェックは

if([str isEqual:[NSNull null]])

ShareKitのEmail利用時に宛先で+を押したらdismissしてくれなかった

困ったんだけれどgithubのissuseにあった
Mail does not dismiss if user uses + button · Issue #83 · ideashower/ShareKit · GitHub

SHK.mのviewWasDismissedメソッドの部分

if (self.isDismissingView){

を追加するだけ

- (void)viewWasDismissed
{
    if (self.isDismissingView){
        self.isDismissingView = NO;
        
        if (currentView != nil)
            currentView = nil;
        
        if (pendingView)
        {
            [self performSelector:@selector(showPendingView) withObject:nil afterDelay:0.02];
            return;
        }
    }
}