Merge pull request #16222 from hannesa2:AndroidMoveVersionInfo
authorhannesa2 <hannes.software@gmx.at>
Fri, 3 Jan 2020 16:15:35 +0000 (17:15 +0100)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Fri, 3 Jan 2020 16:15:35 +0000 (19:15 +0300)
Android move version info to Gradle style

* move version info to Gradle style

* Use VERSION_NAME in loader

* apply review suggestion

modules/java/android_sdk/android_gradle_lib/AndroidManifest.xml
modules/java/android_sdk/android_gradle_lib/build.gradle
modules/java/android_sdk/android_lib/AndroidManifest.xml
modules/java/android_sdk/build.gradle.in
modules/java/generator/android/java/org/opencv/android/OpenCVLoader.java [moved from modules/java/generator/android/java/org/opencv/android/OpenCVLoader.java.in with 96% similarity]

index b62ded7..e971f76 100644 (file)
@@ -1,6 +1,4 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-      package="org.opencv"
-      android:versionCode="@OPENCV_VERSION_MAJOR@@OPENCV_VERSION_MINOR@@OPENCV_VERSION_PATCH@0"
-      android:versionName="@OPENCV_VERSION@">
+      package="org.opencv" >
 </manifest>
index a272fd9..8f969a0 100644 (file)
@@ -1,13 +1,18 @@
 apply plugin: 'com.android.library'
 
+def openCVersionName = "@OPENCV_VERSION@"
+def openCVersionCode = ((@OPENCV_VERSION_MAJOR@ * 100 + @OPENCV_VERSION_MINOR@) * 100 + @OPENCV_VERSION_PATCH@) * 10 + 0
+
 android {
     compileSdkVersion @ANDROID_COMPILE_SDK_VERSION@
-    //buildToolsVersion "x.y.z" // not needed since com.android.tools.build:gradle:3.0.0
 
     defaultConfig {
         minSdkVersion @ANDROID_MIN_SDK_VERSION@
         targetSdkVersion @ANDROID_TARGET_SDK_VERSION@
 
+        versionCode openCVersionCode
+        versionName openCVersionName
+
         externalNativeBuild {
             cmake {
                 arguments "-DANDROID_STL=@ANDROID_STL@"
index 228c6cf..8f7f0a0 100644 (file)
@@ -1,8 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-      package="org.opencv"
-      android:versionCode="@OPENCV_VERSION_MAJOR@@OPENCV_VERSION_MINOR@@OPENCV_VERSION_PATCH@0"
-      android:versionName="@OPENCV_VERSION@">
+      package="org.opencv">
 
     <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="21" />
 </manifest>
index 4335e5a..8fdda4d 100644 (file)
 
 apply plugin: 'com.android.library'
 
-println "OpenCV: " + project.buildscript.sourceFile
+def openCVersionName = "@OPENCV_VERSION@"
+def openCVersionCode = @OPENCV_VERSION_MAJOR@@OPENCV_VERSION_MINOR@@OPENCV_VERSION_PATCH@0
+
+println "OpenCV: " +openCVersionName + " " + project.buildscript.sourceFile
 
 android {
     compileSdkVersion @ANDROID_COMPILE_SDK_VERSION@
-    //buildToolsVersion "x.y.z" // not needed since com.android.tools.build:gradle:3.0.0
 
     defaultConfig {
         minSdkVersion @ANDROID_MIN_SDK_VERSION@
         targetSdkVersion @ANDROID_TARGET_SDK_VERSION@
 
+        versionCode openCVersionCode
+        versionName openCVersionName
+
         externalNativeBuild {
             cmake {
                 arguments "-DANDROID_STL=@ANDROID_STL@"
@@ -2,6 +2,8 @@ package org.opencv.android;
 
 import android.content.Context;
 
+import org.opencv.BuildConfig;
+
 /**
  * Helper class provides common initialization methods for OpenCV library.
  */
@@ -95,7 +97,7 @@ public class OpenCVLoader
     /**
      * Current OpenCV Library version
      */
-    public static final String OPENCV_VERSION = "@OPENCV_VERSION_MAJOR@.@OPENCV_VERSION_MINOR@.@OPENCV_VERSION_PATCH@";
+    public static final String OPENCV_VERSION = BuildConfig.VERSION_NAME;
 
 
     /**