2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 // Licensed under the Apache License, Version 2.0 (the License);
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
18 * @file FAppAppControl.h
19 * @brief This is the header file for the %AppControl class.
21 * This header file contains the declarations of the %AppControl class.
24 #ifndef _FAPP_APPCONTROL_H_
25 #define _FAPP_APPCONTROL_H_
27 #include <FBaseObject.h>
28 #include <FBaseString.h>
29 #include <FAppTypes.h>
31 namespace Tizen { namespace Base { namespace Collection {
36 namespace Tizen { namespace App
39 class IAppControlEventListener;
40 class IAppControlResponseListener;
44 * The Contact %AppControl ID. @n
46 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_contact.htm">Contact Application Control</a>.
48 * @brief <i> [Deprecated] </i>
49 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
50 * Instead of this variable, use the literal, L"tizen.contacts".
54 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CONTACT;
58 * The Calendar %AppControl ID. @n
60 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_calendar.htm">Calendar Application Control</a>.
62 * @brief <i> [Deprecated] </i>
63 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
64 * Instead of this variable, use the literal, L"tizen.calendar".
68 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CALENDAR;
72 * The Todo %AppControl ID.
74 * @brief <i> [Deprecated] </i>
75 * @deprecated This application control provider name is deprecated.
79 * @remarks This constant is currently not available.
82 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_TODO;
86 * The Dial %AppControl ID. @n
88 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
90 * @brief <i> [Deprecated] </i>
91 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
92 * Instead of this variable, use the literal, L"tizen.phone", with the operation L"http://tizen.org/appcontrol/operation/dial".
96 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_DIAL;
100 * The Call %AppControl ID. @n
101 * Makes a phone call. @n
103 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
105 * @brief <i> [Deprecated] </i>
106 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
107 * Instead of this variable, use the literal, L"tizen.phone", with the operation L"http://tizen.org/appcontrol/operation/call".
110 * @privilege %http://tizen.org/privilege/systeminfo
112 * @remarks Privilege is required to use this application control.
115 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CALL;
120 * The Message %AppControl ID. @n
122 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_message.htm">Message Application Control</a>.
124 * @brief <i> [Deprecated] </i>
125 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
126 * Instead of this variable, use the literal, L"tizen.messages".
130 * - An MMS attachment may contain either an image, an audio, a video, a vCard, a vCalendar, or a combination of an image, an audio, a vCard, and a vCalendar file.
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, an audio, a video, a vCard, a vCalendar, or a combination of an image, an audio, a vCard, and a vCalendar file. @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 while launching the MMS application 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 Image Editor %AppControl 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 an 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 the alias for that 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 that 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 applications export the implicit %AppControl with the %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 an application item(s).
702 * @brief <i> [Deprecated] </i>
703 * @deprecated This variable is provided 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 application 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 application content.
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 the 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 * No 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 %APPCONTROL_CATEGORY_MEDIA is equivalent to specifying 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 the AppManager::StartAppControl() method.
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 cancelled.
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.
1047 * using namespace Tizen::App;
1050 * MyAppClass::AppControlDialSample(void)
1053 * String telUri = L"tel:12345678900";
1055 * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/dial");
1058 * pAc->Start(&telUri, null, null, null);
1065 class _OSP_EXPORT_ AppControl
1066 : public Tizen::Base::Object
1070 * This destructor overrides Tizen::Base::Object::~Object().
1074 virtual ~AppControl(void);
1078 * Starts the resolved application control. @n
1079 * Once the application starts, it goes to the background and the target
1080 * application control is displayed.
1082 * @brief <i> [Deprecated] </i>
1083 * @deprecated This method is deprecated because IAppControlEventListener method is deprecated and replaced by
1084 * IAppControlResponseListener due to lack of argument capability. @n
1085 * Instead of using this method, use Start().
1088 * @privilege %http://tizen.org/privilege/application.launch
1090 * @return An error code
1091 * @param[in] pDataList The data list to deliver to the resolved application control @n
1092 * The maximum size of the list is 4096 bytes.
1093 * @param[in] pListener The application control callback listener @n
1094 * Some application controls get the callback result by implementing the IAppControlEventListener interface.
1095 * @exception E_SUCCESS The method is successful.
1096 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1097 * @exception E_OBJ_NOT_FOUND The target application control resource has not been found.
1098 * @exception E_IN_PROGRESS The application control is in progress:
1099 * - The application has already started an %AppControl.
1100 * - The target application has already started.
1101 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1102 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1103 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate as that of the target application. @b Since: @b 2.1
1104 * @remarks If the specified @c pListener needs to get the callback result for an application control, it must be valid till IAppControlEventListener::OnAppControlCompleted() is invoked. @n
1105 * For example, a form object listener must not be deleted before the system invokes %IAppControlEventListener::OnAppControlCompleted().
1106 * @see AppManager::FindAppControlN()
1107 * @see AppManager::FindAppControlsN()
1110 result Start(const Tizen::Base::Collection::IList* pDataList, IAppControlEventListener* pListener);
1113 * Starts the located application control. @n
1114 * Once the located application starts, the calling application goes to the background and the located
1115 * application is displayed.
1119 * @privilege %http://tizen.org/privilege/application.launch
1121 * @return An error code
1122 * @param[in] pUriData A pointer to the URI data
1123 * @param[in] pDataType A pointer to the MIME type (RFC 2046) data
1124 * @param[in] pExtraData A pointer to the argument map of the key and value pair, where the key is of type Tizen::Base::String and the value is of type %Tizen::Base::String or of type Tizen::Base::Collection::ArrayList of %Tizen::Base::String, which is delivered to the resolved application @n
1125 * The maximum size is 16 kilo bytes.
1126 * @param[in] pListener The application control callback listener @n
1127 * Some applications get the result by implementing the IAppControlResponseListener interface.
1128 * @exception E_SUCCESS The method is successful.
1129 * @exception E_MAX_EXCEEDED The size of @c pExtraData has exceeded the maximum limit.
1130 * @exception E_OBJ_NOT_FOUND The target application control has not been found.
1131 * @exception E_IN_PROGRESS The application control is in progress: @n
1132 * - The application has already started an %AppControl.
1133 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1134 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1135 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate as that of the target application. @b Since: @b 2.1
1136 * @remarks If the calling application needs to get some result for the application control,
1137 * it must be valid till IAppControlResponseListener::OnAppControlCompleteResponseReceived() is invoked. @n
1138 * For example, a form object listener must not be deleted before the
1139 * system invokes %IAppControlResponseListener::OnAppControlCompleteResponseReceived().
1140 * @see AppManager::FindAppControlN()
1141 * @see AppManager::FindAppControlsN()
1143 result Start(const Tizen::Base::String* pUriData, const Tizen::Base::String* pDataType, const Tizen::Base::Collection::IMap* pExtraData, IAppControlResponseListener* pListener);
1146 * Finds the matching application control with the given operation ID, URI pattern, data type, and category, after which it
1147 * starts the found application control. @n
1148 * If more than one application control is found, then user selection is enabled and the one selected by the user is started.
1149 * When the found application control is started, the URI pattern, MIME type, and extra data is delivered using IAppControlProviderEventListener.
1153 * @privilege %http://tizen.org/privilege/application.launch
1155 * @return An error code
1156 * @param[in] operationId The operation ID
1157 * @param[in] pUriPattern The URI pattern that is used for the application control resolution which is delivered as an argument
1158 * @param[in] pDataType The MIME type (RFC 2046) or file extension @n
1159 * The '.' prefix must be used while specifying the file extension.
1160 * @param[in] pCategory The application control category
1161 * @param[in] pExtraData A pointer to the argument map of the key and value pair, where the key is of type Tizen::Base::String and the value is of
1162 * type %Tizen::Base::String or of type Tizen::Base::Collection::ArrayList of %Tizen::Base::String which is delivered to
1163 * the resolved application @n
1164 * The maximum size is 16 kilo bytes.
1165 * @param[in] pListener The listener that gets notified
1166 * @exception E_SUCCESS The method is successful.
1167 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1168 * @exception E_OBJ_NOT_FOUND The application control has not been found.
1169 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1170 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1171 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate as that of the target application. @b Since: @b 2.1
1173 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);
1176 * Stops the event listener from receiving the application control result.
1180 * @param[in] pListener The listener to stop from receiving the application control result
1182 static void StopAppControlResponseListener(IAppControlResponseListener* pListener);
1185 * Gets the name of the application that provides the features represented by this %AppControl instance.
1189 * @return The name of the application that provides this %AppControl instance
1191 Tizen::Base::String GetAppName(void) const;
1194 * Gets the associated application ID.
1198 * @return The application ID
1200 AppId GetAppId(void) const;
1204 * Gets the associated application control provider ID.
1206 * @brief <i> [Deprecated] </i>
1207 * @deprecated This method is deprecated because the application ID has replaced the role of the provider ID. @n
1208 * Instead of using this method, use GetAppId().
1211 * @return The application control provider ID
1214 Tizen::Base::String GetAppControlProviderId(void) const;
1217 * Gets the associated operation ID.
1221 * @return The operation ID
1223 Tizen::Base::String GetOperationId(void) const;
1226 * Gets the associated application control categories.
1230 * @return A pointer to the list of application control categories, @n
1231 * else @c null if an error occurs
1232 * @exception E_SUCCESS The method is successful.
1233 * @exception E_OUT_OF_MEMORY The memory is insufficient.
1234 * @exception E_SYSTEM A system error has occurred.
1235 * @remarks The specific error code can be accessed using the GetLastResult() method.
1237 Tizen::Base::Collection::IList* GetCategoryListN(void) const;
1241 * Stops the activated application control. @n
1242 * The %Stop() method works only with the following AppControls provided by the platform:
1243 * tizen.bluetooth, tizen.calendar, tizen.camera, tizen.certificatemanager, tizen.contacts,
1244 * tizen.email, tizen.filemanager, tizen.gallery, tizen.imageviewer, tizen.mmsmessages, and tizen.smsmessages.
1248 * @return An error code
1249 * @exception E_SUCCESS The method is successful.
1250 * @exception E_SYSTEM A system error has occurred.
1251 * @exception E_INVALID_OPERATION The application control is not permitted to call this method.
1252 * @remarks This method is asynchronous.
1258 * This constructor is intentionally declared as private so that only the platform can create an instance.
1265 * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
1269 AppControl(const AppControl& rhs);
1272 * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
1276 AppControl& operator =(const AppControl& rhs);
1280 class _AppControlImpl * __pAppControlImpl;
1282 friend class _AppControlImpl;
1287 #endif // _FAPP_APPCONTROL_H_