Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Secrets of launch arguments (iOS)
Search
Kishikawa Katsumi
January 15, 2014
Programming
16
13k
Secrets of launch arguments (iOS)
Tips of launch arguments for iOS development.
Kishikawa Katsumi
January 15, 2014
Tweet
Share
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
230
Enhancing Applications with Accessibility API
kishikawakatsumi
3
4.2k
Mastering SwiftSyntax
kishikawakatsumi
4
6.3k
My SwiftData Review
kishikawakatsumi
7
1.5k
Swift Expression Macros: a practical introduction
kishikawakatsumi
3
2k
Xcode Cloudの評価
kishikawakatsumi
2
1.4k
Regular expressions basics/正規表現の基本
kishikawakatsumi
7
780
家のいろいろな数値を計測する
kishikawakatsumi
4
2.3k
GitHub Actionsでテストの結果をわかりやすく表示する
kishikawakatsumi
1
1.2k
Other Decks in Programming
See All in Programming
JVM の仕組みを理解して PHP で実装してみよう
m3m0r7
PRO
1
240
がんばりすぎないコーディングルール運用術
tsukakei
1
180
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
570
バリデーションライブラリ徹底比較
nayuta999999
1
400
Doma で目指す ORM 最適解
nakamura_to
1
160
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
700
AIにコードを生成するコードを作らせて、再現性を担保しよう! / Let AI generate code to ensure reproducibility
yamachu
7
6k
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
180
「MCPを使ってる人」が より詳しくなるための解説
yamaguchidesu
0
560
Cloudflare Workersで進めるリモートMCP活用
syumai
13
1.9k
『Python → TypeScript』オンボーディング奮闘記
takumi_tatsuno
1
130
ワイがおすすめする新潟の食 / 20250530phpconf-niigata-eve
kasacchiful
0
180
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
133
9.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
650
GraphQLとの向き合い方2022年版
quramy
46
14k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
GitHub's CSS Performance
jonrohan
1031
460k
Six Lessons from altMBA
skipperchong
28
3.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
1
74
Transcript
4FDSFUTPGMBVODIBSHVNFOUT J04
None
#import <UIKit/UIKit.h> ! #import "AppDelegate.h" ! int main(int argc, char
* argv[]) { @autoreleasepool { return UIApplicationMain( argc, argv, nil, NSStringFromClass([AppDelegate class])); } }
int main(int argc, char * argv[]) w BSHDDPOUBJOTUIFOVNCFSPGBSHVNFOUT w BSHWJTBBSSBZPGBSHVNFOUT
int main(int argc, char * argv[]) { @autoreleasepool { for
(int count = 0; count < argc; count++) { NSLog(@"argv[%d] = %s", count, argv[count]); } ! return UIApplicationMain( argc, argv, nil, NSStringFromClass([AppDelegate class])); } } => argv[0] = /Users/kishikawakatsumi/Library/Application Support/iPhone Simulator/7.0.3-64/Applications/ 55179656-7577-4C46-AE05-6D83E25EC2CD/Arguments.app/Arguments argv[1] = foo argv[2] = bar
/41SPDFTT*OGP
- (void)viewDidLoad { [super viewDidLoad]; NSProcessInfo *processInfo = [NSProcessInfo processInfo];
! NSLog(@"%@", processInfo.arguments); } => ( "/Users/kishikawakatsumi/Library/Application Support/iPhone Simulator/7.0.3-64/Applications/55179656-7577-4C46- AE05-6D83E25EC2CD/Arguments.app/Arguments", foo, bar )
/46TFS%FGBVMUT
$POWFOUJPOT LFZWBMVFLFZ5XPXPSE w BLFZTUBSUTXJUI w 2VPUFWBMVFTJGNPSFUIBOPOFXPSET
None
- (void)viewDidLoad { [super viewDidLoad]; NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSLog(@"%@", [userDefaults stringForKey:@"foo"]); NSLog(@"%@", [userDefaults stringForKey:@"baz"]); } => bar qux quux
None
- (void)viewDidLoad { [super viewDidLoad]; NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSLog(@"%d", [userDefaults boolForKey:@"boolArg"]); NSLog(@"%d", [userDefaults integerForKey:@"intArg"]); NSLog(@"%f", [userDefaults floatForKey:@"floatArg"]); NSLog(@"%@", [userDefaults stringForKey:@"stringArg"]); } => 1 18 3.141590 foo bar
$BOQBTTNPSFDPNQMFY EBUBUZQFT
"SSBZ BSSBZ"SH GPP CBS CB[
None
- (void)viewDidLoad { [super viewDidLoad]; NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSLog(@"%@", [userDefaults objectForKey:@"arrayArg"]); } => ( foo, bar, baz )
%JDUJPOBSZ EJDU"SH\GPPCBSCB[RVY^ => { baz = qux; foo = bar;
}
1MJTUGPSNBU \GPPCBSCB[RVY^ GPP CBS CB[ "SSBZ %JDUJPOBSZ
.PSFDPNQMFYFYBNQMF QMJTU"SH\GPPCBSBSSBZ GPP \CBSCB[^ ^ => { array = (
foo, { bar = baz; } ); foo = bar; }
9.-QMJTUGPSNBU YNM"SHlEJDULFZGPPLFZTUSJOHCBS TUSJOHLFZCB[LFZTUSJOHRVYTUSJOHEJDU => { baz = qux; foo =
bar; }
5IFNBHJDUSJDLPG b"QQMF-BOHVBHFT FT ` IUUQOTIJQTUFSDPNMBVODIBSHVNFOUTBOEFOWJSPONFOUWBSJBCMFT
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; NSLog(@"%@", [userDefaults dictionaryRepresentation]); => {
... ! AppleLanguages = ( ja, en, fr, ... ); ! ... ! }
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]; NSLog(@"%@", [userDefaults dictionaryRepresentation]); => {
... ! AppleLanguages = ( es ); ! ... ! } b"QQMF-BOHVBHFT FT `NFBOT PWFSSJEJOH/46TFS%FGBVMUTUFNQPSBSJMZ b FT `JTBSSBZPGMBOHVBHFDPEFT