diff options
author | jandegr <jandegr@users.noreply.github.com> | 2019-08-16 20:45:07 +0200 |
---|---|---|
committer | Pierre GRANDIN <pgrandin@users.noreply.github.com> | 2019-08-16 12:45:07 -0600 |
commit | c2f9838f07a52cc64cb05e9cf95bb378261946d9 (patch) | |
tree | cc773d9ee43c287c953d2fd90f49f731df020059 | |
parent | ab4d8087a349fa580a4fca1053eca44b1813be16 (diff) | |
download | navit-c2f9838f07a52cc64cb05e9cf95bb378261946d9.tar.gz |
Android build fix and update (#827)
-rw-r--r-- | .circleci/config.yml | 11 | ||||
-rw-r--r-- | build.gradle | 2 | ||||
-rw-r--r-- | gradle/wrapper/gradle-wrapper.properties | 2 | ||||
-rw-r--r-- | navit/CMakeLists.txt | 11 | ||||
-rw-r--r-- | navit/android/build.gradle | 14 | ||||
-rw-r--r-- | navit/android/src/org/navitproject/navit/Navit.java | 2 | ||||
-rwxr-xr-x | scripts/build_android.sh | 9 |
7 files changed, 31 insertions, 20 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml index 823ca54d0..273406c54 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -68,7 +68,7 @@ jobs: build_android: working_directory: ~/code docker: - - image: circleci/android:api-28-ndk + - image: circleci/android:api-29 environment: JVM_OPTS: -Xmx3200m GRADLE_OPTS: '-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"' @@ -78,14 +78,19 @@ jobs: name: Id command: cat /etc/*release - run: - name: Install cmake gettext libsaxonb-java librsvg2-bin pkg-config libprotobuf-c-dev protobuf-c-compiler + name: Install cmake gettext libsaxonb-java librsvg2-bin pkg-config rename command: | sudo apt-get update - sudo apt-get install -y cmake gettext libsaxonb-java librsvg2-bin pkg-config libprotobuf-c-dev protobuf-c-compiler + sudo apt-get install -y cmake gettext libsaxonb-java librsvg2-bin pkg-config rename - run: name: Install Android SDK components command: sdkmanager "cmake;3.6.4111459" - run: + name: Install ndk + command: | + echo y | sdkmanager --licenses + echo y | sdkmanager ndk-bundle + - run: name: Build for Android command: bash scripts/build_android.sh - run: diff --git a/build.gradle b/build.gradle index 5d598ab8b..8fe92d2f1 100644 --- a/build.gradle +++ b/build.gradle @@ -10,7 +10,7 @@ buildscript { } } dependencies { - classpath 'com.android.tools.build:gradle:3.1.2' + classpath 'com.android.tools.build:gradle:3.4.2' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 73bb13d55..25f587d12 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.7-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6-all.zip diff --git a/navit/CMakeLists.txt b/navit/CMakeLists.txt index 0c4d4243d..1234bd0cb 100644 --- a/navit/CMakeLists.txt +++ b/navit/CMakeLists.txt @@ -95,13 +95,12 @@ if(NOT ANDROID) endif() endif() -#if (SHARED_LIBNAVIT) -# add_library (${NAVIT_LIBNAME} SHARED ${NAVIT_SRC} ) -#else(SHARED_LIBNAVIT) -# add_library (${NAVIT_LIBNAME} STATIC ${NAVIT_SRC} ) -#endif(SHARED_LIBNAVIT) +if (SHARED_LIBNAVIT) + add_library (${NAVIT_LIBNAME} SHARED ${NAVIT_SRC} ) +else(SHARED_LIBNAVIT) + add_library (${NAVIT_LIBNAME} STATIC ${NAVIT_SRC} ) +endif(SHARED_LIBNAVIT) -add_library (${NAVIT_LIBNAME} ${NAVIT_SRC} ) if(NOT MSVC) SET(NAVIT_LIBS ${NAVIT_LIBS} m) endif(NOT MSVC) diff --git a/navit/android/build.gradle b/navit/android/build.gradle index 1385336bf..faf5acc03 100644 --- a/navit/android/build.gradle +++ b/navit/android/build.gradle @@ -3,17 +3,17 @@ apply from: "$project.rootDir/gradle/scripts/git-scm-version.gradle" apply plugin: 'checkstyle' android { - compileSdkVersion 27 - buildToolsVersion "27.0.3" + compileSdkVersion 28 + buildToolsVersion "29.0.1" defaultConfig { applicationId "org.navitproject.navit" minSdkVersion 9 - targetSdkVersion 27 + targetSdkVersion 28 versionCode gitVersionCode versionName gitVersionName testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" - ndk { // need for now for 'x86_64' and , 'armeabi' and , 'arm64-v8a' - abiFilters 'x86', 'armeabi-v7a' + ndk { // need for now for 'x86_64' and 'armeabi' + abiFilters 'x86', 'armeabi-v7a', 'arm64-v8a' } externalNativeBuild { cmake { @@ -61,10 +61,10 @@ android { xml.enabled = true html.enabled = true xml { - destination "checkstyle/checkstyleMain.xml" + destination file("checkstyle/checkstyleMain.xml") } html { - destination "checkstyle/checkstyleMain.html" + destination file("checkstyle/checkstyleMain.html") } } diff --git a/navit/android/src/org/navitproject/navit/Navit.java b/navit/android/src/org/navitproject/navit/Navit.java index bc2af1632..a2c1a4ff1 100644 --- a/navit/android/src/org/navitproject/navit/Navit.java +++ b/navit/android/src/org/navitproject/navit/Navit.java @@ -444,7 +444,7 @@ public class Navit extends Activity { ActivityResults = new NavitActivityResult[16]; setVolumeControlStream(AudioManager.STREAM_MUSIC); PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); - wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE,"NavitDoNotDimScreen"); + wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK | PowerManager.ON_AFTER_RELEASE,"navit:DoNotDimScreen"); if (!extractRes(langc, NAVIT_DATA_DIR + "/locale/" + langc + "/LC_MESSAGES/navit.mo")) { Log.e(TAG, "Failed to extract language resource " + langc); diff --git a/scripts/build_android.sh b/scripts/build_android.sh index 4b915f35e..3f2738451 100755 --- a/scripts/build_android.sh +++ b/scripts/build_android.sh @@ -22,8 +22,13 @@ export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin export JVM_OPTS="-Xmx3200m" export GRADLE_OPTS='-Dorg.gradle.jvmargs="-Xmx2048m -XX:+HeapDumpOnOutOfMemoryError"' +# processing xml is messed up a bit after the original introduction of gradle +# so a useless install of ant here even if using gradle/ninja + +sudo apt-get install -y ant + echo Run CMake -cmake ./ -Dvehicle/gpsd_dbus:BOOL=FALSE -Dsvg2png_scaling:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_nav:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_flag:STRING=-1,24,32,64,96 -DUSE_PLUGINS=n -DBUILD_MAPTOOL=n -DXSL_PROCESSING=y -DXSLTS=android -DANDROID=y -DSAMPLE_MAP=n || exit 1 +cmake ./ -Dvehicle/gpsd_dbus:BOOL=FALSE -Dsvg2png_scaling:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_nav:STRING=-1,24,32,48,64,96,128,192,256 -Dsvg2png_scaling_flag:STRING=-1,24,32,64,96 -DXSL_PROCESSING=y -DXSLTS=android -DANDROID=y || exit 1 echo Process icons pushd navit/icons @@ -45,6 +50,8 @@ rename 'y/A-Z/a-z/' ./*.mo popd popd + + echo Process xml config files make navit_config_xml || exit 96 pushd navit |