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
13k
16
Share
Secrets of launch arguments (iOS)
Tips of launch arguments for iOS development.
Kishikawa Katsumi
January 15, 2014
More Decks by Kishikawa Katsumi
See All by Kishikawa Katsumi
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
120
Running Swift without an OS
kishikawakatsumi
0
920
浮動小数の比較について
kishikawakatsumi
0
510
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
240
愛される翻訳の秘訣
kishikawakatsumi
3
440
Private APIの呼び出し方
kishikawakatsumi
3
1k
iOSでSVG画像を扱う
kishikawakatsumi
0
240
Build your own WebP codec in Swift
kishikawakatsumi
2
2.1k
iOSDC 2024 SMBファイル共有をSwiftで実装する
kishikawakatsumi
1
320
Other Decks in Programming
See All in Programming
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
280
Oxlintはいかにしてtsgolintのlint ruleを呼び出しているのか
syumai
2
540
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
210
バックエンドにElysiaJSを採用して気付いた、良い点・悪い点
wanko_it
1
180
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
130
色即是空、空即是色、データサイエンス
kamoneggi
1
200
1人1案件のプロダクトエンジニア時代に、"プロセス監督"としてチャレンジしたこと
non0113
0
330
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
130
GitHub Copilot CLIのいいところ
htkym
2
1.1k
Moments When Things Go Wrong
aurimas
3
120
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
150
UaaL×Androidアプリのメモリ計測 — Memory Profilerの先へ
rio432
0
180
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Building Adaptive Systems
keathley
44
3k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.5k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
540
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
Building Applications with DynamoDB
mza
96
7k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
710
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
How to Think Like a Performance Engineer
csswizardry
28
2.6k
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