-*******************************************
Manager Workflow
-*******************************************
+****************
+
+.. _manager_selection:
+
+OpenCV Manager selection
+------------------------
+
+Since version 1.7 several packages of OpenCV Manager is built. Every package includes OpenCV library
+for package target platform. The internal library is used for most cases, except the rare one, when
+arm-v7a without NEON instruction set processor is detected. In this case additional binary package
+for arm-v7a is used. The new package selection logic in most cases simplifies OpenCV installation
+on end user devices. In most cases OpenCV Manager may be installed automatically from Google Play.
+For such case, when Google Play is not available, i.e. emulator, developer board, etc, you can
+install it manually using adb tool.
+
+.. code-block:: sh
+ :linenos:
+
+ adb install OpenCV-2.4.3-android-sdk/apk/OpenCV_2.4.3_Manager_2.0_<platform_name>.apk
+
+Use table to determine right OpenCV Manager package:
+
++----------------------------+-----------------+-----------------------------------------------------+
+| Hardware Platform | Android version | Package name |
++============================+=================+=====================================================+
+| Intel x86 | >= 2.3 | OpenCV_2.4.3_Manager_2.0_x86.apk |
++----------------------------+-----------------+-----------------------------------------------------+
+| MIPS | >= 2.3 | OpenCV_2.4.3_Manager_2.0_mips.apk |
++----------------------------+-----------------+-----------------------------------------------------+
+| armeabi (arm-v5, arm-v6) | >= 2.3 | OpenCV_2.4.3_Manager_2.0_armeabi.apk |
++----------------------------+-----------------+-----------------------------------------------------+
+| armeabi-v7a (arm-v7a-NEON) | >= 2.3 | OpenCV_2.4.3_Manager_2.0_armv7a-neon.apk |
++----------------------------+-----------------+-----------------------------------------------------+
+| armeabi-v7a (arm-v7a-NEON) | 2.2 | OpenCV_2.4.3.1_Manager_2.3_armv7a-neon-android8.apk |
++----------------------------+-----------------+-----------------------------------------------------+
+
First application start
-----------------------
.. image:: img/NoService.png
-Aditional library package installation
---------------------------------------
+Additional library package installation
+---------------------------------------
-There is an OpenCV Manager service, but there is no apropriate OpenCV library.
+There is an OpenCV Manager service, but it does not contain appropriate OpenCV library.
If OpenCV library installation has been approved\:
.. image:: img/LibInstallAproved.png
OpenCV-2.4.3-android-sdk
|_ apk
- | |_ OpenCV_2.4.3_binary_pack_XXX.apk
- | |_ OpenCV_2.4.3_Manager.apk
+ | |_ OpenCV_2.4.3_binary_pack_armv7a.apk
+ | |_ OpenCV_2.4.3_Manager_2.0_XXX.apk
|
|_ doc
|_ samples
On production devices that have access to Google Play Market (and Internet) these packages will be
installed from Market on the first start of an application using OpenCV Manager API.
But devkits without Market or Internet connection require this packages to be installed manually.
- Install the `Manager.apk` and the corresponding `binary_pack.apk` depending on the device CPU,
- the Manager GUI provides this info. Below you'll see exact commands on how to do this.
+ Install the `Manager.apk` and optional `binary_pack.apk` if it needed.
+ See :ref:`manager_selection` for details.
.. note:: Installation from Internet is the preferable way since OpenCV team may publish updated
versions of this packages on the Market.
To get rid of the message you will need to install `OpenCV Manager` and the appropriate `OpenCV binary pack`.
Simply tap :menuselection:`Yes` if you have *Google Play Market* installed on your device/emulator. It will redirect you to the corresponding page on *Google Play Market*.
- If you have no access to the *Market*, which is often the case with emulators - you will need to install the packages from OpenCV4Android SDK folder manually. Open the console/terminal and type in the following two commands:
-
- .. code-block:: sh
- :linenos:
-
- <Android SDK path>/platform-tools/adb install <OpenCV4Android SDK path>/apk/OpenCV_2.4.3_Manager.apk
- <Android SDK path>/platform-tools/adb install <OpenCV4Android SDK path>/apk/OpenCV_2.4.3_binary_pack_armv7a.apk
-
- If you're running Windows, that will probably look like this:
-
- .. image:: images/install_opencv_manager_with_adb.png
- :alt: Run these commands in the console to install OpenCV Manager
- :align: center
-
- When done, you will be able to run OpenCV samples on your device/emulator seamlessly.
+ If you have no access to the *Market*, which is often the case with emulators - you will need to install the packages from OpenCV4Android SDK folder manually. See :ref:`manager_selection` for details.
* Here is ``Tutorial 2 - Use OpenCV Camera`` sample, running on top of stock camera-preview of the emulator.
:alt: Add dependency from OpenCV library
:align: center
-To run OpenCV Manager-based application for the first time you need to install package with the `OpenCV Manager` for your platform. Armeabi, Armeabi-v7a with NEON, x86 and MIPS achitectures supported.
-You can do it using Google Play Market or manually with ``adb`` tool:
-
-.. code-block:: sh
- :linenos:
-
- <Android SDK path>/platform-tools/adb install <OpenCV4Android SDK path>/apk/OpenCV_2.4.3_Manager.apk
-
-For rare cases if NEON instruction set is not supported you need to install aditional OpenCV Library package:
-
-.. code-block:: sh
- :linenos:
-
- <Android SDK path>/platform-tools/adb install <OpenCV4Android SDK path>/apk/OpenCV_2.4.3_binary_pack_armv7a.apk
+In most cases OpenCV Manager may be installed automatically from Google Play. For such case, when Google Play is not available, i.e. emulator, developer board, etc, you can
+install it manually using adb tool. See :ref:`manager_selection` for details.
There is a very base code snippet implementing the async initialization. It shows basic principles. See the "15-puzzle" OpenCV sample for details.