diff --git a/android/java/.gitignore b/android/java/.gitignore index 4c79b6763..ddfa6128e 100644 --- a/android/java/.gitignore +++ b/android/java/.gitignore @@ -2,12 +2,11 @@ .gradle/ # IntelliJ files -.idea +.idea/ *.iml # Build files build/ -*/build/ *.so *.apk @@ -18,4 +17,4 @@ lib/src/main/assets/ local.properties # Token file -app/src/main/res/raw/token.txt +MapboxGLAndroidSDKTestApp/src/main/res/raw/token.txt diff --git a/android/java/MapboxGLAndroidSDK/build.gradle b/android/java/MapboxGLAndroidSDK/build.gradle new file mode 100644 index 000000000..16db9380e --- /dev/null +++ b/android/java/MapboxGLAndroidSDK/build.gradle @@ -0,0 +1,253 @@ +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.0.0' + classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.10.1' + } +} + +apply plugin: 'android-sdk-manager' +apply plugin: 'com.android.library' +apply plugin: 'checkstyle' +apply plugin: 'maven' +apply plugin: 'signing' + +allprojects { + group project.GROUP + version project.VERSION_NAME + + repositories { + mavenCentral() + } +} + +repositories { + mavenCentral() +} + +dependencies { + compile 'commons-validator:commons-validator:1.4.1' + compile 'com.android.support:support-annotations:21.0.3' + compile 'com.android.support:support-v4:21.0.3' +} + +android { + compileSdkVersion Integer.parseInt(project.ANDROID_BUILD_SDK_VERSION) + buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION + + defaultConfig { + minSdkVersion Integer.parseInt(project.ANDROID_MIN_SDK) + targetSdkVersion Integer.parseInt(project.ANDROID_BUILD_TARGET_SDK_VERSION) + } + + repositories { + mavenCentral() + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_7 + targetCompatibility JavaVersion.VERSION_1_7 + } + + lintOptions { + checkAllWarnings true + disable 'IconMissingDensityFolder' + } + + buildTypes { + debug { + jniDebuggable true + } + + release { + minifyEnabled false + jniDebuggable false + proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' + } + } +} + +configurations { + all*.exclude group: 'commons-logging', module: 'commons-logging' + all*.exclude group: 'commons-collections', module: 'commons-collections' +} + + +android.libraryVariants.all { variant -> + def name = variant.name + task "javadoc$name"(type: Javadoc) { + description = "Generates javadoc for build $name" + failOnError = false + destinationDir = new File(destinationDir, variant.baseName) + source = files(variant.javaCompile.source) + ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar" + classpath = files(variant.javaCompile.classpath.files) + files(ext.androidJar) + options.links("http://docs.oracle.com/javase/7/docs/api/") + options.links("http://d.android.com/reference/") + exclude '**/R.html', '**/R.*.html' + } +} + +checkstyle { + configFile project.file('../checks.xml') + showViolations true +} + +task cleanJNIBuilds { + def jniLibsDir = new File("MapboxGLAndroidSDK/src/main/jniLibs") + delete jniLibsDir.absolutePath +} + +android.libraryVariants.all { variant -> + def name = variant.buildType.name + def checkstyle = project.tasks.create "checkstyle${name.capitalize()}", Checkstyle + checkstyle.dependsOn variant.javaCompile + checkstyle.source variant.javaCompile.source + checkstyle.classpath = project.fileTree(variant.javaCompile.destinationDir) + checkstyle.exclude('**/BuildConfig.java') + checkstyle.exclude('**/R.java') + checkstyle.exclude('**/com/almeros/android/multitouch/**') + project.tasks.getByName("check").dependsOn checkstyle +} + +// From https://raw.github.com/mcxiaoke/gradle-mvn-push/master/jar.gradle +android.libraryVariants.all { variant -> + def jarTask = project.tasks.create(name: "jar${variant.name.capitalize()}", type: Jar) { + from variant.javaCompile.destinationDir + exclude "**/R.class" + exclude "**/BuildConfig.class" + } + jarTask.dependsOn variant.javaCompile + artifacts.add('archives', jarTask); +} + +// From https://raw.github.com/mcxiaoke/gradle-mvn-push/master/gradle-mvn-push.gradle +def isReleaseBuild() { + return VERSION_NAME.contains("SNAPSHOT") == false +} + +def getReleaseRepositoryUrl() { + return hasProperty('RELEASE_REPOSITORY_URL') ? RELEASE_REPOSITORY_URL : + "https://oss.sonatype.org/service/local/staging/deploy/maven2/" +} + +def getSnapshotRepositoryUrl() { + return hasProperty('SNAPSHOT_REPOSITORY_URL') ? SNAPSHOT_REPOSITORY_URL : + "https://oss.sonatype.org/content/repositories/snapshots/" +} + +def getRepositoryUsername() { + return hasProperty('USERNAME') ? USERNAME : + (hasProperty('NEXUS_USERNAME') ? NEXUS_USERNAME : "") +} + +def getRepositoryPassword() { + return hasProperty('PASSWORD') ? PASSWORD : + (hasProperty('NEXUS_PASSWORD') ? NEXUS_PASSWORD : "") +} + + +task apklib(type: Zip) { + appendix = extension = 'apklib' + + from 'AndroidManifest.xml' + into('res') { + from 'res' + } + into('src') { + from 'src' + } +} + +artifacts { + archives apklib +} + +afterEvaluate { project -> + uploadArchives { + repositories { + mavenDeployer { + beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } + + pom.groupId = GROUP + pom.artifactId = POM_ARTIFACT_ID + pom.version = VERSION_NAME + + repository(url: getReleaseRepositoryUrl()) { + authentication(userName: getRepositoryUsername(), + password: getRepositoryPassword()) + } + snapshotRepository(url: getSnapshotRepositoryUrl()) { + authentication(userName: getRepositoryUsername(), + password: getRepositoryPassword()) + } + +/* + // Leaving out as artifact was incorrectly named when found + addFilter('aar') { artifact, file -> + artifact.name == archivesBaseName + } + addFilter('apklib') { artifact, file -> + artifact.name == archivesBaseName + '-apklib' + } +*/ + + pom.project { + name POM_NAME + packaging POM_PACKAGING + description POM_DESCRIPTION + url POM_URL + + scm { + url POM_SCM_URL + connection POM_SCM_CONNECTION + developerConnection POM_SCM_DEV_CONNECTION + } + + licenses { + license { + name POM_LICENCE_NAME + url POM_LICENCE_URL + distribution POM_LICENCE_DIST + } + } + + developers { + developer { + id POM_DEVELOPER_ID + name POM_DEVELOPER_NAME + } + } + } + } + } + } + + signing { + required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") } + sign configurations.archives + } + + task androidJavadocs(type: Javadoc) { + failOnError false + source = android.sourceSets.main.java.sourceFiles + classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) + } + + task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { + classifier = 'javadoc' + from androidJavadocs.destinationDir + } + + task androidSourcesJar(type: Jar) { + classifier = 'sources' + from android.sourceSets.main.java.sourceFiles + } + + artifacts { + archives androidSourcesJar + archives androidJavadocsJar + } +} diff --git a/android/java/MapboxGLAndroidSDK/deploy.sh b/android/java/MapboxGLAndroidSDK/deploy.sh new file mode 100644 index 000000000..c9392201e --- /dev/null +++ b/android/java/MapboxGLAndroidSDK/deploy.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +../gradlew -b build.gradle clean assembleRelease uploadArchives diff --git a/android/java/MapboxGLAndroidSDK/gradle.properties b/android/java/MapboxGLAndroidSDK/gradle.properties new file mode 100644 index 000000000..ba69bd9e4 --- /dev/null +++ b/android/java/MapboxGLAndroidSDK/gradle.properties @@ -0,0 +1,22 @@ +GROUP=com.mapbox.mapboxgl +VERSION_NAME=0.0.1-SNAPSHOT + +POM_DESCRIPTION=Mapbox GL Android SDK +POM_URL=https://github.com/mapbox/mapbox-gl-native +POM_SCM_URL=https://github.com/mapbox/mapbox-gl-native +POM_SCM_CONNECTION=scm:git@github.com:mapbox/mapbox-gl-native.git +POM_SCM_DEV_CONNECTION=scm:git@github.com:mapbox/mapbox-gl-native.git +POM_LICENCE_NAME=The Apache Software License, Version 2.0 +POM_LICENCE_URL=http://www.apache.org/licenses/LICENSE-2.0.txt +POM_LICENCE_DIST=repo +POM_DEVELOPER_ID=mapbox +POM_DEVELOPER_NAME=Mapbox + +ANDROID_MIN_SDK=14 +ANDROID_BUILD_TARGET_SDK_VERSION=21 +ANDROID_BUILD_TOOLS_VERSION=21.1.2 +ANDROID_BUILD_SDK_VERSION=21 + +POM_NAME=Mapbox GL Android SDK +POM_ARTIFACT_ID=mapbox-gl-android-sdk +POM_PACKAGING=aar diff --git a/android/java/lib/lint.xml b/android/java/MapboxGLAndroidSDK/lint.xml similarity index 100% rename from android/java/lib/lint.xml rename to android/java/MapboxGLAndroidSDK/lint.xml diff --git a/android/java/lib/src/main/AndroidManifest.xml b/android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml similarity index 100% rename from android/java/lib/src/main/AndroidManifest.xml rename to android/java/MapboxGLAndroidSDK/src/main/AndroidManifest.xml diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/BaseGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/BaseGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/BaseGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/BaseGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/MoveGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/MoveGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/MoveGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/MoveGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/RotateGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/RotateGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/RotateGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/RotateGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/ShoveGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/ShoveGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/ShoveGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/ShoveGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/TwoFingerGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/TwoFingerGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/TwoFingerGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/TwoFingerGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/BaseGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/BaseGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/BaseGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/BaseGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/MoveGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/MoveGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/MoveGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/MoveGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/RotateGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/RotateGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/RotateGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/RotateGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/ShoveGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/ShoveGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/ShoveGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/ShoveGestureDetector.java diff --git a/android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/TwoFingerGestureDetector.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/TwoFingerGestureDetector.java similarity index 100% rename from android/java/lib/src/main/java/com/almeros/android/multitouch/gesturedetectors/TwoFingerGestureDetector.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/almeros/android/multitouch/gesturedetectors/TwoFingerGestureDetector.java diff --git a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java similarity index 93% rename from android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java index a36548fe3..accc71732 100644 --- a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLat.java @@ -58,12 +58,15 @@ public class LonLat implements Parcelable { @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } LonLat other = (LonLat) obj; return Double.doubleToLongBits(lat) == Double.doubleToLongBits(other.lat) && Double.doubleToLongBits(lon) == Double.doubleToLongBits(other.lon); } diff --git a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java similarity index 93% rename from android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java index fd78e9356..7b379863e 100644 --- a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/LonLatZoom.java @@ -52,12 +52,15 @@ public class LonLatZoom extends LonLat implements Parcelable { @Override public boolean equals(Object obj) { - if (this == obj) + if (this == obj) { return true; - if (obj == null) + } + if (obj == null) { return false; - if (getClass() != obj.getClass()) + } + if (getClass() != obj.getClass()) { return false; + } LonLatZoom other = (LonLatZoom) obj; return super.equals(obj) && Double.doubleToLongBits(zoom) == Double.doubleToLongBits(other.zoom); } diff --git a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/MapView.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/MapView.java similarity index 83% rename from android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/MapView.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/MapView.java index 4c51df654..05a24fd64 100644 --- a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/MapView.java +++ b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/MapView.java @@ -24,7 +24,6 @@ import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View; import android.view.ViewConfiguration; -import android.widget.ArrayAdapter; import android.widget.ZoomButtonsController; import com.almeros.android.multitouch.gesturedetectors.RotateGestureDetector; @@ -225,7 +224,7 @@ public class MapView extends SurfaceView { } public void setCenterCoordinate(LonLatZoom centerCoordinate, - boolean animated) { + boolean animated) { long duration = animated ? ANIMATION_DURATION : 0; mNativeMapView.setLonLatZoom(centerCoordinate, duration); } @@ -233,10 +232,12 @@ public class MapView extends SurfaceView { public double getDirection() { double direction = -mNativeMapView.getBearing(); - while (direction > 360) + while (direction > 360) { direction -= 360; - while (direction < 0) + } + while (direction < 0) { direction += 360; + } return direction; } @@ -513,7 +514,7 @@ public class MapView extends SurfaceView { // Must handle window resizing here. @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, - int height) { + int height) { Log.v(TAG, "surfaceChanged"); Log.i(TAG, "resize " + format + " " + width + " " + height); mNativeMapView.resize((int) (width / mScreenDensity), (int) (height / mScreenDensity), mScreenDensity, width, height); @@ -588,38 +589,38 @@ public class MapView extends SurfaceView { // Handle two finger tap switch (event.getActionMasked()) { - case MotionEvent.ACTION_DOWN: - // First pointer down - break; + case MotionEvent.ACTION_DOWN: + // First pointer down + break; - case MotionEvent.ACTION_POINTER_DOWN: - // Second pointer down - mTwoTap = event.getPointerCount() == 2; - break; + case MotionEvent.ACTION_POINTER_DOWN: + // Second pointer down + mTwoTap = event.getPointerCount() == 2; + break; - case MotionEvent.ACTION_POINTER_UP: - // Second pointer up - break; + case MotionEvent.ACTION_POINTER_UP: + // Second pointer up + break; - case MotionEvent.ACTION_UP: - // First pointer up - long tapInterval = event.getEventTime() - event.getDownTime(); - boolean isTap = tapInterval <= ViewConfiguration.getTapTimeout(); - boolean inProgress = mRotateGestureDetector.isInProgress() || mScaleGestureDetector.isInProgress(); + case MotionEvent.ACTION_UP: + // First pointer up + long tapInterval = event.getEventTime() - event.getDownTime(); + boolean isTap = tapInterval <= ViewConfiguration.getTapTimeout(); + boolean inProgress = mRotateGestureDetector.isInProgress() || mScaleGestureDetector.isInProgress(); + + if (mTwoTap && isTap && !inProgress) { + PointF focalPoint = TwoFingerGestureDetector.determineFocalPoint(event); + zoom(false, focalPoint.x, focalPoint.y); + mTwoTap = false; + return true; + } - if (mTwoTap && isTap && !inProgress) { - PointF focalPoint = TwoFingerGestureDetector.determineFocalPoint(event); - zoom(false, focalPoint.x, focalPoint.y); mTwoTap = false; - return true; - } + break; - mTwoTap = false; - break; - - case MotionEvent.ACTION_CANCEL: - mTwoTap = false; - break; + case MotionEvent.ACTION_CANCEL: + mTwoTap = false; + break; } boolean retVal = mGestureDetector.onTouchEvent(event); @@ -677,7 +678,7 @@ public class MapView extends SurfaceView { // Called for flings @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, - float velocityY) { + float velocityY) { if (!mScrollEnabled) { return false; } @@ -697,7 +698,7 @@ public class MapView extends SurfaceView { // Cancel any animation mNativeMapView.cancelTransitions(); - mNativeMapView.moveBy(velocityX * duration / 2.0 / mScreenDensity, velocityY * duration / 2.0 / mScreenDensity, (long)(duration * 1000.0f)); + mNativeMapView.moveBy(velocityX * duration / 2.0 / mScreenDensity, velocityY * duration / 2.0 / mScreenDensity, (long) (duration * 1000.0f)); return true; } @@ -712,7 +713,7 @@ public class MapView extends SurfaceView { // Cancel any animation mNativeMapView.cancelTransitions(); // TODO need to test canceling - // transitions with touch + // transitions with touch // Scroll the map mNativeMapView.moveBy(-distanceX / mScreenDensity, -distanceY / mScreenDensity); @@ -885,64 +886,64 @@ public class MapView extends SurfaceView { // Check which key was pressed via hardware/real key code switch (keyCode) { - // Tell the system to track these keys for long presses on - // onKeyLongPress is fired - case KeyEvent.KEYCODE_ENTER: - case KeyEvent.KEYCODE_DPAD_CENTER: - event.startTracking(); - return true; + // Tell the system to track these keys for long presses on + // onKeyLongPress is fired + case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_DPAD_CENTER: + event.startTracking(); + return true; - case KeyEvent.KEYCODE_DPAD_LEFT: - if (!mScrollEnabled) { - return false; - } + case KeyEvent.KEYCODE_DPAD_LEFT: + if (!mScrollEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Move left - mNativeMapView.moveBy(scrollDist / mScreenDensity, 0.0 / mScreenDensity); - return true; + // Move left + mNativeMapView.moveBy(scrollDist / mScreenDensity, 0.0 / mScreenDensity); + return true; - case KeyEvent.KEYCODE_DPAD_RIGHT: - if (!mScrollEnabled) { - return false; - } + case KeyEvent.KEYCODE_DPAD_RIGHT: + if (!mScrollEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Move right - mNativeMapView.moveBy(-scrollDist / mScreenDensity, 0.0 / mScreenDensity); - return true; + // Move right + mNativeMapView.moveBy(-scrollDist / mScreenDensity, 0.0 / mScreenDensity); + return true; - case KeyEvent.KEYCODE_DPAD_UP: - if (!mScrollEnabled) { - return false; - } + case KeyEvent.KEYCODE_DPAD_UP: + if (!mScrollEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Move up - mNativeMapView.moveBy(0.0 / mScreenDensity, scrollDist / mScreenDensity); - return true; + // Move up + mNativeMapView.moveBy(0.0 / mScreenDensity, scrollDist / mScreenDensity); + return true; - case KeyEvent.KEYCODE_DPAD_DOWN: - if (!mScrollEnabled) { - return false; - } + case KeyEvent.KEYCODE_DPAD_DOWN: + if (!mScrollEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Move down - mNativeMapView.moveBy(0.0 / mScreenDensity, -scrollDist / mScreenDensity); - return true; + // Move down + mNativeMapView.moveBy(0.0 / mScreenDensity, -scrollDist / mScreenDensity); + return true; - default: - // We are not interested in this key - return super.onKeyUp(keyCode, event); + default: + // We are not interested in this key + return super.onKeyUp(keyCode, event); } } @@ -951,21 +952,21 @@ public class MapView extends SurfaceView { public boolean onKeyLongPress(int keyCode, KeyEvent event) { // Check which key was pressed via hardware/real key code switch (keyCode) { - // Tell the system to track these keys for long presses on - // onKeyLongPress is fired - case KeyEvent.KEYCODE_ENTER: - case KeyEvent.KEYCODE_DPAD_CENTER: - if (!mZoomEnabled) { - return false; - } + // Tell the system to track these keys for long presses on + // onKeyLongPress is fired + case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_DPAD_CENTER: + if (!mZoomEnabled) { + return false; + } - // Zoom out - zoom(false); - return true; + // Zoom out + zoom(false); + return true; - default: - // We are not interested in this key - return super.onKeyUp(keyCode, event); + default: + // We are not interested in this key + return super.onKeyUp(keyCode, event); } } @@ -983,15 +984,15 @@ public class MapView extends SurfaceView { // Must use the key character map as physical to character is not // fixed/guaranteed switch (keyCode) { - case KeyEvent.KEYCODE_ENTER: - case KeyEvent.KEYCODE_DPAD_CENTER: - if (!mZoomEnabled) { - return false; - } + case KeyEvent.KEYCODE_ENTER: + case KeyEvent.KEYCODE_DPAD_CENTER: + if (!mZoomEnabled) { + return false; + } - // Zoom in - zoom(true); - return true; + // Zoom in + zoom(true); + return true; } // We are not interested in this key @@ -1005,58 +1006,58 @@ public class MapView extends SurfaceView { public boolean onTrackballEvent(MotionEvent event) { // Choose the action switch (event.getActionMasked()) { - // The trackball was rotated - case MotionEvent.ACTION_MOVE: - if (!mScrollEnabled) { - return false; - } + // The trackball was rotated + case MotionEvent.ACTION_MOVE: + if (!mScrollEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Scroll the map - mNativeMapView.moveBy(-10.0 * event.getX() / mScreenDensity, -10.0 * event.getY() / mScreenDensity); - return true; + // Scroll the map + mNativeMapView.moveBy(-10.0 * event.getX() / mScreenDensity, -10.0 * event.getY() / mScreenDensity); + return true; // Trackball was pushed in so start tracking and tell system we are // interested // We will then get the up action - case MotionEvent.ACTION_DOWN: - // Set up a delayed callback to check if trackball is still - // After waiting the system long press time out - if (mCurrentTrackballLongPressTimeOut != null) { - mCurrentTrackballLongPressTimeOut.cancel(); - mCurrentTrackballLongPressTimeOut = null; - } - mCurrentTrackballLongPressTimeOut = new TrackballLongPressTimeOut(); - postDelayed(mCurrentTrackballLongPressTimeOut, - ViewConfiguration.getLongPressTimeout()); - return true; + case MotionEvent.ACTION_DOWN: + // Set up a delayed callback to check if trackball is still + // After waiting the system long press time out + if (mCurrentTrackballLongPressTimeOut != null) { + mCurrentTrackballLongPressTimeOut.cancel(); + mCurrentTrackballLongPressTimeOut = null; + } + mCurrentTrackballLongPressTimeOut = new TrackballLongPressTimeOut(); + postDelayed(mCurrentTrackballLongPressTimeOut, + ViewConfiguration.getLongPressTimeout()); + return true; // Trackball was released - case MotionEvent.ACTION_UP: - if (!mZoomEnabled) { - return false; - } + case MotionEvent.ACTION_UP: + if (!mZoomEnabled) { + return false; + } - // Only handle if we have not already long pressed - if (mCurrentTrackballLongPressTimeOut != null) { - // Zoom in - zoom(true); - } - return true; + // Only handle if we have not already long pressed + if (mCurrentTrackballLongPressTimeOut != null) { + // Zoom in + zoom(true); + } + return true; // Trackball was cancelled - case MotionEvent.ACTION_CANCEL: - if (mCurrentTrackballLongPressTimeOut != null) { - mCurrentTrackballLongPressTimeOut.cancel(); - mCurrentTrackballLongPressTimeOut = null; - } - return true; + case MotionEvent.ACTION_CANCEL: + if (mCurrentTrackballLongPressTimeOut != null) { + mCurrentTrackballLongPressTimeOut.cancel(); + mCurrentTrackballLongPressTimeOut = null; + } + return true; - default: - // We are not interested in this event - return super.onTrackballEvent(event); + default: + // We are not interested in this event + return super.onTrackballEvent(event); } } @@ -1100,26 +1101,26 @@ public class MapView extends SurfaceView { if ((event.getSource() & InputDevice.SOURCE_CLASS_POINTER) == InputDevice.SOURCE_CLASS_POINTER) { // Choose the action switch (event.getActionMasked()) { - // Mouse scrolls - case MotionEvent.ACTION_SCROLL: - if (!mZoomEnabled) { - return false; - } + // Mouse scrolls + case MotionEvent.ACTION_SCROLL: + if (!mZoomEnabled) { + return false; + } - // Cancel any animation - mNativeMapView.cancelTransitions(); + // Cancel any animation + mNativeMapView.cancelTransitions(); - // Get the vertical scroll amount, one click = 1 - float scrollDist = event.getAxisValue(MotionEvent.AXIS_VSCROLL); + // Get the vertical scroll amount, one click = 1 + float scrollDist = event.getAxisValue(MotionEvent.AXIS_VSCROLL); - // Scale the map by the appropriate power of two factor - mNativeMapView.scaleBy(Math.pow(2.0, scrollDist), event.getX() / mScreenDensity, event.getY() / mScreenDensity); + // Scale the map by the appropriate power of two factor + mNativeMapView.scaleBy(Math.pow(2.0, scrollDist), event.getX() / mScreenDensity, event.getY() / mScreenDensity); - return true; + return true; - default: - // We are not interested in this event - return super.onGenericMotionEvent(event); + default: + // We are not interested in this event + return super.onGenericMotionEvent(event); } } @@ -1132,23 +1133,23 @@ public class MapView extends SurfaceView { @Override public boolean onHoverEvent(@NonNull MotionEvent event) { switch (event.getActionMasked()) { - case MotionEvent.ACTION_HOVER_ENTER: - case MotionEvent.ACTION_HOVER_MOVE: - // Show the zoom controls - if ((mZoomButtonsController != null) && mZoomEnabled) { - mZoomButtonsController.setVisible(true); - } - return true; + case MotionEvent.ACTION_HOVER_ENTER: + case MotionEvent.ACTION_HOVER_MOVE: + // Show the zoom controls + if ((mZoomButtonsController != null) && mZoomEnabled) { + mZoomButtonsController.setVisible(true); + } + return true; - case MotionEvent.ACTION_HOVER_EXIT: - // Hide the zoom controls - if (mZoomButtonsController != null) { - mZoomButtonsController.setVisible(false); - } + case MotionEvent.ACTION_HOVER_EXIT: + // Hide the zoom controls + if (mZoomButtonsController != null) { + mZoomButtonsController.setVisible(false); + } - default: - // We are not interested in this event - return super.onHoverEvent(event); + default: + // We are not interested in this event + return super.onHoverEvent(event); } } diff --git a/android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/NativeMapView.java b/android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/NativeMapView.java similarity index 100% rename from android/java/lib/src/main/java/com/mapbox/mapboxgl/lib/NativeMapView.java rename to android/java/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxgl/lib/NativeMapView.java diff --git a/android/java/lib/src/main/res/values/attrs.xml b/android/java/MapboxGLAndroidSDK/src/main/res/values/attrs.xml similarity index 100% rename from android/java/lib/src/main/res/values/attrs.xml rename to android/java/MapboxGLAndroidSDK/src/main/res/values/attrs.xml diff --git a/android/java/app/build.gradle b/android/java/MapboxGLAndroidSDKTestApp/build.gradle similarity index 54% rename from android/java/app/build.gradle rename to android/java/MapboxGLAndroidSDKTestApp/build.gradle index 906f092c4..46c3a8d63 100644 --- a/android/java/app/build.gradle +++ b/android/java/MapboxGLAndroidSDKTestApp/build.gradle @@ -1,11 +1,23 @@ +buildscript { + repositories { + mavenCentral() + } + dependencies { + classpath 'com.android.tools.build:gradle:1.0.0' + classpath 'com.jakewharton.sdkmanager:gradle-plugin:0.10.1' + } +} + +apply plugin: 'android-sdk-manager' apply plugin: 'com.android.application' +apply plugin: 'checkstyle' task accessToken { - def rawDir = new File("app/src/main/res/raw") + def rawDir = new File("MapboxGLAndroidSDKTestApp/src/main/res/raw") rawDir.mkdirs() - def tokenFile = new File("app/src/main/res/raw/token.txt") + def tokenFile = new File("MapboxGLAndroidSDKTestApp/src/main/res/raw/token.txt") if (!tokenFile.exists()) { - String token = System.getenv('MAPBOX_ACCESS_TOKEN') + String token = "$System.env.MAPBOX_ACCESS_TOKEN" if (token == null) { throw new InvalidUserDataException("You must set the MAPBOX_ACCESS_TOKEN environment variable.") } @@ -22,7 +34,7 @@ android { buildToolsVersion "21.1.2" repositories { - jcenter() + mavenCentral() } defaultConfig { @@ -46,6 +58,7 @@ android { lintOptions { checkAllWarnings true disable 'UnusedAttribute' + abortOnError false //disable 'IconDensities' } @@ -58,9 +71,27 @@ android { } dependencies { - compile project(':lib') + compile(project(':MapboxGLAndroidSDK')) { + transitive = true + } compile 'com.android.support:support-annotations:21.0.0' compile 'com.android.support:support-v4:21.0.3' compile 'com.android.support:appcompat-v7:21.0.3' compile 'com.mapzen.android:lost:0.2' } + +checkstyle { + configFile project.file('../checks.xml') + showViolations true +} + +android.applicationVariants.all { variant -> + def name = variant.buildType.name + def checkstyle = project.tasks.create "checkstyle${name.capitalize()}", Checkstyle + checkstyle.dependsOn variant.javaCompile + checkstyle.source variant.javaCompile.source + checkstyle.classpath = project.fileTree(variant.javaCompile.destinationDir) + checkstyle.exclude('**/BuildConfig.java') + checkstyle.exclude('**/R.java') + project.tasks.getByName("check").dependsOn checkstyle +} diff --git a/android/java/app/lint.xml b/android/java/MapboxGLAndroidSDKTestApp/lint.xml similarity index 100% rename from android/java/app/lint.xml rename to android/java/MapboxGLAndroidSDKTestApp/lint.xml diff --git a/android/java/app/src/main/AndroidManifest.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml similarity index 100% rename from android/java/app/src/main/AndroidManifest.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml diff --git a/android/java/app/src/main/java/com/mapbox/mapboxgl/app/MainActivity.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/app/MainActivity.java similarity index 100% rename from android/java/app/src/main/java/com/mapbox/mapboxgl/app/MainActivity.java rename to android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/app/MainActivity.java diff --git a/android/java/app/src/main/java/com/mapbox/mapboxgl/app/MapFragment.java b/android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/app/MapFragment.java similarity index 100% rename from android/java/app/src/main/java/com/mapbox/mapboxgl/app/MapFragment.java rename to android/java/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxgl/app/MapFragment.java diff --git a/android/java/app/src/main/res/drawable-hdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.png similarity index 100% rename from android/java/app/src/main/res/drawable-hdpi/ic_action_about.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_about.png diff --git a/android/java/app/src/main/res/drawable-hdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.png similarity index 100% rename from android/java/app/src/main/res/drawable-hdpi/ic_action_location_found.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_found.png diff --git a/android/java/app/src/main/res/drawable-hdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.png similarity index 100% rename from android/java/app/src/main/res/drawable-hdpi/ic_action_location_searching.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/ic_action_location_searching.png diff --git a/android/java/app/src/main/res/drawable-hdpi/icon.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/icon.png similarity index 100% rename from android/java/app/src/main/res/drawable-hdpi/icon.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/icon.png diff --git a/android/java/app/src/main/res/drawable-hdpi/icon_burned.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/icon_burned.png similarity index 100% rename from android/java/app/src/main/res/drawable-hdpi/icon_burned.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-hdpi/icon_burned.png diff --git a/android/java/app/src/main/res/drawable-mdpi/compass.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/compass.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/compass.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/compass.png diff --git a/android/java/app/src/main/res/drawable-mdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/ic_action_about.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_about.png diff --git a/android/java/app/src/main/res/drawable-mdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/ic_action_location_found.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_found.png diff --git a/android/java/app/src/main/res/drawable-mdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/ic_action_location_searching.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/ic_action_location_searching.png diff --git a/android/java/app/src/main/res/drawable-mdpi/icon.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/icon.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/icon.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/icon.png diff --git a/android/java/app/src/main/res/drawable-mdpi/icon_burned.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/icon_burned.png similarity index 100% rename from android/java/app/src/main/res/drawable-mdpi/icon_burned.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-mdpi/icon_burned.png diff --git a/android/java/app/src/main/res/drawable-xhdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.png similarity index 100% rename from android/java/app/src/main/res/drawable-xhdpi/ic_action_about.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_about.png diff --git a/android/java/app/src/main/res/drawable-xhdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.png similarity index 100% rename from android/java/app/src/main/res/drawable-xhdpi/ic_action_location_found.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_found.png diff --git a/android/java/app/src/main/res/drawable-xhdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.png similarity index 100% rename from android/java/app/src/main/res/drawable-xhdpi/ic_action_location_searching.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/ic_action_location_searching.png diff --git a/android/java/app/src/main/res/drawable-xhdpi/icon.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/icon.png similarity index 100% rename from android/java/app/src/main/res/drawable-xhdpi/icon.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/icon.png diff --git a/android/java/app/src/main/res/drawable-xhdpi/icon_burned.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/icon_burned.png similarity index 100% rename from android/java/app/src/main/res/drawable-xhdpi/icon_burned.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xhdpi/icon_burned.png diff --git a/android/java/app/src/main/res/drawable-xxhdpi/ic_action_about.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxhdpi/ic_action_about.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_about.png diff --git a/android/java/app/src/main/res/drawable-xxhdpi/ic_action_location_found.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxhdpi/ic_action_location_found.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_found.png diff --git a/android/java/app/src/main/res/drawable-xxhdpi/ic_action_location_searching.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxhdpi/ic_action_location_searching.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/ic_action_location_searching.png diff --git a/android/java/app/src/main/res/drawable-xxhdpi/icon.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/icon.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxhdpi/icon.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/icon.png diff --git a/android/java/app/src/main/res/drawable-xxhdpi/icon_burned.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/icon_burned.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxhdpi/icon_burned.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxhdpi/icon_burned.png diff --git a/android/java/app/src/main/res/drawable-xxxhdpi/icon.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/icon.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxxhdpi/icon.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/icon.png diff --git a/android/java/app/src/main/res/drawable-xxxhdpi/icon_burned.png b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/icon_burned.png similarity index 100% rename from android/java/app/src/main/res/drawable-xxxhdpi/icon_burned.png rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/drawable-xxxhdpi/icon_burned.png diff --git a/android/java/app/src/main/res/layout/activity_main.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml similarity index 100% rename from android/java/app/src/main/res/layout/activity_main.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/activity_main.xml diff --git a/android/java/app/src/main/res/layout/fragment_main.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/fragment_main.xml similarity index 100% rename from android/java/app/src/main/res/layout/fragment_main.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/layout/fragment_main.xml diff --git a/android/java/app/src/main/res/menu/menu_main.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_main.xml similarity index 100% rename from android/java/app/src/main/res/menu/menu_main.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/menu/menu_main.xml diff --git a/android/java/app/src/main/res/values/strings.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml similarity index 100% rename from android/java/app/src/main/res/values/strings.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/strings.xml diff --git a/android/java/app/src/main/res/values/styles.xml b/android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml similarity index 100% rename from android/java/app/src/main/res/values/styles.xml rename to android/java/MapboxGLAndroidSDKTestApp/src/main/res/values/styles.xml diff --git a/android/java/build.gradle b/android/java/build.gradle index 1a3b0cc1a..e51332720 100644 --- a/android/java/build.gradle +++ b/android/java/build.gradle @@ -1,9 +1,5 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. -buildscript { - repositories { - jcenter() - } - dependencies { - classpath 'com.android.tools.build:gradle:1.0.0' - } +task wrapper(type: Wrapper) { + gradleVersion = '2.2.1' } + diff --git a/android/java/checks.xml b/android/java/checks.xml new file mode 100644 index 000000000..0ee271678 --- /dev/null +++ b/android/java/checks.xml @@ -0,0 +1,185 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/android/java/lib/build.gradle b/android/java/lib/build.gradle deleted file mode 100644 index 14d3d9b3f..000000000 --- a/android/java/lib/build.gradle +++ /dev/null @@ -1,49 +0,0 @@ -apply plugin: 'com.android.library' - -android { - compileSdkVersion 21 - buildToolsVersion "21.1.2" - - repositories { - jcenter() - } - - defaultConfig { - minSdkVersion 14 - targetSdkVersion 21 - versionCode 4 - versionName "0.1.3" - } - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_7 - targetCompatibility JavaVersion.VERSION_1_7 - } - - lintOptions { - checkAllWarnings true - disable 'IconMissingDensityFolder' - } - - buildTypes { - debug { - jniDebuggable true - } - - release { - minifyEnabled false - proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' - } - } -} - -configurations { - all*.exclude group: 'commons-logging', module: 'commons-logging' - all*.exclude group: 'commons-collections', module: 'commons-collections' -} - -dependencies { - compile 'commons-validator:commons-validator:1.4.1' - compile 'com.android.support:support-annotations:21.0.3' - compile 'com.android.support:support-v4:21.0.3' -} diff --git a/android/java/settings.gradle b/android/java/settings.gradle index 0959cbb33..71a8f1a9a 100644 --- a/android/java/settings.gradle +++ b/android/java/settings.gradle @@ -1,2 +1,2 @@ -include ':app' -include ':lib' +include ':MapboxGLAndroidSDK' +include ':MapboxGLAndroidSDKTestApp' diff --git a/android/mapboxgl-app.gyp b/android/mapboxgl-app.gyp index 5933db4c1..d16d1dd4a 100644 --- a/android/mapboxgl-app.gyp +++ b/android/mapboxgl-app.gyp @@ -77,7 +77,7 @@ '../common/ca-bundle.crt', '../styles/styles' ], - 'destination': '<(pwd)/java/lib/src/main/assets' + 'destination': '<(pwd)/java/MapboxGLAndroidSDK/src/main/assets' }, ], @@ -85,7 +85,7 @@ { 'action_name': 'Strip dynamic library', 'inputs': [ '<(PRODUCT_DIR)/lib.target/libmapbox-gl.so' ], - 'outputs': [ '<(pwd)/java/lib/src/main/jniLibs/$(JNIDIR)/libmapbox-gl.so' ], + 'outputs': [ '<(pwd)/java/MapboxGLAndroidSDK/src/main/jniLibs/$(JNIDIR)/libmapbox-gl.so' ], 'action': [ '$(STRIP)', '<@(_inputs)', '-o', '<@(_outputs)' ] }, ],