Changes between Version 11 and Version 12 of AndroidBuildClient
- Timestamp:
- Nov 11, 2013, 9:32:05 AM (11 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AndroidBuildClient
v11 v12 2 2 = How To Build BOINC for Android = 3 3 4 This document describes, how to build the BOINC Client/Manager for Android-powered devices. 4 This document describes how to build '''BOINC for Android''', 5 which consists of a cross-compiled BOINC Client together with an Android-specific GUI 6 (written in Java using the Android Application Framework API). 5 7 6 To learn more about this project and it's architecture, see AndroidBoincImpl 8 See AndroidBoincImpl for a description of the architecture of BOINC for Android. 7 9 10 See AndroidBuildApp for info on building science applications for BOINC for Android. 8 11 9 12 = Introduction = 10 13 11 == Naming convention ==12 13 BOINC for Android - Android application that bundles a cross compiled BOINC Client14 together with a Android-specific BOINC Manager (GUI).15 16 BOINC apps - scientific applications to be distributed and17 calculated on participating devices.18 19 14 == Requirements == 20 15 21 * recommended IDE for Android development is Eclipse with ADT plugin 22 * Android SDK: http://developer.android.com/sdk/ (not needed if you compile only the boinc libraries for your Android app) 16 * The recommended IDE for Android development is Eclipse with ADT plugin 17 * Android SDK: http://developer.android.com/sdk/ 18 (not needed for building science apps) 23 19 * Android NKD: http://developer.android.com/tools/sdk/ndk/index.html 24 20 * BOINC Client source code: http://boinc.berkeley.edu/trac/wiki/SourceCodeGit 25 21 26 == Used versions==22 == Versions we used == 27 23 28 24 Development target: … … 34 30 * Android platform 2.3.4 35 31 36 37 32 = Building BOINC Client = 38 33 39 == Set up NDK toolchain ==34 == Set up NDK toolchain == 40 35 41 In order to run the BOINC Client on Android-powered devices,42 it is necessary to compile it with the accordingcross compilation toolchain.36 To run the BOINC Client on Android-powered devices, 37 it is necessary to compile it with a cross compilation toolchain. 43 38 This toolchain differs depending on the targeted Android platform version 44 39 and CPU architecture. … … 49 44 for more information see "Android NDK stable APIs"). 50 45 51 Our build scripts depend on the NDKROOT environment variable to point to the 52 installed NDK.Please make sure that environment variable is set before46 Our build scripts depend on the NDKROOT environment variable to point to the installed NDK. 47 Please make sure that environment variable is set before 53 48 executing the build_androidtc.sh shell script. 54 49 … … 62 57 A map of NDK Android platform version (e.g. android-9) 63 58 to common Android versions (e.g. Android 2.3) can be found in under "Stable APIs" 64 ofthe Android NDK documentation.59 in the Android NDK documentation. 65 60 66 61 67 == Build Client using script ==62 == Build the Client == 68 63 69 64 With the compilation toolchain ready, proceed with actually building the BOINC Client. … … 88 83 }}} 89 84 90 Verify that "boinc" executable was created and copied too boinc/android/BOINC/assets.85 Verify that the "boinc" executable was created and copied to boinc/android/BOINC/assets. 91 86 Note that it will not run on your development machine. 92 87 93 To build only the libraries, run the following command from the boinc/android directory. You need build openssl before and adapt the build_libraries.sh to point to your openssl. Curl is not needed: 88 To build only the libraries, run the following command from the boinc/android directory. 89 You need build openssl before and adapt the build_libraries.sh to point to your openssl. 90 Curl is not needed: 94 91 {{{ 95 92 ./build_libraries.sh … … 98 95 = Building BOINC for Android = 99 96 100 BOINC for Android consists of an Android-specific BOINC Manager 101 (GUI, written in Java using the Android Application Framework API) 102 bundled with cross compiled BOINC Client binaries (see section 1). 103 This section describes, how to build the Android application. 104 97 This section describes how to build the Android application. 105 98 106 99 == Setup Android SDK == … … 112 105 113 106 114 == Building BOINC for Android==107 == Building the project == 115 108 116 Make sure ,that the cross compiled BOINC Client resides in your Android project's109 Make sure that the cross compiled BOINC Client resides in your Android project's 117 110 "assets" directory. 118 111 Building the Android project in Eclipse will bundle the Client's binaries … … 121 114 = Debugging = 122 115 123 Both components of BOINC for Android , the BOINC Client and the BOINC Manager,116 Both components of BOINC for Android , the BOINC Client and the GUI, 124 117 use Logcat to write debugging messages. 125 118 … … 127 120 128 121 * AVD is by default ARM ABI v5. 129 * AVD does not support wifi ,the data connection of the development machine122 * AVD does not support wifi; the data connection of the development machine 130 123 is tunneled to the cellular connection of the emulator. 131 Be advi ced,that BOINC for Android's default configuration allows124 Be advised that BOINC for Android's default configuration allows 132 125 project work unit transfers only when wifi is connected! 133 126 To change this behavior, go to application's "settings" tab. 134 * Internal memory and RAM are very littleon an AVD.127 * Internal memory and RAM are very small on an AVD. 135 128 Note that most common Android smartphones have higher capabilities. 136 129 … … 143 136 144 137 * [AndroidBuildApp build your scientific BOINC apps for Android]. 145 Keep in mind ,that the Android platform and architecture settings138 Keep in mind that the Android platform and architecture settings 146 139 have to be the same for both, the BOINC for Android and the BOINC apps. 147 The compatibility of the device gets onlychecked,148 when BOINC for Android is installed on a device ,unsupported scientific apps140 The compatibility of the device gets checked, 141 when BOINC for Android is installed on a device; unsupported scientific apps 149 142 will not be detected and are likely to crash on some devices. 150 143 Use "BOINC platform" configuration of the build script, 151 to distin ctversions with project scheduler.144 to distinguish versions with project scheduler.