Monday, March 11, 2013

Android permissions and their details

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.jitesh.hellopermissionexample"
      android:versionCode="1"
      android:versionName="1.0">

    <!-- i have added 9 different android permissions below-->
        <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>
        <uses-permission android:name="android.permission.MODIFY_PHONE_STATE"></uses-permission>
    <uses-permission android:name="android.permission.CALL_PRIVILEGED"></uses-permission> 
       <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" ></uses-permission>
       <uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission> 
       <uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
       <uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
       <uses-permission android:name="android.permission.PERSISTENT_ACTIVITY"></uses-permission>
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"></uses-permission>
    <!-- permissions end-->

    <application 
    android:icon="@drawable/icon" 
    android:debuggable="true" 
    android:label="@string/app_name">
        <activity android:name=".HelloPermissionExample"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-sdk android:minSdkVersion="8" />

</manifest>




Detailed Description for All Android Permissions List

Manifest Permission StringsDescription
CALL_PHONE
Allows an application to initiate a phone call without going through the Dialer user interface for the user to confirm the call being placed.
MODIFY_PHONE_STATE
Allows modification of the telephony state – power on, mmi, etc.
READ_PHONE_STATE
Allows read only access to phone state.
READ_LOGS
Allows an application to read the low-level system log files.
WRITE_SMS
Allows an application to write SMS messages.
CHANGE_NETWORK_STATE
Allows applications to change network connectivity state
PROCESS_OUTGOING_CALLS
Allows an application to monitor, modify, or abort outgoing calls.
READ_CALL_LOG
Allows an application to read the user’s call log.
READ_CONTACTS
Allows an application to read the user’s contacts data.
READ_CALENDAR
Allows an application to read the user’s calendar data.
RECEIVE_BOOT_COMPLETED
Allows an application to receive the ACTION_BOOT_COMPLETED that is broadcast after the system finishes booting.
ACCESS_CHECKIN_PROPERTIES
Allows read/write access to the “properties” table in the checkin database, to change values that get uploaded.
ACCESS_FINE_LOCATION
Allows an app to access precise location from location sources such as GPS, cell towers, and Wi-Fi.
ACCESS_COARSE_LOCATION
Allows an app to access approximate location derived from network location sources such as cell towers and Wi-Fi.
ACCESS_MOCK_LOCATION
Allows an application to create mock location providers for testing
ACCESS_NETWORK_STATE
Allows applications to access information about networks
ACCESS_SURFACE_FLINGER
Allows an application to use SurfaceFlinger’s low level features
ACCESS_WIFI_STATE
Allows applications to access information about Wi-Fi networks
ACCOUNT_MANAGER
Allows applications to call into AccountAuthenticators.
ADD_VOICEMAIL
Allows an application to add voicemails into the system.
AUTHENTICATE_ACCOUNTS
Allows an application to act as an AccountAuthenticator for the AccountManager
BATTERY_STATS
Allows an application to collect battery statistics
BIND_ACCESSIBILITY_SERVICE
Must be required by an AccessibilityService, to ensure that only the system can bind to it.
BIND_APPWIDGET
Allows an application to tell the AppWidget service which application can access AppWidget’s data.
BIND_DEVICE_ADMIN
Must be required by device administration receiver, to ensure that only the system can interact with it.
BIND_INPUT_METHOD
Must be required by an InputMethodService, to ensure that only the system can bind to it.
BIND_REMOTEVIEWS
Must be required by a RemoteViewsService, to ensure that only the system can bind to it.
BIND_TEXT_SERVICE
Must be required by a TextService (e.g.
BIND_VPN_SERVICE
Must be required by an VpnService, to ensure that only the system can bind to it.
BIND_WALLPAPER
Must be required by a WallpaperService, to ensure that only the system can bind to it.
BLUETOOTH
Allows applications to connect to paired bluetooth devices
BLUETOOTH_ADMIN
Allows applications to discover and pair bluetooth devices
BRICK
Required to be able to disable the device (very dangerous!).
BROADCAST_PACKAGE_REMOVED
Allows an application to broadcast a notification that an application package has been removed.
BROADCAST_SMS
Allows an application to broadcast an SMS receipt notification
BROADCAST_STICKY
Allows an application to broadcast sticky intents.
BROADCAST_WAP_PUSH
Allows an application to broadcast a WAP PUSH receipt notification
CALL_PRIVILEGED
Allows an application to call any phone number, including emergency numbers, without going through the Dialer user interface for the user to confirm the call being placed.
CAMERA
Required to be able to access the camera device.
CHANGE_COMPONENT_ENABLED_STATE
Allows an application to change whether an application component (other than its own) is enabled or not.
CHANGE_CONFIGURATION
Allows an application to modify the current configuration, such as locale.
CHANGE_WIFI_MULTICAST_STATE
Allows applications to enter Wi-Fi Multicast mode
CHANGE_WIFI_STATE
Allows applications to change Wi-Fi connectivity state
CLEAR_APP_CACHE
Allows an application to clear the caches of all installed applications on the device.
CLEAR_APP_USER_DATA
Allows an application to clear user data
CONTROL_LOCATION_UPDATES
Allows enabling/disabling location update notifications from the radio.
DELETE_CACHE_FILES
Allows an application to delete cache files.
DELETE_PACKAGES
Allows an application to delete packages.
DEVICE_POWER
Allows low-level access to power management
DIAGNOSTIC
Allows applications to RW to diagnostic resources.
DISABLE_KEYGUARD
Allows applications to disable the keyguard

No comments:

Post a Comment