From 2d723b004a69c490d3ae08a883917b173b5c9e8c Mon Sep 17 00:00:00 2001 From: "Hoa V. DINH" Date: Sun, 4 Jan 2015 22:13:15 -0800 Subject: Build process will generate .aar file --- build-android/AndroidManifest.xml | 13 +++++++++++++ build-android/build.sh | 26 +++++++++++++++++++------- 2 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 build-android/AndroidManifest.xml (limited to 'build-android') diff --git a/build-android/AndroidManifest.xml b/build-android/AndroidManifest.xml new file mode 100644 index 00000000..e31d58aa --- /dev/null +++ b/build-android/AndroidManifest.xml @@ -0,0 +1,13 @@ + + + + + + + + \ No newline at end of file diff --git a/build-android/build.sh b/build-android/build.sh index bb41aba3..74f328dc 100755 --- a/build-android/build.sh +++ b/build-android/build.sh @@ -20,6 +20,11 @@ if test "x$ANDROID_NDK" = x ; then exit 1 fi +if test "x$ANDROID_SDK" = x ; then + echo should set ANDROID_SDK before running this script. + exit 1 +fi + function download_dep { name="$1" version="$2" @@ -48,8 +53,9 @@ function build { OPENSSL_PATH=$current_dir/third-party/openssl-android-1 \ CYRUS_SASL_PATH=$current_dir/third-party/cyrus-sasl-android-1 - mkdir -p "$current_dir/$package_name-$build_version/libs/$TARGET_ARCH_ABI" - cp "$current_dir/libs/$TARGET_ARCH_ABI/libMailCore.so" "$current_dir/$package_name-$build_version/libs/$TARGET_ARCH_ABI" + mkdir -p "$current_dir/bin/jni/$TARGET_ARCH_ABI" + cp "$current_dir/libs/$TARGET_ARCH_ABI/libMailCore.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" + cp "$ANDROID_NDK/sources/cxx-stl/llvm-libc++/libs/$TARGET_ARCH_ABI/libc++_shared.so" "$current_dir/bin/jni/$TARGET_ARCH_ABI" rm -rf "$current_dir/obj" rm -rf "$current_dir/libs" } @@ -60,8 +66,6 @@ cmake ../.. mkdir -p "$current_dir/include" cp -R "$current_dir/cmake-build/src/include/MailCore" "$current_dir/include" -mkdir -p "$current_dir/$package_name-$build_version/include" -cp -R "$current_dir/cmake-build/src/include/MailCore" "$current_dir/$package_name-$build_version/include" mkdir -p "$current_dir/third-party" cd "$current_dir/third-party" @@ -80,6 +84,14 @@ for arch in $archs ; do build done -cd "$current_dir" -zip -qry "$package_name-$build_version.zip" "$package_name-$build_version" -rm -rf "$package_name-$build_version" +cd "$current_dir/../src/java" +mkdir -p "$current_dir/bin" +javac -d "$current_dir/bin" -source 1.6 -target 1.6 -classpath $ANDROID_SDK/platforms/$ANDROID_PLATFORM/android.jar com/libmailcore/*.java +cd "$current_dir/bin" +jar cf classes.jar . +rm -rf "$current_dir/bin/com" +mkdir -p res +sed -e "s/android:versionCode=\"1\"/android:versionCode=\"$build_version\"/" "$current_dir/AndroidManifest.xml" > "$current_dir/bin/AndroidManifest.xml" +zip -qry "$current_dir/$package_name-$build_version.aar" . + +rm -rf "$current_dir/bin" -- cgit v1.2.3