How to use the C++ REST SDK on Android (2.3+)
The C++ REST SDK prefers static linking for Android since version 2.3. This makes it much simpler for both Native Activities and Java-based Activities since there is only one shared object file.However, in order to prevent conflicts with other code, you must provide a pointer to the JVM to the SDK before it can initialize. This pointer is provided through the method cpprest_init(vm) which is located in the pplx/pplxtasks.h header file.
Note: If you do not do this, your application will terminate upon attempting to create a task.
For most projects, you will simply need to copy the following code into your main cpp file:
extern "C" jint JNI_OnLoad(JavaVM* vm, void* reserved) { JNIEnv* env; if (vm->GetEnv(reinterpret_cast<void**>(&env), JNI_VERSION_1_6) != JNI_OK) { return -1; } cpprest_init(vm); return JNI_VERSION_1_6; }