2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FAppAppControl.h
20 * @brief This is the header file for the %AppControl class.
22 * This header file contains the declarations of the %AppControl class.
25 #ifndef _FAPP_APPCONTROL_H_
26 #define _FAPP_APPCONTROL_H_
28 #include <FBaseObject.h>
29 #include <FBaseString.h>
30 #include <FAppTypes.h>
32 namespace Tizen { namespace Base { namespace Collection {
37 namespace Tizen { namespace App
40 class IAppControlEventListener;
41 class IAppControlResponseListener;
45 * The Contact %AppControl ID. @n
47 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_contact.htm">Contact Application Control</a>.
49 * @brief <i> [Deprecated] </i>
50 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
51 * Instead of this variable, use the literal, L"tizen.contacts".
55 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CONTACT;
59 * The Calendar %AppControl ID. @n
61 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_calendar.htm">Calendar Application Control</a>.
63 * @brief <i> [Deprecated] </i>
64 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
65 * Instead of this variable, use the literal, L"tizen.calendar".
69 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CALENDAR;
73 * The Todo %AppControl ID.
75 * @brief <i> [Deprecated] </i>
76 * @deprecated This application control provider name is deprecated.
80 * @remarks This constant is currently not available.
83 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_TODO;
87 * The Dial %AppControl ID. @n
89 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
91 * @brief <i> [Deprecated] </i>
92 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
93 * Instead of this variable, use the literal, L"tizen.phone" with operation L"http://tizen.org/appcontrol/operation/dial".
97 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_DIAL;
101 * The Call %AppControl ID. @n
102 * Makes a phone call. @n
104 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
106 * @brief <i> [Deprecated] </i>
107 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
108 * Instead of this variable, use the literal, L"tizen.phone" with operation L"http://tizen.org/appcontrol/operation/call".
111 * @privilege %http://tizen.org/privilege/systeminfo
113 * @remarks Privilege is required to use this application control.
116 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CALL;
121 * The Message %AppControl ID. @n
123 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_message.htm">Message Application Control</a>.
125 * @brief <i> [Deprecated] </i>
126 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
127 * Instead of this variable, use the literal, L"tizen.messages".
130 * @remarks An MMS attachment may contain either an image, audio, video, vCard, vCalendar or a combination of an image, audio, vCard, and vCalendar files. @n
131 * MMS attachments cannot contain a video in combination with an image or an audio file.
134 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_MESSAGE;
138 * The Email %AppControl ID. @n
140 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_email.htm">Email Application Control</a>.
142 * @brief <i> [Deprecated] </i>
143 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
144 * Instead of this variable, use the literal, L"tizen.email".
148 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_EMAIL;
152 * The Media %AppControl ID. @n
154 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_media.htm">Media Application Control</a>.
156 * @brief <i> [Deprecated] </i>
157 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
158 * Instead of this variable, use the literal, L"tizen.filemanager" or L"tizen.gallery".
162 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_MEDIA;
166 * The Image %AppControl ID. @n
168 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_image.htm">Image Application Control</a>.
170 * @brief <i> [Deprecated] </i>
171 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
172 * Instead of this variable, use the literal, L"tizen.imageviewer".
176 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_IMAGE;
180 * The Video %AppControl ID. @n
182 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_video.htm">Video Application Control</a>.
184 * @brief <i> [Deprecated] </i>
185 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
186 * Instead of this variable, use the literal, L"tizen.videoplayer".
190 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_VIDEO;
194 * The Audio %AppControl ID. @n
196 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_audio.htm">Audio Application Control</a>.
198 * @brief <i> [Deprecated] </i>
199 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
200 * Instead of this variable, use the literal, L"tizen.musicplayer".
204 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_AUDIO;
208 * The Browser %AppControl ID. @n
210 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_browser.htm">Browser Application Control</a>.
212 * @brief <i> [Deprecated] </i>
213 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
214 * Instead of this variable, use the literal, L"tizen.internet".
217 * @privilege %http://tizen.org/privilege/web.service
220 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BROWSER;
224 * The Camera %AppControl ID. @n
226 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
228 * @brief <i> [Deprecated] </i>
229 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
230 * Instead of this variable, use the literal, L"tizen.camera".
234 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CAMERA;
238 * The Bluetooth %AppControl ID. @n
240 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
242 * @brief <i> [Deprecated] </i>
243 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
244 * Instead of this variable, use the literal, L"tizen.bluetooth".
248 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BT;
252 * The Setting %AppControl ID. @n
254 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
256 * @brief <i> [Deprecated] </i>
257 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
258 * Instead of this variable, use the literal, L"tizen.settings".
262 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_SETTINGS;
266 * The Contact %AppControl provider ID. @n
268 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_contact.htm">Contact Application Control</a>.
270 * @brief <i> [Deprecated] </i>
271 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
272 * Instead of this variable, use the literal, L"tizen.contacts".
276 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CONTACT;
280 * The Certificate Manager %AppControl provider ID. @n
282 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_certmgr.htm">Certificate Manager Application Control</a>.
284 * @brief <i> [Deprecated] </i>
285 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
286 * Instead of this variable, use the literal, L"tizen.certificatemanager".
290 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CERTIFICATE_MANAGER;
294 * The Calendar %AppControl provider ID. @n
296 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_calendar.htm">Calendar Application Control</a>.
298 * @brief <i> [Deprecated] </i>
299 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
300 * Instead of this variable, use the literal, L"tizen.calendar".
304 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALENDAR;
308 * The Call %AppControl provider ID. @n
309 * Makes a phone call. @n
311 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
313 * @brief <i> [Deprecated] </i>
314 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
315 * Instead of this variable, use the literal, L"tizen.phone".
318 * @privilege %http://tizen.org/privilege/systeminfo
320 * @remarks Privilege is required to use this application control.
323 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALL;
327 * The Message %AppControl provider ID. @n
329 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_message.htm">Message Application Control</a>.
331 * @brief <i> [Deprecated] </i>
332 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
333 * Instead of this variable, use the literal, L"tizen.messages".
336 * @remarks An MMS attachment may contain either an image, audio, video, vCard, vCalendar or a combination of an image, audio, vCard, and vCalendar files. @n
337 * MMS attachments cannot contain a video in combination with an image or an audio file. @n
338 * From Tizen 2.0, the CC and BCC recipients are merged with the TO recipients when launching the MMS app control.
341 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MESSAGE;
345 * The Email %AppControl provider ID. @n
347 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_email.htm">Email Application Control</a>.
349 * @brief <i> [Deprecated] </i>
350 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
351 * Instead of this variable, use the literal, L"tizen.email".
355 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_EMAIL;
359 * The Media %AppControl provider ID. @n
361 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_media.htm">Media Application Control</a>.
363 * @brief <i> [Deprecated] </i>
364 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
365 * Instead of this variable, use the literal, L"tizen.filemanager" or L"tizen.gallery".
369 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MEDIA;
373 * The Image %AppControl provider ID. @n
375 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_image.htm">Image Application Control</a>.
377 * @brief <i> [Deprecated] </i>
378 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
379 * Instead of this variable, use the literal, L"tizen.imageviewer".
383 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE;
387 * The ImageCrop application control provider ID @n
389 * @brief <i> [Deprecated] </i>
390 * @deprecated This variable is provided only for backward compatibility and will be deleted in a future release.
391 * use the literal, L"tizen.imageeditor", instead of this variable.
395 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE_EDITOR;
399 * The Video %AppControl provider ID. @n
401 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_video.htm">Video Application Control</a>.
403 * @brief <i> [Deprecated] </i>
404 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
405 * Instead of this variable, use the literal, L"tizen.videoplayer".
409 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_VIDEO;
413 * The Audio %AppControl provider ID. @n
415 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_audio.htm">Audio Application Control</a>.
417 * @brief <i> [Deprecated] </i>
418 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
419 * Instead of this variable, use the literal, L"tizen.musicplayer".
423 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_AUDIO;
427 * The Browser %AppControl provider ID. @n
429 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_browser.htm">Browser Application Control</a>.
431 * @brief <i> [Deprecated] </i>
432 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
433 * Instead of this variable, use the literal, L"tizen.internet".
436 * @privilege %http://tizen.org/privilege/web.service
438 * @remarks Privilege is required to use this application control.
441 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BROWSER;
445 * The Camera %AppControl provider ID. @n
447 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
449 * @brief <i> [Deprecated] </i>
450 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
451 * Instead of this variable, use the literal, L"tizen.camera".
455 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CAMERA;
459 * The Bluetooth %AppControl provider ID. @n
461 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
463 * @brief <i> [Deprecated] </i>
464 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
465 * Instead of this variable, use the literal, L"tizen.bluetooth".
468 * @remarks Bluetooth functionality cannot be tested on the Emulator.
471 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BLUETOOTH;
475 * The Setting %AppControl provider ID. @n
477 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
479 * @brief <i> [Deprecated] </i>
480 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
481 * Instead of this variable, use the literal, L"tizen.settings".
485 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_SETTINGS;
490 * Adds an application item.
492 * @brief <i> [Deprecated] </i>
493 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
494 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
498 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_ADD;
503 * Picks some application item(s).
505 * @brief <i> [Deprecated] </i>
506 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
507 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
511 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PICK;
516 * Edits an application item.
518 * @brief <i> [Deprecated] </i>
519 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
520 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
524 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_EDIT;
529 * Shows the application content.
531 * @brief <i> [Deprecated] </i>
532 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
533 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
537 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_VIEW;
542 * Plays the application content.
544 * @brief <i> [Deprecated] </i>
545 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
546 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
550 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PLAY;
554 * Operation Default. @n
556 * Uses the default operation specific to the application control.
557 * An application control can export its functionality using an operation. If the application control exports only one operation, OPERATION_DEFAULT can act as an alias for the operation.
559 * @brief <i> [Deprecated] </i>
560 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
561 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
565 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_DEFAULT;
571 * @brief <i> [Deprecated] </i>
572 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
573 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
577 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_CAPTURE;
583 * Adds an application item.
585 * @brief <i> [Deprecated] </i>
586 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
587 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
591 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_ADD;
596 * Makes a call to the specified phone number.
598 * @brief <i> [Deprecated] </i>
599 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
600 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/call".
604 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CALL;
610 * @brief <i> [Deprecated] </i>
611 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
612 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
616 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CAPTURE;
622 * @brief <i> [Deprecated] </i>
623 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
624 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/compose".
628 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_COMPOSE;
632 * Operation Configure Settings.
634 * @brief <i> [Deprecated] </i>
635 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
636 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/configure".
640 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CONFIGURE;
644 * Operation Default. @n
646 * Uses the default operation specific to the application control.
647 * An application control can export its functionality using an operation. If the application control exports only one operation, OPERATION_DEFAULT can act as an alias for the operation.
649 * @brief <i> [Deprecated] </i>
650 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
651 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
655 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DEFAULT;
660 * Launches the dial screen for making a call.
662 * @brief <i> [Deprecated] </i>
663 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
664 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/dial".
668 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DIAL;
673 * Edits an application item.
675 * @brief <i> [Deprecated] </i>
676 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
677 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
681 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_EDIT;
687 * All the application exports the implicit %AppControl with %APPCONTROL_OPERATION_MAIN operation.
689 * @brief <i> [Deprecated] </i>
690 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
691 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
695 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_MAIN;
700 * Picks some application item(s).
702 * @brief <i> [Deprecated] </i>
703 * @deprecated This variable is providyed only for backward compatibility and will be deleted in the near future.
704 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
708 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PICK;
713 * Plays the application content.
715 * @brief <i> [Deprecated] </i>
716 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
717 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
721 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PLAY;
725 * Operation Record. @n
726 * Records the content.
728 * @brief <i> [Deprecated] </i>
729 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
730 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
734 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_RECORD;
738 * Operation Share. @n
739 * Shares the contents.
741 * @brief <i> [Deprecated] </i>
742 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
743 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/share".
747 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_SHARE;
752 * Shows the application content.
754 * @brief <i> [Deprecated] </i>
755 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
756 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
760 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_VIEW;
765 * Shows image with the crop rectangle.
767 * @brief <i> [Deprecated] </i>
768 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
769 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/crop".
773 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CROP;
777 * Not specified category.
779 * @brief <i> [Deprecated] </i>
780 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
784 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_NONE;
788 * The audio category.
790 * @brief <i> [Deprecated] </i>
791 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
795 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_AUDIO;
799 * The browser category.
801 * @brief <i> [Deprecated] </i>
802 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
806 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BROWSER;
810 * The Bluetooth device category.
812 * @brief <i> [Deprecated] </i>
813 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
817 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BLUETOOTH;
821 * The calendar category.
823 * @brief <i> [Deprecated] </i>
824 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
828 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CALENDAR;
832 * The certificate category.
834 * @brief <i> [Deprecated] </i>
835 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
839 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CERTIFICATE;
843 * The contact category.
845 * @brief <i> [Deprecated] </i>
846 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
850 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CONTACT;
854 * The document category.
856 * @brief <i> [Deprecated] </i>
857 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
861 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_DOCUMENT;
865 * The email category.
867 * @brief <i> [Deprecated] </i>
868 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
872 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_EMAIL;
876 * The media category. @n
877 * Specifying App::APPCONTROL_CATEGORY_MEDIA is equivalent to specifying all the App::APPCONTROL_CATEGORY_AUDIO,
878 * App::APPCONTROL_CATEGORY_IMAGE, and App::APPCONTROL_CATEGORY_VIDEO categories.
880 * @brief <i> [Deprecated] </i>
881 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
885 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MEDIA;
891 * @brief <i> [Deprecated] </i>
892 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
896 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MMS;
900 * The image category.
902 * @brief <i> [Deprecated] </i>
903 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
907 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_IMAGE;
911 * The security category.
913 * @brief <i> [Deprecated] </i>
914 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
918 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SECURITY;
924 * @brief <i> [Deprecated] </i>
925 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
929 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SMS;
933 * The settings category.
935 * @brief <i> [Deprecated] </i>
936 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
940 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SETTINGS;
944 * The video call category.
946 * @brief <i> [Deprecated] </i>
947 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
951 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO_CALL;
955 * The voice call category.
957 * @brief <i> [Deprecated] </i>
958 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
962 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VOICE_CALL;
966 * The video category.
968 * @brief <i> [Deprecated] </i>
969 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
973 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO;
977 * The complete URI handling category corresponding to AppManager::StartAppControl().
979 * @brief <i> [Deprecated] </i>
980 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
984 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_URI;
988 * The %AppControl operation is successful.
990 * @brief <i> [Deprecated] </i>
991 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
995 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_SUCCEEDED;
999 * The %AppControl operation has failed.
1001 * @brief <i> [Deprecated] </i>
1002 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1006 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_FAILED;
1010 * The %AppControl operation is canceled.
1012 * @brief <i> [Deprecated] </i>
1013 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1017 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_CANCELED;
1021 * The %AppControl is terminated without sending the result.
1023 * @brief <i> [Deprecated] </i>
1024 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1028 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_TERMINATED;
1032 * @brief This class represents the application control behavior.
1035 * @final This class is not intended for extension.
1037 * The %AppControl class represents the application control behavior that provides a standard mechanism for using specific operations exported by other applications.
1039 * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/app/app_controls.htm">Application Controls</a>.
1041 * @see Tizen::App::AppManager
1043 * The following example demonstrates how to use the %AppControl class.
1048 * using namespace Tizen::Base::Collection;
1049 * using namespace Tizen::App;
1052 * MyAppClass::AppControlCallSample(void)
1054 * HashMap extraData;
1055 * String telKey = L"tel";
1056 * String telVal = L"1234567890";
1057 * String typeKey = L"type";
1058 * String typeVal = L"voice";
1060 * extraData.Construct();
1061 * extraData.Add(&telKey, &telVal);
1062 * extraData.Add(&typeKey, &typeVal);
1064 * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/call");
1067 * pAc->Start(null, null, &extraData, null);
1074 class _OSP_EXPORT_ AppControl
1075 : public Tizen::Base::Object
1079 * This destructor overrides Tizen::Base::Object::~Object().
1083 virtual ~AppControl(void);
1087 * Starts the resolved application control. @n
1088 * Once the application starts, it goes to the background and the target
1089 * application control is displayed.
1091 * @brief <i> [Deprecated] </i>
1092 * @deprecated This method is deprecated because IAppControlEventListener method is deprecated and replaced by
1093 * IAppControlResponseListener due to lack of argument capability. @n
1094 * Instead of using this method, use Start().
1097 * @privilege %http://tizen.org/privilege/application.launch
1099 * @return An error code
1100 * @param[in] pDataList The data list to deliver to the resolved application control @n
1101 * The maximum size of the list is 4096 bytes.
1102 * @param[in] pListener The application control callback listener @n
1103 * Some application controls need to get the callback result by implementing the IAppControlEventListener interface.
1104 * @exception E_SUCCESS The method is successful.
1105 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1106 * @exception E_OBJ_NOT_FOUND The target application control resource is not found.
1107 * @exception E_IN_PROGRESS The application control is in progress: @n
1108 * - The application has already started an %AppControl. @n
1109 * - The target application has already started.
1110 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1111 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1112 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1113 * @remarks If the IAppControlEventListener instance (@c pListener) needs to get the
1114 * callback result for an application control, it must be valid till
1115 * IAppControlEventListener::OnAppControlCompleted() is invoked.
1116 * For example, a form object listener must not be deleted before the
1117 * system invokes %IAppControlEventListener::OnAppControlCompleted().
1118 * @see AppManager::FindAppControlN()
1119 * @see AppManager::FindAppControlsN()
1122 result Start(const Tizen::Base::Collection::IList* pDataList, IAppControlEventListener* pListener);
1125 * Starts the found application control. @n
1126 * Once the found application starts, the calling application goes to the background and the found
1127 * application is displayed.
1131 * @privilege %http://tizen.org/privilege/application.launch
1133 * @return An error code
1134 * @param[in] pUriData A pointer to the URI data
1135 * @param[in] pDataType A pointer to the MIME type (RFC 2046) data
1136 * @param[in] pExtraData A pointer to an argument map of key and value pair where the key is of type String and the value is of type String or of type ArrayList of String to deliver to the resolved application @n
1137 * The maximum size is 16 kilo bytes.
1138 * @param[in] pListener The application control callback listener @n
1139 * Some application need to get the result by implementing the IAppControlResponseListener interface.
1140 * @exception E_SUCCESS The method is successful.
1141 * @exception E_MAX_EXCEEDED The size of @c pExtraData has exceeded the maximum limit.
1142 * @exception E_OBJ_NOT_FOUND The target application control is not found.
1143 * @exception E_IN_PROGRESS The application control is in progress: @n
1144 * - The application has already started an %AppControl.
1145 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1146 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1147 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1148 * @remarks If the calling application needs to get some result for application control,
1149 * it must be valid till IAppControlResponseListener::OnAppControlCompleteResponseReceived() is invoked.
1150 * For example, a form object listener must not be deleted before the
1151 * system invokes %IAppControlResponseListener::OnAppControlCompleteResponseReceived().
1152 * @see AppManager::FindAppControlN()
1153 * @see AppManager::FindAppControlsN()
1155 result Start(const Tizen::Base::String* pUriData, const Tizen::Base::String* pDataType, const Tizen::Base::Collection::IMap* pExtraData, IAppControlResponseListener* pListener);
1158 * Finds the matching application control with given operation ID, URI pattern, data type, and category and
1159 * starts the found one. @n
1160 * If there are more than one application controls found, then the selection is shown for user and the one that the user selects is started.
1161 * When the found application control is started, the URI pattern, MIME type, and extra data is delivered using IAppControlProviderEventListener.
1165 * @privilege %http://tizen.org/privilege/application.launch
1167 * @return An error code
1168 * @param[in] operationId The operation ID
1169 * @param[in] pUriPattern A URI pattern which is used for application control resolution and is delivered as the argument
1170 * @param[in] pDataType The MIME type (RFC 2046) or file extension @n
1171 * The '.' prefix must be used when specifying the file extension.
1172 * @param[in] pCategory The application control category
1173 * @param[in] pExtraData A pointer to an argument map of key and value pair where the key is of type Tizen::Base::String and the value is of
1174 * type %Tizen::Base::String or of type Tizen::Base::Collection::ArrayList of %Tizen::Base::String to deliver to
1175 * the resolved application @n
1176 * The maximum size is 16 kilo bytes.
1177 * @param[in] pListener A listener that gets notified
1178 * @exception E_SUCCESS The method is successful.
1179 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1180 * @exception E_OBJ_NOT_FOUND The application control is not found.
1181 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1182 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1183 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1184 * @see IAppControlResponseListener
1186 static result FindAndStart(const Tizen::Base::String& operationId, const Tizen::Base::String* pUriPattern, const Tizen::Base::String* pDataType, const Tizen::Base::String* pCategory, const Tizen::Base::Collection::IMap* pExtraData, IAppControlResponseListener* pListener);
1189 * Stops the event listener from receiving the application control result.
1193 * @param[in] pListener The listener to stop receiving the application control result
1195 static void StopAppControlResponseListener(IAppControlResponseListener* pListener);
1198 * Gets the name of the application that provides the features represented by this %AppControl instance.
1202 * @return The name of the application providing this %AppControl instance
1204 Tizen::Base::String GetAppName(void) const;
1207 * Gets the associated application ID.
1211 * @return The application ID
1213 AppId GetAppId(void) const;
1217 * Gets the associated application control provider ID.
1219 * @brief <i> [Deprecated] </i>
1220 * @deprecated This method is deprecated because application ID replaced the role of provider ID. @n
1221 * Instead of using this method, use GetAppId().
1224 * @return The application control provider ID
1227 Tizen::Base::String GetAppControlProviderId(void) const;
1230 * Gets the associated operation ID.
1234 * @return The operation ID
1236 Tizen::Base::String GetOperationId(void) const;
1239 * Gets the associated application control categories.
1243 * @return A pointer to the list of application control categories, @n
1244 * else @c null if an error occurs
1245 * @exception E_SUCCESS The method is successful.
1246 * @exception E_OUT_OF_MEMORY The memory is insufficient.
1247 * @exception E_SYSTEM A system error has occurred.
1248 * @remarks The specific error code can be accessed using the GetLastResult() method.
1250 Tizen::Base::Collection::IList* GetCategoryListN(void) const;
1254 * Stops the activated application control. @n
1255 * The %Stop() method works only with the following %AppControls provided by the platform:
1256 * tizen.bluetooth, tizen.calendar, tizen.camera, tizen.certificatemanager, tizen.contacts,
1257 * tizen.email, tizen.filemanager, tizen.gallery, tizen.imageviewer, tizen.mmsmessages, and tizen.smsmessages.
1261 * @return An error code
1262 * @exception E_SUCCESS The method is successful.
1263 * @exception E_SYSTEM A system error has occurred.
1264 * @exception E_INVALID_OPERATION The application control is not permitted to call this method.
1265 * @remarks This method is asynchronous.
1271 * This constructor is intentionally declared as private so that only the platform can create an instance.
1278 * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
1282 AppControl(const AppControl& rhs);
1285 * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
1289 AppControl& operator =(const AppControl& rhs);
1293 class _AppControlImpl * __pAppControlImpl;
1295 friend class _AppControlImpl;
1300 #endif // _FAPP_APPCONTROL_H_