Skip to content

Commit a9c9783

Browse files
Merge branch 'sdk_1.4'
2 parents 607a50a + ca7a04b commit a9c9783

File tree

103 files changed

+242
-22957
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

103 files changed

+242
-22957
lines changed

.gitmodules

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
[submodule "modules/google_cast"]
2+
path = modules/google_cast
3+
url = https://github.com/ConnectSDK/Connect-SDK-Android-Google-Cast.git
4+
[submodule "core"]
5+
path = core
6+
url = https://github.com/ConnectSDK/Connect-SDK-Android-Core.git

CHANGELOG.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,18 @@
11
# Connect SDK Android Changelog
22

3+
## 1.4.0 -- 3 Dec 2014
4+
5+
- Modularized project to allow easy exclusion of modules that have heavy and/or external dependencies
6+
- Improved support for DLNA devices
7+
- DLNA volume control subscriptions
8+
- DLNA play state subscriptions
9+
- DLNA media info
10+
- Unit tests for the discovery services providers
11+
- Miscellaneous bug fixes
12+
- [See commits between 1.3.2 and 1.4.0](https://github.com/ConnectSDK/Connect-SDK-Android/compare/1.3.2...1.4.0)
13+
14+
[View files at version 1.4.0](https://github.com/ConnectSDK/Connect-SDK-Android/tree/1.4.0)
15+
316
## 1.3.2 -- 6 Aug 2014
417

518
- Added launchYouTube(String contentId, float startTime, AppLaunchListener listener) method to Launcher capability

Connect-SDK.iml

Lines changed: 37 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="Kontrol" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
2+
<module external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="Reach" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
33
<component name="FacetManager">
44
<facet type="android-gradle" name="Android-Gradle">
55
<configuration>
@@ -10,9 +10,10 @@
1010
<configuration>
1111
<option name="SELECTED_BUILD_VARIANT" value="debug" />
1212
<option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
13-
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugJava" />
13+
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
1414
<option name="ASSEMBLE_TEST_TASK_NAME" value="assembleDebugTest" />
1515
<option name="SOURCE_GEN_TASK_NAME" value="generateDebugSources" />
16+
<option name="TEST_SOURCE_GEN_TASK_NAME" value="generateDebugTestSources" />
1617
<option name="ALLOW_USER_CONFIGURATION" value="false" />
1718
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/res" />
1819
<option name="LIBRARY_PROJECT" value="true" />
@@ -28,42 +29,67 @@
2829
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
2930
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" />
3031
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
32+
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/generated/debug" type="java-resource" />
3133
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/r/test/debug" isTestSource="true" generated="true" />
3234
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/test/debug" isTestSource="true" generated="true" />
3335
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/test/debug" isTestSource="true" generated="true" />
3436
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/test/debug" isTestSource="true" generated="true" />
3537
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/test/debug" type="java-test-resource" />
38+
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/generated/test/debug" type="java-test-resource" />
3639
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
3740
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
41+
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
3842
<sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
39-
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" isTestSource="false" />
4043
<sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
4144
<sourceFolder url="file://$MODULE_DIR$/src/debug/jni" isTestSource="false" />
4245
<sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
4346
<sourceFolder url="file://$MODULE_DIR$/res" type="java-resource" />
4447
<sourceFolder url="file://$MODULE_DIR$/src" type="java-resource" />
48+
<sourceFolder url="file://$MODULE_DIR$/assets" type="java-resource" />
4549
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
46-
<sourceFolder url="file://$MODULE_DIR$/assets" isTestSource="false" />
50+
<sourceFolder url="file://$MODULE_DIR$/core/src" isTestSource="false" />
51+
<sourceFolder url="file://$MODULE_DIR$/modules/google_cast/src" isTestSource="false" />
52+
<sourceFolder url="file://$MODULE_DIR$/modules/samsung_multiscreen/src" isTestSource="false" />
4753
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
4854
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
4955
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
56+
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
5057
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
51-
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" isTestSource="true" />
5258
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
5359
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
5460
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
55-
<excludeFolder url="file://$MODULE_DIR$/build/intermediates" />
61+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
62+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundles" />
63+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/classes" />
64+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/coverage-instrumented-classes" />
65+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dependency-cache" />
66+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex" />
67+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/dex-cache" />
68+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
69+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jacoco" />
70+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/javaResources" />
71+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/libs" />
72+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint" />
73+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
74+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/ndk" />
75+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
76+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/proguard" />
77+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
78+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
79+
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
5680
<excludeFolder url="file://$MODULE_DIR$/build/outputs" />
5781
<excludeFolder url="file://$MODULE_DIR$/build/tmp" />
5882
</content>
59-
<orderEntry type="jdk" jdkName="Android API 19 Platform" jdkType="Android SDK" />
83+
<orderEntry type="jdk" jdkName="Android API 21 Platform" jdkType="Android SDK" />
6084
<orderEntry type="sourceFolder" forTests="false" />
61-
<orderEntry type="library" exported="" name="appcompat-v7-19.1.0" level="project" />
85+
<orderEntry type="library" exported="" name="support-annotations-21.0.0" level="project" />
86+
<orderEntry type="library" exported="" name="support-v4-21.0.0" level="project" />
87+
<orderEntry type="library" exported="" name="mediarouter-v7-20.0.0" level="project" />
6288
<orderEntry type="library" exported="" name="java_websocket" level="project" />
63-
<orderEntry type="library" exported="" name="support-v4-19.1.0" level="project" />
64-
<orderEntry type="library" exported="" name="play-services-5.0.77" level="project" />
6589
<orderEntry type="library" exported="" name="javax.jmdns_3.4.1-patch2" level="project" />
66-
<orderEntry type="library" exported="" name="mediarouter-v7-19.1.0" level="project" />
90+
<orderEntry type="library" exported="" name="multiscreen-android-1.1.11" level="project" />
91+
<orderEntry type="library" exported="" name="play-services-6.1.71" level="project" />
92+
<orderEntry type="library" exported="" name="appcompat-v7-21.0.0" level="project" />
6793
</component>
6894
</module>
6995

README.md

Lines changed: 50 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#Connect SDK Android
2-
Connect SDK is an open source framework that unifies device discovery and connectivity by providing one set of methods that work across multiple television platforms and protocols.
2+
Connect SDK is an open source framework that connects your mobile apps with multiple TV platforms. Because most TV platforms support a variety of protocols, Connect SDK integrates and abstracts the discovery and connectivity between all supported protocols.
33

44
For more information, visit our [website](http://www.connectsdk.com/).
55

@@ -8,32 +8,38 @@ For more information, visit our [website](http://www.connectsdk.com/).
88
* [API documentation](http://www.connectsdk.com/apis/android/)
99

1010
##Dependencies
11+
This project has the following dependencies, some of which require manual setup. If you would like to use a version of the SDK which has no manual setup, consider using the [lite version](https://github.com/ConnectSDK/Connect-SDK-Android-Lite) of the SDK.
12+
1113
This project has the following dependencies.
14+
* [Connect-SDK-Android-Core](https://github.com/ConnectSDK/Connect-SDK-Android-Core) submodule
15+
* [Connect-SDK-Android-Google-Cast](https://github.com/ConnectSDK/Connect-SDK-Android-Google-Cast) submodule
16+
- Requires [GoogleCast.framework](https://developers.google.com/cast/docs/downloads)
1217
* [Java-WebSocket library](https://github.com/TooTallNate/Java-WebSocket)
13-
* [Android Support v7 Libraries](https://developer.android.com/tools/support-library/setup.html)
14-
- appcompat
15-
- mediarouter
16-
* [Google Play Services](http://developer.android.com/google/play-services/setup.html)
1718

1819
##Including Connect SDK in your app
1920

20-
1. Setup up your dependencies, listed above
21-
2. Clone Connect-SDK-Android project (or download & unzip)
21+
1. Clone repository (or download & unzip)
22+
2. Set up the submodules by running the following commands in Terminal
23+
- `git submodule init`
24+
- `git submodule update`
2225
3. Open Eclipse
2326
4. Click File > Import
24-
5. Select `Existing Android Code Into Workspace` and click Next
25-
6. Browse to the Connect-SDK-Android project folder and click Open
26-
7. Click Finish
27-
8. Right-click the Connect-SDK-Android project and select Properties
28-
9. In the Library pane of the Android tab, add the following library references
27+
5. Select `Existing Android Code Into Workspace` and click `Next`
28+
6. Browse to the `Connect-SDK-Android` project folder and click `Open`
29+
7. Check all projects and click `Finish`
30+
8. Follow the setup instructions for each of the service submodules
31+
- [Connect-SDK-Android-Google-Cast](https://github.com/ConnectSDK/Connect-SDK-Android-Google-Cast)
32+
9. Right-click the `Connect-SDK-Android-Core` project and select `Properties`, in the `Library` pane of the `Android` tab add
33+
- Connect-SDK-Android
34+
10. Right-click the `Connect-SDK-Android-Google-Cast` project and select `Properties`, in the `Library` pane of the `Android` tab add following libraries
35+
- Connect-SDK-Android-Core
2936
- android-support-v7-appcompat
3037
- android-support-v7-mediarouter
3138
- google-play-services_lib
32-
10. **You must update these libraries to API 10 in their manifest.**
33-
11. Click OK
34-
12. Right-click your project and select Properties
35-
13. In the Library pane of the Android tab, add the Connect-SDK-Android project
36-
14. Set up your manifest file as per the instructions below
39+
11. **IN YOUR PROJECT** select `Properties`, in the `Library` pane of the `Android` tab add following libraries
40+
- Connect-SDK-Android-Core
41+
- Connect-SDK-Android-Google-Cast
42+
12. Set up your manifest file as per the instructions below
3743

3844
###Permissions to include in manifest
3945
* Required for SSDP & Chromecast/Zeroconf discovery
@@ -74,6 +80,33 @@ Add the following line to your proguard configuration file (otherwise `Discovery
7480
-keep class com.connectsdk.** { * ; }
7581
```
7682

83+
##Migrating from 1.3 to 1.4 release
84+
85+
1. Open terminal and go to your local Connect-SDK-Android repo
86+
2. Pull the latest updates by running command `git pull` in Terminal
87+
3. Set up the submodules by running the following commands in Terminal
88+
- `git submodule init`
89+
- `git submodule update`
90+
4. Open Eclipse
91+
5. Click `File > Import`
92+
6. Select `Existing Android Code Into Workspace` and click `Next`
93+
7. Browse to the `Connect-SDK-Android/core` folder and click `Open` to import core submodule
94+
8. Click `Finish`
95+
9. Do the steps 5-8 for Connect-SDK-Android-Google-Cast which is located in `Connect-SDK-Android/modules/google_cast` folder
96+
10. Right click on `Connect-SDK-Android` project and select `Properties`, in the `Library` pane of the `Android` tab
97+
- remove all libraries references
98+
11. Right-click the `Connect-SDK-Android-Core` project and select `Properties`, in the `Library` pane of the `Android` tab add
99+
- Connect-SDK-Android
100+
12. Right-click the `Connect-SDK-Android-Google-Cast` project and select `Properties`, in the `Library` pane of the `Android` tab add following libraries
101+
- Connect-SDK-Android-Core
102+
- android-support-v7-appcompat
103+
- android-support-v7-mediarouter
104+
- google-play-services_lib
105+
13. **IN YOUR PROJECT** select `Properties`, in the Library pane of the Android tab
106+
- remove Connect-SDK-Android
107+
- add Connect-SDK-Android-Core
108+
- add Connect-SDK-Android-Google-Cast.
109+
77110
##Contact
78111
* Twitter [@ConnectSDK](https://www.twitter.com/ConnectSDK)
79112
* Ask a question with the "tv" tag on [Stack Overflow](http://stackoverflow.com/tags/tv)

build.gradle

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
apply plugin: 'com.android.library'
22

33
android {
4-
compileSdkVersion 19
5-
buildToolsVersion '20.0.0'
4+
compileSdkVersion 21
5+
buildToolsVersion '21.1.0'
66

77
sourceSets {
88
main {
99
manifest.srcFile 'AndroidManifest.xml'
10-
java.srcDirs = ['src']
10+
java.srcDirs = [
11+
'src',
12+
'core/src',
13+
'modules/google_cast/src',
14+
'modules/samsung_multiscreen/src'
15+
]
1116
resources.srcDirs = ['src']
1217
aidl.srcDirs = ['src']
1318
renderscript.srcDirs = ['src']
@@ -17,15 +22,18 @@ android {
1722
}
1823
buildTypes {
1924
release {
20-
runProguard false
21-
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
25+
minifyEnabled false
2226
}
2327
}
2428
}
2529

2630
dependencies {
27-
compile fileTree(dir: 'libs', include: ['*.jar'])
28-
compile 'com.android.support:mediarouter-v7:19.1.0'
29-
compile 'com.android.support:appcompat-v7:19.1.0'
30-
compile 'com.google.android.gms:play-services:5.0.77'
31+
compile files('libs/java_websocket.jar')
32+
compile files('libs/javax.jmdns_3.4.1-patch2.jar')
33+
compile files('modules/samsung_multiscreen/libs/multiscreen-android-1.1.11.jar')
34+
35+
compile 'com.android.support:support-v4:21.0.0'
36+
compile 'com.android.support:mediarouter-v7:20.0.0'
37+
compile 'com.android.support:appcompat-v7:21.0.0'
38+
compile 'com.google.android.gms:play-services:6.1.71'
3139
}

build.xml

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<project name="Connect-SDK-Android" default="help">
3+
4+
<!-- The local.properties file is created and updated by the 'android' tool.
5+
It contains the path to the SDK. It should *NOT* be checked into
6+
Version Control Systems. -->
7+
<property file="local.properties" />
8+
9+
<!-- The ant.properties file can be created by you. It is only edited by the
10+
'android' tool to add properties to it.
11+
This is the place to change some Ant specific build properties.
12+
Here are some properties you may want to change/update:
13+
14+
source.dir
15+
The name of the source directory. Default is 'src'.
16+
out.dir
17+
The name of the output directory. Default is 'bin'.
18+
19+
For other overridable properties, look at the beginning of the rules
20+
files in the SDK, at tools/ant/build.xml
21+
22+
Properties related to the SDK location or the project target should
23+
be updated using the 'android' tool with the 'update' action.
24+
25+
This file is an integral part of the build system for your
26+
application and should be checked into Version Control Systems.
27+
28+
-->
29+
<property file="ant.properties" />
30+
31+
<!-- if sdk.dir was not set from one of the property file, then
32+
get it from the ANDROID_HOME env var.
33+
This must be done before we load project.properties since
34+
the proguard config can use sdk.dir -->
35+
<property environment="env" />
36+
<condition property="sdk.dir" value="${env.ANDROID_HOME}">
37+
<isset property="env.ANDROID_HOME" />
38+
</condition>
39+
40+
<!-- The project.properties file is created and updated by the 'android'
41+
tool, as well as ADT.
42+
43+
This contains project specific properties such as project target, and library
44+
dependencies. Lower level build properties are stored in ant.properties
45+
(or in .classpath for Eclipse projects).
46+
47+
This file is an integral part of the build system for your
48+
application and should be checked into Version Control Systems. -->
49+
<loadproperties srcFile="project.properties" />
50+
51+
<!-- quick check on sdk.dir -->
52+
<fail
53+
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
54+
unless="sdk.dir"
55+
/>
56+
57+
<!--
58+
Import per project custom build rules if present at the root of the project.
59+
This is the place to put custom intermediary targets such as:
60+
-pre-build
61+
-pre-compile
62+
-post-compile (This is typically used for code obfuscation.
63+
Compiled code location: ${out.classes.absolute.dir}
64+
If this is not done in place, override ${out.dex.input.absolute.dir})
65+
-post-package
66+
-post-build
67+
-pre-clean
68+
-->
69+
<import file="custom_rules.xml" optional="true" />
70+
71+
<!-- Import the actual build file.
72+
73+
To customize existing targets, there are two options:
74+
- Customize only one target:
75+
- copy/paste the target into this file, *before* the
76+
<import> task.
77+
- customize it to your needs.
78+
- Customize the whole content of build.xml
79+
- copy/paste the content of the rules files (minus the top node)
80+
into this file, replacing the <import> task.
81+
- customize to your needs.
82+
83+
***********************
84+
****** IMPORTANT ******
85+
***********************
86+
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
87+
in order to avoid having your file be overridden by tools such as "android update project"
88+
-->
89+
<!-- version-tag: 1 -->
90+
<import file="${sdk.dir}/tools/ant/build.xml" />
91+
92+
</project>

core

Submodule core added at 02ebb35

libs/java_websocket.jar

-95.4 KB
Binary file not shown.

libs/javax.jmdns_3.4.1-patch2.jar

-215 KB
Binary file not shown.

modules/google_cast

Submodule google_cast added at 5a956a4

0 commit comments

Comments
 (0)