思い立ったが吉日!

iOSが好きです。

デバッグ用の隠しコマンドを作る

デバッグ用の隠しコマンドを作る

デバッグで開発者以外に内部的な値の変更を確認してもらう時に、ちょっと困りますよね。

閾値変更したんだけど、大量に実行しないと差がわかりづらいとか。

ログを見て確認してもらうわけにはいかないので、内部的にはちゃんと変更してるよ!ということを見て確認してもらうのが一番早いです。

僕は、ロングタップしたら、内部で使用している値がアラートとして表示されるようにしました。

UIWindow *window = [[[UIApplication sharedApplication] delegate] window];
UILongPressGestureRecognizer *longPress = [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longTapped:)];
longPress.minimumPressDuration = 0.5;
[window addGestureRecognizer:tapGestureRecognizer];
-(void)longTapped:(UILongPressGestureRecognizer*)sender
{
     // アラートとかで変数の値などを表示して確認
}

これを使用したいViewControllerとかに追加し、内部的にどの値を使っているかを確認できます。

アプリ内部で、現在読み込んているjsonファイルのバージョン情報などを確認するときなどに使いました。

本番ビルドに含めないように注意は必要ですが。