| OLD | NEW | 
|    1 Adblock Plus Library for Android |    1 Adblock Plus Library for Android | 
|    2 ================================ |    2 ================================ | 
|    3  |    3  | 
|    4 An Android library project, tests and demo application for AdblockWebView widget
     . |    4 An Android library project, tests and demo application for AdblockWebView widget
     . | 
|    5  |    5  | 
|    6 ## Updating the dependencies |    6 ## Updating the dependencies | 
|    7  |    7  | 
|    8 Adblock Plus for Android has dependencies that aren't in this repository. |    8 Adblock Plus for Android has dependencies that aren't in this repository. | 
|    9 To update those, call: |    9 To update those, call: | 
|   10  |   10  | 
|   11     ./ensure_dependencies.py |   11     ./ensure_dependencies.py | 
|   12  |   12  | 
|   13 ## Library |   13 ## Library | 
|   14  |   14  | 
|   15 An Android library that provides the core functionality of Adblock Plus. |   15 An Android library that provides the core functionality of Adblock Plus. | 
|   16 You can find it in the 'libadblockplus-android' directory. |   16 You can find it in the 'libadblockplus-android' directory. | 
|   17  |   17  | 
|   18 ### Building with Ant |   18 ### Building | 
|   19  |   19  | 
|   20 #### Requirements |   20 #### Requirements | 
|   21  |   21  | 
|   22 * [The Android SDK](http://developer.android.com/sdk) |  | 
|   23 * [The Android NDK, 12b](https://developer.android.com/tools/sdk/ndk) |  | 
|   24 * [Ant](http://ant.apache.org) |  | 
|   25  |  | 
|   26 #### Building |  | 
|   27  |  | 
|   28 In the 'libadblockplus-android' directory create the file _local.properties_ and
      set |  | 
|   29 _sdk.dir_ and _ndk.dir_ to where you installed it, e.g.: |  | 
|   30  |  | 
|   31     sdk.dir = /some/where/sdk |  | 
|   32     ndk.dir = /some/where/ndk |  | 
|   33  |  | 
|   34 Then run: |  | 
|   35  |  | 
|   36     ant debug |  | 
|   37  |  | 
|   38 ### Building with Maven |  | 
|   39  |  | 
|   40 #### Requirements |  | 
|   41  |  | 
|   42 All 'Building with Ant' requirements and additional requirements: |  | 
|   43  |  | 
|   44 * [Maven](https://maven.apache.org) |  | 
|   45  |  | 
|   46 #### Building |  | 
|   47  |  | 
|   48 Go to android sdk directory '/platforms/android-21' and run: |  | 
|   49  |  | 
|   50     mvn install:install-file -Dfile=./android.jar -DgroupId=com.google.android -
     DartifactId=android |  | 
|   51      -Dversion=5.0 -Dpackaging=jar -DgeneratePom=true |  | 
|   52  |  | 
|   53 Set environment variable ANDROID_HOME to your Android SDK directory or pass it i
     n command-line (below). |  | 
|   54 In the root directory run: |  | 
|   55  |  | 
|   56         mvn clean install [-Dandroid.sdk.path=/some/where/sdk] |  | 
|   57  |  | 
|   58 This will generate *.aar library artifacts in the 'libadblockplus-android/target
     ', |  | 
|   59 'libadblockplus-android-settings/target', 'libadblockplus-android-webview/target
     ' directories |  | 
|   60 and *.apk in the 'libadblockplus-android-webviewapp/target' directory. |  | 
|   61  |  | 
|   62 ### Building with Gradle/Android Studio |  | 
|   63  |  | 
|   64 #### Requirements |  | 
|   65  |  | 
|   66 * [The Android SDK](https://developer.android.com/sdk) |   22 * [The Android SDK](https://developer.android.com/sdk) | 
|   67 * Android SDK Build tools 24.0.1 |   23 * Android SDK Build tools 24.0.1 | 
|   68 * [The Android NDK, 12b](https://developer.android.com/ndk) |   24 * [The Android NDK, 12b](https://developer.android.com/ndk) | 
|   69  |   25  | 
|   70 Edit 'buildToolsVersion' in 'build.gradle' files if necessary. |   26 Edit 'buildToolsVersion' in 'build.gradle' files if necessary. | 
|   71  |   27  | 
|   72 #### Building from command-line |   28 #### Building from command-line | 
|   73  |   29  | 
|   74 In the project root directory create the file _local.properties_ and set |   30 In the project root directory create the file _local.properties_ and set | 
|   75 _sdk.dir_ and _ndk.dir_ to where you installed it, e.g.: |   31 _sdk.dir_ and _ndk.dir_ to where you installed it, e.g.: | 
| (...skipping 29 matching lines...) Expand all  Loading... | 
|  105  |   61  | 
|  106 output while building |   62 output while building | 
|  107  |   63  | 
|  108 ### Building with prebuilt shared V8 |   64 ### Building with prebuilt shared V8 | 
|  109  |   65  | 
|  110 This can be desired to use product's V8 (let's say Chromium) instead of built-in
      V8. |   66 This can be desired to use product's V8 (let's say Chromium) instead of built-in
      V8. | 
|  111 Put prebuilt shared V8 library file(s) in ARCH directories and set `SHARED_V8_LI
     B_FILENAMES` |   67 Put prebuilt shared V8 library file(s) in ARCH directories and set `SHARED_V8_LI
     B_FILENAMES` | 
|  112 environment variable before building. You can pass multiple filenames, separated
      with space. |   68 environment variable before building. You can pass multiple filenames, separated
      with space. | 
|  113 Libadblockplus is required to be linked with that library file(s). |   69 Libadblockplus is required to be linked with that library file(s). | 
|  114  |   70  | 
|  115 For example (build with Gradle): |   71 For example: | 
|  116  |   72  | 
|  117     SHARED_V8_LIB_FILENAMES=libv8.cr.so ./gradlew clean assemble |   73     SHARED_V8_LIB_FILENAMES=libv8.cr.so ./gradlew clean assemble | 
|  118      |   74      | 
|  119 or |   75 or | 
|  120  |   76  | 
|  121     SHARED_V8_LIB_FILENAMES="libv8.cr.so libfoo.so" ./gradlew clean assemble |   77     SHARED_V8_LIB_FILENAMES="libv8.cr.so libfoo.so" ./gradlew clean assemble | 
|  122      |   78      | 
|  123 for multiple library files. |   79 for multiple library files. | 
|  124  |   80  | 
|  125 Note |   81 Note | 
| (...skipping 26 matching lines...) Expand all  Loading... | 
|  152  |  108  | 
|  153 ## Library tests |  109 ## Library tests | 
|  154  |  110  | 
|  155 Android tests for the library. |  111 Android tests for the library. | 
|  156 You can find them in the 'libadblockplus-android-tests' directory. |  112 You can find them in the 'libadblockplus-android-tests' directory. | 
|  157  |  113  | 
|  158 ### Requirements |  114 ### Requirements | 
|  159  |  115  | 
|  160 Make sure _Library_ requirements are present. |  116 Make sure _Library_ requirements are present. | 
|  161  |  117  | 
|  162 ### Building with Ant |  118 ### Building | 
|  163  |  | 
|  164 Set ANDROID_HOME environment variable to your Android SDK directory. |  | 
|  165  |  | 
|  166 In the 'libadblockplus-android-tests' directory run: |  | 
|  167  |  | 
|  168     ant instrument |  | 
|  169  |  | 
|  170 ### Testing with Ant |  | 
|  171  |  | 
|  172 1. Connect an Android device or start the Android Emulator. |  | 
|  173 2. In the 'libadblockplus-android-tests' directory run: |  | 
|  174  |  | 
|  175     ant instrument install test |  | 
|  176  |  | 
|  177 to build instrumentation tests app and perform testing or run: |  | 
|  178  |  | 
|  179     ant test |  | 
|  180  |  | 
|  181 to run installed instrumentation tests app. |  | 
|  182  |  | 
|  183 To run specific **test** run: |  | 
|  184  |  | 
|  185     ant testOnly -DtestClass=full.test.class.name |  | 
|  186  |  | 
|  187 For example: |  | 
|  188  |  | 
|  189     ant testOnly -DtestClass=org.adblockplus.libadblockplus.tests.NotificationTe
     st |  | 
|  190  |  | 
|  191 To run specific **test method** run: |  | 
|  192  |  | 
|  193     ant testOnly -DtestClass=full.test.class.name#testMethod |  | 
|  194  |  | 
|  195 For example: |  | 
|  196  |  | 
|  197     ant testOnly -DtestClass=org.adblockplus.libadblockplus.tests.NotificationTe
     st#testAddNotification |  | 
|  198  |  | 
|  199 ### Building with Gradle/Android Studio |  | 
|  200  |  119  | 
|  201 Make sure you've created the _local.properties_ file to build the library (see a
     bove). |  120 Make sure you've created the _local.properties_ file to build the library (see a
     bove). | 
|  202 In the project root directory run: |  121 In the project root directory run: | 
|  203  |  122  | 
|  204     ./gradlew assembleDebugAndroidTest |  123     ./gradlew assembleDebugAndroidTest | 
|  205  |  124  | 
|  206 This will generate *.apk in the 'libadblockplus-android-tests/build/outputs/apk/
     ' directory. |  125 This will generate *.apk in the 'libadblockplus-android-tests/build/outputs/apk/
     ' directory. | 
|  207  |  126  | 
|  208 ### Testing with Gradle/Android Studio |  127 ### Testing | 
|  209  |  128  | 
|  210 You can select test class/method and click 'Run ..Test'. The library and test ap
     p will be |  129 You can select test class/method and click 'Run ..Test'. The library and test ap
     p will be | 
|  211 compiled, installed to emulator/device and launched automatically. |  130 compiled, installed to emulator/device and launched automatically. | 
|  212  |  131  | 
|  213 ## Settings |  132 ## Settings | 
|  214  |  133  | 
|  215 An Android library that provides a configuration interface for Adblock Plus. |  134 An Android library that provides a configuration interface for Adblock Plus. | 
|  216 You can find it in the 'libadblockplus-android-settings' directory: |  135 You can find it in the 'libadblockplus-android-settings' directory: | 
|  217 * GeneralSettingsFragment - main fragment |  136 * GeneralSettingsFragment - main fragment | 
|  218 * WhitelistedDomainsSettingsFragment - whitelisted domains fragment |  137 * WhitelistedDomainsSettingsFragment - whitelisted domains fragment | 
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  252     AdblockHelper.get().waitForReady(); |  171     AdblockHelper.get().waitForReady(); | 
|  253  |  172  | 
|  254 Release Adblock instance in activity `onDestroy`: |  173 Release Adblock instance in activity `onDestroy`: | 
|  255  |  174  | 
|  256     AdblockHelper.get().release(); |  175     AdblockHelper.get().release(); | 
|  257  |  176  | 
|  258 Insert `GeneralSettingsFragment` fragment instance in runtime to start showing s
     ettings UI. |  177 Insert `GeneralSettingsFragment` fragment instance in runtime to start showing s
     ettings UI. | 
|  259  |  178  | 
|  260 ### Building |  179 ### Building | 
|  261  |  180  | 
|  262 #### Building with Ant |  | 
|  263  |  | 
|  264 In the 'libadblockplus-android-settings' directory create the file _local.proper
     ties_ and set |  | 
|  265 _sdk.dir_ to where you installed it, e.g.: |  | 
|  266  |  | 
|  267     sdk.dir = /some/where/sdk |  | 
|  268  |  | 
|  269 Then run: |  | 
|  270  |  | 
|  271     ant debug |  | 
|  272  |  | 
|  273  |  | 
|  274 #### Building with Gradle |  | 
|  275  |  | 
|  276 In the project root directory run: |  181 In the project root directory run: | 
|  277  |  182  | 
|  278     ./gradlew assemble |  183     ./gradlew assemble | 
|  279  |  184  | 
|  280 This will generate *.aar in the 'libadblockplus-android-settings/build/outputs/a
     ar' directory. |  185 This will generate *.aar in the 'libadblockplus-android-settings/build/outputs/a
     ar' directory. | 
|  281  |  186  | 
|  282 ## WebView |  187 ## WebView | 
|  283  |  188  | 
|  284 An Android library that provides a WebView component with Adblock Plus integrate
     d. |  189 An Android library that provides a WebView component with Adblock Plus integrate
     d. | 
|  285 You can find it in the 'libadblockplus-android-webview' directory. |  190 You can find it in the 'libadblockplus-android-webview' directory. | 
| (...skipping 22 matching lines...) Expand all  Loading... | 
|  308 Use `setAllowDrawDelay(int allowDrawDelay)` to set custom delay to start render 
     webpage after 'DOMContentLoaded' event is fired. |  213 Use `setAllowDrawDelay(int allowDrawDelay)` to set custom delay to start render 
     webpage after 'DOMContentLoaded' event is fired. | 
|  309  |  214  | 
|  310 Use `setAdblockEngine(AdblockEngine adblockEngine)` to use external adblock engi
     ne. |  215 Use `setAdblockEngine(AdblockEngine adblockEngine)` to use external adblock engi
     ne. | 
|  311 If adblock engine is not set, it's created by AdblockWebView instance automatica
     lly. |  216 If adblock engine is not set, it's created by AdblockWebView instance automatica
     lly. | 
|  312  |  217  | 
|  313 Use `dispose(Runnable disposeFinished)` to release resources (**required**). |  218 Use `dispose(Runnable disposeFinished)` to release resources (**required**). | 
|  314 Note it can be invoked from background thread. |  219 Note it can be invoked from background thread. | 
|  315  |  220  | 
|  316 ### Building |  221 ### Building | 
|  317  |  222  | 
|  318 #### Building with Ant |  | 
|  319  |  | 
|  320 In the 'libadblockplus-android-webview' directory create the file _local.propert
     ies_ and set |  | 
|  321 _sdk.dir_ to where you installed it, e.g.: |  | 
|  322  |  | 
|  323     sdk.dir = /some/where/sdk |  | 
|  324  |  | 
|  325 Then run: |  | 
|  326  |  | 
|  327     ant debug |  | 
|  328  |  | 
|  329  |  | 
|  330 #### Building with Gradle |  | 
|  331  |  | 
|  332 In the project root directory run: |  223 In the project root directory run: | 
|  333  |  224  | 
|  334     ./gradlew assemble |  225     ./gradlew assemble | 
|  335  |  226  | 
|  336 This will generate *.aar in the 'libadblockplus-android-webview/build/outputs/aa
     r' directory. |  227 This will generate *.aar in the 'libadblockplus-android-webview/build/outputs/aa
     r' directory. | 
|  337  |  228  | 
|  338 ## WebView Application |  229 ## WebView Application | 
|  339  |  230  | 
|  340 An Android application that demonstrates how to use AdblockWebView. |  231 An Android application that demonstrates how to use AdblockWebView. | 
|  341 You can find it in the 'libadblockplus-android-webviewapp' directory. |  232 You can find it in the 'libadblockplus-android-webviewapp' directory. | 
|  342  |  233  | 
|  343 ### Building |  234 ### Building | 
|  344  |  235  | 
|  345 Make sure _Library_ requirements are present. |  236 Make sure _Library_ requirements are present. | 
|  346  |  237  | 
|  347 #### Building with Ant |  | 
|  348  |  | 
|  349 In the 'libadblockplus-android-webviewapp' directory create the file _local.prop
     erties_ and set |  | 
|  350 _sdk.dir_ to where you installed it, e.g.: |  | 
|  351  |  | 
|  352     sdk.dir = /some/where/sdk |  | 
|  353  |  | 
|  354 Then run: |  | 
|  355  |  | 
|  356     ant debug |  | 
|  357  |  | 
|  358 This will generate *.apk in the 'libadblockplus-android-webviewapp/bin/' directo
     ry. |  | 
|  359  |  | 
|  360 #### Building with Gradle |  | 
|  361  |  | 
|  362 In the project root directory run: |  238 In the project root directory run: | 
|  363  |  239  | 
|  364     ./gradlew assemble |  240     ./gradlew assemble | 
|  365  |  241  | 
|  366 This will generate *.apk in the 'libadblockplus-android-webviewapp/build/outputs
     /apk/' directory. |  242 This will generate *.apk in the 'libadblockplus-android-webviewapp/build/outputs
     /apk/' directory. | 
| OLD | NEW |