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".
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".
215 * @privilege %http://tizen.org/privilege/web.service
218 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BROWSER;
222 * The Camera %AppControl ID. @n
224 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
226 * @brief <i> [Deprecated] </i>
227 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
228 * Instead of this variable, use the literal, L"tizen.camera".
232 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CAMERA;
236 * The Bluetooth %AppControl ID. @n
238 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
240 * @brief <i> [Deprecated] </i>
241 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
242 * Instead of this variable, use the literal, L"tizen.bluetooth".
246 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_BT;
250 * The Setting %AppControl ID. @n
252 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
254 * @brief <i> [Deprecated] </i>
255 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
256 * Instead of this variable, use the literal, L"tizen.settings".
260 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_SETTINGS;
264 * The Contact %AppControl provider ID. @n
266 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_contact.htm">Contact Application Control</a>.
268 * @brief <i> [Deprecated] </i>
269 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
270 * Instead of this variable, use the literal, L"tizen.contacts".
274 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CONTACT;
278 * The Certificate Manager %AppControl provider ID. @n
280 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_certmgr.htm">Certificate Manager Application Control</a>.
282 * @brief <i> [Deprecated] </i>
283 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
284 * Instead of this variable, use the literal, L"tizen.certificatemanager".
288 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CERTIFICATE_MANAGER;
292 * The Calendar %AppControl provider ID. @n
294 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_calendar.htm">Calendar Application Control</a>.
296 * @brief <i> [Deprecated] </i>
297 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
298 * Instead of this variable, use the literal, L"tizen.calendar".
302 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALENDAR;
306 * The Call %AppControl provider ID. @n
307 * Makes a phone call. @n
309 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_call.htm">Call Application Control</a>.
311 * @brief <i> [Deprecated] </i>
312 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
313 * Instead of this variable, use the literal, L"tizen.phone".
315 * @privilege %http://tizen.org/privilege/systeminfo
317 * @remarks Privilege is required to use this application control.
320 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CALL;
324 * The Message %AppControl provider ID. @n
326 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_message.htm">Message Application Control</a>.
328 * @brief <i> [Deprecated] </i>
329 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
330 * Instead of this variable, use the literal, L"tizen.messages".
333 * @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
334 * MMS attachments cannot contain a video in combination with an image or an audio file. @n
335 * From Tizen 2.0, the CC and BCC recipients are merged with the TO recipients when launching the MMS app control.
338 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MESSAGE;
342 * The Email %AppControl provider ID. @n
344 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_email.htm">Email Application Control</a>.
346 * @brief <i> [Deprecated] </i>
347 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
348 * Instead of this variable, use the literal, L"tizen.email".
352 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_EMAIL;
356 * The Media %AppControl provider ID. @n
358 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_media.htm">Media Application Control</a>.
360 * @brief <i> [Deprecated] </i>
361 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
362 * Instead of this variable, use the literal, L"tizen.filemanager" or L"tizen.gallery".
366 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_MEDIA;
370 * The Image %AppControl provider ID. @n
372 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_image.htm">Image Application Control</a>.
374 * @brief <i> [Deprecated] </i>
375 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
376 * Instead of this variable, use the literal, L"tizen.imageviewer".
380 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE;
384 * The ImageCrop application control provider ID @n
386 * @brief <i> [Deprecated] </i>
387 * @deprecated This variable is provided only for backward compatibility and will be deleted in a future release.
388 * use the literal, L"tizen.imageeditor", instead of this variable.
392 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_IMAGE_EDITOR;
396 * The Video %AppControl provider ID. @n
398 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_video.htm">Video Application Control</a>.
400 * @brief <i> [Deprecated] </i>
401 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
402 * Instead of this variable, use the literal, L"tizen.videoplayer".
406 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_VIDEO;
410 * The Audio %AppControl provider ID. @n
412 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_audio.htm">Audio Application Control</a>.
414 * @brief <i> [Deprecated] </i>
415 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
416 * Instead of this variable, use the literal, L"tizen.musicplayer".
420 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_AUDIO;
424 * The Browser %AppControl provider ID. @n
426 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_browser.htm">Browser Application Control</a>.
428 * @brief <i> [Deprecated] </i>
429 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
430 * Instead of this variable, use the literal, L"tizen.internet".
432 * @privilege %http://tizen.org/privilege/web.service
434 * @remarks Privilege is required to use this application control.
437 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BROWSER;
441 * The Camera %AppControl provider ID. @n
443 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_camera.htm">Camera Application Control</a>.
445 * @brief <i> [Deprecated] </i>
446 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
447 * Instead of this variable, use the literal, L"tizen.camera".
451 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_CAMERA;
455 * The Bluetooth %AppControl provider ID. @n
457 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_bluetooth.htm">Bluetooth Application Control</a>.
459 * @brief <i> [Deprecated] </i>
460 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
461 * Instead of this variable, use the literal, L"tizen.bluetooth".
464 * @remarks Bluetooth functionality cannot be tested on the Emulator.
467 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_BLUETOOTH;
471 * The Setting %AppControl provider ID. @n
473 * For more information, see <a href="../org.tizen.native.appprogramming/html/guide/app/appcontrol_settings.htm">Settings Application Control</a>.
475 * @brief <i> [Deprecated] </i>
476 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
477 * Instead of this variable, use the literal, L"tizen.settings".
481 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_PROVIDER_SETTINGS;
486 * Adds an application item.
488 * @brief <i> [Deprecated] </i>
489 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
490 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
494 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_ADD;
499 * Picks some application item(s).
501 * @brief <i> [Deprecated] </i>
502 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
503 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
507 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PICK;
512 * Edits an application item.
514 * @brief <i> [Deprecated] </i>
515 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
516 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
520 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_EDIT;
525 * Shows the application content.
527 * @brief <i> [Deprecated] </i>
528 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
529 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
533 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_VIEW;
538 * Plays the application content.
540 * @brief <i> [Deprecated] </i>
541 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
542 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
546 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_PLAY;
550 * Operation Default. @n
552 * Uses the default operation specific to the application control.
553 * 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.
555 * @brief <i> [Deprecated] </i>
556 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
557 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
561 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_DEFAULT;
567 * @brief <i> [Deprecated] </i>
568 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
569 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
573 _OSP_EXPORT_ extern const Tizen::Base::String OPERATION_CAPTURE;
579 * Adds an application item.
581 * @brief <i> [Deprecated] </i>
582 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
583 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/add".
587 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_ADD;
592 * Makes a call to the specified phone number.
594 * @brief <i> [Deprecated] </i>
595 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
596 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/call".
600 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CALL;
606 * @brief <i> [Deprecated] </i>
607 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
608 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
612 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CAPTURE;
618 * @brief <i> [Deprecated] </i>
619 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
620 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/compose".
624 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_COMPOSE;
628 * Operation Configure Settings.
630 * @brief <i> [Deprecated] </i>
631 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
632 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/configure".
636 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CONFIGURE;
640 * Operation Default. @n
642 * Uses the default operation specific to the application control.
643 * 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.
645 * @brief <i> [Deprecated] </i>
646 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
647 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
651 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DEFAULT;
656 * Launches the dial screen for making a call.
658 * @brief <i> [Deprecated] </i>
659 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
660 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/dial".
664 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_DIAL;
669 * Edits an application item.
671 * @brief <i> [Deprecated] </i>
672 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
673 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/edit".
677 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_EDIT;
683 * All the application exports the implicit %AppControl with %APPCONTROL_OPERATION_MAIN operation.
685 * @brief <i> [Deprecated] </i>
686 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
687 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/main".
691 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_MAIN;
696 * Picks some application item(s).
698 * @brief <i> [Deprecated] </i>
699 * @deprecated This variable is providyed only for backward compatibility and will be deleted in the near future.
700 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/pick".
704 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PICK;
709 * Plays the application content.
711 * @brief <i> [Deprecated] </i>
712 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
713 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
717 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_PLAY;
721 * Operation Record. @n
722 * Records the content.
724 * @brief <i> [Deprecated] </i>
725 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
726 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/createcontent".
730 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_RECORD;
734 * Operation Share. @n
735 * Shares the contents.
737 * @brief <i> [Deprecated] </i>
738 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
739 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/share".
743 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_SHARE;
748 * Shows the application content.
750 * @brief <i> [Deprecated] </i>
751 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
752 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/view".
756 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_VIEW;
761 * Shows image with the crop rectangle.
763 * @brief <i> [Deprecated] </i>
764 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
765 * Instead of this variable, use the literal, L"http://tizen.org/appcontrol/operation/crop".
769 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_OPERATION_CROP;
773 * Not specified category.
775 * @brief <i> [Deprecated] </i>
776 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
780 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_NONE;
784 * The audio category.
786 * @brief <i> [Deprecated] </i>
787 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
791 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_AUDIO;
795 * The browser category.
797 * @brief <i> [Deprecated] </i>
798 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
802 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BROWSER;
806 * The Bluetooth device category.
808 * @brief <i> [Deprecated] </i>
809 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
813 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_BLUETOOTH;
817 * The calendar category.
819 * @brief <i> [Deprecated] </i>
820 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
824 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CALENDAR;
828 * The certificate category.
830 * @brief <i> [Deprecated] </i>
831 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
835 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CERTIFICATE;
839 * The contact category.
841 * @brief <i> [Deprecated] </i>
842 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
846 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_CONTACT;
850 * The document category.
852 * @brief <i> [Deprecated] </i>
853 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
857 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_DOCUMENT;
861 * The email category.
863 * @brief <i> [Deprecated] </i>
864 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
868 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_EMAIL;
872 * The media category. @n
873 * Specifying App::APPCONTROL_CATEGORY_MEDIA is equivalent to specifying all the App::APPCONTROL_CATEGORY_AUDIO,
874 * App::APPCONTROL_CATEGORY_IMAGE, and App::APPCONTROL_CATEGORY_VIDEO categories.
876 * @brief <i> [Deprecated] </i>
877 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
881 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MEDIA;
887 * @brief <i> [Deprecated] </i>
888 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
892 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_MMS;
896 * The image category.
898 * @brief <i> [Deprecated] </i>
899 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
903 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_IMAGE;
907 * The security category.
909 * @brief <i> [Deprecated] </i>
910 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
914 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SECURITY;
920 * @brief <i> [Deprecated] </i>
921 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
925 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SMS;
929 * The settings category.
931 * @brief <i> [Deprecated] </i>
932 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
936 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_SETTINGS;
940 * The video call category.
942 * @brief <i> [Deprecated] </i>
943 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
947 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO_CALL;
951 * The voice call category.
953 * @brief <i> [Deprecated] </i>
954 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
958 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VOICE_CALL;
962 * The video category.
964 * @brief <i> [Deprecated] </i>
965 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
969 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_VIDEO;
973 * The complete URI handling category corresponding to AppManager::StartAppControl().
975 * @brief <i> [Deprecated] </i>
976 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
980 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_CATEGORY_URI;
984 * The %AppControl operation is successful.
986 * @brief <i> [Deprecated] </i>
987 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
991 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_SUCCEEDED;
995 * The %AppControl operation has failed.
997 * @brief <i> [Deprecated] </i>
998 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1002 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_FAILED;
1006 * The %AppControl operation is canceled.
1008 * @brief <i> [Deprecated] </i>
1009 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1013 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_CANCELED;
1017 * The %AppControl is terminated without sending the result.
1019 * @brief <i> [Deprecated] </i>
1020 * @deprecated This variable is provided only for backward compatibility and will be deleted in the near future.
1024 _OSP_EXPORT_ extern const Tizen::Base::String APPCONTROL_RESULT_TERMINATED;
1028 * @brief This class represents the application control behavior.
1031 * @final This class is not intended for extension.
1033 * The %AppControl class represents the application control behavior that provides a standard mechanism for using specific operations exported by other applications.
1035 * For more information on the class features, see <a href="../org.tizen.native.appprogramming/html/guide/app/app_controls.htm">Application Controls</a>.
1037 * @see Tizen::App::AppManager
1039 * The following example demonstrates how to use the %AppControl class.
1044 * using namespace Tizen::Base::Collection;
1045 * using namespace Tizen::App;
1048 * MyAppClass::AppControlCallSample(void)
1050 * HashMap extraData;
1051 * String telKey = L"tel";
1052 * String telVal = L"1234567890";
1053 * String typeKey = L"type";
1054 * String typeVal = L"voice";
1056 * extraData.Construct();
1057 * extraData.Add(&telKey, &telVal);
1058 * extraData.Add(&typeKey, &typeVal);
1060 * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/call");
1063 * pAc->Start(null, null, &extraData, null);
1070 class _OSP_EXPORT_ AppControl
1071 : public Tizen::Base::Object
1075 * This destructor overrides Tizen::Base::Object::~Object().
1079 virtual ~AppControl(void);
1083 * Starts the resolved application control. @n
1084 * Once the application starts, it goes to the background and the target
1085 * application control is displayed.
1087 * @brief <i> [Deprecated] </i>
1088 * @deprecated This method is deprecated because IAppControlEventListener method is deprecated and replaced by
1089 * IAppControlResponseListener due to lack of argument capability. @n
1090 * Instead of using this method, use Start().
1092 * @privilege %http://tizen.org/privilege/application.launch
1094 * @return An error code
1095 * @param[in] pDataList The data list to deliver to the resolved application control @n
1096 * The maximum size of the list is 4096 bytes.
1097 * @param[in] pListener The application control callback listener @n
1098 * Some application controls need to get the callback result by implementing the IAppControlEventListener interface.
1099 * @exception E_SUCCESS The method is successful.
1100 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1101 * @exception E_OBJ_NOT_FOUND The target application control resource is not found.
1102 * @exception E_IN_PROGRESS The application control is in progress: @n
1103 * - The application has already started an %AppControl. @n
1104 * - The target application has already started.
1105 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1106 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1107 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1108 * @remarks If the IAppControlEventListener instance (@c pListener) needs to get the
1109 * callback result for an application control, it must be valid till
1110 * IAppControlEventListener::OnAppControlCompleted() is invoked.
1111 * For example, a form object listener must not be deleted before the
1112 * system invokes %IAppControlEventListener::OnAppControlCompleted().
1113 * @see AppManager::FindAppControlN()
1114 * @see AppManager::FindAppControlsN()
1117 result Start(const Tizen::Base::Collection::IList* pDataList, IAppControlEventListener* pListener);
1120 * Starts the found application control. @n
1121 * Once the found application starts, the calling application goes to the background and the found
1122 * application is displayed.
1125 * @privilege %http://tizen.org/privilege/application.launch
1127 * @return An error code
1128 * @param[in] pUriData A pointer to the URI data
1129 * @param[in] pDataType A pointer to the MIME type (RFC 2046) data
1130 * @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
1131 * The maximum size is 16 kilo bytes.
1132 * @param[in] pListener The application control callback listener @n
1133 * Some application need to get the result by implementing the IAppControlResponseListener interface.
1134 * @exception E_SUCCESS The method is successful.
1135 * @exception E_MAX_EXCEEDED The size of @c pExtraData has exceeded the maximum limit.
1136 * @exception E_OBJ_NOT_FOUND The target application control is not found.
1137 * @exception E_IN_PROGRESS The application control is in progress: @n
1138 * - The application has already started an %AppControl.
1139 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1140 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1141 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1142 * @remarks If the calling application needs to get some result for application control,
1143 * it must be valid till IAppControlResponseListener::OnAppControlCompleteResponseReceived() is invoked.
1144 * For example, a form object listener must not be deleted before the
1145 * system invokes %IAppControlResponseListener::OnAppControlCompleteResponseReceived().
1146 * @see AppManager::FindAppControlN()
1147 * @see AppManager::FindAppControlsN()
1149 result Start(const Tizen::Base::String* pUriData, const Tizen::Base::String* pDataType, const Tizen::Base::Collection::IMap* pExtraData, IAppControlResponseListener* pListener);
1152 * Finds the matching application control with given operation ID, URI pattern, data type, and category and
1153 * starts the found one. @n
1154 * 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.
1155 * When the found application control is started, the URI pattern, MIME type, and extra data is delivered using IAppControlProviderEventListener.
1158 * @privilege %http://tizen.org/privilege/application.launch
1160 * @return An error code
1161 * @param[in] operationId The operation ID
1162 * @param[in] pUriPattern A URI pattern which is used for application control resolution and is delivered as the argument
1163 * @param[in] pDataType The MIME type (RFC 2046) or file extension @n
1164 * The '.' prefix must be used when specifying the file extension.
1165 * @param[in] pCategory The application control category
1166 * @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
1167 * type %Tizen::Base::String or of type Tizen::Base::Collection::ArrayList of %Tizen::Base::String to deliver to
1168 * the resolved application @n
1169 * The maximum size is 16 kilo bytes.
1170 * @param[in] pListener A listener that gets notified
1171 * @exception E_SUCCESS The method is successful.
1172 * @exception E_MAX_EXCEEDED The size of @c pDataList has exceeded the maximum limit.
1173 * @exception E_OBJ_NOT_FOUND The application control is not found.
1174 * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
1175 * @exception E_SYSTEM The method cannot proceed due to a severe system error.
1176 * @exception E_ILLEGAL_ACCESS The application is not signed with the same certificate of target application. @b Since: @b 2.1
1177 * @see IAppControlResponseListener
1179 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);
1182 * Stops the event listener from receiving the application control result.
1186 * @param[in] pListener The listener to stop receiving the application control result
1188 static void StopAppControlResponseListener(IAppControlResponseListener* pListener);
1191 * Gets the name of the application that provides the features represented by this %AppControl instance.
1195 * @return The name of the application providing this %AppControl instance
1197 Tizen::Base::String GetAppName(void) const;
1200 * Gets the associated application ID.
1204 * @return The application ID
1206 AppId GetAppId(void) const;
1210 * Gets the associated application control provider ID.
1212 * @brief <i> [Deprecated] </i>
1213 * @deprecated This method is deprecated because application ID replaced the role of provider ID. @n
1214 * Instead of using this method, use GetAppId().
1217 * @return The application control provider ID
1220 Tizen::Base::String GetAppControlProviderId(void) const;
1223 * Gets the associated operation ID.
1227 * @return The operation ID
1229 Tizen::Base::String GetOperationId(void) const;
1232 * Gets the associated application control categories.
1236 * @return A pointer to the list of application control categories, @n
1237 * else @c null if an error occurs
1238 * @exception E_SUCCESS The method is successful.
1239 * @exception E_OUT_OF_MEMORY The memory is insufficient.
1240 * @exception E_SYSTEM A system error has occurred.
1241 * @remarks The specific error code can be accessed using the GetLastResult() method.
1243 Tizen::Base::Collection::IList* GetCategoryListN(void) const;
1247 * Stops the activated application control. @n
1248 * The %Stop() method works only with the following %AppControls provided by the platform:
1249 * tizen.bluetooth, tizen.calendar, tizen.camera, tizen.certificatemanager, tizen.contacts,
1250 * tizen.email, tizen.filemanager, tizen.gallery, tizen.imageviewer, tizen.mmsmessages, and tizen.smsmessages.
1254 * @return An error code
1255 * @exception E_SUCCESS The method is successful.
1256 * @exception E_SYSTEM A system error has occurred.
1257 * @exception E_INVALID_OPERATION The application control is not permitted to call this method.
1258 * @remarks This method is asynchronous.
1264 * This constructor is intentionally declared as private so that only the platform can create an instance.
1271 * The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects.
1275 AppControl(const AppControl& rhs);
1278 * The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects.
1282 AppControl& operator =(const AppControl& rhs);
1286 class _AppControlImpl * __pAppControlImpl;
1288 friend class _AppControlImpl;
1293 #endif // _FAPP_APPCONTROL_H_