| OLD | NEW |
| 1 Android | 1 Android |
| 2 ======= | 2 ======= |
| 3 | 3 |
| 4 Prerequisites | 4 Prerequisites |
| 5 ------------- | 5 ------------- |
| 6 | 6 |
| 7 _Currently we only support building Skia for Android on a Linux or Mac host! In
addition, | 7 _Currently we only support building Skia for Android on a Linux or Mac host! In
addition, |
| 8 we only use the Mac build for local development. All shipping variants are comp
iled on | 8 we only use the Mac build for local development. All shipping variants are comp
iled on |
| 9 Linux for performance reasons._ | 9 Linux for performance reasons._ |
| 10 | 10 |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 66 ./platform_tools/android/bin/android_ninja -d nexus_10 # or nexus_7, galaxy_
nexus, etc... | 66 ./platform_tools/android/bin/android_ninja -d nexus_10 # or nexus_7, galaxy_
nexus, etc... |
| 67 | 67 |
| 68 The -d option enables the build system to target the build to a specific | 68 The -d option enables the build system to target the build to a specific |
| 69 architecture such as MIPS (generic), x86 (generic) and ARM (generic and device | 69 architecture such as MIPS (generic), x86 (generic) and ARM (generic and device |
| 70 specific flavors for Nexus devices). This in turn allows Skia to take | 70 specific flavors for Nexus devices). This in turn allows Skia to take |
| 71 advantage of specific device optimizations (e.g. NEON instructions). | 71 advantage of specific device optimizations (e.g. NEON instructions). |
| 72 | 72 |
| 73 Generate build file from GYP | 73 Generate build file from GYP |
| 74 ---------------------------- | 74 ---------------------------- |
| 75 | 75 |
| 76 We use the open-source gyp tool to generate build files from our multiplatform | 76 We use the open-source gyp tool to generate build files from our |
| 77 "gyp" files. While most other platforms enable you to regenerate these files | 77 multi-platform "gyp" files. While most other platforms enable you to |
| 78 using `./gyp_skia` it is recommend that you do NOT do this for Android. Instead | 78 regenerate these files using `./gyp_skia` or `bin/sync-and-gyp` it is |
| 79 you can rely on it being run automatically by android_ninja. | 79 recommended that you do NOT do this for Android. Instead you can rely |
| 80 on it being run automatically by android_ninja. |
| 80 | 81 |
| 81 Faster rebuilds | 82 Faster rebuilds |
| 82 --------------- | 83 --------------- |
| 83 | 84 |
| 84 You can use ccache to improve the speed of rebuilding: | 85 You can use ccache to improve the speed of rebuilding: |
| 85 | 86 |
| 86 # You may want to add this export to your shell's .bash_profile or .profile | 87 # You may want to add this export to your shell's .bash_profile or .profile |
| 87 export ANDROID_MAKE_CCACHE=[ccache] | 88 export ANDROID_MAKE_CCACHE=[ccache] |
| 88 | 89 |
| 89 Build and run executables on the device | 90 Build and run executables on the device |
| 90 --------------------------------------- | 91 --------------------------------------- |
| 91 | 92 |
| 92 The build system packages the Skia executables as shared libraries. As such, | 93 The build system packages the Skia executables as shared libraries. As such, |
| 93 in order to run any executable on the device you must install the library and | 94 in order to run any executable on the device you must install the library and |
| 94 a launcher executable on your device. To assist in this process there is a | 95 a launcher executable on your device. To assist in this process there is a |
| 95 script called `android_run_skia` that is located in the | 96 script called `android_run_skia` that is located in the |
| 96 `platform_tools/android/bin` directory. | 97 `platform_tools/android/bin` directory. |
| 97 | 98 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 134 | 135 |
| 135 BUILDTYPE=Debug ./platform_tools/android/bin/android_ninja -d $TARGET_DEVICE
SampleApp_APK | 136 BUILDTYPE=Debug ./platform_tools/android/bin/android_ninja -d $TARGET_DEVICE
SampleApp_APK |
| 136 | 137 |
| 137 Then, install the app onto the device: | 138 Then, install the app onto the device: |
| 138 | 139 |
| 139 ./platform_tools/android/bin/android_install_app | 140 ./platform_tools/android/bin/android_install_app |
| 140 | 141 |
| 141 Finally to run the application you can either navigate to the Skia Samples | 142 Finally to run the application you can either navigate to the Skia Samples |
| 142 application using the application launcher on your device or from the command | 143 application using the application launcher on your device or from the command |
| 143 line. The command line option allows you to pass additional details to the | 144 line. The command line option allows you to pass additional details to the |
| 144 application (similiar to other operating system) that specify where to find | 145 application (similar to other operating system) that specify where to find |
| 145 skp files and other resources. | 146 skp files and other resources. |
| 146 | 147 |
| 147 ./platform_tools/android/bin/android_launch_app --resourcePath /data/local/t
mp/resources | 148 ./platform_tools/android/bin/android_launch_app --resourcePath /data/local/t
mp/resources |
| 148 | 149 |
| 149 By default if no additional parameters are specified the app will use the defaul
t | 150 By default if no additional parameters are specified the app will use the defaul
t |
| 150 params... | 151 parameters... |
| 151 | 152 |
| 152 --resourcePath /data/local/tmp/skia_resoures | 153 --resourcePath /data/local/tmp/skia_resoures |
| 153 --pictureDir /data/local/tmp/skia_skp | 154 --pictureDir /data/local/tmp/skia_skp |
| 154 | 155 |
| 155 | 156 |
| 156 Android Studio Support | 157 Android Studio Support |
| 157 ----------------------- | 158 ----------------------- |
| 158 | 159 |
| 159 You can also build and run SampleApp (and some other experimental apps) using An
droid | 160 You can also build and run SampleApp (and some other experimental apps) using An
droid |
| 160 Studio. To create the project either select "import project" from the quickstar
t | 161 Studio. To create the project either select "import project" from the quickstar
t |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 # COMMAND LINE APPS | 198 # COMMAND LINE APPS |
| 198 # include additional arguments in quotes (e.g. "dm --nopdf") | 199 # include additional arguments in quotes (e.g. "dm --nopdf") |
| 199 ./platform_tools/android/bin/android_gdb_native dm | 200 ./platform_tools/android/bin/android_gdb_native dm |
| 200 | 201 |
| 201 # SAMPLE APP | 202 # SAMPLE APP |
| 202 # make sure you've installed the app on the device first | 203 # make sure you've installed the app on the device first |
| 203 ./platform_tools/android/bin/android_gdb_app | 204 ./platform_tools/android/bin/android_gdb_app |
| 204 | 205 |
| 205 When the gdb client is ready, insert a breakpoint, and continue to let the | 206 When the gdb client is ready, insert a breakpoint, and continue to let the |
| 206 program resume execution. | 207 program resume execution. |
| 207 | |
| OLD | NEW |