Commit 9ab19691 authored by Alexander Smorkalov's avatar Alexander Smorkalov

OpenCV Manager documentation updated.

Diagram rendering script updated.
parent 4b808b11
......@@ -29,3 +29,10 @@ void cancel()
.. method:: void cancel()
Installation if package has been canceled.
void wait_install()
-------------------
.. method:: void wait_install()
Wait for package installation.
......@@ -24,7 +24,7 @@ First OpenCV app\:
#. Any OpenCV-dependent app is installed from Google Play marketplace or manually;
#. At the first launch, it suggests installing OpenCV Manager;
#. Then OpenCV Manager is downloaded and installed, using Google Play marketplace service.
#. When started, the application suggests installing OpenCV library for the target device trough Google Play marketplace;
#. When Manager has ben started, the application suggests installing OpenCV library for the target device trough Google Play marketplace if it is necessary;
#. After installation is finished, the app may be launched to perform common tasks.
Next OpenCV app\:
......
......@@ -30,11 +30,7 @@ Initialization status constants
.. data:: SUCCESS
OpenCV initialization finished successfully.
.. data:: RESTART_REQUIRED
OpenCV library installation via Google Play service was initialized. Application restart is required
OpenCV initialization finished successfully
.. data:: MARKET_ERROR
......
*******************************************
Engine use Cases
Manager Workflow
*******************************************
First application start
......@@ -9,10 +9,10 @@ There is no OpenCV Manager or OpenCV libraries:
.. image:: img/NoService.png
Second application start
------------------------
Aditional library package installation
--------------------------------------
There is an OpenCV Manager service, but there is no OpenCV library.
There is an OpenCV Manager service, but there is no apropriate OpenCV library.
If OpenCV library installation has been approved\:
.. image:: img/LibInstallAproved.png
......
......@@ -20,4 +20,4 @@ if (not os.path.exists(TARGET_PATH)):
for filename in os.listdir("."):
if ("dia" == filename[-3:]):
os.system("%s --export %s %s" % (DiaPath, os.path.join(TARGET_PATH, filename + ".png"), filename))
\ No newline at end of file
os.system("%s --export %s %s" % (DiaPath, os.path.join(TARGET_PATH, filename[0:len(filename)-4] + ".png"), filename))
\ No newline at end of file
android/service/doc/img/NoService.png

20.1 KB | W: | H:

android/service/doc/img/NoService.png

29.2 KB | W: | H:

android/service/doc/img/NoService.png
android/service/doc/img/NoService.png
android/service/doc/img/NoService.png
android/service/doc/img/NoService.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -54,13 +54,19 @@ Using async initialization is a **recommended** way for application development.
:alt: Add dependency from OpenCV library
:align: center
To run OpenCV Manager-based application the first time you need to install packages with the `OpenCV Manager` and `OpenCV binary pack` for you platform.
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.2_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.2_binary_pack_armv7a.apk
There is a very base code snippet implementing the async initialization. It shows basic principles. See the "15-puzzle" OpenCV sample for details.
......@@ -71,9 +77,9 @@ There is a very base code snippet implementing the async initialization. It show
public class MyActivity extends Activity implements HelperCallbackInterface
{
private BaseLoaderCallback mOpenCVCallBack = new BaseLoaderCallback(this) {
@Override
public void onManagerConnected(int status) {
switch (status) {
@Override
public void onManagerConnected(int status) {
switch (status) {
case LoaderCallbackInterface.SUCCESS:
{
Log.i(TAG, "OpenCV loaded successfully");
......@@ -85,27 +91,24 @@ There is a very base code snippet implementing the async initialization. It show
{
super.onManagerConnected(status);
} break;
}
}
}
};
/** Called when the activity is first created. */
/** Call on every application resume **/
@Override
public void onCreate(Bundle savedInstanceState)
protected void onResume()
{
Log.i(TAG, "onCreate");
super.onCreate(savedInstanceState);
Log.i(TAG, "called onResume");
super.onResume();
Log.i(TAG, "Trying to load OpenCV library");
if (!OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_2, this, mOpenCVCallBack))
{
Log.e(TAG, "Cannot connect to OpenCV Manager");
Log.e(TAG, "Cannot connect to OpenCV Manager");
}
}
// ...
}
It this case application works with OpenCV Manager in asynchronous fashion. ``OnManagerConnected`` callback will be called in UI thread, when initialization finishes.
Please note, that it is not allowed to use OpenCV calls or load OpenCV-dependent native libs before invoking this callback.
Load your own native libraries that depend on OpenCV after the successful OpenCV initialization.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment