Take photo using default camera application
Take photo using default camera application, as result code return path to saved image.
// PRIVILEGE needed to be set in tizen-manifest.xml:
// http://tizen.org/privilege/appmanager.launch
#include <dlog.h> // for logging purposes
#include <app_controlr.h>
void
open_camera_cb(app_control_h request, app_control_h reply, app_control_result_e result, void *user_data) {
char** path;
int length;
int ret;
if(result == APP_CONTROL_RESULT_SUCCEEDED) {
ret = app_control_get_extra_data_array(reply, APP_CONTROL_DATA_SELECTED, &path, &length);
if(ret == APP_CONTROL_ERROR_NONE) {
int i;
for(i=0; i<length;i++) {
LOGI("Captured image path: %s", path[i]);
free(path[i]);
}
free(path);
}
}
}
void
open_camera() {
app_control_h app_control = NULL;
app_control_create(&app_control);
app_control_set_operation(app_control, APP_CONTROL_OPERATION_CREATE_CONTENT);
app_control_set_mime(app_control, "image/jpeg");
if(app_control_send_launch_request(app_control, open_camera_cb, NULL) == APP_CONTROL_ERROR_NONE)
LOGI("Camera launched!");
app_control_destroy(app_control);
}