98237bc43d
LibreOffice Online/android-lib (Icelandic) Currently translated at 100.0% (12 of 12 strings) Change-Id: I183fcaf2de50e621f187208fb454fb6d855e95ee update translations LibreOffice Online/ios (Icelandic) Currently translated at 100.0% (5 of 5 strings) Change-Id: I842ec844671c654ebce260340583dba212378899 update translations LibreOffice Online/android-app (Icelandic) Currently translated at 100.0% (102 of 102 strings) Change-Id: I628da1a1dfb3184fcb135e17fef5a1c57402d959 update translations LibreOffice Online/loleaflet-ui (Icelandic) Currently translated at 100.0% (299 of 299 strings) Change-Id: Iea245a9dd18333e1290264d9df089585580c386d update translations LibreOffice Online/android-app (Greek) Currently translated at 100.0% (102 of 102 strings) Change-Id: I22c7c03799af6c1d28906cb48e5221b7211b7c33 update translations LibreOffice Online/android-app (Lower Sorbian) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ib7ff420c6d2747f4f6a5b0be887c1c4ac643b7ed update translations LibreOffice Online/android-app (Upper Sorbian) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ib5fbefab251a3c97b324de9c14da3f9d531f7c98 update translations LibreOffice Online/android-app (Basque) Currently translated at 100.0% (102 of 102 strings) Change-Id: I6e414a613134e9d639424c7fd781487822552a9b update translations LibreOffice Online/android-app (Portuguese (Brazil)) Currently translated at 100.0% (102 of 102 strings) Change-Id: I958890da36d7daccdb81afdf67076b4f85992890 update translations LibreOffice Online/android-app (Portuguese) Currently translated at 100.0% (102 of 102 strings) Change-Id: I21c82208e9fae9be79cfce4f9bb1a655a0290389 update translations LibreOffice Online/android-app (Polish) Currently translated at 100.0% (102 of 102 strings) Change-Id: I0bceafa6cf47f23cb1e301eec6bf86725f05cf29 update translations LibreOffice Online/android-app (Asturian) Currently translated at 72.5% (74 of 102 strings) Change-Id: I7c7ba01c9e7a44261db865541977215ff856317e update translations LibreOffice Online/android-app (Catalan) Currently translated at 100.0% (102 of 102 strings) Change-Id: I242ae9d6556882947dfd3d65bb6d2398126ebabd update translations LibreOffice Online/android-app (Spanish) Currently translated at 100.0% (102 of 102 strings) Change-Id: I4d179518ce371497bcf9b44f77f834b429aecd23 update translations LibreOffice Online/android-app (Welsh) Currently translated at 100.0% (102 of 102 strings) Change-Id: Icfa439045af90265b7d6f57617b35cecdc1e6f8a update translations LibreOffice Online/android-app (German) Currently translated at 100.0% (102 of 102 strings) Change-Id: I39087e675a0f0984056725a21dc849dbdeb1b3a6 update translations LibreOffice Online/android-app (Hungarian) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ic857cee0d06ce98eba66de7d4bebbc900339cafb update translations LibreOffice Online/android-app (Bulgarian) Currently translated at 100.0% (102 of 102 strings) Change-Id: I4e22558741170cad78fedb6bcba4837d5cc80637 update translations LibreOffice Online/android-app (Greek) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ib6cd6194799259fc941cbdb41cc0a9d64c6c872a update translations LibreOffice Online/android-app (Basque) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ia23d8f5357f352fc0ac80dc0a489af31ccd81acd update translations LibreOffice Online/android-app (Dutch) Currently translated at 100.0% (102 of 102 strings) Change-Id: I748644b1afcc33fd41a96b63dbd84e947a805bba update translations LibreOffice Online/android-app (Polish) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ib3a18ff8c0017ae754320d01ac9a674afee46e8b update translations LibreOffice Online/android-app (Portuguese) Currently translated at 100.0% (102 of 102 strings) Change-Id: I3f1fab70021814bcdf3f7ef1a678bfe82ffb1958 update translations LibreOffice Online/android-app (Asturian) Currently translated at 71.6% (73 of 102 strings) Change-Id: Iddf1d3678d9586c6953c7b677ad2a3be1332fa35 update translations LibreOffice Online/android-app (German) Currently translated at 100.0% (102 of 102 strings) Change-Id: I1ff14c2f83340a70b346d16376c8bb35a42d0124 update translations LibreOffice Online/android-app (Catalan) Currently translated at 100.0% (102 of 102 strings) Change-Id: I419daea6e8d96dc9b1093017aaa56bc118de72bf update translations LibreOffice Online/android-app (Hungarian) Currently translated at 100.0% (102 of 102 strings) Change-Id: I47fea7bae2faa4b3937ffd674b10ea87a4119b04 update translations LibreOffice Online/android-app (Spanish) Currently translated at 100.0% (102 of 102 strings) Change-Id: Ib18428eb5d6438114f4efb7cb2a99112f308d917 update translations LibreOffice Online/ios (Portuguese) Currently translated at 100.0% (5 of 5 strings) Change-Id: Iabb761200c1d076acb766c0e64c90983e69df768 update translations LibreOffice Online/ios (Polish) Currently translated at 100.0% (5 of 5 strings) Change-Id: Iaa20cf5d8a7f12c15078200c4fa4eeedf87e895b update translations LibreOffice Online/loleaflet-help (Upper Sorbian) Currently translated at 64.2% (267 of 416 strings) Change-Id: I0b850ce59c707af632725ce842af166e37cdff68 update translations LibreOffice Online/loleaflet-ui (French) Currently translated at 100.0% (299 of 299 strings) Change-Id: Ia4df2e12c622df89e92dce9801f2f9498c1c49f7 update translations LibreOffice Online/loleaflet-ui (Upper Sorbian) Currently translated at 100.0% (299 of 299 strings) Change-Id: I4a149738e8f392c04c039cc870d9f182f8dbccf4 update translations LibreOffice Online/loleaflet-ui (Lower Sorbian) Currently translated at 100.0% (299 of 299 strings) Change-Id: I5cbb0628965332c2614dd7ec2ad0d52faf570c88 update translations LibreOffice Online/loleaflet-help (Dutch) Currently translated at 57.9% (241 of 416 strings) Change-Id: Ia811db8f83c6423e96e30a90b0308ece8b6b0b52 update translations LibreOffice Online/loleaflet-ui (Dutch) Currently translated at 100.0% (299 of 299 strings) Change-Id: Ie72db2ad5ba8448c1eba31d29b978b8b8aba4da2 update translations LibreOffice Online/loleaflet-ui (German) Currently translated at 100.0% (299 of 299 strings) Change-Id: I46d055537c827b0697ee2728bb90863dfb664214 update translations LibreOffice Online/loleaflet-help (Portuguese) Currently translated at 55.3% (230 of 416 strings) Change-Id: I715b89f8e2bcdd5d693556770b5b1ccb1df67359 update translations LibreOffice Online/loleaflet-ui (Portuguese (Brazil)) Currently translated at 100.0% (299 of 299 strings) Change-Id: I0b5c69af05407596326c8b9a739d8ce655257d2e update translations LibreOffice Online/loleaflet-ui (Portuguese) Currently translated at 100.0% (299 of 299 strings) Change-Id: I8f43f3df033ce984795360975c83bd95de9fad63 update translations LibreOffice Online/loleaflet-help (Czech) Currently translated at 100.0% (416 of 416 strings) Change-Id: Ia4637d89b0a39b9e212bc9bf759e6e99562b551b update translations LibreOffice Online/loleaflet-ui (Welsh) Currently translated at 100.0% (299 of 299 strings) Change-Id: I2094e5bb5f8597c3186418d00f3e36c2c623e4f5 update translations LibreOffice Online/loleaflet-ui (Czech) Currently translated at 100.0% (299 of 299 strings) Change-Id: I48962d4e085756706d85e91559bede029dd8813d update translations LibreOffice Online/loleaflet-ui (Polish) Currently translated at 100.0% (299 of 299 strings) Change-Id: I112820b692071456ddcf66f602d52bb6902a3316 update translations LibreOffice Online/loleaflet-ui (Spanish) Currently translated at 100.0% (299 of 299 strings) Change-Id: I74c18aa65afa7aa0fab598e844793b3430e64726 update translations LibreOffice Online/loleaflet-ui (Catalan) Currently translated at 100.0% (299 of 299 strings) Change-Id: Ic4ca5182c3b9a218cc5a11e37a0a7e90e24cd9cb update translations LibreOffice Online/loleaflet-ui (Bulgarian) Currently translated at 99.7% (298 of 299 strings) Change-Id: I504aac13cace375e40673baa15afe159fdc4898e update translations LibreOffice Online/loleaflet-ui (Basque) Currently translated at 100.0% (299 of 299 strings) Change-Id: I1de3dffa8d18c6392f0420055c5bb76ab28277e9 update translations LibreOffice Online/loleaflet-ui (Greek) Currently translated at 100.0% (299 of 299 strings) Change-Id: I489e92c306a83c124db4e186113dee3589d4df91 update translations LibreOffice Online/loleaflet-ui (Hungarian) Currently translated at 100.0% (299 of 299 strings) Change-Id: I9081b02dcde7207e1f0769ea7d2aa1334995a4e7 Reviewed-on: https://gerrit.libreoffice.org/c/online/+/92879 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Andras Timar <andras.timar@collabora.com> |
||
---|---|---|
.. | ||
app | ||
gradle/wrapper | ||
lib | ||
templates | ||
.gitignore | ||
build.gradle.in | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
README | ||
settings.gradle |
The development of this Android app has to be done on Linux, it's currently not possible to build the native parts on Windows. * Compile LibreOffice master for Android. Do this in the folder where you cloned the LibreOffice core (e.g master-android). Create an autogen.input file: --build=x86_64-unknown-linux-gnu --with-android-ndk=/home/$USER/Android/Sdk/ndk-bundle --with-android-sdk=/home/$USER/Android/Sdk --with-distro=LibreOfficeAndroid --enable-sal-log Run ./autogen.sh && make * Build the POCO for Android # clone the poco repository in the same folder where LibreOffice core and online folders are placed. git clone https://github.com/pocoproject/poco poco-android cd poco-android # use the 1.9.1 branch git checkout -b poco-1.9.1 origin/poco-1.9.1 # configure ./configure --config=Android --no-samples --no-tests --minimal # make it PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=armeabi-v7a CC=armv7a-linux-androideabi21-clang CXX=armv7a-linux-androideabi21-clang++ SYSLIBS=-static-libstdc++ # install it to /opt/poco-android PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=armeabi-v7a CC=armv7a-linux-androideabi21-clang CXX=armv7a-linux-androideabi21-clang++ SYSLIBS=-static-libstdc++ install INSTALLDIR=/opt/poco-android * 64bit POCO for Android # checkout the 1.9.1 in a different location and apply the following patch: --- a/build/config/Android +++ b/build/config/Android @@ -21,6 +21,11 @@ TOOL = arm-linux-androideabi ARCHFLAGS = -march=armv7-a -mfloat-abi=softfp LINKFLAGS = -Wl,--fix-cortex-a8 else +ifeq ($(ANDROID_ABI),arm64-v8a) +TOOL = aarch64-linux-android +#ARCHFLAGS = -march=armv7-a -mfloat-abi=softfp +#LINKFLAGS = -Wl,--fix-cortex-a8 +else ifeq ($(ANDROID_ABI),x86) TOOL = i686-linux-android ARCHFLAGS = -march=i686 -msse3 -mstackrealign -mfpmath=sse @@ -29,6 +34,7 @@ $(error Invalid ABI specified in ANDROID_ABI) endif endif endif +endif # # Define Tools # configure as above and make it: PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=arm64-v8a CC=aarch64-linux-android21-clang CXX=aarch64-linux-android21-clang++ SYSLIBS=-static-libstdc++ # install PATH="$PATH":~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin make -j8 ANDROID_ABI=arm64-v8a CC=aarch64-linux-android21-clang CXX=aarch64-linux-android21-clang++ SYSLIBS=-static-libstdc++ install INSTALLDIR=/opt/poco-android-64bit * Configure the online.git (eg. in online-android folder) Don't forget to change --with-lo-builddir in the following: ./autogen.sh && ./configure CC=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang CXX=~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ --host=arm-linux-androideabi --enable-androidapp --with-lo-builddir=/local/libreoffice/master-android --with-poco-includes=/opt/poco-android/include --with-poco-libs=/opt/poco-android/lib --disable-setcap --enable-silent-rules --enable-debug * Build the JavaScript, HTML and CSS files also in the online-android folder # just run 'make' make * Build the actual app + Start Android Studio + Open this 'android' subdir as a project + Build from Android Studio (Build -> Make Project) Or + command line: ./gradlew build == Building 32bit + 64bit combined .apk == + you need to build both a 32bit (armeabi-v7a) and 64bit (arm64-v8a) core + you need to build both a 32bit and 64bit POCO + and then provide paths to both to the ./configure, separated by a colon ':', like: --with-lo-builddir=/local/libreoffice/master-android-release:/local/libreoffice/master-android-release-64bit \ --with-poco-includes=/opt/poco-android/include:/opt/poco-android-64bit/include \ --with-poco-libs=/opt/poco-android/lib:/opt/poco-android-64bit/lib \ == Debugging == To debug the native code in Android Studio, you need the debugging symbols and to setup lldb to actually read & use them. * Add debugging symbols for the modules you are interested in To autogen.input, add something like: --enable-symbols="vcl/ desktop/ sal/ svx/ framework/ sfx2/ tools/ cppu/ cppuhelper/ filter/ comphelper/ Library_sw Library_swd Library_swui" clean the appropriate modules, like make vcl.clean desktop.clean sal.clean svx.clean framework.clean sfx2.clean tools.clean cppu.clean cppuhelper.clean filter.clean comphelper.clean sw.clean and rebuild using 'make'. * Add android/source/obj/local/armeabi-v7a from core.git as a Symbol Directory In Android Studio, choose Run -> Debug... -> Edit Configurations... There go to the Android App -> app, choose the Debugger tab, and: Debug type: Auto (or Dual) Symbol Directories: here add the full path, like /local/libreoffice/master-android/android/source/obj/local/armeabi-v7a This path contains the non-stripped version of the liblo-native-code.so, and the debugger will read the symbols from that one (even if the APK contains the stripped version). *NB* ensure that this is before any internal source directories - since the internal source contains stripped native code. [Alternatively you can add the following to your ~/.lldbinit instead: settings set target.inline-breakpoint-strategy always settings append target.exec-search-paths /local/libreoffice/master-android/android/source/obj/local/armeabi-v7a ] * To use pretty printers for types like OUString, add the following to your ~/.lldbinit: command script import '/local/libreoffice/master-android/solenv/lldb/libreoffice/LO.py' From now on, you will be able to debug directly in the Android Studio debugger. Happy debugging! Note: to re-build your app with a newly compiled libnative-lo code - it is == Tip: How to speed up your core.git build == If you use icecream for parallel building, you can use it for cross-compilation too. # first generate a tarball with the toolchain (once) icecc-create-env ~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang ~/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/armv7a-linux-androideabi21-clang++ And add it and the paths to the compiler as the first things to the autogen.input: CC=icecc [here copy what the output of ./autogen.sh without icecream said for C compiler] CXX=icecc [here copy what the output of ./autogen.sh without icecream said for C++ compiler] ICECC_VERSION=/path/to/the/tarball/generated/above/955ceb546ceb7a5715bf0223ddd788fe.tar.gz --with-parallelism=[amount of cpu threads in your icecream farm] --enable-icecream [...the original autogen.input...] So the result will look something like this: CC=icecc /home/$USER/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -mthumb -march=armv7-a -mfloat-abi=softfp -mfpu=neon -Wl,--fix-cortex-a8 -gcc-toolchain /home/$USER/Android/Sdk/ndk-bundle/to> CXX=icecc /home/$USER/Android/Sdk/ndk-bundle/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -mthumb -march=armv7-a -mfloat-abi=softfp -mfpu=neon -Wl,--fix-cortex-a8 -gcc-toolchain /home/$USER/Android/Sdk/ndk-bundle> ICECC_VERSION=/local/libreoffice/android/955ceb546ceb7a5715bf0223ddd788fe.tar.gz --with-parallelism=25 --enable-icecream --build=x86_64-unknown-linux-gnu --with-android-ndk=/home/$USER/Android/Sdk/ndk-bundle --with-android-sdk=/home/$USER/Android/Sdk --with-distro=LibreOfficeAndroid --enable-sal-log