Moving from SDK 2.0

As you probably already know, the main difference between SDK 2.0 and SDK 3.0 is that now real Activities can be displayed on Electronic Paper Display (Epd) instead of BSActivities.

It is greatly simplifies development, because programmer can use real Activities instead of BSActivities.

The main new things:

1. There is no need to use Waveforms and Dithering concept. Now you can use updateModes. Please follow link to learn about updateModes: Simplified SDK

2. There is no EpdUtils class. Use "Epd" class instead of it.

3. All iteration with EpdManagerService (sending or receiving any Epd-related commands) is done via EpdManager class.

4. To start activity on Epd you need to start it with specific flag or add special meta-data to manifest file. Please follow link for defails: Managing applications on two screens

5. If you have widgets implemented for old SDK, you need to:

   5.1. Rename "backscreen-widget-provider" to "epd-widget-provider" in bs_widget's xml file

   5.2. Rename "com.yotadevices.yotaphone.bs_provider" to "com.yotadevices.epd_provider" in AndroidManifest.xml of your application

To start working with SDK 3.0 you need to:

1. Ensure that latest Android M software is installed;

2. Put into your build.gradle:

    allprojects {
        repositories {
            maven { url "http://fw.ydevices.com/maven" }
        }
    }
    dependencies {
        provided "com.yotadevices.libs.public:sdk:3.7.+"
    }

3. Put into your AndroidManifest.xml:

    <uses-library
     android:name="com.yotadevices.sdk"
     android:required="true" />

And you are good to go!