Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Introducing Relax
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Shin Yamamoto
January 25, 2018
Programming
640
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introducing Relax
Shin Yamamoto
January 25, 2018
More Decks by Shin Yamamoto
See All by Shin Yamamoto
Meet CoreDevice and devicectl
scenee
0
660
DocCのドキュメントをGithub Pagesで公開する
scenee
2
730
SwiftライブラリのObjC対応における落とし穴と回避策
scenee
0
350
Testing a constraint-based layout of UIView
scenee
1
1.4k
Playing Sheet presentation style on iOS 13
scenee
0
710
Fluid Interfacesの実践
scenee
4
1.7k
Potatotips#7: Box C String Tip
scenee
0
2.9k
Other Decks in Programming
See All in Programming
市販E-Readerを乗っ取れ 〜Embedded Swiftで電子ペーパーガジェットを制御する〜
trickart
0
230
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
2
540
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
The Rails Doctrine Decade
koic
2
460
SONY CISC-NEWS NWS-1750 + NWB-225 フレームバッファの NetBSD/news68k ドライバ実装 / OSC2026Hiroshima
tsutsui
0
170
Agents on Rails - Rails at Scale 2026
irinanazarova
0
320
Heart of Swift Concurrency
koher
0
1.1k
GitHubハンズオン講座 — 実務レベルのチーム開発のフローを身につけよう
junhat6
0
120
テストを司るデーモンに会いに行く 〜隔離した仮想マシンでテストを通すまで〜
h1d3mun3
1
600
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
570
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
320
iOS 27でニュースアプリはどう変わる!? 〜日経電子版の新機能対応と、開発事例から〜
lynnswap
7
13k
Featured
See All Featured
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
780
The Curse of the Amulet
leimatthew05
3
15k
Code Review Best Practice
trishagee
74
20k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
300
Making Projects Easy
brettharned
120
6.8k
Accessibility Awareness
sabderemane
1
230
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Skip the Path - Find Your Career Trail
mkilby
1
240
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
290
Raft: Consensus for Rubyists
vanstee
142
7.7k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
Transcript
Introducing Relax - A release tool for Xcode - SCENEE
2018.1.24 @potatotips #47 1
Overview πЀψϤϕ ͲRelaxΨ֢͵΄͡Ҙ Relaxͽ֜͢ͽͣΡ΄͡Ҙ Demo Advanced usage 2
iOS App΄Build, Release, SupportΨΘ;䮭Ѻ Relax's πЀψϤϕ 3
ͩΩͩ;΅͘ΠΔͱΩ͡Ҙ xcodebuildͽ̵Automatic Signing / Manual Signing΅Δ͵ xcodebuildͽ΅̵Ͳ͡code sign error (Xcodeͽ΅OK)
IPA̵మਧ;吖ΡProvisioning Profile͢فͼ͚Ρ̶Ωͽ❓ μ϶αίЀϕ͡Ο̵̿ίϤϷ͢αЀφϕЄϸͽ͚ͣ̀;μϹЄϭ͢ ෛ͚ͭίϤϷϤϺυδμϕͪ;̵䶅ࢧݶͮΞ͜φμϷϤϕ䨗͚ͼ͚Ρ ϠϸϖϫτЀͽ̵㳨΄Ո͢αЀφϕЄϸͭ͵CertificateͽϠϸϖ͢䃪Ρ 4
ίϤϷΨϠϸϖɾᯈͭ͵͚ Ͷͧ΄.... 5
ͳͩͽ̵Relax! 6
Relaxͽ֜͢ͽͣΡҘ CodeSignε϶Є䘁ΔͫΡͩ;̵ͥIPAϢήαϸΨ֢౮ 愢櫏ϠϸϖφμϷϤϕӧᥝ YAMLͽ̵ᥝկΨਯͯΡͶͧ IPA΄ٖΨ䭥戣ͽͣΡ My KeychainڔΠ๊͞ͼ̵厏हׁਂͱͰϠϸϖͽͣΡ 7
fastlane;΄晅͚΅Ҙ Easy: ϠϸϖϫτЀ΄厏हᓕቘ͢䮭 Go/Bashͽ䨗͡͠Π̵brewͽαЀφϕЄϸͶͧѺ Ruby΄厏ह戔ਧͽ̵ႰԤͯΡͩ;͚͢ Small: πЀϞμϕ xcodebuildͿ΄command line developer
tools΄϶ϐϞЄϑЄϸ RelfileΨزxcodebuildͽ΄PureϠϸϖ䜟Ρͩ;ɾͳ΄ᭋΘ墋㶨 Apple Developer Portal;΄ള姆ͭ Xcode Configuration/ xcconfig΄䃀ྠΨᴠͨΡ Readable: Υ͡ΠΚ͚ͯ YAMLਯϢήαϸͽก۸ͫΡ͵Η̵抑ͽΘቘᥴͽͣΡ 8
fastlane;΄晅͚΅Ҙ ;΅̵͚͞অΕ΄㺔氂 Ҋͺ΄晝䝑ᙏ;ͭͼ̵ͲΈ͠手ͥͶ͚ͫ❗ 9
Relax΄䱛ᚆ Relfile;͚͜YAML୵ୗ΄Ϡϸϖ戔ਧϢήαϸ CodeSign戔ਧ == Team ID;Provisioning Profile Build Settings΄θφόϫαχ=> Configuration͢䃀͚͞
Info.plist΄θφόϫαχ => PlistBuddyӧᥝ Export Option plistᛔ㵕ኞ౮ Relfileٖͽ̵Bash΄厏ह䄜හΨڥአݢᚆ Manual Signingᛔ㵕ͽڔ๊ ValidateπϫЀϖͽ̵IPAΨ墋㶨䭥戣 (CodeSign, Bundle IDͿ΄ෆݳ) ϮЀϓϗЀφ͢ฃ 10
Relfile version: '2' workspace: SampleApp distributions: adhoc: scheme: SampleApp configuration:
Debug # codesign team_id: ABCDEFGHIJ provisioning_profile: "Relax Adhoc" bundle_version: $BUILD_NUMBER bundle_identifier: com.scenee.SampleApp.adhoc info_plist: CFBundleName: "SmapleApp(Debug)" build_settings: OTHER_SWIFT_FLAGS: - "-DMOCK" # Export Option plist export_options: method: ad-hoc compileBitcode: false 11
Installation $ cd /path/to/your/project $ # Generate your Relfile template
$ relax init $ brew tap SCENEE/homebrew-formulae $ brew install relax 12
Getting Started $ # Generate xcarchive $ relax archive adhoc
$ # Export an ipa file $ relax export adhoc̴</path/to/xcarchive> $ # Print a IPA file path $ relax show adhoc ipa /path/to/ipa $ # Validate the ipa file $ relax validate /path/to/ipa ... Validation Successful 13
Demo 14
Advanced Universal FrameworkΘӞ咲ͽਠԧ => ͠Δ͚ͮ΄φμϷϤϕӧᥝ IPA/xcarchive΄ٚᗟݷ 䌑አKeychain΄֢౮ɾ戣ก䨗΄᭄ےɾڔ๊ Provisioning Profile΄᭄ےɾڷᴻɾ䭥ᔱ 15
Advanced $ # Generate an universal framework $ relax build
<distribution> $ # Print a list of provisioning profiles $ relax profile ls $ # Search a provisioning profile $ relax profile find "Greate App AdHoc" $ # Create a my keychain $ relax keychain create my.keychain -p <pass> $ # Add code sign identities $ relax keychain add <p12> ... $ # Use my.keychain $ relax keychain use my.keychain -p <pass> $ # Go back to login.keychain $ relax keychain reset 16
Thank you! Welcome to your Pull Request and Bug report!
Githubͽ⭐Ψ͚͵ͶͧΡ;̵ۜΕΠΔͯѺ 17