Skip to content

Commit

Permalink
Merge pull request #23 from ITVlab/colortv
Browse files Browse the repository at this point in the history
Colortv
  • Loading branch information
Fleker committed Oct 23, 2016
2 parents 04a3cd7 + 5b11126 commit f39e6f8
Show file tree
Hide file tree
Showing 12 changed files with 196 additions and 159 deletions.
34 changes: 28 additions & 6 deletions app/build.gradle
@@ -1,16 +1,15 @@
apply plugin: 'com.android.application'


android {
compileSdkVersion 24
buildToolsVersion "24.0.0"
buildToolsVersion "24.0.2"

defaultConfig {
applicationId "news.androidtv.tvapprepo"
minSdkVersion 21
targetSdkVersion 24
versionCode 1
versionName "0.0.1"
versionCode 2
versionName "1.1.0"
jackOptions {
enabled true
}
Expand All @@ -27,18 +26,41 @@ android {
}
}

buildscript {
repositories {
mavenCentral()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
classpath 'io.fabric.tools:gradle:1.22.0'
}
}

apply plugin: 'io.fabric'

repositories {
mavenCentral()
maven { url 'https://maven.fabric.io/public' }
}


dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:recyclerview-v7:24.2.1'
compile 'com.android.support:leanback-v17:24.2.1'
compile 'com.android.support:appcompat-v7:24.2.1'

compile 'com.google.firebase:firebase-database:9.4.0'
compile 'com.google.android.gms:play-services-ads:9.4.0'
compile 'com.google.firebase:firebase-database:9.6.1'
compile 'com.google.android.gms:play-services-ads:9.6.1'

compile 'com.colortv:android-sdk:1.6.0'
compile 'com.github.bumptech.glide:glide:3.4.0'
compile 'com.afollestad.material-dialogs:core:0.9.0.2'

compile('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
transitive = true;
}
}

apply plugin: 'com.google.gms.google-services'
3 changes: 3 additions & 0 deletions app/fabric.properties
@@ -0,0 +1,3 @@
#Contains API Secret used to validate your application. Commit to internal source control; avoid making secret public.
#Fri Oct 21 21:23:32 EDT 2016
apiSecret=e9a5cc1704503d82ba5e97ce66f40ba38972ff71c11134713e447a7ec8cc160f
4 changes: 4 additions & 0 deletions app/src/main/AndroidManifest.xml
Expand Up @@ -46,6 +46,10 @@
android:resource="@xml/provider_paths"/>
</provider>

<meta-data
android:name="io.fabric.ApiKey"
android:value="dfe843f8af6acfe924ff6efa0c816fda4ece9f5c" />

</application>

</manifest>
17 changes: 9 additions & 8 deletions app/src/main/java/news/androidtv/tvapprepo/PrivateUtils.java
@@ -1,8 +1,9 @@
package news.androidtv.tvapprepo;

/**
* Created by Nick on 10/21/2016.
*/

public class PrivateUtils {
}
package news.androidtv.tvapprepo;

/**
* Created by Nick on 10/21/2016.
*/

public class PrivateUtils {
public static final String COLOR_TV_KEY = "6290e438-a188-4ae9-a8bc-4e23e1b97cbd";
}
Expand Up @@ -17,6 +17,9 @@
import android.app.Activity;
import android.os.Bundle;

import com.crashlytics.android.Crashlytics;

import io.fabric.sdk.android.Fabric;
import news.androidtv.tvapprepo.R;

/*
Expand All @@ -30,6 +33,7 @@ public class MainActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Fabric.with(this, new Crashlytics());
checkSelfVersion();
}

Expand Down
@@ -1,70 +1,70 @@
package news.androidtv.tvapprepo.download;

import android.app.Activity;

import com.colortv.android.AdPlacement;
import com.colortv.android.ColorTvAdListener;
import com.colortv.android.ColorTvError;
import com.colortv.android.ColorTvSdk;

/**
* Created by Nick on 9/23/2016.
*/
public abstract class AbstractDownloadHelper {
private static final double AD_RATE = 1/1;
private static final boolean mDisableAds = false;

private Activity mActivity;

private ColorTvAdListener mListener = new ColorTvAdListener() {
@Override
public void onAdLoaded(String placement) {
ColorTvSdk.showAd(placement);
}

@Override
public void onAdError(String placement, ColorTvError colorTvError) {
}

@Override
public void onAdClosed(String placement, boolean watched) {
}

@Override
public void onAdExpired(String placement) {
}
};

protected AbstractDownloadHelper() {

}

public AbstractDownloadHelper initialize(Activity activity) {
mActivity = activity;
ColorTvSdk.init(activity, getAppId());
ColorTvSdk.setRecordAudioEnabled(false);
ColorTvSdk.onCreate();
ColorTvSdk.registerAdListener(mListener);
return this;
}

public void destroy() {
ColorTvSdk.onDestroy();
}

public AbstractDownloadHelper startDownload(String url) {
startDownload(url, AdPlacement.BETWEEN_LEVELS);
return this;
}

public AbstractDownloadHelper startDownload(String url, String adType) {
// Starts download
// Also loads ad
if (!mDisableAds && Math.random() < AD_RATE) {
ColorTvSdk.loadAd(adType);
}
return this;
}

public abstract String getAppId();
}
package news.androidtv.tvapprepo.download;

import android.app.Activity;

import com.colortv.android.AdPlacement;
import com.colortv.android.ColorTvAdListener;
import com.colortv.android.ColorTvError;
import com.colortv.android.ColorTvSdk;

/**
* Created by Nick on 9/23/2016.
*/
public abstract class AbstractDownloadHelper {
private static final double AD_RATE = 1/1;
private static final boolean mDisableAds = false;

private Activity mActivity;

private ColorTvAdListener mListener = new ColorTvAdListener() {
@Override
public void onAdLoaded(String placement) {
ColorTvSdk.showAd(placement);
}

@Override
public void onAdError(String placement, ColorTvError colorTvError) {
}

@Override
public void onAdClosed(String placement, boolean watched) {
}

@Override
public void onAdExpired(String placement) {
}
};

protected AbstractDownloadHelper() {

}

public AbstractDownloadHelper initialize(Activity activity) {
mActivity = activity;
ColorTvSdk.init(activity, getAppId());
ColorTvSdk.setRecordAudioEnabled(false);
ColorTvSdk.onCreate();
ColorTvSdk.registerAdListener(mListener);
return this;
}

public void destroy() {
ColorTvSdk.onDestroy();
}

public AbstractDownloadHelper startDownload(String url) {
startDownload(url, AdPlacement.BETWEEN_LEVELS);
return this;
}

public AbstractDownloadHelper startDownload(String url, String adType) {
// Starts download
// Also loads ad
if (!mDisableAds && Math.random() < AD_RATE) {
ColorTvSdk.loadAd(adType);
}
return this;
}

public abstract String getAppId();
}
@@ -1,68 +1,68 @@
package news.androidtv.tvapprepo.download;

import android.app.Activity;

import java.io.File;

import news.androidtv.tvapprepo.PrivateUtils;
import tv.puppetmaster.tinydl.PackageInstaller;

/**
* Created by Nick on 9/23/2016.
*/
public class ApkDownloadHelper extends AbstractDownloadHelper {
private PackageInstaller mPackageInstaller;

public ApkDownloadHelper(Activity activity) {
initialize(activity, null);
}

public ApkDownloadHelper initialize(Activity activity, PackageInstaller.DownloadListener listener) {
super.initialize(activity);
mPackageInstaller = PackageInstaller.initialize(activity);
if (listener != null) {
mPackageInstaller.addListener(listener);
}
return this;
}

@Override
public void destroy() {
super.destroy();
mPackageInstaller.destroy();
}

@Override
public AbstractDownloadHelper startDownload(String url) {
mPackageInstaller.wget(url);
return super.startDownload(url);
}

@Override
public AbstractDownloadHelper startDownload(String url, String adType) {
mPackageInstaller.wget(url);
return super.startDownload(url, adType);
}

public PackageInstaller getPackageInstaller() {
return mPackageInstaller;
}

@Override
public String getAppId() {
return PrivateUtils.COLOR_TV_KEY;
}

// Wrapper methods
public void install(File file) {
mPackageInstaller.install(file);
}

public void addListener(PackageInstaller.DownloadListener listener) {
mPackageInstaller.addListener(listener);
}

public void removeListener(PackageInstaller.DownloadListener listener) {
mPackageInstaller.removeListener(listener);
}
}
package news.androidtv.tvapprepo.download;

import android.app.Activity;

import java.io.File;

import news.androidtv.tvapprepo.PrivateUtils;
import tv.puppetmaster.tinydl.PackageInstaller;

/**
* Created by Nick on 9/23/2016.
*/
public class ApkDownloadHelper extends AbstractDownloadHelper {
private PackageInstaller mPackageInstaller;

public ApkDownloadHelper(Activity activity) {
initialize(activity, null);
}

public ApkDownloadHelper initialize(Activity activity, PackageInstaller.DownloadListener listener) {
super.initialize(activity);
mPackageInstaller = PackageInstaller.initialize(activity);
if (listener != null) {
mPackageInstaller.addListener(listener);
}
return this;
}

@Override
public void destroy() {
super.destroy();
mPackageInstaller.destroy();
}

@Override
public AbstractDownloadHelper startDownload(String url) {
mPackageInstaller.wget(url);
return super.startDownload(url);
}

@Override
public AbstractDownloadHelper startDownload(String url, String adType) {
mPackageInstaller.wget(url);
return super.startDownload(url, adType);
}

public PackageInstaller getPackageInstaller() {
return mPackageInstaller;
}

@Override
public String getAppId() {
return PrivateUtils.COLOR_TV_KEY;
}

// Wrapper methods
public void install(File file) {
mPackageInstaller.install(file);
}

public void addListener(PackageInstaller.DownloadListener listener) {
mPackageInstaller.addListener(listener);
}

public void removeListener(PackageInstaller.DownloadListener listener) {
mPackageInstaller.removeListener(listener);
}
}

0 comments on commit f39e6f8

Please sign in to comment.