the Flagship of independent news, reviews and resources for Developers and Users of Samsung's mobile platform Bada
Bada Tutorials, Fundamentals, Others

44 Privilege Groups in Bada

wit, February 16th, 2010

Similar to what we came to know in Android, Bada also requires your app to have specific privileges to be able to perform certain operations. On install a user must know and confirm the privileges that are needed by your app to function correctly. So far I have identified 44 different privilege groups that have to be defined in the manifest.xml, giving your app the corresponding permissions.

Here they are:

  1. ADDRESSBOOK – This privilege is needed in the Osp::Social namespace and required to perform a set of addressbook-specific operations, like adding or searching contacts
  2. ADVANCED_SEARCH – needed in the OSP::Content namespace by the RemoteAdvancedSearch class, that performs a set of searching operations on the remote bada server
  3. BLUETOOTH – Opening and closing connections as well as transfer operations over the bluetooth channel. Needed in Osp::Net by the Bluetooth class
  4. BOARD_SERVICE – Used in Osp::Social::Services namespace. It allows you to perform certain operations on the remote bada server, like creating and managing discussion boards
  5. BUDDY_SERVICE – This one is also part of the Osp::Social::Services namespace. It allows you to manage the buddies of a user on the remote bada server
  6. CALENDARBOOK -Part of Osp::Social namespace. It allows you to manage events and to-do’s in the calendar of a user
  7. CAMERA – belongs to the Osp::Media namespace and allows you to switch on/off the camera device, capture images, set effects, flash and a lot of other cool stuff
  8. COMMERCE_STORE – as a part of Osp::Commerce namespace, it is a privilege that allows you to integrate easy commerce and in-app-buying functionality into your applications
  9. CONTENT_TRANSFER – belonging to Osp::Content, it includes a bunch of content download/upload rights
  10. COOKIE – belongs to Osp::Net namespace and allows you to perform a few cookie removal operations
  11. DIRECTORY_SERVICE – belongs to Osp::Locations namespace and allows to perform geographically constrained searches of places of interest, products, services, etc.
  12. DRM_CONTENT – includes a set of methods to get information and permissions related to DRM protected media, hence the Osp::Media namespace (Pirates don’t like this Arrrr! ;-) )
  13. GEOCODING_SERVICE – Also a part of Osp::Locations. Gives you app the rights to convert coordinates to addresses and vice versa
  14. HTTP – Osp::Net namespace, many HTTP related functions depend on this provilege
  15. IMAGE – Osp::Media, allows you to perform a set of image input and output operations
  16. LANDMARK – within Osp::Locations namespace, this privilege allows you to manage landmarks (aka geographic places of cultural interest :-P )
  17. LIFELOG – Sounds scary but is in fact much less sinister :-P . This privilege , for example, gives a certain Lifelog class from the Osp::Social namespace to get a few statistics related to specific calls. E.g. their duration, amount, etc.
  18. LOCAL_CONTENT – gives you the right to manage local content (as opposed to REMOTE_CONTENT), used within the Osp::Content namespace
  19. LOCATION – naturally belonging to the Osp::Locations namespace, this privilege allows you to get the location of the device, monitor a geographic area, etc.
  20. MAP_SERVICE – similar to the privilege above, this one gives you the right to get and render maps from specific map service providers
  21. MESSAGING – belongs to the same-named namespace Osp::Messaging, it allows your app to send email, SMS and MMS messages
  22. MESSAGING_SERVICE – allows your application to send custom messages between devices
  23. NET – opens some DNS and Net Access Points related management functionality within your app. Osp::Net namespace
  24. NET_ACCOUNT – similar to the one above, allows you to create, delete and update Net Accounts
  25. NET_STATISTICS – similar to the other two above, this privilege gives you the green light to read Net specific statistics
  26. NOTIFICATION – belongs to the Osp::App namespace and allows you to send notifications to the user about some event within your app (e.g. a new message has arrived)
  27. PRIVACY_SERVICE – belongs to Osp::Social::Services and allows the app to manage some privacy-related aspects of the user’s bada-server profile
  28. PROFILE_SERVICE – similar to the one above, allows you to search profiles and update profile of a user
  29. PUSH_MESSAGING – rights for bada-specific Push-messages management
  30. RECORDING – privileges needed by the Audio and Video Recorders within the Osp::Media namespace
  31. REMOTE_CONTENT – gives you the right to manage remote content (as opposed to LOCAL_CONTENT), used within the Osp::Content namespace
  32. REMOTE_LANDMARK – similar to LANDMARK rights, but refers to management functionality of information stored on a remote landmark store
  33. REMOTE_LOCATION – rights associated with the location of other users, similar to LOCATION
  34. REMOTE_TRACE - similar to the one above, but goes further. Gives you the right to request accumulated device locations of a specific target
  35. ROUTE_SERVICE – Osp::Locations, allows you to request a route from A to B from a specific service provider
  36. RSS – Osp::Content, rights to subscribe and un-subscribe from diverse rss feeds
  37. SNS_SERVICE – needed by the SnsGateway from Osp::Social::Services. This gateway is an interface to diverse social services providers like Twitter
  38. SOCKET – Osp::Net::Socket namespace, in case you need some lower-level socket functionality one day :-)
  39. SYNC_SERVICE – Osp::Device, needed to get information about the synchronization process between the device and a PC
  40. SYSTEM_SERVICE – essential if your app is hungry for some system and runtime specific info like the memory or battery levels
  41. TELEPHONY – actually this one does not let you perform calls just yet. Only read some information that you most probably will not need anyway. Osp::Telephony
  42. WEB_PRIVACY – needed if you want the web history data to ba available to your app
  43. WEB_SERVICE – a must-have if you want to use the Web browsing control
  44. WIFI – allows yoou to perform a few WiFi specific operations

Note: as the SDK is not public yet, this list is subject to change. This post has been a little “dry”, but you will need these things. I thought it was a good idea to unite this information on one spot somewhere. :-)

Related posts:

  1. Bada API namespaces overview
  2. Displaying a Map in a bada application
  3. Working with Files and Directories in Bada (part 1)
  1. 11 Responses to “44 Privilege Groups in Bada”

  2. By inetic on Apr 1, 2010 | Reply

    useful indeed :-)

  3. By Alaa on Apr 26, 2010 | Reply

    How can I add the neccessary privilege to my application?

    (I need HTTP privilege).

    Regards,
    Aladdin

  4. By wit on Apr 26, 2010 | Reply

    Right-click manifest.xml, Open With-> Text Editor

    make the following change:

    <Privileges>
        	<Privilege>
        		<Name>HTTP</Name>
        	</Privilege>
    </Privileges>
    
  5. By Asta on May 3, 2010 | Reply

    Thanks a lot for this website :)

    A have just a question. How can i access to sms inbox?
    It’s possible to save directly a message in inbox (not Sentbox or Outbox) without send it?

  6. By Matthias Braun on Jun 9, 2010 | Reply

    Hi there!
    I’m quite sure that MAP_SERVICE is now called LOCATION_SERVICE.

  7. By Preety on Jun 11, 2010 | Reply

    I want to access SYSTEM privileges … such as to sent SMS which is not provided for Basic members. What i have To do to get partnership membership… can i convert my basic membership to partnership membership… what’s the process of that?

  8. By wit on Jun 12, 2010 | Reply

    Asta, have you tried MESSAGING? I am not sure if bada allows to do what you want to.

    Matthias, thank you for that info! :-D

    Preety, have you tried to contact Samsung already?

  9. By Doode on Jul 14, 2010 | Reply

    Huh… I was just scared now….. And this replies to Preety:

    Actually there are more groups than the listed ones. Developers can load their phones with “SYSTEM” privilege level groups. You just have to enter the group manually in the xml file. For example, I was scared because I just found out that “WIFI” wouldn’t let me use the Connect method, but I added WIFI_MANAGER to the privilege list, and I can now in fact connect to networks.

    Of course Samsung wouldn’t let me submit the application, but I don’t care, it’s for personal use. The phone is mine, I should have SYSTEM privilege access =)

  1. 3 Trackback(s)

  2. Feb 19, 2010: BadaDev » Working with Files and Directories in Bada (part 1)
  3. Apr 19, 2010: BadaDev » Bada Camera API (part 1) – Simple Preview
  4. Apr 21, 2010: BadaDev » Launching basic services from within your app

Post a Comment

Editor's picks

Copyright 2009-2010 BadaDev.com (unless otherwise stated). All rights reserved! Powered by Wordpress!