-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Android SDK: Update SDK, Qt and add Gstreamer (#16)
This updates the SDK to the latest required for the store and adds GStreamer.
- Loading branch information
1 parent
505915d
commit b18a2bb
Showing
2 changed files
with
27 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,12 +2,13 @@ | |
# QGroundControl android build environment | ||
# | ||
|
||
# Bionic does not work yet: The default JDK is broken for Android | ||
FROM ubuntu:xenial | ||
MAINTAINER Daniel Agar <[email protected]> | ||
|
||
ARG QT_VERSION=5.12.5 | ||
ARG QT_VERSION=5.12.6 | ||
ARG NDK_VERSION=r20b | ||
ARG SDK_BUILD_TOOLS=25.0.3 | ||
ARG SDK_BUILD_TOOLS=28.0.3 | ||
ARG SDK_PACKAGES="tools platform-tools" | ||
ARG SDK_PLATFORM=android-21 | ||
|
||
|
@@ -25,8 +26,8 @@ ENV ANDROID_NDK_TOOLCHAIN_VERSION=4.9 | |
ENV QMAKESPEC=android-clang | ||
ENV QT_PLATFORM=android_armv7 | ||
|
||
ENV QGC_ANDROID_GSTREAMER_URL=https://qgroundcontrol.s3.amazonaws.com/dependencies/gstreamer-1.0-android-universal-1.14.4.tar.bz2 | ||
ENV QGC_ANDROID_GSTREAMER_PATH=/opt/ | ||
ENV QGC_ANDROID_GSTREAMER_URL=https://gstreamer.freedesktop.org/pkg/android/1.14.4/gstreamer-1.0-android-universal-1.14.4.tar.bz2 | ||
ENV QGC_ANDROID_GSTREAMER_PATH=/opt/gstreamer-1.0-android-universal-1.14.4 | ||
|
||
ENV ANDROID_SDK_ROOT=${ANDROID_HOME} | ||
ENV ANDROID_NDK_PLATFORM=${SDK_PLATFORM} | ||
|
@@ -40,7 +41,8 @@ ENV PATH=${QT_PATH}/${QT_VERSION}/${QT_PLATFORM}/bin:${ANDROID_NDK_TOOLCHAIN}/${ | |
ENV PATH=/usr/lib/ccache:${PATH} | ||
|
||
RUN dpkg --add-architecture i386 \ | ||
&& apt-get update && apt-get -y --quiet --no-install-recommends install \ | ||
&& apt-get update \ | ||
&& apt-get -y --quiet --no-install-recommends install \ | ||
ant \ | ||
ca-certificates \ | ||
ccache \ | ||
|
@@ -83,7 +85,9 @@ RUN curl -Lo /tmp/qt/installer.run "https://download.qt.io/archive/qt/$(echo "${ | |
&& rm -rf /tmp/* | ||
|
||
# Download & unpack android SDK | ||
RUN curl -Lo /tmp/sdk-tools.zip 'https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip' \ | ||
# URLs come from here: https://developer.android.com/studio#downloads | ||
|
||
RUN curl -Lo /tmp/sdk-tools.zip 'https://dl.google.com/android/repository/sdk-tools-linux-4333796.zip' \ | ||
&& mkdir -p ${ANDROID_HOME} && unzip -q /tmp/sdk-tools.zip -d ${ANDROID_HOME} && rm -f /tmp/sdk-tools.zip \ | ||
&& yes | sdkmanager --licenses && sdkmanager --verbose "platforms;${SDK_PLATFORM}" "build-tools;${SDK_BUILD_TOOLS}" ${SDK_PACKAGES} | ||
|
||
|
@@ -94,6 +98,10 @@ RUN mkdir /tmp/android && cd /tmp/android && curl -Lo ndk.zip "https://dl.google | |
|
||
# Download & unpack gstreamer | ||
RUN curl --silent -Lo /tmp/gstreamer-android.tar.bz2 ${QGC_ANDROID_GSTREAMER_URL} && mkdir -p ${QGC_ANDROID_GSTREAMER_PATH} && tar jxf /tmp/gstreamer-android.tar.bz2 -C ${QGC_ANDROID_GSTREAMER_PATH} && rm -f /tmp/gstreamer-android.tar.bz2 | ||
# Delete Android x86, 64bit x86 and basic arm libraries | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/x86 | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/x86_64 | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/arm | ||
|
||
# Reconfigure locale | ||
RUN locale-gen en_US.UTF-8 && dpkg-reconfigure locales | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,10 +2,11 @@ | |
# QGroundControl android build environment | ||
# | ||
|
||
# Default JDK is broken for Android on bionic | ||
FROM ubuntu:xenial | ||
MAINTAINER Daniel Agar <[email protected]> | ||
|
||
ARG QT_VERSION=5.12.5 | ||
ARG QT_VERSION=5.12.6 | ||
ARG NDK_VERSION=r20b | ||
ARG SDK_BUILD_TOOLS=25.0.3 | ||
ARG SDK_PACKAGES="tools platform-tools" | ||
|
@@ -25,6 +26,9 @@ ENV ANDROID_NDK_TOOLCHAIN_VERSION=4.9 | |
ENV QMAKESPEC=android-clang | ||
ENV QT_PLATFORM=android_arm64_v8a | ||
|
||
ENV QGC_ANDROID_GSTREAMER_URL=https://qgroundcontrol.s3.amazonaws.com/dependencies/unchanged-gstreamer-1.0-android-universal-1.14.4.tar.bz2 | ||
ENV QGC_ANDROID_GSTREAMER_PATH=/opt/gstreamer-1.0-android-universal-1.14.4 | ||
|
||
ENV ANDROID_SDK_ROOT=${ANDROID_HOME} | ||
ENV ANDROID_NDK_PLATFORM=${SDK_PLATFORM} | ||
ENV ANDROID_NDK_ROOT=${ANDROID_HOME}/ndk-${NDK_VERSION} | ||
|
@@ -66,6 +70,7 @@ RUN dpkg --add-architecture i386 \ | |
wget \ | ||
xvfb \ | ||
zlib1g:i386 \ | ||
bzip2 \ | ||
&& apt-get -y autoremove \ | ||
&& apt-get clean autoclean \ | ||
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log} /tmp/* /var/tmp/* | ||
|
@@ -87,6 +92,13 @@ RUN curl -Lo /tmp/sdk-tools.zip 'https://dl.google.com/android/repository/sdk-to | |
RUN mkdir /tmp/android && cd /tmp/android && curl -Lo ndk.zip "https://dl.google.com/android/repository/android-ndk-${NDK_VERSION}-linux-x86_64.zip" \ | ||
&& unzip -q ndk.zip && mv android-ndk-* $ANDROID_NDK_ROOT && chmod -R +rX $ANDROID_NDK_ROOT \ | ||
&& rm -rf /tmp/android | ||
|
||
# Download & unpack gstreamer | ||
RUN curl --silent -Lo /tmp/gstreamer-android.tar.bz2 ${QGC_ANDROID_GSTREAMER_URL} && mkdir -p ${QGC_ANDROID_GSTREAMER_PATH} && tar jxf /tmp/gstreamer-android.tar.bz2 -C ${QGC_ANDROID_GSTREAMER_PATH} && rm -f /tmp/gstreamer-android.tar.bz2 | ||
# Delete Android x86, 64bit x86 and basic arm libraries | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/x86 | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/x86_64 | ||
RUN rm -rf ${QGC_ANDROID_GSTREAMER_PATH}/arm | ||
|
||
# Reconfigure locale | ||
RUN locale-gen en_US.UTF-8 && dpkg-reconfigure locales | ||
|