- User can view a list of movies from Rotten Tomatoes. Poster images must be loading asynchronously.
- User can view movie details by tapping on a cell
- User sees loading state while waiting for movies API. You can use one of the 3rd party libraries at cocoacontrols.com.
- User sees error message when there's a networking error. You may not use UIAlertView to display the error. See this screenshot for what the error message should look like: network error screenshot.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| enum class AnimatedOnboardingVariant{ CLASSIC, ANIMATED } | |
| object AnimatedOnboarding : ExperimentType<AnimatedOnboardingVariant> { | |
| override val description = "🎬 Animated Onboarding" | |
| override val name = "animated_onboarding" | |
| override val defaultVariant = CLASSIC | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| when(experimentation.variantForExperiment(AnimatedOnboarding)) { | |
| CLASSIC -> { | |
| // show classic onboarding | |
| experimentation.trackImpression(AnimatedOnboarding) | |
| } | |
| ANIMATED -> { | |
| // show new animated onboarding | |
| experimentation.trackImpression(AnimatedOnboarding) | |
| } | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Rotten Tomatoes iOS app | |
| ======================= | |
|  | |
| * [x] User can view a list of movies from Rotten Tomatoes. Poster images must be loading asynchronously. | |
| * [x] User can view movie details by tapping on a cell | |
| * [x] User sees loading state while waiting for movies API. You can use one of the 3rd party libraries at cocoacontrols.com. | |
| * [x] User sees error message when there's a networking error. You may not use UIAlertView to display the error. See this screenshot for what the error message should look like: network error screenshot. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| public interface Api { | |
| @POST("/users/sign_in") Observable<Response> login(@Body Login login); | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env ruby | |
| require 'json' | |
| require 'base64' | |
| require 'openssl' | |
| require 'digest/sha1' | |
| aws_access_key = "AKIAJ7YGAAAGKXEVQX2Q" | |
| aws_secret_key = "xxxxxx" | |
| bucket_name = "bucket-name" | |
| s3_directory = '' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| public class AWSClient implements AWSApi { | |
| private final AWSApi awsApi; | |
| @Inject OkHttpClient client; | |
| @Inject ErrorHandler errorHandler; | |
| public AWSClient(final DottieApplication application) { | |
| application.inject(this); | |
| RestAdapter restAdapter = new RestAdapter.Builder().setClient(new OkClient(client)) | |
| .setEndpoint(Constants.AWS_ENDPOINT) | |
| .setErrorHandler(errorHandler) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| def gapi_authorization(code) | |
| # Read in the client secrets | |
| client_secrets = { | |
| temporary_credential_uri: 'https://www.google.com/accounts/OAuthGetRequestToken', | |
| authorization_uri: 'https://accounts.google.com/o/oauth2/auth', | |
| token_credential_uri: 'https://accounts.google.com/o/oauth2/token', | |
| client_id: '711346440759-xxx.apps.googleusercontent.com', | |
| client_secret: 'xxx', | |
| redirect_uris: [ "oob" ] | |
| } |
