Changes between Version 11 and Version 12 of AndroidBuildClient


Ignore:
Timestamp:
Nov 11, 2013, 9:32:05 AM (10 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AndroidBuildClient

    v11 v12  
    22= How To Build BOINC for Android =
    33
    4 This document describes, how to build the BOINC Client/Manager for Android-powered devices.
     4This document describes how to build '''BOINC for Android''',
     5which consists of a cross-compiled BOINC Client together with an Android-specific GUI
     6(written in Java using the Android Application Framework API).
    57
    6 To learn more about this project and it's architecture, see AndroidBoincImpl
     8See AndroidBoincImpl for a description of the architecture of BOINC for Android.
    79
     10See AndroidBuildApp for info on building science applications for BOINC for Android.
    811
    912= Introduction =
    1013
    11 == Naming convention ==
    12 
    13 BOINC for Android - Android application that bundles a cross compiled BOINC Client
    14 together with a Android-specific BOINC Manager (GUI).
    15 
    16 BOINC apps - scientific applications to be distributed and
    17 calculated on participating devices.
    18 
    1914== Requirements ==
    2015
    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)
    2319 * Android NKD: http://developer.android.com/tools/sdk/ndk/index.html
    2420 * BOINC Client source code: http://boinc.berkeley.edu/trac/wiki/SourceCodeGit
    2521
    26 == Used versions ==
     22== Versions we used ==
    2723
    2824Development target:
     
    3430 * Android platform 2.3.4
    3531
    36 
    3732= Building BOINC Client =
    3833
    39 == Setup NDK toolchain ==
     34== Set up NDK toolchain ==
    4035
    41 In order to run the BOINC Client on Android-powered devices,
    42 it is necessary to compile it with the according cross compilation toolchain.
     36To run the BOINC Client on Android-powered devices,
     37it is necessary to compile it with a cross compilation toolchain.
    4338This toolchain differs depending on the targeted Android platform version
    4439and CPU architecture.
     
    4944for more information see "Android NDK stable APIs").
    5045
    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 before
     46Our build scripts depend on the NDKROOT environment variable to point to the installed NDK.
     47Please make sure that environment variable is set before
    5348executing the build_androidtc.sh shell script.
    5449
     
    6257A map of NDK Android platform version (e.g. android-9)
    6358to common Android versions (e.g. Android 2.3) can be found in under "Stable APIs"
    64 of the Android NDK documentation.
     59in the Android NDK documentation.
    6560
    6661
    67 == Build Client using script ==
     62== Build the Client ==
    6863
    6964With the compilation toolchain ready, proceed with actually building the BOINC Client.
     
    8883}}}
    8984
    90 Verify that "boinc" executable was created and copied too boinc/android/BOINC/assets.
     85Verify that the "boinc" executable was created and copied to boinc/android/BOINC/assets.
    9186Note that it will not run on your development machine.
    9287
    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:
     88To build only the libraries, run the following command from the boinc/android directory.
     89You need build openssl before and adapt the build_libraries.sh to point to your openssl.
     90Curl is not needed:
    9491{{{
    9592./build_libraries.sh
     
    9895= Building BOINC for Android =
    9996
    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 
     97This section describes how to build the Android application.
    10598
    10699== Setup Android SDK ==
     
    112105
    113106
    114 == Building BOINC for Android ==
     107== Building the project ==
    115108
    116 Make sure, that the cross compiled BOINC Client resides in your Android project's
     109Make sure that the cross compiled BOINC Client resides in your Android project's
    117110"assets" directory.
    118111Building the Android project in Eclipse will bundle the Client's binaries
     
    121114= Debugging =
    122115
    123 Both components of BOINC for Android , the BOINC Client and the BOINC Manager,
     116Both components of BOINC for Android , the BOINC Client and the GUI,
    124117use Logcat to write debugging messages.
    125118
     
    127120
    128121 * AVD is by default ARM ABI v5.
    129  * AVD does not support wifi, the data connection of the development machine
     122 * AVD does not support wifi; the data connection of the development machine
    130123  is tunneled to the cellular connection of the emulator.
    131   Be adviced, that BOINC for Android's default configuration allows
     124  Be advised that BOINC for Android's default configuration allows
    132125  project work unit transfers only when wifi is connected!
    133126  To change this behavior, go to application's "settings" tab.
    134  * Internal memory and RAM are very little on an AVD.
     127 * Internal memory and RAM are very small on an AVD.
    135128  Note that most common Android smartphones have higher capabilities.
    136129
     
    143136
    144137 * [AndroidBuildApp build your scientific BOINC apps for Android].
    145    Keep in mind, that the Android platform and architecture settings
     138   Keep in mind that the Android platform and architecture settings
    146139   have to be the same for both, the BOINC for Android and the BOINC apps.
    147    The compatibility of the device gets only checked,
    148    when BOINC for Android is installed on a device, unsupported scientific apps
     140   The compatibility of the device gets checked,
     141   when BOINC for Android is installed on a device; unsupported scientific apps
    149142   will not be detected and are likely to crash on some devices.
    150143   Use "BOINC platform" configuration of the build script,
    151    to distinct versions with project scheduler.
     144   to distinguish versions with project scheduler.