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 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 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".
129 * @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
130 * MMS attachments cannot contain a video in combination with an image or an audio file.
133 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_MESSAGE;
137 * The Email %AppControl ID. @n
139 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_email.htm">Email Application Control</a>.
141 * @brief <i> [Deprecated] </i>
142 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
143 * Instead of this variable, use the literal, L"tizen.email".
147 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_EMAIL;
151 * The Media %AppControl ID. @n
153 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_media.htm">Media Application Control</a>.
155 * @brief <i> [Deprecated] </i>
156 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
157 * Instead of this variable, use the literal, L"tizen.filemanager" or L"tizen.gallery".
161 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_MEDIA;
165 * The Image %AppControl ID. @n
167 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_image.htm">Image Application Control</a>.
169 * @brief <i> [Deprecated] </i>
170 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
171 * Instead of this variable, use the literal, L"tizen.imageviewer".
175 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_IMAGE;
179 * The Video %AppControl ID. @n
181 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_video.htm">Video Application Control</a>.
183 * @brief <i> [Deprecated] </i>
184 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
185 * Instead of this variable, use the literal, L"tizen.videoplayer".
189 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_VIDEO;
193 * The Audio %AppControl ID. @n
195 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_audio.htm">Audio Application Control</a>.
197 * @brief <i> [Deprecated] </i>
198 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
199 * Instead of this variable, use the literal, L"tizen.musicplayer".
203 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_AUDIO;
207 * The Browser %AppControl ID. @n
209 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_browser.htm">Browser Application Control</a>.
211 * @brief <i> [Deprecated] </i>
212 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
213 * Instead of this variable, use the literal, L"tizen.internet".
216 * @privilege %http://tizen.org/privilege/web.service
219 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BROWSER;
223 * The Camera %AppControl ID. @n
225 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
227 * @brief <i> [Deprecated] </i>
228 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
229 * Instead of this variable, use the literal, L"tizen.camera".
233 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CAMERA;
237 * The Bluetooth %AppControl ID. @n
239 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
241 * @brief <i> [Deprecated] </i>
242 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
243 * Instead of this variable, use the literal, L"tizen.bluetooth".
247 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BT;
251 * The Setting %AppControl ID. @n
253 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
255 * @brief <i> [Deprecated] </i>
256 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
257 * Instead of this variable, use the literal, L"tizen.settings".
261 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_SETTINGS;
265 * The Contact %AppControl provider ID. @n
267 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_contact.htm">Contact Application Control</a>.
269 * @brief <i> [Deprecated] </i>
270 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
271 * Instead of this variable, use the literal, L"tizen.contacts".
275 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CONTACT;
279 * The Certificate Manager %AppControl provider ID. @n
281 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_certmgr.htm">Certificate Manager Application Control</a>.
283 * @brief <i> [Deprecated] </i>
284 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
285 * Instead of this variable, use the literal, L"tizen.certificatemanager".
289 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CERTIFICATE_MANAGER;
293 * The Calendar %AppControl provider ID. @n
295 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_calendar.htm">Calendar Application Control</a>.
297 * @brief <i> [Deprecated] </i>
298 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
299 * Instead of this variable, use the literal, L"tizen.calendar".
303 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALENDAR;
307 * The Call %AppControl provider ID. @n
308 * Makes a phone call. @n
310 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
312 * @brief <i> [Deprecated] </i>
313 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
314 * Instead of this variable, use the literal, L"tizen.phone".
317 * @privilege %http://tizen.org/privilege/systeminfo
319 * @remarks Privilege is required to use this application control.
322 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALL;
326 * The Message %AppControl provider ID. @n
328 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_message.htm">Message Application Control</a>.
330 * @brief <i> [Deprecated] </i>
331 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
332 * Instead of this variable, use the literal, L"tizen.messages".
335 * @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
336 * MMS attachments cannot contain a video in combination with an image or an audio file. @n
337 * From Tizen 2.0, the CC and BCC recipients are merged with the TO recipients when launching the MMS app control.
340 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MESSAGE;
344 * The Email %AppControl provider ID. @n
346 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_email.htm">Email Application Control</a>.
348 * @brief <i> [Deprecated] </i>
349 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
350 * Instead of this variable, use the literal, L"tizen.email".
354 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_EMAIL;
358 * The Media %AppControl provider ID. @n
360 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_media.htm">Media Application Control</a>.
362 * @brief <i> [Deprecated] </i>
363 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
364 * Instead of this variable, use the literal, L"tizen.filemanager" or L"tizen.gallery".
368 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MEDIA;
372 * The Image %AppControl provider ID. @n
374 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_image.htm">Image Application Control</a>.
376 * @brief <i> [Deprecated] </i>
377 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
378 * Instead of this variable, use the literal, L"tizen.imageviewer".
382 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE;
386 * The ImageCrop application control provider ID @n
388 * @brief <i> [Deprecated] </i>
389 * @deprecated This variable is provided only for backward compatibility and will be deleted in a future release.
390 * use the literal, L"tizen.imageeditor", instead of this variable.
394 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE_EDITOR;
398 * The Video %AppControl provider ID. @n
400 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_video.htm">Video Application Control</a>.
402 * @brief <i> [Deprecated] </i>
403 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
404 * Instead of this variable, use the literal, L"tizen.videoplayer".
408 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_VIDEO;
412 * The Audio %AppControl provider ID. @n
414 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_audio.htm">Audio Application Control</a>.
416 * @brief <i> [Deprecated] </i>
417 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
418 * Instead of this variable, use the literal, L"tizen.musicplayer".
422 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_AUDIO;
426 * The Browser %AppControl provider ID. @n
428 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_browser.htm">Browser Application Control</a>.
430 * @brief <i> [Deprecated] </i>
431 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
432 * Instead of this variable, use the literal, L"tizen.internet".
435 * @privilege %http://tizen.org/privilege/web.service
437 * @remarks Privilege is required to use this application control.
440 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BROWSER;
444 * The Camera %AppControl provider ID. @n
446 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
448 * @brief <i> [Deprecated] </i>
449 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
450 * Instead of this variable, use the literal, L"tizen.camera".
454 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CAMERA;
458 * The Bluetooth %AppControl provider ID. @n
460 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
462 * @brief <i> [Deprecated] </i>
463 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
464 * Instead of this variable, use the literal, L"tizen.bluetooth".
467 * @remarks Bluetooth functionality cannot be tested on the Emulator.
470 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BLUETOOTH;
474 * The Setting %AppControl provider ID. @n
476 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
478 * @brief <i> [Deprecated] </i>
479 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
480 * Instead of this variable, use the literal, L"tizen.settings".
484 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_SETTINGS;
489 * Adds an application item.
491 * @brief <i> [Deprecated] </i>
492 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
493 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
497 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_ADD;
502 * Picks some application item(s).
504 * @brief <i> [Deprecated] </i>
505 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
506 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
510 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PICK;
515 * Edits an application item.
517 * @brief <i> [Deprecated] </i>
518 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
519 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
523 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_EDIT;
528 * Shows the application content.
530 * @brief <i> [Deprecated] </i>
531 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
532 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
536 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_VIEW;
541 * Plays the application content.
543 * @brief <i> [Deprecated] </i>
544 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
545 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
549 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PLAY;
553 * Operation Default. @n
555 * Uses the default operation specific to the application control.
556 * 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.
558 * @brief <i> [Deprecated] </i>
559 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
560 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
564 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_DEFAULT;
570 * @brief <i> [Deprecated] </i>
571 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
572 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
576 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_CAPTURE;
582 * Adds an application item.
584 * @brief <i> [Deprecated] </i>
585 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
586 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
590 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_ADD;
595 * Makes a call to the specified phone number.
597 * @brief <i> [Deprecated] </i>
598 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
599 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/call".
603 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CALL;
609 * @brief <i> [Deprecated] </i>
610 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
611 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
615 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CAPTURE;
621 * @brief <i> [Deprecated] </i>
622 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
623 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/compose".
627 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_COMPOSE;
631 * Operation Configure Settings.
633 * @brief <i> [Deprecated] </i>
634 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
635 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/configure".
639 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CONFIGURE;
643 * Operation Default. @n
645 * Uses the default operation specific to the application control.
646 * 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.
648 * @brief <i> [Deprecated] </i>
649 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
650 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
654 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DEFAULT;
659 * Launches the dial screen for making a call.
661 * @brief <i> [Deprecated] </i>
662 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
663 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/dial".
667 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DIAL;
672 * Edits an application item.
674 * @brief <i> [Deprecated] </i>
675 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
676 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
680 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_EDIT;
686 * All the application exports the implicit %AppControl with %APPCONTROL_OPERATION_MAIN operation.
688 * @brief <i> [Deprecated] </i>
689 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
690 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
694 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_MAIN;
699 * Picks some application item(s).
701 * @brief <i> [Deprecated] </i>
702 * @deprecated This variable is providyed only for backward compatibility and will be deleted in the near future.
703 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
707 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PICK;
712 * Plays the application content.
714 * @brief <i> [Deprecated] </i>
715 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
716 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
720 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PLAY;
724 * Operation Record. @n
725 * Records the content.
727 * @brief <i> [Deprecated] </i>
728 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
729 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
733 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_RECORD;
737 * Operation Share. @n
738 * Shares the contents.
740 * @brief <i> [Deprecated] </i>
741 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
742 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/share".
746 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_SHARE;
751 * Shows the application content.
753 * @brief <i> [Deprecated] </i>
754 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
755 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
759 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_VIEW;
764 * Shows image with the crop rectangle.
766 * @brief <i> [Deprecated] </i>
767 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
768 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/crop".
772 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CROP;
776 * Not specified category.
778 * @brief <i> [Deprecated] </i>
779 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
783 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_NONE;
787 * The audio category.
789 * @brief <i> [Deprecated] </i>
790 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
794 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_AUDIO;
798 * The browser category.
800 * @brief <i> [Deprecated] </i>
801 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
805 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BROWSER;
809 * The Bluetooth device category.
811 * @brief <i> [Deprecated] </i>
812 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
816 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BLUETOOTH;
820 * The calendar category.
822 * @brief <i> [Deprecated] </i>
823 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
827 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CALENDAR;
831 * The certificate category.
833 * @brief <i> [Deprecated] </i>
834 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
838 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CERTIFICATE;
842 * The contact category.
844 * @brief <i> [Deprecated] </i>
845 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
849 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CONTACT;
853 * The document category.
855 * @brief <i> [Deprecated] </i>
856 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
860 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_DOCUMENT;
864 * The email category.
866 * @brief <i> [Deprecated] </i>
867 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
871 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_EMAIL;
875 * The media category. @n
876 * Specifying App::APPCONTROL_CATEGORY_MEDIA is equivalent to specifying all the App::APPCONTROL_CATEGORY_AUDIO,
877 * App::APPCONTROL_CATEGORY_IMAGE, and App::APPCONTROL_CATEGORY_VIDEO categories.
879 * @brief <i> [Deprecated] </i>
880 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
884 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MEDIA;
890 * @brief <i> [Deprecated] </i>
891 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
895 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MMS;
899 * The image category.
901 * @brief <i> [Deprecated] </i>
902 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
906 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_IMAGE;
910 * The security category.
912 * @brief <i> [Deprecated] </i>
913 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
917 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SECURITY;
923 * @brief <i> [Deprecated] </i>
924 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
928 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SMS;
932 * The settings category.
934 * @brief <i> [Deprecated] </i>
935 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
939 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SETTINGS;
943 * The video call category.
945 * @brief <i> [Deprecated] </i>
946 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
950 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO_CALL;
954 * The voice call category.
956 * @brief <i> [Deprecated] </i>
957 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
961 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VOICE_CALL;
965 * The video category.
967 * @brief <i> [Deprecated] </i>
968 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
972 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO;
976 * The complete URI handling category corresponding to AppManager::StartAppControl().
978 * @brief <i> [Deprecated] </i>
979 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
983 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_URI;
987 * The %AppControl operation is successful.
989 * @brief <i> [Deprecated] </i>
990 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
994 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_SUCCEEDED;
998 * The %AppControl operation has failed.
1000 * @brief <i> [Deprecated] </i>
1001 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1005 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_FAILED;
1009 * The %AppControl operation is canceled.
1011 * @brief <i> [Deprecated] </i>
1012 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1016 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_CANCELED;
1020 * The %AppControl is terminated without sending the result.
1022 * @brief <i> [Deprecated] </i>
1023 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1027 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_TERMINATED;
1031 * @brief This class represents the application control behavior.
1034 * @final This class is not intended for extension.
1036 * The %AppControl class represents the application control behavior that provides a standard mechanism for using specific operations exported by other applications.
1038 * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/app/app_controls.htm">Application Controls</a>.
1040 * @see Tizen::App::AppManager
1042 * The following example demonstrates how to use the %AppControl class.
1046 * using namespace Tizen::App;
1049 * MyAppClass::AppControlDailSample(void)
1052 * String telUri = L"tel:12345678900";
1054 * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/dial");
1057 * pAc->Start(&telUri, null, null, null);
1064 class _OSP_EXPORT_ AppControl
1065 : public Tizen::Base::Object
1069 * This destructor overrides Tizen::Base::Object::~Object().
1073 virtual ~AppControl(void);
1077 * Starts the resolved application control. @n
1078 * Once the application starts, it goes to the background and the target
1079 * application control is displayed.
1081 * @brief <i> [Deprecated] </i>
1082 * @deprecated This method is deprecated because IAppControlEventListener method is deprecated and replaced by
1083 * IAppControlResponseListener due to lack of argument capability. @n
1084 * Instead of using this method, use Start().
1087 * @privilege %http://tizen.org/privilege/application.launch
1089 * @return An error code
1090 * @param[in] pDataList The data list to deliver to the resolved application control @n
1091 * The maximum size of the list is 4096 bytes.
1092 * @param[in] pListener The application control callback listener @n
1093 * Some application controls need to get the callback result by implementing the IAppControlEventListener interface.
1094 * @exception E_SUCCESS The method is successful.
1095 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1096 * @exception E_OBJ_NOT_FOUND The target application control resource is not found.
1097 * @exception E_IN_PROGRESS The application control is in progress: @n
1098 * - The application has already started an %AppControl. @n
1099 * - The target application has already started.
1100 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1101 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1102 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1103 * @remarks If the IAppControlEventListener instance (@c pListener) needs to get the
1104 * callback result for an application control, it must be valid till
1105 * IAppControlEventListener::OnAppControlCompleted() is invoked.
1106 * For example, a form object listener must not be deleted before the
1107 * system invokes %IAppControlEventListener::OnAppControlCompleted().
1108 * @see AppManager::FindAppControlN()
1109 * @see AppManager::FindAppControlsN()
1112 result Start(const Tizen::Base::Collection::IList* pDataList, IAppControlEventListener* pListener);
1115 * Starts the found application control. @n
1116 * Once the found application starts, the calling application goes to the background and the found
1117 * application is displayed.
1121 * @privilege %http://tizen.org/privilege/application.launch
1123 * @return An error code
1124 * @param[in] pUriData A pointer to the URI data
1125 * @param[in] pDataType A pointer to the MIME type (RFC 2046) data
1126 * @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
1127 * The maximum size is 16 kilo bytes.
1128 * @param[in] pListener The application control callback listener @n
1129 * Some application need to get the result by implementing the IAppControlResponseListener interface.
1130 * @exception E_SUCCESS The method is successful.
1131 * @exception E_MAX_EXCEEDED The size of @c pExtraData has exceeded the maximum limit.
1132 * @exception E_OBJ_NOT_FOUND The target application control is not found.
1133 * @exception E_IN_PROGRESS The application control is in progress: @n
1134 * - The application has already started an %AppControl.
1135 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1136 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1137 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1138 * @remarks If the calling application needs to get some result for application control,
1139 * it must be valid till IAppControlResponseListener::OnAppControlCompleteResponseReceived() is invoked.
1140 * For example, a form object listener must not be deleted before the
1141 * system invokes %IAppControlResponseListener::OnAppControlCompleteResponseReceived().
1142 * @see AppManager::FindAppControlN()
1143 * @see AppManager::FindAppControlsN()
1145 result Start(const Tizen::Base::String* pUriData, const Tizen::Base::String* pDataType, const Tizen::Base::Collection::IMap* pExtraData, IAppControlResponseListener* pListener);
1148 * Finds the matching application control with given operation ID, URI pattern, data type, and category and
1149 * starts the found one. @n
1150 * 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.
1151 * When the found application control is started, the URI pattern, MIME type, and extra data is delivered using IAppControlProviderEventListener.
1155 * @privilege %http://tizen.org/privilege/application.launch
1157 * @return An error code
1158 * @param[in] operationId The operation ID
1159 * @param[in] pUriPattern A URI pattern which is used for application control resolution and is delivered as the argument
1160 * @param[in] pDataType The MIME type (RFC 2046) or file extension @n
1161 * The '.' prefix must be used when specifying the file extension.
1162 * @param[in] pCategory The application control category
1163 * @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
1164 * type %Tizen::Base::String or of type Tizen::Base::Collection::ArrayList of %Tizen::Base::String to deliver to
1165 * the resolved application @n
1166 * The maximum size is 16 kilo bytes.
1167 * @param[in] pListener A listener that gets notified
1168 * @exception E_SUCCESS The method is successful.
1169 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1170 * @exception E_OBJ_NOT_FOUND The application control is not found.
1171 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1172 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1173 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1174 * @see IAppControlResponseListener
1176 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);
1179 * Stops the event listener from receiving the application control result.
1183 * @param[in] pListener The listener to stop receiving the application control result
1185 static void StopAppControlResponseListener(IAppControlResponseListener* pListener);
1188 * Gets the name of the application that provides the features represented by this %AppControl instance.
1192 * @return The name of the application providing this %AppControl instance
1194 Tizen::Base::String GetAppName(void) const;
1197 * Gets the associated application ID.
1201 * @return The application ID
1203 AppId GetAppId(void) const;
1207 * Gets the associated application control provider ID.
1209 * @brief <i> [Deprecated] </i>
1210 * @deprecated This method is deprecated because application ID replaced the role of provider ID. @n
1211 * Instead of using this method, use GetAppId().
1214 * @return The application control provider ID
1217 Tizen::Base::String GetAppControlProviderId(void) const;
1220 * Gets the associated operation ID.
1224 * @return The operation ID
1226 Tizen::Base::String GetOperationId(void) const;
1229 * Gets the associated application control categories.
1233 * @return A pointer to the list of application control categories, @n
1234 * else @c null if an error occurs
1235 * @exception E_SUCCESS The method is successful.
1236 * @exception E_OUT_OF_MEMORY The memory is insufficient.
1237 * @exception E_SYSTEM A system error has occurred.
1238 * @remarks The specific error code can be accessed using the GetLastResult() method.
1240 Tizen::Base::Collection::IList* GetCategoryListN(void) const;
1244 * Stops the activated application control. @n
1245 * The %Stop() method works only with the following %AppControls provided by the platform:
1246 * tizen.bluetooth, tizen.calendar, tizen.camera, tizen.certificatemanager, tizen.contacts,
1247 * tizen.email, tizen.filemanager, tizen.gallery, tizen.imageviewer, tizen.mmsmessages, and tizen.smsmessages.
1251 * @return An error code
1252 * @exception E_SUCCESS The method is successful.
1253 * @exception E_SYSTEM A system error has occurred.
1254 * @exception E_INVALID_OPERATION The application control is not permitted to call this method.
1255 * @remarks This method is asynchronous.
1261 * This constructor is intentionally declared as private so that only the platform can create an instance.
1268 * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
1272 AppControl(const AppControl& rhs);
1275 * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
1279 AppControl& operator =(const AppControl& rhs);
1283 class _AppControlImpl * __pAppControlImpl;
1285 friend class _AppControlImpl;
1290 #endif // _FAPP_APPCONTROL_H_