I hereby claim:
- I am tiagomartinho on github.
- I am tiago32 (https://keybase.io/tiago32) on keybase.
- I have a public key ASDsmbBpPeSZxQa7jRAyyTSZ4wk1DsQ73ECM72FAeiDEjgo
To claim this, I am signing this object:
| import UIKit | |
| struct LightTheme: Theme { | |
| var name: ThemeName { | |
| return .light | |
| } | |
| var tintColor: UIColor { | |
| return #colorLiteral(red: 0.2392156869, green: 0.6745098233, blue: 0.9686274529, alpha: 1) |
| import UIKit | |
| protocol Theme { | |
| var name: ThemeName { get } | |
| var tintColor: UIColor { get } | |
| var barStyle: UIBarStyle { get } | |
| var keyboardAppearance: UIKeyboardAppearance { get } | |
| var backgroundColor: UIColor { get } | |
| var secondaryBackgroundColor: UIColor { get } | |
| var negativeBackgroundColor: UIColor { get } |
| enum ThemeName: String { | |
| case light, dark, black | |
| var theme: Theme { | |
| switch self { | |
| case .light: | |
| return LightTheme() | |
| case .dark: | |
| return DarkTheme() |
| WORKSPACE=MyWorkspace.xcworkspace | |
| PROJECT=MyProject.xcodeproj | |
| SCHEME=iOS | |
| APP_VERSION=1.0 | |
| PLATFORM=ios | |
| APP_IDENTIFIER=com.tm.app |
| fastlane_require ‘dotenv’ | |
| before_all do | |
| cocoapods(clean: true, repo_update: true) | |
| run_tests(workspace: ENV[‘WORKSPACE’], scheme: ENV[‘SCHEME’]) | |
| end | |
| desc “Push a new release build to the App Store” | |
| lane :release do | |
| increment_build_number(build_number: ENV[‘BITRISE_BUILD_NUMBER’], xcodeproj: ENV[‘PROJECT’]) | |
| build_app(workspace: ENV[‘WORKSPACE’], scheme: ENV[‘SCHEME’], configuration: “Release”, clean: true) | |
| upload_to_app_store(skip_metadata: true, skip_screenshots: true, platform: ENV[‘PLATFORM’], app_identifier: ENV[‘APP_IDENTIFIER’], run_precheck_before_submit: false) |
I hereby claim:
To claim this, I am signing this object:
| instruments -s devices | |
| xcodebuild -workspace $WORKSPACE.xcworkspace -scheme $SCHEME -destination 'platform=iOS,id=$AN_ID' clean test |
| import UIKit | |
| extension UIViewController { | |
| func trackScreen(name: String) { | |
| if let tracker = GAI.sharedInstance().defaultTracker { | |
| tracker.set(kGAIScreenName, value: name) | |
| let screenView = GAIDictionaryBuilder.createScreenView().build() | |
| tracker.send(screenView as [NSObject : AnyObject]) |
| Intro | |
| Mindset, best practices, etc. | |
| The future of TV vs Mobile, different rates of innovation | |
| Apps: Media (Netflix, youtube, HBO, etc.) -> optimised for the apple tv | |
| Zoova, fitness | |
| Gilt shopping | |
| Games, disney infinity (like console gaming) | |
| Does not commute | |
| Alto adventure | |
| Madeira , digital comic book |
| import UIKit | |
| extension UIView { | |
| func addView(viewToAdd:UIView){ | |
| viewToAdd.frame = self.bounds | |
| viewToAdd.autoresizingMask = [UIViewAutoresizing.FlexibleWidth, UIViewAutoresizing.FlexibleHeight] | |
| self.addSubview(viewToAdd) | |
| } | |
| } |