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
Build an iOS app from an iPad
Search
Adrien Humilière
June 30, 2022
Programming
0
20
Build an iOS app from an iPad
Presented at CocoaHeads Paris in June 2022
Adrien Humilière
June 30, 2022
Tweet
Share
More Decks by Adrien Humilière
See All by Adrien Humilière
Something about Xcode ^^
adhumi
0
97
Inside Brut.
adhumi
0
81
Localization done bien
adhumi
1
220
Test and distribute an iOS app with Gitlab CI
adhumi
0
320
Pushing Forward iOS Notifications
adhumi
0
180
Good practices for iOS releases
adhumi
0
200
What's new in iOS 9
adhumi
0
220
Rebranding an iOS app
adhumi
0
240
Cocoapods for private libraries
adhumi
0
110
Other Decks in Programming
See All in Programming
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
210
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.1k
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
650
CA.swift19 恋するAIアプリ開発の裏側
oskmr
0
370
Azure OpenAI Serviceのプロンプトエンジニアリング入門
tomokusaba
3
800
VS Code をプロダクトにどう取り込むか
onomax
1
480
Komplexe Oberflächen mit SVG und der Web Animation API
joergneumann
0
680
Ruby GitHub Packages
bkuhlmann
0
630
デフォルトにして至高、RubyMineの大好きな所
ruzia
0
470
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
970
Snowflakeで眠ったデータを起こそう!
estie
0
120
"config" ってなんだ? / What is "config"?
okashoi
0
240
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
16
3.9k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Why Our Code Smells
bkeepers
PRO
331
56k
The Pragmatic Product Professional
lauravandoore
25
5.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
274
13k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
Product Roadmaps are Hard
iamctodd
44
9.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
In The Pink: A Labor of Love
frogandcode
138
21k
GraphQLとの向き合い方2022年版
quramy
32
12k
Transcript
None
None
None
None
None
None
Swift Playgrounds 4.0
None
None
Faire une app depuis un iPad
Adrien Humilière @adhumi Engineering Manager @ Dashlane
None
None
None
None
None
None
None
xcodeproj
App.swiftpm
App.swiftpm → Package.swift
// swift-tools-version: 5.6 // WARNING: // This file is automatically
generated. // Do not edit it by hand because the contents will be replaced. import PackageDescription import AppleProductTypes let package = Package( name: "Chapelle", platforms: [ .iOS("15.2") ], ... dependencies: [ .package(url: "https://github.com/scinfu/SwiftSoup.git", "2.3.4"..<"3.0.0") ], targets: [ .executableTarget( name: "AppModule", dependencies: [ .product(name: "SwiftSoup", package: "SwiftSoup") ], path: ".", resources: [ .process("Resources") ] ) ] )
// swift-tools-version: 5.6 // WARNING: // This file is automatically
generated. // Do not edit it by hand because the contents will be replaced. import PackageDescription import AppleProductTypes let package = Package( name: "Chapelle", platforms: [ .iOS("15.2") ], ... dependencies: [ .package(url: "https://github.com/scinfu/SwiftSoup.git", "2.3.4"..<"3.0.0") ], targets: [ .executableTarget( name: "AppModule", dependencies: [ .product(name: "SwiftSoup", package: "SwiftSoup") ], path: ".", resources: [ .process("Resources") ] ) ] )
// swift-tools-version: 5.6 // WARNING: // This file is automatically
generated. // Do not edit it by hand because the contents will be replaced. import PackageDescription import AppleProductTypes let package = Package( name: "Chapelle", platforms: [ .iOS("15.2") ], ... dependencies: [ .package(url: "https://github.com/scinfu/SwiftSoup.git", "2.3.4"..<"3.0.0") ], targets: [ .executableTarget( name: "AppModule", dependencies: [ .product(name: "SwiftSoup", package: "SwiftSoup") ], path: ".", resources: [ .process("Resources") ] ) ] )
products: [ .iOSApplication( name: "Chapelle", targets: ["AppModule"], bundleIdentifier: "fr.adhumi.chapelledesbois", teamIdentifier:
"E873B24XVN", displayVersion: "4", bundleVersion: "15", appIcon: .asset("AppIcon"), accentColor: .asset("AccentColor"), supportedDeviceFamilies: [ .pad, .phone ], supportedInterfaceOrientations: [ .portrait, .landscapeRight, .landscapeLeft, .portraitUpsideDown(.when(deviceFamilies: [.pad])) ], capabilities: [ .outgoingNetworkConnections() ], appCategory: .travel ) ],
products: [ .iOSApplication( name: "Chapelle", targets: ["AppModule"], bundleIdentifier: "fr.adhumi.chapelledesbois", teamIdentifier:
"E873B24XVN", displayVersion: "4", bundleVersion: "15", appIcon: .asset("AppIcon"), accentColor: .asset("AccentColor"), supportedDeviceFamilies: [ .pad, .phone ], supportedInterfaceOrientations: [ .portrait, .landscapeRight, .landscapeLeft, .portraitUpsideDown(.when(deviceFamilies: [.pad])) ], capabilities: [ .outgoingNetworkConnections() ], appCategory: .travel ) ],
products: [ .iOSApplication( name: "Chapelle", targets: ["AppModule"], bundleIdentifier: "fr.adhumi.chapelledesbois", teamIdentifier:
"E873B24XVN", displayVersion: "4", bundleVersion: "15", appIcon: .asset("AppIcon"), accentColor: .asset("AccentColor"), supportedDeviceFamilies: [ .pad, .phone ], supportedInterfaceOrientations: [ .portrait, .landscapeRight, .landscapeLeft, .portraitUpsideDown(.when(deviceFamilies: [.pad])) ], capabilities: [ .outgoingNetworkConnections() ], appCategory: .travel ) ],
products: [ .iOSApplication( name: "Chapelle", targets: ["AppModule"], bundleIdentifier: "fr.adhumi.chapelledesbois", teamIdentifier:
"E873B24XVN", displayVersion: "4", bundleVersion: "15", appIcon: .asset("AppIcon"), accentColor: .asset("AccentColor"), supportedDeviceFamilies: [ .pad, .phone ], supportedInterfaceOrientations: [ .portrait, .landscapeRight, .landscapeLeft, .portraitUpsideDown(.when(deviceFamilies: [.pad])) ], capabilities: [ .outgoingNetworkConnections() ], appCategory: .travel ) ],
None
None
None
None
• Développement simple et rapide
• Développement simple et rapide • Autocomplétion efficace
• Développement simple et rapide • Autocomplétion efficace • Idéal
pour des devs débutants/amateurs
• Développement simple et rapide • Autocomplétion efficace • Idéal
pour des devs débutants/amateurs • iPad
None
• Peu de réglages
• Peu de réglages • Pas d’extensions
• Peu de réglages • Pas d’extensions • Peu de
détails sur les erreurs de build
• Peu de réglages • Pas d’extensions • Peu de
détails sur les erreurs de build • Source control
• Peu de réglages • Pas d’extensions • Peu de
détails sur les erreurs de build • Source control • Xcode Cloud !?
• Peu de réglages • Pas d’extensions • Peu de
détails sur les erreurs de build • Source control • Xcode Cloud !? • iPad
Qu’est ce que ça dit du futur du développement iOS
?
Merci de votre attention !
None