├── .idea ├── .name ├── copyright │ └── profiles_settings.xml ├── vcs.xml ├── modules.xml ├── runConfigurations.xml ├── compiler.xml ├── gradle.xml └── misc.xml ├── app ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── mipmap-hdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ │ └── ic_launcher.png │ │ │ ├── values │ │ │ │ ├── colors.xml │ │ │ │ ├── strings.xml │ │ │ │ ├── styles.xml │ │ │ │ └── dimens.xml │ │ │ ├── values-w820dp │ │ │ │ └── dimens.xml │ │ │ ├── menu │ │ │ │ └── menu_main.xml │ │ │ └── layout │ │ │ │ └── activity_main.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── neno0o │ │ │ │ └── uber_android_sdk │ │ │ │ ├── MyApplication.java │ │ │ │ └── MainActivity.java │ │ └── AndroidManifest.xml │ └── androidTest │ │ └── java │ │ └── com │ │ └── neno0o │ │ └── uber_android_sdk │ │ └── ApplicationTest.java ├── build.gradle ├── proguard-rules.pro └── app.iml ├── ubersdk ├── .gitignore ├── src │ ├── main │ │ ├── res │ │ │ ├── drawable │ │ │ │ ├── ubergray.png │ │ │ │ └── uberblack.png │ │ │ ├── values │ │ │ │ ├── strings.xml │ │ │ │ └── dimens.xml │ │ │ ├── layout │ │ │ │ └── authentication.xml │ │ │ └── values-w820dp │ │ │ │ └── dimens.xml │ │ ├── AndroidManifest.xml │ │ └── java │ │ │ └── com │ │ │ └── neno0o │ │ │ └── ubersdk │ │ │ ├── Exceptions │ │ │ ├── ErrorException.java │ │ │ ├── UnauthorizedException.java │ │ │ ├── InvalidPaymentException.java │ │ │ ├── RetryRequestException.java │ │ │ ├── ThirdPartyAccAssociatedException.java │ │ │ ├── FareExpiredException.java │ │ │ ├── ProductNotAllowedException.java │ │ │ ├── PayBalanceException.java │ │ │ ├── SurgeException.java │ │ │ ├── ForbiddenException.java │ │ │ ├── UserNotAllowedException.java │ │ │ ├── UnverifiedException.java │ │ │ ├── MissingPaymentMethod.java │ │ │ ├── UncofirmedEmailExceptions.java │ │ │ ├── NoDriversAvailableException.java │ │ │ └── MobileNumberConflictException.java │ │ │ ├── Endpoints │ │ │ ├── Models │ │ │ │ ├── Times │ │ │ │ │ ├── Times.java │ │ │ │ │ └── Time.java │ │ │ │ ├── Prices │ │ │ │ │ ├── Prices.java │ │ │ │ │ └── Price.java │ │ │ │ ├── Products │ │ │ │ │ ├── Products.java │ │ │ │ │ └── Product.java │ │ │ │ ├── Requests │ │ │ │ │ ├── ErrorResponses │ │ │ │ │ │ ├── Meta.java │ │ │ │ │ │ ├── ErrorResponse.java │ │ │ │ │ │ ├── Error.java │ │ │ │ │ │ └── SurgeConfirmation.java │ │ │ │ │ ├── MapRequest │ │ │ │ │ │ └── UberMapRequest.java │ │ │ │ │ ├── ReceiptRequest │ │ │ │ │ │ ├── Charges.java │ │ │ │ │ │ ├── ChargeAdjustments.java │ │ │ │ │ │ ├── SurgeCharge.java │ │ │ │ │ │ └── UberReceiptRequest.java │ │ │ │ │ ├── Location.java │ │ │ │ │ ├── EstimateRequest │ │ │ │ │ │ ├── Trip.java │ │ │ │ │ │ ├── UberEstimateRequest.java │ │ │ │ │ │ ├── UberEstimateBody.java │ │ │ │ │ │ └── EstimatePrice.java │ │ │ │ │ ├── Vehicle.java │ │ │ │ │ ├── Driver.java │ │ │ │ │ ├── UberStatus.java │ │ │ │ │ ├── UberRequest.java │ │ │ │ │ └── UberRequestBody.java │ │ │ │ ├── Promotions │ │ │ │ │ └── Promotion.java │ │ │ │ ├── UserActivity │ │ │ │ │ ├── UserActivity.java │ │ │ │ │ └── UserHistory.java │ │ │ │ └── UserProfile │ │ │ │ │ └── User.java │ │ │ └── Service │ │ │ │ └── UberAPIService.java │ │ │ ├── UberURLs.java │ │ │ ├── Sandbox │ │ │ ├── Models │ │ │ │ ├── SandboxRequestBody.java │ │ │ │ └── SandboxProductBody.java │ │ │ └── Service │ │ │ │ └── UberSandboxService.java │ │ │ ├── Widgets │ │ │ └── UberButton.java │ │ │ ├── Auth │ │ │ ├── Models │ │ │ │ └── AccessToken.java │ │ │ └── Service │ │ │ │ └── UberAuthService.java │ │ │ ├── Activites │ │ │ └── Authentication.java │ │ │ └── Uber.java │ └── androidTest │ │ └── java │ │ └── com │ │ └── neno0o │ │ └── ubersdk │ │ └── ApplicationTest.java ├── proguard-rules.pro ├── build.gradle └── ubersdk.iml ├── settings.gradle ├── .gitignore ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradle.properties ├── Uber-Android-SDK.iml ├── gradlew.bat ├── gradlew ├── README.md └── LICENSE.md /.idea/.name: -------------------------------------------------------------------------------- 1 | Uber-Android-SDK -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /ubersdk/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app', ':ubersdk' 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .gradle 2 | /local.properties 3 | /.idea/workspace.xml 4 | /.idea/libraries 5 | .DS_Store 6 | /build 7 | -------------------------------------------------------------------------------- /.idea/copyright/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /ubersdk/src/main/res/drawable/ubergray.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/ubersdk/src/main/res/drawable/ubergray.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /ubersdk/src/main/res/drawable/uberblack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/ubersdk/src/main/res/drawable/uberblack.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Neno0o/Uber-Android-SDK/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | #282935 5 | 6 | -------------------------------------------------------------------------------- /ubersdk/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | UberSDK 3 | 4 | Settings 5 | 6 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /ubersdk/src/main/res/layout/authentication.xml: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | Uber-Android-SDK 3 | 4 | Hello world! 5 | Settings 6 | 7 | -------------------------------------------------------------------------------- /ubersdk/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /ubersdk/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 6 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Tue Nov 10 14:38:20 EET 2015 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip 7 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/ErrorException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * An unknown error has occurred. 5 | */ 6 | 7 | public class ErrorException extends Exception { 8 | 9 | public ErrorException() { 10 | super("HTTP 409 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/UnauthorizedException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * Unauthorized the request requires user authentication (not logged in). 5 | */ 6 | 7 | public class UnauthorizedException extends Exception { 8 | 9 | public UnauthorizedException() { 10 | super("HTTP 401 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/InvalidPaymentException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The rider's payment method is invalid. The user must update the billing info. 5 | */ 6 | 7 | public class InvalidPaymentException extends Exception { 8 | 9 | public InvalidPaymentException() { 10 | super("HTTP 400 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- 1 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /ubersdk/src/main/res/values-w820dp/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 64dp 6 | 7 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/RetryRequestException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * An error has occurred when the attempting to request a product. 5 | * Please reattempt the request on behalf of the user. 6 | */ 7 | public class RetryRequestException extends Exception { 8 | 9 | public RetryRequestException() { 10 | super("HTTP 409 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/ThirdPartyAccAssociatedException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The supplied third party account is already associated with existing Uber account. 5 | */ 6 | 7 | public class ThirdPartyAccAssociatedException extends Exception { 8 | 9 | public ThirdPartyAccAssociatedException() { 10 | super("HTTP 422 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/FareExpiredException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The fare has expired for the requested product. Please get estimates again, 5 | * confirm the new fare, and then re-request. 6 | */ 7 | 8 | public class FareExpiredException extends Exception { 9 | 10 | public FareExpiredException() { 11 | super("HTTP 409 error"); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /app/src/main/java/com/neno0o/uber_android_sdk/MyApplication.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.uber_android_sdk; 2 | 3 | import com.neno0o.ubersdk.Uber; 4 | 5 | public class MyApplication extends android.app.Application { 6 | 7 | @Override 8 | public void onCreate() { 9 | 10 | Uber.getInstance().init("CLIENT_ID", 11 | "CLIENT_SECRET", 12 | "SERVER_TOKEN", 13 | "REDIRECT_URL"); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/ProductNotAllowedException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The product being requested is not available to the user. Have them select a different product to successfully make a request. 5 | */ 6 | 7 | public class ProductNotAllowedException extends Exception { 8 | 9 | public ProductNotAllowedException() { 10 | super("HTTP 403 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /ubersdk/src/androidTest/java/com/neno0o/ubersdk/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/PayBalanceException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The rider has an outstanding balance and must update her account settings 5 | * by using the native mobile application or by visiting 6 | * https://riders.uber.com. 7 | */ 8 | 9 | public class PayBalanceException extends Exception { 10 | 11 | public PayBalanceException() { 12 | super("HTTP 400 error"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/SurgeException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * Surge pricing is currently in effect for this product. Please have the user confirm surge pricing by 5 | * sending them to the surge_confirmation_href described in the Request Tutorial. 6 | */ 7 | public class SurgeException extends Exception { 8 | 9 | public SurgeException() { 10 | super("HTTP 409 error"); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/src/androidTest/java/com/neno0o/uber_android_sdk/ApplicationTest.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.uber_android_sdk; 2 | 3 | import android.app.Application; 4 | import android.test.ApplicationTestCase; 5 | 6 | /** 7 | * Testing Fundamentals 8 | */ 9 | public class ApplicationTest extends ApplicationTestCase { 10 | public ApplicationTest() { 11 | super(Application.class); 12 | } 13 | } -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/ForbiddenException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * This user is forbidden from making a request at this time and should consult our support team by visiting 5 | * https://help.uber.com 6 | * or by emailing support@uber.com. 7 | */ 8 | 9 | public class ForbiddenException extends Exception{ 10 | 11 | public ForbiddenException() { 12 | super("HTTP 403 error"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/UserNotAllowedException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The rider has an outstanding balance and must update her account settings by using 5 | * the native mobile application or by visiting 6 | * https://riders.uber.com. 7 | */ 8 | 9 | public class UserNotAllowedException extends Exception { 10 | 11 | public UserNotAllowedException() { 12 | super("HTTP 400 error"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/UnverifiedException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The user hasn’t confirmed their mobile number. Instruct the user to confirm 5 | * their mobile phone number within the native mobile application or by visiting 6 | * https://riders.uber.com. 7 | */ 8 | 9 | public class UnverifiedException extends Exception { 10 | 11 | public UnverifiedException() { 12 | super("HTTP 403 error"); 13 | } 14 | 15 | } 16 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/MissingPaymentMethod.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The rider must have at least one payment method on file to request a car. The rider must add a payment method by 5 | * using the native mobile application or by visiting 6 | * https://riders.uber.com. 7 | */ 8 | 9 | public class MissingPaymentMethod extends Exception { 10 | 11 | public MissingPaymentMethod() { 12 | super("HTTP 400 error"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/UncofirmedEmailExceptions.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * The user hasn’t confirmed their email address. Instruct the user 5 | * to confirm their email address within the native mobile application or by visiting 6 | * https://riders.uber.com. 7 | */ 8 | 9 | public class UncofirmedEmailExceptions extends Exception { 10 | 11 | public UncofirmedEmailExceptions() { 12 | super("HTTP 400 error"); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Exceptions/NoDriversAvailableException.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Exceptions; 2 | 3 | /** 4 | * No drivers available for requested product at time of request. Either instruct the rider to 5 | * select a different product to request or to wait until more drivers become available. 6 | */ 7 | 8 | public class NoDriversAvailableException extends Exception { 9 | 10 | public NoDriversAvailableException() { 11 | super("HTTP 409 error"); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /ubersdk/src/main/java/com/neno0o/ubersdk/Endpoints/Models/Times/Times.java: -------------------------------------------------------------------------------- 1 | package com.neno0o.ubersdk.Endpoints.Models.Times; 2 | 3 | import com.google.gson.annotations.Expose; 4 | import com.google.gson.annotations.SerializedName; 5 | 6 | import java.util.List; 7 | 8 | public class Times { 9 | 10 | @Expose 11 | @SerializedName("times") 12 | private List