From f4ffac44d281ebb85c8f6ed7609c587ef7871048 Mon Sep 17 00:00:00 2001 From: Hannes Janetzek Date: Fri, 24 Oct 2014 21:38:47 +0200 Subject: [PATCH] gradle: update to 2.1 and android targetSdk 21 - add android-appcompat subproject --- .gitmodules | 3 + .travis.yml | 51 +++++++--- android-stuff.sh | 2 +- appcompat | 1 + build.gradle | 38 ++++++-- gradle.properties | 3 +- gradle/wrapper/gradle-wrapper.jar | Bin 51348 -> 51017 bytes gradle/wrapper/gradle-wrapper.properties | 4 +- settings.gradle | 1 + vtm-android-example/AndroidManifest.xml | 6 +- vtm-android-example/build.gradle | 92 ++++++++++-------- vtm-android-example/project.properties | 3 +- vtm-android-gdx/build.gradle | 51 +++++----- vtm-android-gdx/project.properties | 2 +- vtm-android-start/AndroidManifest.xml | 6 +- vtm-android-start/build.gradle | 61 ++++++++---- vtm-android-start/project.properties | 5 +- vtm-android/AndroidManifest.xml | 2 +- vtm-android/build.gradle | 57 ++++------- vtm-android/project.properties | 4 +- .../src/org/oscim/android/Compass.java | 1 + .../src/org/oscim/android/MapView.java | 3 +- vtm-desktop/build.gradle | 10 +- vtm-playground/build.gradle | 8 +- .../gdx/backends/gwt/GwtGraphics.java | 6 ++ .../badlogic/gdx/backends/gwt/GwtInput.java | 12 +++ vtm/build.gradle | 12 ++- 27 files changed, 275 insertions(+), 169 deletions(-) create mode 160000 appcompat diff --git a/.gitmodules b/.gitmodules index dab8e329..e830803c 100644 --- a/.gitmodules +++ b/.gitmodules @@ -6,3 +6,6 @@ path = jni/jni/libtess2 url = https://github.com/memononen/libtess2.git +[submodule "appcompat"] + path = appcompat + url = https://github.com/hjanetzek/android-support-v7-appcompat.git diff --git a/.travis.yml b/.travis.yml index fc2577be..b2b2e96e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,34 +1,63 @@ # from https://github.com/Ruenzuo/android-cd-travis-example/blob/master/.travis.yml + language: java -jdk: openjdk7 +jdk: + - openjdk7 + env: matrix: - - ANDROID_SDKS=android-19 ANDROID_TARGET=android-19 ANDROID_ABI=armeabi-v7a -#branches: -# only: -# - master + - ANDROID_SDKS=android-21 ANDROID_TARGET=android-21 ANDROID_ABI=armeabi-v7a + +branches: + only: + - master + before_install: - chmod +x gradlew # Install base Android SDK - sudo apt-get update - if [ `uname -m` = x86_64 ]; then sudo apt-get install --force-yes libgd2-xpm ia32-libs ia32-libs-multiarch > /dev/null; fi - - wget http://dl.google.com/android/android-sdk_r23-linux.tgz - - tar xzf android-sdk_r23-linux.tgz + - wget http://dl.google.com/android/android-sdk_r23.0.2-linux.tgz + - tar xzf android-sdk_r23.0.2-linux.tgz - export ANDROID_HOME=$PWD/android-sdk-linux - export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools # install android build tools - - wget https://dl-ssl.google.com/android/repository/build-tools_r20-linux.zip - - unzip build-tools_r20-linux.zip -d $ANDROID_HOME + - wget https://dl-ssl.google.com/android/repository/build-tools_r21.0.2-linux.zip + - unzip build-tools_r21.0.2-linux.zip -d $ANDROID_HOME - mkdir -p $ANDROID_HOME/build-tools/ - - mv $ANDROID_HOME/android-4.4W $ANDROID_HOME/build-tools/20.0.0 + - mv $ANDROID_HOME/android-5.0 $ANDROID_HOME/build-tools/21.0.2 # Install required components. # For a full list, run `android list sdk -a --extended` # Note that sysimg-18 downloads the ARM, x86 and MIPS images (we should optimize this). # Other relevant API's - echo yes | android update sdk --filter platform-tools --no-ui --force - - echo yes | android update sdk --filter android-19 --no-ui --force + - echo yes | android update sdk --filter android-21 --no-ui --force - echo yes | android update sdk --filter extra-android-support --no-ui --force - echo yes | android update sdk --filter extra-android-m2repository --no-ui --force # Create and start emulator #- echo no | android create avd --force -n test -t $ANDROID_TARGET --abi $ANDROID_ABI #- emulator -avd test -no-skin -no-audio -no-window & + + +# language: android +# android: +# components: +# # Uncomment the lines below if you want to +# # use the latest revision of Android SDK Tools +# - platform-tools +# - tools +# # The BuildTools version used by your project +# # - build-tools-21.0.1 +# # The SDK version used to compile your project +# - android-21 +# # Additional components +# - extra-android-support +# # - extra-google-google_play_services +# - extra-google-m2repository +# - extra-android-m2repository +# - addon-google_apis-google-21 +# # Specify at least one system image, +# # if you need to run emulator(s) during your tests +# #- sys-img-armeabi-v7a-android-19 +# #- sys-img-x86-android-17 + diff --git a/android-stuff.sh b/android-stuff.sh index 80aac860..7073a287 100755 --- a/android-stuff.sh +++ b/android-stuff.sh @@ -1,6 +1,6 @@ #!/bin/bash export PATH=$PATH:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools echo yes | android update sdk --filter platform-tools --no-ui -echo yes | android update sdk --filter android-19 --no-ui +echo yes | android update sdk --filter android-21 --no-ui echo yes | android update sdk --filter extra-android-support --no-ui echo yes | android update sdk --filter extra-android-m2repository --no-ui diff --git a/appcompat b/appcompat new file mode 160000 index 00000000..eead2062 --- /dev/null +++ b/appcompat @@ -0,0 +1 @@ +Subproject commit eead2062deaeda844de58777247f517427459e0d diff --git a/build.gradle b/build.gradle index 0f671182..907afac1 100644 --- a/build.gradle +++ b/build.gradle @@ -6,32 +6,51 @@ buildscript { dependencies { classpath 'org.gradle.api.plugins:gradle-nexus-plugin:0.3' + + classpath 'com.android.tools.build:gradle:0.13.1' + + // for aar/maven stuff + // https://github.com/dcendents/android-maven-plugin + classpath 'com.github.dcendents:android-maven-plugin:1.1' } } -task wrapper(type: Wrapper) { - gradleVersion = '1.12' +def filterProjects(filter) { + return subprojects.findAll { project -> filter.contains(project.name) } } -apply from:'jdee.gradle' +task wrapper(type: Wrapper) { + gradleVersion = '2.1' +} + +//apply from:'jdee.gradle' allprojects { group = 'org.oscim' - version = '0.5.9-SNAPSHOT' + version = '0.6.0-SNAPSHOT' - ext.gdxVersion = "1.2.0" + ext.gdxVersion = "1.4.1" + ext.androidBuildVersionTools = "21.0.2" repositories { mavenCentral() + // Jeo maven { url 'http://repo.boundlessgeo.com/main' } //maven { url 'https://github.com/hjanetzek/maven-repo/raw/master/' } mavenLocal() + // Local andoird repo + maven { url "${System.env.ANDROID_HOME}/extras/android/m2repository" } } // create IntelliJ project settings - untested apply plugin: 'idea' } +def androidMinSdk() { return 10 } +def androidTargetSdk() { return 21 } +def versionCode() { return 50 } +def versionName() { return version } + subprojects { // create eclipse project settings apply plugin: 'eclipse' @@ -42,15 +61,14 @@ subprojects { include '**/*' } - tasks.withType(JavaCompile) { - sourceCompatibility = "1.7" - targetCompatibility = "1.7" + tasks.withType(JavaCompile) { + sourceCompatibility = JavaVersion.VERSION_1_7 + targetCompatibility = JavaVersion.VERSION_1_7 } eclipseProject.dependsOn copySettings // create emacs JDEE project settings // http://ignatyev-dev.blogspot.de/2013/07/gradle-projects-in-jdee.html - apply from:'../jdee.gradle' + //apply from:'../jdee.gradle' } - diff --git a/gradle.properties b/gradle.properties index 77c2f3eb..d4a543a4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,4 +18,5 @@ org.gradle.jvmargs=-Xmx1024m -XX:MaxPermSize=512m # options to speed up compilation once everything else is working: org.gradle.parallel=false -org.gradle.configureondemand=true +org.gradle.configureondemand=false + diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 0087cd3b18659b5577cf6ad3ef61f8eb9416ebba..3d0dee6e8edfecc92e04653ec780de06f7b34f8b 100644 GIT binary patch delta 8565 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 Lyl5_UH{AaNXr;Nh delta 8829 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 + android:targetSdkVersion="21" /> - + android:label="@string/app_name"> + diff --git a/vtm-android-example/build.gradle b/vtm-android-example/build.gradle index 4f003d3d..1062cf58 100644 --- a/vtm-android-example/build.gradle +++ b/vtm-android-example/build.gradle @@ -1,28 +1,22 @@ -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:0.12.+' - } -} +apply plugin: 'com.android.application' -repositories { - maven { url "${System.env.ANDROID_HOME}/extras/android/m2repository" } -} - -apply plugin: 'android' +configurations { providedCompile } dependencies { compile project(':vtm-android') compile project(':vtm-jeo') compile project(':vtm-extras') compile project(':vtm-themes') + + compile project(':appcompat') + //compile 'com.android.support:support-v4:21.+' + + compile 'com.noveogroup.android:android-logger:1.3.4' } android { - compileSdkVersion 19 - buildToolsVersion '20.0' + compileSdkVersion androidTargetSdk() + buildToolsVersion "$androidBuildVersionTools" sourceSets { main { @@ -33,12 +27,17 @@ android { assets.srcDirs = ['assets'] } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_7 + targetCompatibility JavaVersion.VERSION_1_7 + } + debug.setRoot('build-types/debug') release.setRoot('build-types/release') } // remove duplicates packagingOptions { - exclude 'META-INF/services/org.jeo.data.Driver' + exclude 'META-INF/services/org.jeo.data.Driver' exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' } @@ -47,35 +46,52 @@ android { lintOptions.abortOnError false } -// Including configurations into Eclipse +eclipse { + classpath { + plusConfigurations += [ configurations.compile ] + defaultOutputDir = file('bin/classes') -// Configuring Eclipse classpath -eclipse.classpath { - plusConfigurations += configurations.compile + containers = ['com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', + 'com.android.ide.eclipse.adt.LIBRARIES', + 'com.android.ide.eclipse.adt.DEPENDENCIES'] - defaultOutputDir = file('bin/classes') + file { + // Manipulation of the classpath XML before merging local + // and generated copies + beforeMerged { classpath -> + // Remove all source entries to avoid overlap + classpath.entries.removeAll() { c -> + c.kind == 'src' + } + } - file { - // Direct manipulation of the generated classpath XML - withXml { - def node = it.asNode() - node.appendNode('classpathentry kind="src" path="src"') - node.appendNode('classpathentry kind="src" path="gen"') + // only used to explode jni .so into aar + whenMerged { + classpath -> + classpath.entries.findAll { entry -> + entry.path.contains('ANDROID_FRAMEWORK') || + entry.path.contains('support') + }*.exported = false + } + + // Direct manipulation of the generated classpath XML + withXml { + def node = it.asNode() + node.appendNode('classpathentry kind="src" path="src"') + node.appendNode('classpathentry kind="src" path="gen"') + } } } + project { + natures = ['com.android.ide.eclipse.adt.AndroidNature', + 'org.eclipse.jdt.core.javanature'] + + buildCommand 'com.android.ide.eclipse.adt.ResourceManagerBuilder' + buildCommand 'com.android.ide.eclipse.adt.PreCompilerBuilder' + buildCommand 'com.android.ide.eclipse.adt.ApkBuilder' + } } - -eclipse.project { - natures = ['com.android.ide.eclipse.adt.AndroidNature', - 'org.eclipse.jdt.core.javanature'] - - buildCommand 'com.android.ide.eclipse.adt.ResourceManagerBuilder' - buildCommand 'com.android.ide.eclipse.adt.PreCompilerBuilder' - buildCommand 'com.android.ide.eclipse.adt.ApkBuilder' -} - - task run (dependsOn: 'installDebug'){ doFirst { println(">> adb run...") diff --git a/vtm-android-example/project.properties b/vtm-android-example/project.properties index c5e77dce..6768ec95 100644 --- a/vtm-android-example/project.properties +++ b/vtm-android-example/project.properties @@ -11,5 +11,6 @@ #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. -target=android-19 +target=android-21 android.library.reference.1=../vtm-android +android.library.reference.2=../appcompat diff --git a/vtm-android-gdx/build.gradle b/vtm-android-gdx/build.gradle index 03e955f5..b0ab0e56 100644 --- a/vtm-android-gdx/build.gradle +++ b/vtm-android-gdx/build.gradle @@ -1,24 +1,11 @@ -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:0.12.+' - } -} - -repositories { - maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } -} - -apply plugin: 'android' +apply plugin: 'com.android.application' configurations { providedCompile } dependencies { compile project(':vtm-gdx') compile project(':vtm-themes') - compile 'com.noveogroup.android:android-logger:1.3.1' + compile 'com.noveogroup.android:android-logger:1.3.4' compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion" //compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi" //compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a" @@ -36,8 +23,8 @@ dependencies { // compileTask.dependsOn copyLibs } android { - compileSdkVersion 19 - buildToolsVersion '20.0' + compileSdkVersion androidTargetSdk() + buildToolsVersion "$androidBuildVersionTools" sourceSets { main { @@ -50,6 +37,11 @@ android { assets.srcDirs = ['assets'] } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_7 + targetCompatibility JavaVersion.VERSION_1_7 + } + debug.setRoot('build-types/debug') release.setRoot('build-types/release') } @@ -57,28 +49,37 @@ android { // Including configurations into Eclipse eclipse { - jdt { - sourceCompatibility = 1.6 - targetCompatibility = 1.6 - } // Configuring Eclipse classpath classpath { - plusConfigurations += configurations.compile + plusConfigurations += [ configurations.compile ] defaultOutputDir = file('bin/classes') + containers = ['com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', + 'com.android.ide.eclipse.adt.LIBRARIES', + 'com.android.ide.eclipse.adt.DEPENDENCIES'] + file { + beforeMerged { classpath -> + // Remove all source entries to avoid overlap + classpath.entries.removeAll() { c -> + c.kind == 'src' + } + } + // only used to explode jni .so into aar whenMerged { classpath -> classpath.entries.findAll { entry -> - entry.path.contains('native-libs') }*.exported = false + entry.path.contains('ANDROID_FRAMEWORK') || + entry.path.contains('support') || + entry.path.contains('native-libs') + }*.exported = false classpath.entries.removeAll { entry -> - entry.path.contains('gdx-2') } + entry.path.contains('gdx-2') } } - // Direct manipulation of the generated classpath XML withXml { def node = it.asNode() diff --git a/vtm-android-gdx/project.properties b/vtm-android-gdx/project.properties index a5578ba0..bbe203c8 100644 --- a/vtm-android-gdx/project.properties +++ b/vtm-android-gdx/project.properties @@ -8,4 +8,4 @@ # project structure. # Project target. -target=android-19 +target=android-21 diff --git a/vtm-android-start/AndroidManifest.xml b/vtm-android-start/AndroidManifest.xml index f350e71f..1deece7f 100644 --- a/vtm-android-start/AndroidManifest.xml +++ b/vtm-android-start/AndroidManifest.xml @@ -9,13 +9,13 @@ + android:targetSdkVersion="21" /> + android:allowBackup="true" > + diff --git a/vtm-android-start/build.gradle b/vtm-android-start/build.gradle index 0d94f2f9..7767e2c3 100644 --- a/vtm-android-start/build.gradle +++ b/vtm-android-start/build.gradle @@ -1,26 +1,21 @@ -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:0.12.+' - } -} +apply plugin: 'com.android.application' -repositories { - maven { url "${System.env.ANDROID_HOME}/extras/android/m2repository" } -} - -apply plugin: 'android' +configurations { providedCompile } dependencies { compile project(':vtm-android') compile project(':vtm-themes') + + compile project(':appcompat') + //compile 'com.android.support:support-v4:21.+' + //compile 'com.android.support:appcompat-v7:21.0.0' + + compile 'com.noveogroup.android:android-logger:1.3.4' } android { - compileSdkVersion 19 - buildToolsVersion '20.0' + compileSdkVersion androidTargetSdk() + buildToolsVersion "$androidBuildVersionTools" sourceSets { main { @@ -31,6 +26,11 @@ android { assets.srcDirs = ['assets'] } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_7 + targetCompatibility JavaVersion.VERSION_1_7 + } + debug.setRoot('build-types/debug') release.setRoot('build-types/release') } @@ -39,16 +39,38 @@ android { lintOptions.abortOnError false } -// Including configurations into Eclipse +//Including configurations into Eclipse eclipse { // Configuring Eclipse classpath classpath { - plusConfigurations += configurations.compile + plusConfigurations += [ configurations.compile ] defaultOutputDir = file('bin/classes') + containers = ['com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', + 'com.android.ide.eclipse.adt.LIBRARIES', + 'com.android.ide.eclipse.adt.DEPENDENCIES'] + file { + // Manipulation of the classpath XML before merging local + // and generated copies + beforeMerged { classpath -> + // Remove all source entries to avoid overlap + classpath.entries.removeAll() { c -> + c.kind == 'src' + } + } + + // only used to explode jni .so into aar + whenMerged { + classpath -> + classpath.entries.findAll { entry -> + entry.path.contains('ANDROID_FRAMEWORK') || + entry.path.contains('support') + }*.exported = false + } + // Direct manipulation of the generated classpath XML withXml { def node = it.asNode() @@ -61,7 +83,6 @@ eclipse { project { natures = ['com.android.ide.eclipse.adt.AndroidNature', 'org.eclipse.jdt.core.javanature'] - buildCommand 'com.android.ide.eclipse.adt.ResourceManagerBuilder' buildCommand 'com.android.ide.eclipse.adt.PreCompilerBuilder' buildCommand 'com.android.ide.eclipse.adt.ApkBuilder' @@ -70,9 +91,9 @@ eclipse { task run (dependsOn: 'installDebug'){ doFirst { - println(">> adb run...") + println(">> adb run <<") String adb = System.getenv()['ANDROID_HOME'] + '/platform-tools/adb' - String cmd = "${adb} shell am start -n org.oscim.jeo.android/.TestActivity" + String cmd = "${adb} shell am start -n org.oscim.android.start/.TestActivity" def proc = cmd.execute() proc.in.eachLine {line -> println line} proc.err.eachLine {line -> System.err.println( 'ERROR: ' + line)} diff --git a/vtm-android-start/project.properties b/vtm-android-start/project.properties index c5e77dce..2caff39d 100644 --- a/vtm-android-start/project.properties +++ b/vtm-android-start/project.properties @@ -11,5 +11,6 @@ #proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt # Project target. -target=android-19 -android.library.reference.1=../vtm-android +target=android-21 +android.library.reference.1=../appcompat +android.library.reference.2=../vtm-android diff --git a/vtm-android/AndroidManifest.xml b/vtm-android/AndroidManifest.xml index 08cb86d5..94f291c1 100644 --- a/vtm-android/AndroidManifest.xml +++ b/vtm-android/AndroidManifest.xml @@ -4,6 +4,6 @@ + android:targetSdkVersion="21" /> \ No newline at end of file diff --git a/vtm-android/build.gradle b/vtm-android/build.gradle index 80b089c0..ef216190 100644 --- a/vtm-android/build.gradle +++ b/vtm-android/build.gradle @@ -1,41 +1,17 @@ -buildscript { - repositories { - mavenCentral() - } - dependencies { - classpath 'com.android.tools.build:gradle:0.12.+' - // for aar/maven stuff - // https://github.com/dcendents/android-maven-plugin - classpath 'com.github.dcendents:android-maven-plugin:1.0' - } -} - -apply plugin: 'android-library' +apply plugin: 'com.android.library' apply plugin: 'android-maven' -repositories { - maven { url "${System.env.ANDROID_HOME}/extras/android/m2repository" } -} - dependencies { - //compile 'org.oscim:vtm:0.5.9-SNAPSHOT' compile project(':vtm') + provided files("${rootDir}/vtm-ext-libs/native-libs.jar") - compile 'com.android.support:support-v4:19.+' - - // -> might be more efficient, but configuring - // log-levels is way too complicated... - // compile 'org.slf4j:slf4j-android:1.7.6' - - compile 'com.noveogroup.android:android-logger:1.3.1' - - // local jars will be packaged into the aar - compile files("${rootDir}/vtm-ext-libs/native-libs.jar") + //compile 'com.android.support:support-v4:21.+' + compile project(':appcompat') } android { - compileSdkVersion 19 - buildToolsVersion '20.0' + compileSdkVersion androidTargetSdk() + buildToolsVersion = "$androidBuildVersionTools" sourceSets { main { @@ -54,25 +30,31 @@ android { eclipse { classpath { - plusConfigurations += configurations.compile + plusConfigurations += [ configurations.compile, configurations.provided ] + //noExportConfigurations += [ configurations.provided ] //customizing the classes output directory: defaultOutputDir = file('bin/classes') + containers = ['com.android.ide.eclipse.adt.ANDROID_FRAMEWORK', + 'com.android.ide.eclipse.adt.LIBRARIES', + 'com.android.ide.eclipse.adt.DEPENDENCIES'] + file { // Manipulation of the classpath XML before merging local // and generated copies beforeMerged { classpath -> // Remove all source entries to avoid overlap - classpath.entries.removeAll() { c -> - c.kind == 'src' - } + classpath.entries.removeAll() { c -> c.kind == 'src' } } // only used to explode jni .so into aar - whenMerged { classpath -> - classpath.entries.findAll { entry -> - entry.path.contains('native-libs') }*.exported = false + whenMerged { + classpath -> + classpath.entries.findAll { entry -> + entry.path.contains('native-libs') || + entry.path.contains('ANDROID_FRAMEWORK') + }*.exported = false } // Direct manipulation of the generated classpath XML @@ -83,7 +65,6 @@ eclipse { // Main source directory and generated code directory node.appendNode('classpathentry kind="src" path="src"') node.appendNode('classpathentry kind="src" path="gen"') - } } } diff --git a/vtm-android/project.properties b/vtm-android/project.properties index 9be86071..4de101e8 100644 --- a/vtm-android/project.properties +++ b/vtm-android/project.properties @@ -10,8 +10,8 @@ # Indicates whether an apk should be generated for each density. split.density=false # Project target. -target=android-19 +target=android-21 #proguard.config=proguard.cfg android.library=true -android.library.reference.1=../android-v7-appcompat +android.library.reference.1=../appcompat diff --git a/vtm-android/src/org/oscim/android/Compass.java b/vtm-android/src/org/oscim/android/Compass.java index 9520e99a..14f1ed36 100644 --- a/vtm-android/src/org/oscim/android/Compass.java +++ b/vtm-android/src/org/oscim/android/Compass.java @@ -50,6 +50,7 @@ public class Compass { private final SensorManager mSensorManager; private final Sensor mSensor; + @SuppressWarnings("deprecation") public Compass(Context context, Map map) { mMap = map; mSensorManager = (SensorManager) context diff --git a/vtm-android/src/org/oscim/android/MapView.java b/vtm-android/src/org/oscim/android/MapView.java index 43656cf5..2847a2cc 100644 --- a/vtm-android/src/org/oscim/android/MapView.java +++ b/vtm-android/src/org/oscim/android/MapView.java @@ -26,8 +26,8 @@ import org.oscim.map.Map; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import android.annotation.SuppressLint; import android.content.Context; -import android.os.Build; import android.util.AttributeSet; import android.util.DisplayMetrics; import android.view.GestureDetector; @@ -89,6 +89,7 @@ public class MapView extends RelativeLayout { mMap.pause(false); } + @SuppressLint("ClickableViewAccessibility") @Override public boolean onTouchEvent(android.view.MotionEvent motionEvent) { diff --git a/vtm-desktop/build.gradle b/vtm-desktop/build.gradle index 5db4678f..97e9244f 100644 --- a/vtm-desktop/build.gradle +++ b/vtm-desktop/build.gradle @@ -20,9 +20,11 @@ mainClassName = 'org.oscim.gdx.GdxMapApp' //} sourceSets { - main.java.srcDirs = ['src'] - //main.resources.srcDirs = ["${buildDir}/assets"] - output.resourcesDir = 'assets' + main { + java.srcDirs = ['src'] + //main.resources.srcDirs = ["${buildDir}/assets"] + output.resourcesDir = 'assets' + } } dependencies { @@ -31,7 +33,7 @@ dependencies { //compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion" compile "com.badlogicgames.gdx:gdx-backend-jglfw:$gdxVersion" compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop" - compile 'org.slf4j:slf4j-simple:1.7.5' + compile 'org.slf4j:slf4j-simple:1.7.6' compile files('../vtm-ext-libs/gdx/vtm-jni-natives.jar') } diff --git a/vtm-playground/build.gradle b/vtm-playground/build.gradle index 2da0d278..1098e359 100644 --- a/vtm-playground/build.gradle +++ b/vtm-playground/build.gradle @@ -19,9 +19,11 @@ tasks.withType(JavaCompile) { compileTask -> } sourceSets { - main.java.srcDirs = ['src'] - main.resources.srcDirs = ["${buildDir}/assets"] - output.resourcesDir = 'assets' + main { + java.srcDirs = ['src'] + resources.srcDirs = ["${buildDir}/assets"] + output.resourcesDir = 'assets' + } } dependencies { diff --git a/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtGraphics.java b/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtGraphics.java index 2f4969fc..2553979c 100644 --- a/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtGraphics.java +++ b/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtGraphics.java @@ -333,4 +333,10 @@ public class GwtGraphics implements Graphics { public GL30 getGL30() { return null; } + + @Override + public long getFrameId() { + // TODO Auto-generated method stub + return 0; + } } diff --git a/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtInput.java b/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtInput.java index 3b21bc6c..76934dea 100644 --- a/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtInput.java +++ b/vtm-web/src/org/oscim/gdx/emu/com/badlogic/gdx/backends/gwt/GwtInput.java @@ -944,4 +944,16 @@ public class GwtInput implements Input { private static final int KEY_BACKSLASH = 220; private static final int KEY_CLOSE_BRACKET = 221; private static final int KEY_SINGLE_QUOTE = 222; + + @Override + public boolean isKeyJustPressed(int key) { + // TODO Auto-generated method stub + return false; + } + + @Override + public boolean isCatchBackKey() { + // TODO Auto-generated method stub + return false; + } } diff --git a/vtm/build.gradle b/vtm/build.gradle index 6df7c204..9c97561f 100644 --- a/vtm/build.gradle +++ b/vtm/build.gradle @@ -15,12 +15,20 @@ sourceSets { main.compileClasspath += configurations.providedCompile } -//... there is probably a better way eclipse.classpath { - plusConfigurations += configurations.providedCompile + //you can tweak the classpath of the Eclipse project by adding extra configurations: + plusConfigurations += [ configurations.providedCompile ] file.whenMerged { classpath -> classpath.entries.findAll { entry -> entry.path.contains('annotations') }*.exported = false } + + //if you don't want some classpath entries 'exported' in Eclipse + noExportConfigurations += [ configurations.providedCompile ] + + + //default settings for downloading sources and Javadoc: + //downloadSources = true + //downloadJavadoc = false }