diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 1752f6e..376769f 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -1,6 +1,10 @@ Changelog ========= +0.3.0 (2018-04-10) +------------------ +* First build on Kinetic with refactored android_core for Android P. + 0.2.0 (2015-02-22) ------------------ * First build on indigo diff --git a/build.gradle b/build.gradle index 294a445..9a9a9cf 100644 --- a/build.gradle +++ b/build.gradle @@ -15,11 +15,11 @@ */ task wrapper(type: Wrapper) { - gradleVersion = '2.2.1' + gradleVersion = '4.10.2' } buildscript { - apply from: "https://github.com/rosjava/android_core/raw/indigo/buildscript.gradle" + apply from: "https://github.com/rosjava/android_core/raw/kinetic/buildscript.gradle" } apply plugin: 'catkin' @@ -56,6 +56,7 @@ subprojects { exclude "META-INF/LICENSE.txt" exclude "META-INF/NOTICE.txt" } + flavorDimensions 'default' } } diff --git a/common_tools/build.gradle b/common_tools/build.gradle index 61fc0ee..2f74361 100644 --- a/common_tools/build.gradle +++ b/common_tools/build.gradle @@ -16,16 +16,16 @@ //noinspection GroovyAssignabilityCheck dependencies { - compile 'org.ros.android_core:android_10:[0.2,0.3)' - compile 'org.ros.rosjava_core:rosjava:[0.2,0.3)' - compile 'org.ros.rosjava_bootstrap:message_generation:[0.2,0.3)' - compile 'org.ros.rosjava_messages:diagnostic_msgs:[1.11, 1.12)' + compile 'org.ros.android_core:android_core_components:[0.4,0.5)' + compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)' + compile 'org.ros.rosjava_bootstrap:message_generation:[0.3,0.4)' + compile 'org.ros.rosjava_messages:diagnostic_msgs:[1.12, 1.13)' compile 'org.ros.rosjava_messages:rocon_interaction_msgs:[0.7,0.8)' compile 'org.ros.rosjava_messages:rocon_std_msgs:[0.7,0.8)' compile 'org.ros.rosjava_messages:rocon_app_manager_msgs:[0.7,0.8)' - compile 'com.github.rosjava.android_extras:gingerbread:[0.2,0.3)' - compile 'com.github.rosjava.android_extras:zxing:[0.2,0.3)' - compile 'com.github.rosjava.zeroconf_jmdns_suite:jmdns:[0.2,0.3)' + compile 'com.github.rosjava.android_extras:gingerbread:[0.3,0.4)' + compile 'com.github.rosjava.android_extras:zxing:[0.3,0.4)' + compile 'com.github.rosjava.zeroconf_jmdns_suite:jmdns:[0.3,0.4)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:rosjava_utils:[0.2,0.3)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:master_info:[0.2,0.3)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:rocon_interactions:[0.2,0.3)' @@ -35,15 +35,17 @@ dependencies { apply plugin: 'com.android.library' android { - compileSdkVersion 15 + compileSdkVersion 28 defaultConfig { - minSdkVersion 15 - targetSdkVersion 15 + minSdkVersion 16 + targetSdkVersion 28 versionCode 1 versionName "1.0.1" } - + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease' diff --git a/gradle.properties b/gradle.properties index 41f55a5..c151d1b 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,2 +1,4 @@ org.gradle.daemon=true -org.gradle.parallel=true +# Disabling the SNI extension fixes "handshake alert: unrecognized_name" error +# in Java 7. +org.gradle.jvmargs=-XX:MaxPermSize=512m -Djsse.enableSNIExtension=false diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index c97a8bd..29953ea 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 4d8aa4e..e0b3fb8 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,5 @@ -#Sat Feb 21 01:36:03 KST 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip diff --git a/gradlew b/gradlew index 91a7e26..cccdd3d 100755 --- a/gradlew +++ b/gradlew @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh ############################################################################## ## @@ -6,20 +6,38 @@ ## ############################################################################## -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS="" +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null APP_NAME="Gradle" APP_BASE_NAME=`basename "$0"` +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS="" + # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD="maximum" -warn ( ) { +warn () { echo "$*" } -die ( ) { +die () { echo echo "$*" echo @@ -30,6 +48,7 @@ die ( ) { cygwin=false msys=false darwin=false +nonstop=false case "`uname`" in CYGWIN* ) cygwin=true @@ -40,31 +59,11 @@ case "`uname`" in MINGW* ) msys=true ;; + NONSTOP* ) + nonstop=true + ;; esac -# For Cygwin, ensure paths are in UNIX format before anything is touched. -if $cygwin ; then - [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"` -fi - -# Attempt to set APP_HOME -# Resolve links: $0 may be a link -PRG="$0" -# Need this for relative symlinks. -while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG=`dirname "$PRG"`"/$link" - fi -done -SAVED="`pwd`" -cd "`dirname \"$PRG\"`/" >&- -APP_HOME="`pwd -P`" -cd "$SAVED" >&- - CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar # Determine the Java command to use to start the JVM. @@ -90,7 +89,7 @@ location of your Java installation." fi # Increase the maximum file descriptors if we can. -if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then MAX_FD_LIMIT=`ulimit -H -n` if [ $? -eq 0 ] ; then if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then @@ -114,6 +113,7 @@ fi if $cygwin ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` @@ -154,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index aec9973..e95643d 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -8,14 +8,14 @@ @rem Set local scope for the variables with windows NT shell if "%OS%"=="Windows_NT" setlocal -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS= - set DIRNAME=%~dp0 if "%DIRNAME%" == "" set DIRNAME=. set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME% +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS= + @rem Find java.exe if defined JAVA_HOME goto findJavaFromJavaHome @@ -46,10 +46,9 @@ echo location of your Java installation. goto fail :init -@rem Get command-line arguments, handling Windowz variants +@rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/headless_launcher/build.gradle b/headless_launcher/build.gradle index 8fe58bb..e6f3cd8 100644 --- a/headless_launcher/build.gradle +++ b/headless_launcher/build.gradle @@ -22,21 +22,22 @@ dependencies { apply plugin: 'com.android.application' android { - compileSdkVersion 15 + compileSdkVersion 28 defaultConfig { - minSdkVersion 15 - targetSdkVersion 15 + minSdkVersion 16 + targetSdkVersion 28 versionCode 6 versionName "1.4.1" } - productFlavors { - indigo { - applicationId "com.github.rosjava.android_remocons.headless_launcher.indigo" + kinetic { + applicationId "com.github.rosjava.android_remocons.headless_launcher.kinetic" } } - + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease' diff --git a/listener/build.gradle b/listener/build.gradle index 3464acf..fb1742b 100644 --- a/listener/build.gradle +++ b/listener/build.gradle @@ -16,8 +16,8 @@ //noinspection GroovyAssignabilityCheck dependencies { - compile 'org.ros.android_core:android_10:[0.2,0.3)' - compile 'org.ros.rosjava_core:rosjava:[0.2,0.3)' + compile 'org.ros.android_core:android_core_components:[0.4,0.5)' + compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)' compile 'org.ros.rosjava_messages:std_msgs:[0.5,0.6)' compile project(':common_tools') } @@ -25,19 +25,22 @@ dependencies { apply plugin: 'com.android.application' android { - compileSdkVersion 15 + compileSdkVersion 28 defaultConfig { - minSdkVersion 15 - targetSdkVersion 15 + minSdkVersion 16 + targetSdkVersion 28 versionCode 2 versionName "1.0.1" } productFlavors { - indigo { - applicationId "com.github.rosjava.android_remocons.listener.indigo" + kinetic { + applicationId "com.github.rosjava.android_remocons.listener.kinetic" } } + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease' \ No newline at end of file diff --git a/package.xml b/package.xml index e9f287a..9574d5f 100644 --- a/package.xml +++ b/package.xml @@ -1,7 +1,7 @@ android_remocons - 0.2.0 + 0.3.0 Remote controllers for rocon appable robots. diff --git a/rocon_nfc_writer/build.gradle b/rocon_nfc_writer/build.gradle index d4a4d77..0bf1751 100644 --- a/rocon_nfc_writer/build.gradle +++ b/rocon_nfc_writer/build.gradle @@ -23,19 +23,22 @@ dependencies { apply plugin: 'com.android.application' android { - compileSdkVersion 21 + compileSdkVersion 28 defaultConfig { minSdkVersion 18 - targetSdkVersion 18 + targetSdkVersion 28 versionCode 2 versionName "1.0.1" } productFlavors { - indigo { - applicationId "com.github.rosjava.android_remocons.rocon_nfc_writer.indigo" + kinetic { + applicationId "com.github.rosjava.android_remocons.rocon_nfc_writer.kinetic" } } + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease', 'uploadArchives' diff --git a/rocon_remocon/build.gradle b/rocon_remocon/build.gradle index 0b59a60..da8d364 100644 --- a/rocon_remocon/build.gradle +++ b/rocon_remocon/build.gradle @@ -26,14 +26,14 @@ //noinspection GroovyAssignabilityCheck dependencies { compile project(':common_tools') - compile 'org.ros.rosjava_core:rosjava:[0.2,0.3)' - compile 'org.ros.rosjava_bootstrap:message_generation:[0.2,0.3)' + compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)' + compile 'org.ros.rosjava_bootstrap:message_generation:[0.3,0.4)' compile 'org.ros.rosjava_messages:rocon_interaction_msgs:[0.7,0.8)' compile 'org.ros.rosjava_messages:rocon_std_msgs:[0.7,0.8)' compile 'org.ros.rosjava_messages:rocon_app_manager_msgs:[0.7,0.8)' - compile 'org.ros.android_core:android_10:[0.2,0.3)' - compile 'com.github.rosjava.android_extras:zxing:[0.2,0.3)' - compile 'com.github.rosjava.zeroconf_jmdns_suite:jmdns:[0.2,0.3)' + compile 'org.ros.android_core:android_core_components:[0.4,0.5)' + compile 'com.github.rosjava.android_extras:zxing:[0.3,0.4)' + compile 'com.github.rosjava.zeroconf_jmdns_suite:jmdns:[0.3,0.4)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:master_info:[0.2,0.3)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:rocon_interactions:[0.2,0.3)' compile 'com.github.robotics_in_concert.rocon_rosjava_core:rosjava_utils:[0.2,0.3)' @@ -43,20 +43,22 @@ dependencies { apply plugin: 'com.android.application' android { - compileSdkVersion 15 + compileSdkVersion 28 defaultConfig { - minSdkVersion 15 - targetSdkVersion 15 + minSdkVersion 16 + targetSdkVersion 28 versionCode 6 versionName "1.2.2" } productFlavors { - indigo { - applicationId "com.github.rosjava.android_remocons.rocon_remocon.indigo" + kinetic { + applicationId "com.github.rosjava.android_remocons.rocon_remocon.kinetic" } } - + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease' diff --git a/talker/build.gradle b/talker/build.gradle index 965ceaa..c27db0d 100644 --- a/talker/build.gradle +++ b/talker/build.gradle @@ -33,9 +33,9 @@ dependencies { //noinspection GroovyAssignabilityCheck dependencies { - compile 'org.ros.android_core:android_10:[0.2,0.3)' - compile 'org.ros.rosjava_core:rosjava:[0.2,0.3)' - compile 'org.ros.rosjava_core:rosjava_tutorial_pubsub:[0.2,0.3)' + compile 'org.ros.android_core:android_core_components:[0.4,0.5)' + compile 'org.ros.rosjava_core:rosjava:[0.3,0.4)' + compile 'org.ros.rosjava_core:rosjava_tutorial_pubsub:[0.3,0.4)' compile 'org.ros.rosjava_messages:std_msgs:[0.5,0.6)' compile project(':common_tools') } @@ -43,19 +43,22 @@ dependencies { apply plugin: 'com.android.application' android { - compileSdkVersion 15 + compileSdkVersion 28 defaultConfig { - minSdkVersion 15 - targetSdkVersion 15 + minSdkVersion 16 + targetSdkVersion 28 versionCode 2 versionName "1.0.1" } productFlavors { - indigo { - applicationId "com.github.rosjava.android_remocons.talker.indigo" + kinetic { + applicationId "com.github.rosjava.android_remocons.talker.kinetic" } } + lintOptions { + abortOnError = false + } } defaultTasks 'assembleRelease'