Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
187 lines (117 sloc) 7.72 KB

Don't know what Zype is? Check this overview.

Zype Android Template

This SDK allows you to set up an eye-catching, easy to use Android video streaming app integrated with the Zype platform with minimal coding and configuration. The app is built with Java and Zype API. With minimal setup you can have your Android up and running. An example of fully functional app that is using a Zype sandbox account.

Prerequisites

  • Android Studio

Installing

1. Clone the repo.

2. Open Android Studio and create new Project from Version Control

3. This SDK has two app variants - Zype demo app and template app.

To build Zype demo app select zypeDebug build variant for app module

Note: To build custom app based on the template see this section.

4. Build project and run the app on a connected device or in the emulator.

Supported Features

  • Populates your app with content from enhanced playlists
  • Video Search
  • Live Streaming videos
  • Downloading videos
  • Video Favorites
  • Dynamic theme colors
  • Resume watch functionality
  • Closed Caption Support

Monetizations Supported

  • Pre-roll Ads (VAST)
  • Midroll ads
  • Universal SVOD via login
  • Native SVOD via In App Purchases
  • Marketplace connect (Native to universal SVOD)

Creating Custom App Based on the Template

1. Select templateDebug (or templateRelease) build variant for app module

2. Replace following placeholders with actual values:

build.gradle

<APPLICATION_ID> - Package name for your app. Used to identify your app on the device and in the marketplace. Must be unique and usually is following com.yourdomain.android pattern.

ZypeSettings.java

Use respective values from your account in Zype platform for:

<APP_KEY>

<CLIENT_ID>

<ROOT_PLAYLIST_ID>

Use true or false values for:

<NATIVE_SUBSCRIPTION_ENABLED>

<NATIVE_TO_UNIVERSAL_SUBSCRIPTION_ENABLED>

<SUBSCRIBE_TO_WATCH_AD_FREE_ENABLED>

<UNIVERSAL_SUBSCRIPTION_ENABLED>

<UNIVERSAL_TVOD>

<AUTOPLAY>

<BACKGROUND_AUDIO_PLAYBACK_ENABLED>

<BACKGROUND_PLAYBACK_ENABLED>

<DOWNLOADS_ENABLED>

<DOWNLOADS_ENABLED_FOR_GUESTS>

<DEVICE_LINKING>

<DEVICE_LINKING_URL> - Update with your url for device linking if you set DEVICE_LINKING to true. Otherwise set empty string.

<THEME> - Use constants ZypeConfiguration.THEME_LIGHT or ZypeConfiguration.THEME_DARK

colors.xml, values-night/colors.xml

<BRAND_COLOR> - Accent color in ##RRGGBB format. Used for highlighting buttons and widgets.

strings.xml

<APP_NAME>

3. Update following resources:

splash_logo.png

This image is used on the splash screen when app is starting.

mipmap-mdpi/ic_launcher.png, mipmap-hdpi/ic_launcher.png, mipmap-xhdpi/ic_launcher.png, mipmap-xxhdpi/ic_launcher.png

The icon of your app. You can use icon generator in Android Studio to produce icons with required dimensions from 512x512 source icon image.

Optional

4. Check out this guide for additional UI customization options.

5. Update your social network ids in ZypeSettings.java

6. To use Google Analytics:

7. To use Fabric:

        <meta-data
           android:name="io.fabric.ApiKey"
           android:value="<YOUR KEY HERE>" />
       -->
initFabric();
apply plugin: 'io.fabric'

8. Integration of OneSignal push notification:

    productFlavors {
        ...
        template {
            ...
            manifestPlaceholders = [manifestApplicationId: "${applicationId}",
                                    // TODO: Provide valid app_id and google_project_number for OneSignal
                                    onesignal_app_id: '',
                                    onesignal_google_project_number: 'REMOTE']
        }
    }

9. Integration of Amazon Pinpoint push notification:

  • Uncomment apply plugin: 'com.google.gms.google-services' in app/build.gradle
  • Set AWSPinpoint attribute in zype_app_configuration.json file to true
  • Set up your project in the Amazon Mobile Hub, turn on Pinpoint service for the project and generate AWS configuration file for your app. Then put awsconfiguration.json file to the app/src/template/res/raw folder

Built With

Contributing

Please submit pull requests to us.

Versioning

For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details

You can’t perform that action at this time.