abc

Share This blog with your friends, so that we can improve more & more . our aim is to easy & simple way of learning.
Showing posts with label Google. Show all posts
Showing posts with label Google. Show all posts

12/18/2021

How to check permission while creating android app .


 While running app, some app initially or button click it will ask for allow or deny permission for example, allow camera, allow microphone, allow camera, allow location .


for this use simply do the following steps:

step 1 ) AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />  for internet permission
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"  /> write permission
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />  read permission
<uses-permission android:name="android.permission.CAMERA" />  for camera
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>  for access location

Step 2 ) go to Mainactivity.java or wherever you want to ask permission add below code

declare variable as, private static final int STORAGE_PERMISSION_CODE = 101;

call method , checkPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE, STORAGE_PERMISSION_CODE);

define function,

 public void checkPermission(String permission, int requestCode)
{
if (ContextCompat.checkSelfPermission(MainActivity.this, permission) == PackageManager.PERMISSION_DENIED) {

// Requesting the permission
ActivityCompat.requestPermissions(MainActivity.this, new String[] { permission }, requestCode);
}
else {
Toast.makeText(MainActivity.this, "Permission already granted", Toast.LENGTH_SHORT).show();
}
}

@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);


if (requestCode == STORAGE_PERMISSION_CODE) {
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Toast.makeText(MainActivity.this, "Storage Permission Granted", Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(MainActivity.this, "Storage Permission Denied", Toast.LENGTH_SHORT).show();
}
}
}

above is example storage permission ask, in the similar way other permission will work.

refer below table for permission,



Permissions Detail
<uses-permission android:name="android.permission.ACCESS_ALL_DOWNLOADS"> </uses-permission> Access All Downloads
<uses-permission android:name="android.permission.ACCESS_BLUETOOTH_SHARE"> </uses-permission> Access Bluetooth Share
<uses-permission android:name="android.permission.ACCESS_CACHE_FILESYSTEM"> </uses-permission> Access Cache Filesystem
<uses-permission android:name="android.permission.ACCESS_CHECKIN_PROPERTIES"> </uses-permission> Access Checkin Properties
<uses-permission android:name="android.permission.ACCESS_CONTENT_PROVIDERS_EXTERNALLY"> </uses-permission> Access Content Providers Externally
<uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"> </uses-permission> Access Download Manager
<uses-permission android:name="android.permission.ACCESS_FM_RADIO"> </uses-permission> Access Fm Radio
<uses-permission android:name="android.permission.ACCESS_INPUT_FLINGER"> </uses-permission> Access Input Flinger
<uses-permission android:name="android.permission.ACCESS_KEYGUARD_SECURE_STORAGE"> </uses-permission> Access Keyguard Secure Storage
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"> </uses-permission> Access Location Extra Commands
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"> </uses-permission> Access Mock Location
<uses-permission android:name="android.permission.ACCESS_MTP"> </uses-permission> Access Mtp(media transfer protocol)
<uses-permission android:name="android.permission.ACCESS_NETWORK_CONDITIONS"> </uses-permission> Access Network Conditions
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"> </uses-permission> Access Network State
<uses-permission android:name="android.permission.ACCESS_NOTIFICATIONS"> </uses-permission> Access Notifications
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"> </uses-permission> Access Notification Policy
<uses-permission android:name="android.permission.ACCESS_PDB_STATE"> </uses-permission> Access Pdb State(plug able database)
<uses-permission android:name="android.permission.ACCESS_SURFACE_FLINGER"> </uses-permission> Access Surface Flinger
<uses-permission android:name="android.permission.ACCESS_VOICE_INTERACTION_SERVICE"> </uses-permission> Access Voice Interaction Service
<uses-permission android:name="android.permission.ACCESS_VR_MANAGER"> </uses-permission> Access Vr Manager(virtual reality)
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"> </uses-permission> Access Wifi State
<uses-permission android:name="android.permission.ACCESS_WIMAX_STATE"> </uses-permission> Access Wimax State
<uses-permission android:name="android.permission.ACCOUNT_MANAGER"> </uses-permission> Account Manager
<uses-permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK"> </uses-permission> Allow Any Codec For Playback
<uses-permission android:name="android.permission.ASEC_ACCESS"> </uses-permission> Asec(Android secure encrypted) Access
<uses-permission android:name="android.permission.ASEC_CREATE"> </uses-permission> Asec(Android secure encrypted) Create
<uses-permission android:name="android.permission.ASEC_DESTROY"> </uses-permission> Asec(Android secure encrypted) Destroy
<uses-permission android:name="android.permission.ASEC_MOUNT_UNMOUNT"> </uses-permission> Asec(Android secure encrypted) Mount Unmount
<uses-permission android:name="android.permission.ASEC_RENAME"> </uses-permission> Asec(Android secure encrypted) Rename
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS"> </uses-permission> Authenticate Accounts
<uses-permission android:name="android.permission.BACKUP"> </uses-permission> Backup
<uses-permission android:name="android.permission.BATTERY_STATS"> </uses-permission> Battery Stats
<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE"> </uses-permission> Bind Accessibility Service
<uses-permission android:name="android.permission.BIND_APPWIDGET"> </uses-permission> Bind Appwidget
<uses-permission android:name="android.permission.BIND_CARRIER_MESSAGING_SERVICE"> </uses-permission> Bind Carrier Messaging Service
<uses-permission android:name="android.permission.BIND_CARRIER_SERVICES"> </uses-permission> Bind Carrier Services
<uses-permission android:name="android.permission.BIND_CHOOSER_TARGET_SERVICE"> </uses-permission> Bind Chooser Target Service
<uses-permission android:name="android.permission.BIND_CONDITION_PROVIDER_SERVICE"> </uses-permission> Bind Condition Provider Service
<uses-permission android:name="android.permission.BIND_CONNECTION_SERVICE"> </uses-permission> Bind Connection Service
<uses-permission android:name="android.permission.BIND_DEVICE_ADMIN"> </uses-permission> Bind Device Admin
<uses-permission android:name="android.permission.BIND_DIRECTORY_SEARCH"> </uses-permission> Bind Directory Search
<uses-permission android:name="android.permission.BIND_DREAM_SERVICE"> </uses-permission> Bind Dream Service
<uses-permission android:name="android.permission.BIND_INCALL_SERVICE"> </uses-permission> Bind Incall Service
<uses-permission android:name="android.permission.BIND_INPUT_METHOD"> </uses-permission> Bind Input Method
<uses-permission android:name="android.permission.BIND_INTENT_FILTER_VERIFIER"> </uses-permission> Bind Intent Filter Verifier
<uses-permission android:name="android.permission.BIND_JOB_SERVICE"> </uses-permission> Bind Job Service
<uses-permission android:name="android.permission.BIND_KEYGUARD_APPWIDGET"> </uses-permission> Bind Keyguard Appwidget
<uses-permission android:name="android.permission.BIND_MIDI_DEVICE_SERVICE"> </uses-permission> Bind Midi Device Service
<uses-permission android:name="android.permission.BIND_NFC_SERVICE"> </uses-permission> Bind Nfc Service
<uses-permission android:name="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE"> </uses-permission> Bind Notification Listener Service
<uses-permission android:name="android.permission.BIND_NOTIFICATION_RANKER_SERVICE"> </uses-permission> Bind Notification Ranker Service
<uses-permission android:name="android.permission.BIND_PACKAGE_VERIFIER"> </uses-permission> Bind Package Verifier
<uses-permission android:name="android.permission.BIND_PRINT_RECOMMENDATION_SERVICE"> </uses-permission> Bind Print Recommendation Service
<uses-permission android:name="android.permission.BIND_PRINT_SERVICE"> </uses-permission> Bind Print Service
<uses-permission android:name="android.permission.BIND_PRINT_SPOOLER_SERVICE"> </uses-permission> Bind Print Spooler Service
<uses-permission android:name="android.permission.BIND_QUICK_SETTINGS_TILE"> </uses-permission> Bind Quick Settings Tile
<uses-permission android:name="android.permission.BIND_REMOTEVIEWS"> </uses-permission> Bind Remoteviews
<uses-permission android:name="android.permission.BIND_REMOTE_DISPLAY"> </uses-permission> Bind Remote Display
<uses-permission android:name="android.permission.BIND_ROUTE_PROVIDER"> </uses-permission> Bind Route Provider
<uses-permission android:name="android.permission.BIND_RUNTIME_PERMISSION_PRESENTER_SERVICE"> </uses-permission> Bind Runtime Permission Presenter Service
<uses-permission android:name="android.permission.BIND_SCREENING_SERVICE"> </uses-permission> Bind Screening Service
<uses-permission android:name="android.permission.BIND_TELECOM_CONNECTION_SERVICE"> </uses-permission> Bind Telecom Connection Service
<uses-permission android:name="android.permission.BIND_TEXT_SERVICE"> </uses-permission> Bind Text Service
<uses-permission android:name="android.permission.BIND_TRUST_AGENT"> </uses-permission> Bind Trust Agent
<uses-permission android:name="android.permission.BIND_TV_INPUT"> </uses-permission> Bind Tv Input
<uses-permission android:name="android.permission.BIND_TV_REMOTE_SERVICE"> </uses-permission> Bind Tv Remote Service
<uses-permission android:name="android.permission.BIND_VOICE_INTERACTION"> </uses-permission> Bind Voice Interaction
<uses-permission android:name="android.permission.BIND_VPN_SERVICE"> </uses-permission> Bind Vpn Service
<uses-permission android:name="android.permission.BIND_VR_LISTENER_SERVICE"> </uses-permission> Bind Vr Listener Service
<uses-permission android:name="android.permission.BIND_WALLPAPER"> </uses-permission> Bind Wallpaper
<uses-permission android:name="android.permission.BLUETOOTH"> </uses-permission> Bluetooth
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"> </uses-permission> Bluetooth Admin
<uses-permission android:name="android.permission.BLUETOOTH_MAP"> </uses-permission> Bluetooth Map
<uses-permission android:name="android.permission.BLUETOOTH_PRIVILEGED"> </uses-permission> Bluetooth Privileged
<uses-permission android:name="android.permission.BLUETOOTH_STACK"> </uses-permission> Bluetooth Stack
<uses-permission android:name="android.permission.BRICK"> </uses-permission> Brick
<uses-permission android:name="android.permission.BROADCAST_CALLLOG_INFO"> </uses-permission> Broadcast Call log Info
<uses-permission android:name="android.permission.BROADCAST_NETWORK_PRIVILEGED"> </uses-permission> Broadcast Network Privileged
<uses-permission android:name="android.permission.BROADCAST_PACKAGE_REMOVED"> </uses-permission> Broadcast Package Removed
<uses-permission android:name="android.permission.BROADCAST_PHONE_ACCOUNT_REGISTRATION"> </uses-permission> Broadcast Phone Account Registration
<uses-permission android:name="android.permission.BROADCAST_SMS"> </uses-permission> Broadcast Sms
<uses-permission android:name="android.permission.BROADCAST_STICKY"> </uses-permission> Broadcast Sticky
<uses-permission android:name="android.permission.BROADCAST_WAP_PUSH"> </uses-permission> Broadcast Wap Push(just like mms)
<uses-permission android:name="android.permission.CACHE_CONTENT"> </uses-permission> Cache Content
<uses-permission android:name="android.permission.CALL_PRIVILEGED"> </uses-permission> Call Privileged
<uses-permission android:name="android.permission.CAMERA_DISABLE_TRANSMIT_LED"> </uses-permission> Camera Disable Transmit Led
<uses-permission android:name="android.permission.CAMERA_SEND_SYSTEM_EVENTS"> </uses-permission> Camera Send System Events
<uses-permission android:name="android.permission.CAPTURE_AUDIO_HOTWORD"> </uses-permission> Capture Audio Hotword
<uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT"> </uses-permission> Capture Audio Output
<uses-permission android:name="android.permission.CAPTURE_SECURE_VIDEO_OUTPUT"> </uses-permission> Capture Secure Video Output
<uses-permission android:name="android.permission.CAPTURE_TV_INPUT"> </uses-permission> Capture Tv Input
<uses-permission android:name="android.permission.CAPTURE_VIDEO_OUTPUT"> </uses-permission> Capture Video Output
<uses-permission android:name="android.permission.CARRIER_FILTER_SMS"> </uses-permission> Carrier Filter Sms
<uses-permission android:name="android.permission.CHANGE_APP_IDLE_STATE"> </uses-permission> Change App Idle State
<uses-permission android:name="android.permission.CHANGE_BACKGROUND_DATA_SETTING"> </uses-permission> Change Background Data Setting
<uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE"> </uses-permission> Change Component Enabled State
<uses-permission android:name="android.permission.CHANGE_CONFIGURATION"> </uses-permission> Change Configuration
<uses-permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST"> </uses-permission> Change Device Idle Temp Whitelist
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"> </uses-permission> Change Network State
<uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE"> </uses-permission> Change Wifi Multicast State
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"> </uses-permission> Change Wifi State
<uses-permission android:name="android.permission.CHANGE_WIMAX_STATE"> </uses-permission> Change Wimax State
<uses-permission android:name="android.permission.CLEAR_APP_CACHE"> </uses-permission> Clear App Cache
<uses-permission android:name="android.permission.CLEAR_APP_GRANTED_URI_PERMISSIONS"> </uses-permission> Clear App Granted Uri Permissions
<uses-permission android:name="android.permission.CLEAR_APP_USER_DATA"> </uses-permission> Clear App User Data
<uses-permission android:name="android.permission.CONFIGURE_DISPLAY_COLOR_TRANSFORM"> </uses-permission> Configure Display Color Transform
<uses-permission android:name="android.permission.CONFIGURE_WIFI_DISPLAY"> </uses-permission> Configure Wifi Display
<uses-permission android:name="android.permission.CONFIRM_FULL_BACKUP"> </uses-permission> Confirm Full Backup
<uses-permission android:name="android.permission.CONNECTIVITY_INTERNAL"> </uses-permission> Connectivity Internal
<uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"> </uses-permission> Control Incall Experience
<uses-permission android:name="android.permission.CONTROL_KEYGUARD"> </uses-permission> Control Keyguard
<uses-permission android:name="android.permission.CONTROL_LOCATION_UPDATES"> </uses-permission> Control Location Updates
<uses-permission android:name="android.permission.CONTROL_VPN"> </uses-permission> Control Vpn
<uses-permission android:name="android.permission.CONTROL_WIFI_DISPLAY"> </uses-permission> Control Wifi Display
<uses-permission android:name="android.permission.COPY_PROTECTED_DATA"> </uses-permission> Copy Protected Data
<uses-permission android:name="android.permission.CREATE_USERS"> </uses-permission> Create Users
<uses-permission android:name="android.permission.CRYPT_KEEPER"> </uses-permission> Crypt Keeper
<uses-permission android:name="android.permission.DELETE_CACHE_FILES"> </uses-permission> Delete Cache Files
<uses-permission android:name="android.permission.DELETE_PACKAGES"> </uses-permission> Delete Packages
<uses-permission android:name="android.permission.DEVICE_POWER"> </uses-permission> Device Power
<uses-permission android:name="android.permission.DIAGNOSTIC"> </uses-permission> Diagnostic
<uses-permission android:name="android.permission.DISABLE_KEYGUARD"> </uses-permission> Disable Keyguard
<uses-permission android:name="android.permission.DISPATCH_NFC_MESSAGE"> </uses-permission> Dispatch Nfc Message
<uses-permission android:name="android.permission.DISPATCH_PROVISIONING_MESSAGE"> </uses-permission> Dispatch Provisioning Message
<uses-permission android:name="android.permission.DOWNLOAD_CACHE_NON_PURGEABLE"> </uses-permission> Download Cache Non Purgeable
<uses-permission android:name="android.permission.DUMP"> </uses-permission> Dump
<uses-permission android:name="android.permission.DVB_DEVICE"> </uses-permission> Dvb Device
<uses-permission android:name="android.permission.EXPAND_STATUS_BAR"> </uses-permission> Expand Status Bar
<uses-permission android:name="android.permission.FACTORY_TEST"> </uses-permission> Factory Test
<uses-permission android:name="android.permission.FILTER_EVENTS"> </uses-permission> Filter Events
<uses-permission android:name="android.permission.FLASHLIGHT"> </uses-permission> Flashlight
<uses-permission android:name="android.permission.FORCE_BACK"> </uses-permission> Force Back
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"> </uses-permission> Force Stop Packages
<uses-permission android:name="android.permission.FRAME_STATS"> </uses-permission> Frame Stats
<uses-permission android:name="android.permission.FREEZE_SCREEN"> </uses-permission> Freeze Screen
<uses-permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"> </uses-permission> Get Accounts Privileged
<uses-permission android:name="android.permission.GET_APP_GRANTED_URI_PERMISSIONS"> </uses-permission> Get App Granted Uri Permissions
<uses-permission android:name="android.permission.GET_APP_OPS_STATS"> </uses-permission> Get App Ops Stats
<uses-permission android:name="android.permission.GET_DETAILED_TASKS"> </uses-permission> Get Detailed Tasks
<uses-permission android:name="android.permission.GET_INTENT_SENDER_INTENT"> </uses-permission> Get Intent Sender Intent
<uses-permission android:name="android.permission.GET_PACKAGE_IMPORTANCE"> </uses-permission> Get Package Importance
<uses-permission android:name="android.permission.GET_PACKAGE_SIZE"> </uses-permission> Get Package Size
<uses-permission android:name="android.permission.GET_PASSWORD"> </uses-permission> Get Password
<uses-permission android:name="android.permission.GET_PROCESS_STATE_AND_OOM_SCORE"> </uses-permission> Get Process State And Oom Score
<uses-permission android:name="android.permission.GET_TASKS"> </uses-permission> Get Tasks
<uses-permission android:name="android.permission.GET_TOP_ACTIVITY_INFO"> </uses-permission> Get Top Activity Info
<uses-permission android:name="android.permission.GLOBAL_SEARCH"> </uses-permission> Global Search
<uses-permission android:name="android.permission.GLOBAL_SEARCH_CONTROL"> </uses-permission> Global Search Control
<uses-permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS"> </uses-permission> Grant Runtime Permissions
<uses-permission android:name="android.permission.HARDWARE_TEST"> </uses-permission> Hardware Test
<uses-permission android:name="android.permission.HDMI_CEC"> </uses-permission> Hdmi Cec
<uses-permission android:name="android.permission.INJECT_EVENTS"> </uses-permission> Inject Events
<uses-permission android:name="android.permission.INSTALL_GRANT_RUNTIME_PERMISSIONS"> </uses-permission> Install Grant Runtime Permissions
<uses-permission android:name="android.permission.INSTALL_LOCATION_PROVIDER"> </uses-permission> Install Location Provider
<uses-permission android:name="android.permission.INSTALL_PACKAGES"> </uses-permission> Install Packages
<uses-permission android:name="android.permission.INTENT_FILTER_VERIFICATION_AGENT"> </uses-permission> Intent Filter Verification Agent
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS"> </uses-permission> Interact Across Users
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"> </uses-permission> Interact Across Users Full
<uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW"> </uses-permission> Internal System Window
<uses-permission android:name="android.permission.INTERNET"> </uses-permission> Internet
<uses-permission android:name="android.permission.INVOKE_CARRIER_SETUP"> </uses-permission> Invoke Carrier Setup
<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES"> </uses-permission> Kill Background Processes
<uses-permission android:name="android.permission.KILL_UID"> </uses-permission> Kill Uid
<uses-permission android:name="android.permission.LAUNCH_TRUST_AGENT_SETTINGS"> </uses-permission> Launch Trust Agent Settings
<uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS"> </uses-permission> Local Mac Address
<uses-permission android:name="android.permission.LOCATION_HARDWARE"> </uses-permission> Location Hardware
<uses-permission android:name="android.permission.LOOP_RADIO"> </uses-permission> Loop Radio
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS"> </uses-permission> Manage Accounts
<uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"> </uses-permission> Manage Activity Stacks
<uses-permission android:name="android.permission.MANAGE_APP_OPS_RESTRICTIONS"> </uses-permission> Manage App Ops Restrictions
<uses-permission android:name="android.permission.MANAGE_APP_TOKENS"> </uses-permission> Manage App Tokens
<uses-permission android:name="android.permission.MANAGE_CA_CERTIFICATES"> </uses-permission> Manage Ca Certificates
<uses-permission android:name="android.permission.MANAGE_DEVICE_ADMINS"> </uses-permission> Manage Device Admins
<uses-permission android:name="android.permission.MANAGE_DOCUMENTS"> </uses-permission> Manage Documents
<uses-permission android:name="android.permission.MANAGE_FINGERPRINT"> </uses-permission> Manage Fingerprint
<uses-permission android:name="android.permission.MANAGE_MEDIA_PROJECTION"> </uses-permission> Manage Media Projection
<uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY"> </uses-permission> Manage Network Policy
<uses-permission android:name="android.permission.MANAGE_NOTIFICATIONS"> </uses-permission> Manage Notifications
<uses-permission android:name="android.permission.MANAGE_PROFILE_AND_DEVICE_OWNERS"> </uses-permission> Manage Profile And Device Owners
<uses-permission android:name="android.permission.MANAGE_SOUND_TRIGGER"> </uses-permission> Manage Sound Trigger
<uses-permission android:name="android.permission.MANAGE_USB"> </uses-permission> Manage Usb
<uses-permission android:name="android.permission.MANAGE_USERS"> </uses-permission> Manage Users
<uses-permission android:name="android.permission.MANAGE_VOICE_KEYPHRASES"> </uses-permission> Manage Voice Keyphrases
<uses-permission android:name="android.permission.MASTER_CLEAR"> </uses-permission> Master Clear
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL"> </uses-permission> Media Content Control
<uses-permission android:name="android.permission.MODIFY_APPWIDGET_BIND_PERMISSIONS"> </uses-permission> Modify Appwidget Bind Permissions
<uses-permission android:name="android.permission.MODIFY_AUDIO_ROUTING"> </uses-permission> Modify Audio Routing
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"> </uses-permission> Modify Audio Settings
<uses-permission android:name="android.permission.MODIFY_CELL_BROADCASTS"> </uses-permission> Modify Cell Broadcasts
<uses-permission android:name="android.permission.MODIFY_DAY_NIGHT_MODE"> </uses-permission> Modify Day Night Mode
<uses-permission android:name="android.permission.MODIFY_NETWORK_ACCOUNTING"> </uses-permission> Modify Network Accounting
<uses-permission android:name="android.permission.MODIFY_PARENTAL_CONTROLS"> </uses-permission> Modify Parental Controls
<uses-permission android:name="android.permission.MODIFY_PHONE_STATE"> </uses-permission> Modify Phone State
<uses-permission android:name="android.permission.MOUNT_FORMAT_FILESYSTEMS"> </uses-permission> Mount Format Filesystems
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"> </uses-permission> Mount Unmount Filesystems
<uses-permission android:name="android.permission.MOVE_PACKAGE"> </uses-permission> Move Package
<uses-permission android:name="android.permission.NET_ADMIN"> </uses-permission> Net Admin
<uses-permission android:name="android.permission.NET_TUNNELING"> </uses-permission> Net Tunneling
<uses-permission android:name="android.permission.NFC"> </uses-permission>Allow access to the NFC reader for Cardboard to use
<uses-permission android:name="android.permission.NFC_HANDOVER_STATUS"> </uses-permission> Nfc Handover Status
<uses-permission android:name="android.permission.NOTIFY_PENDING_SYSTEM_UPDATE"> </uses-permission> Notify Pending System Update
<uses-permission android:name="android.permission.OBSERVE_GRANT_REVOKE_PERMISSIONS"> </uses-permission> Observe Grant Revoke Permissions
<uses-permission android:name="android.permission.OEM_UNLOCK_STATE"> </uses-permission> Oem Unlock State
<uses-permission android:name="android.permission.OVERRIDE_WIFI_CONFIG"> </uses-permission> Override Wifi Config
<uses-permission android:name="android.permission.PACKAGE_USAGE_STATS"> </uses-permission> Package Usage Stats
<uses-permission android:name="android.permission.PACKAGE_VERIFICATION_AGENT"> </uses-permission> Package Verification Agent
<uses-permission android:name="android.permission.PACKET_KEEPALIVE_OFFLOAD"> </uses-permission> Packet Keepalive Offload
<uses-permission android:name="android.permission.PEERS_MAC_ADDRESS"> </uses-permission> Peers Mac Address
<uses-permission android:name="android.permission.PERFORM_CDMA_PROVISIONING"> </uses-permission> Perform Cdma Provisioning
<uses-permission android:name="android.permission.PERFORM_SIM_ACTIVATION"> </uses-permission> Perform Sim Activation
<uses-permission android:name="android.permission.PERSISTENT_ACTIVITY"> </uses-permission> Persistent Activity
<uses-permission android:name="android.permission.PROCESS_CALLLOG_INFO"> </uses-permission> Process Calllog Info
<uses-permission android:name="android.permission.PROCESS_PHONE_ACCOUNT_REGISTRATION"> </uses-permission> Process Phone Account Registration
<uses-permission android:name="android.permission.PROVIDE_TRUST_AGENT"> </uses-permission> Provide Trust Agent
<uses-permission android:name="android.permission.QUERY_DO_NOT_ASK_CREDENTIALS_ON_BOOT"> </uses-permission> Query Do Not Ask Credentials On Boot
<uses-permission android:name="android.permission.READ_BLOCKED_NUMBERS"> </uses-permission> Read Blocked Numbers
<uses-permission android:name="android.permission.READ_DREAM_STATE"> </uses-permission> Read Dream State
<uses-permission android:name="android.permission.READ_FRAME_BUFFER"> </uses-permission> Read Frame Buffer
<uses-permission android:name="android.permission.READ_INPUT_STATE"> </uses-permission> Read Input State
<uses-permission android:name="android.permission.READ_INSTALL_SESSIONS"> </uses-permission> Read Install Sessions
<uses-permission android:name="android.permission.READ_LOGS"> </uses-permission> Read Logs
<uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY"> </uses-permission> Read Network Usage History
<uses-permission android:name="android.permission.READ_OEM_UNLOCK_STATE"> </uses-permission> Read Oem Unlock State
<uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE"> </uses-permission> Read Precise Phone State
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"> </uses-permission> Read Privileged Phone State
<uses-permission android:name="android.permission.READ_PROFILE"> </uses-permission> Read Profile
<uses-permission android:name="android.permission.READ_SEARCH_INDEXABLES"> </uses-permission> Read Search Indexables
<uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> </uses-permission> Read Social Stream
<uses-permission android:name="android.permission.READ_SYNC_SETTINGS"> </uses-permission> Read Sync Settings
<uses-permission android:name="android.permission.READ_SYNC_STATS"> </uses-permission> Read Sync Stats
<uses-permission android:name="android.permission.READ_USER_DICTIONARY"> </uses-permission> Read User Dictionary
<uses-permission android:name="android.permission.READ_WIFI_CREDENTIAL"> </uses-permission> Read Wifi Credential
<uses-permission android:name="android.permission.REAL_GET_TASKS"> </uses-permission> Real Get Tasks
<uses-permission android:name="android.permission.REBOOT"> </uses-permission> Reboot
<uses-permission android:name="android.permission.RECEIVE_BLUETOOTH_MAP"> </uses-permission> Receive Bluetooth Map
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"> </uses-permission> Receive Boot Completed
<uses-permission android:name="android.permission.RECEIVE_DATA_ACTIVITY_CHANGE"> </uses-permission> Receive Data Activity Change
<uses-permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST"> </uses-permission> Receive Emergency Broadcast
<uses-permission android:name="android.permission.RECEIVE_MEDIA_RESOURCE_USAGE"> </uses-permission> Receive Media Resource Usage
<uses-permission android:name="android.permission.RECEIVE_STK_COMMANDS"> </uses-permission> Receive Stk Commands
<uses-permission android:name="android.permission.RECEIVE_WIFI_CREDENTIAL_CHANGE"> </uses-permission> Receive Wifi Credential Change
<uses-permission android:name="android.permission.RECOVERY"> </uses-permission> Recovery
<uses-permission android:name="android.permission.REGISTER_CALL_PROVIDER"> </uses-permission> Register Call Provider
<uses-permission android:name="android.permission.REGISTER_CONNECTION_MANAGER"> </uses-permission> Register Connection Manager
<uses-permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION"> </uses-permission> Register Sim Subscription
<uses-permission android:name="android.permission.REGISTER_WINDOW_MANAGER_LISTENERS"> </uses-permission> Register Window Manager Listeners
<uses-permission android:name="android.permission.REMOTE_AUDIO_PLAYBACK"> </uses-permission> Remote Audio Playback
<uses-permission android:name="android.permission.REMOVE_DRM_CERTIFICATES"> </uses-permission> Remove Drm Certificates
<uses-permission android:name="android.permission.REMOVE_TASKS"> </uses-permission> Remove Tasks
<uses-permission android:name="android.permission.REORDER_TASKS"> </uses-permission> Reorder Tasks
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"> </uses-permission> Request Ignore Battery Optimizations
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES"> </uses-permission> Request Install Packages
<uses-permission android:name="android.permission.RESET_FINGERPRINT_LOCKOUT"> </uses-permission> Reset Fingerprint Lockout
<uses-permission android:name="android.permission.RESET_SHORTCUT_MANAGER_THROTTLING"> </uses-permission> Reset Shortcut Manager Throttling
<uses-permission android:name="android.permission.RESTART_PACKAGES"> </uses-permission> Restart Packages
<uses-permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT"> </uses-permission> Retrieve Window Content
<uses-permission android:name="android.permission.RETRIEVE_WINDOW_TOKEN"> </uses-permission> Retrieve Window Token
<uses-permission android:name="android.permission.REVOKE_RUNTIME_PERMISSIONS"> </uses-permission> Revoke Runtime Permissions
<uses-permission android:name="android.permission.SCORE_NETWORKS"> </uses-permission> Score Networks
<uses-permission android:name="android.permission.SEND_CALL_LOG_CHANGE"> </uses-permission> Send Call Log Change
<uses-permission android:name="android.permission.SEND_DOWNLOAD_COMPLETED_INTENTS"> </uses-permission> Send Download Completed Intents
<uses-permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE"> </uses-permission> Send Respond Via Message
<uses-permission android:name="android.permission.SEND_SMS_NO_CONFIRMATION"> </uses-permission> Send Sms No Confirmation
<uses-permission android:name="android.permission.SERIAL_PORT"> </uses-permission> Serial Port
<uses-permission android:name="android.permission.SET_ACTIVITY_WATCHER"> </uses-permission> Set Activity Watcher
<uses-permission android:name="android.permission.SET_ALWAYS_FINISH"> </uses-permission> Set Always Finish
<uses-permission android:name="android.permission.SET_ANIMATION_SCALE"> </uses-permission> Set Animation Scale
<uses-permission android:name="android.permission.SET_DEBUG_APP"> </uses-permission> Set Debug App
<uses-permission android:name="android.permission.SET_INPUT_CALIBRATION"> </uses-permission> Set Input Calibration
<uses-permission android:name="android.permission.SET_KEYBOARD_LAYOUT"> </uses-permission> Set Keyboard Layout
<uses-permission android:name="android.permission.SET_ORIENTATION"> </uses-permission> Set Orientation
<uses-permission android:name="android.permission.SET_POINTER_SPEED"> </uses-permission> Set Pointer Speed
<uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS"> </uses-permission> Set Preferred Applications
<uses-permission android:name="android.permission.SET_PROCESS_LIMIT"> </uses-permission> Set Process Limit
<uses-permission android:name="android.permission.SET_SCREEN_COMPATIBILITY"> </uses-permission> Set Screen Compatibility
<uses-permission android:name="android.permission.SET_TIME"> </uses-permission> Set Time
<uses-permission android:name="android.permission.SET_TIME_ZONE"> </uses-permission> Set Time Zone
<uses-permission android:name="android.permission.SET_WALLPAPER"> </uses-permission> Set Wallpaper
<uses-permission android:name="android.permission.SET_WALLPAPER_COMPONENT"> </uses-permission> Set Wallpaper Component
<uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"> </uses-permission> Set Wallpaper Hints
<uses-permission android:name="android.permission.SHUTDOWN"> </uses-permission> Shutdown
<uses-permission android:name="android.permission.SIGNAL_PERSISTENT_PROCESSES"> </uses-permission> Signal Persistent Processes
<uses-permission android:name="android.permission.START_ANY_ACTIVITY"> </uses-permission> Start Any Activity
<uses-permission android:name="android.permission.START_PRINT_SERVICE_CONFIG_ACTIVITY"> </uses-permission> Start Print Service Config Activity
<uses-permission android:name="android.permission.START_TASKS_FROM_RECENTS"> </uses-permission> Start Tasks From Recents
<uses-permission android:name="android.permission.STATUS_BAR"> </uses-permission> Status Bar
<uses-permission android:name="android.permission.STATUS_BAR_SERVICE"> </uses-permission> Status Bar Service
<uses-permission android:name="android.permission.STOP_APP_SWITCHES"> </uses-permission> Stop App Switches
<uses-permission android:name="android.permission.STORAGE_INTERNAL"> </uses-permission> Storage Internal
<uses-permission android:name="android.permission.SUBSCRIBED_FEEDS_READ"> </uses-permission> Subscribed Feeds Read
<uses-permission android:name="android.permission.SUBSCRIBED_FEEDS_WRITE"> </uses-permission> Subscribed Feeds Write
<uses-permission android:name="android.permission.SUBSTITUTE_NOTIFICATION_APP_NAME"> </uses-permission> Substitute Notification App Name
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"> </uses-permission> System Alert Window
<uses-permission android:name="android.permission.TABLET_MODE"> </uses-permission> Tablet Mode
<uses-permission android:name="android.permission.TEMPORARY_ENABLE_ACCESSIBILITY"> </uses-permission> Temporary Enable Accessibility
<uses-permission android:name="android.permission.TETHER_PRIVILEGED"> </uses-permission> Tether Privileged
<uses-permission android:name="android.permission.TRANSMIT_IR"> </uses-permission> Transmit Ir
<uses-permission android:name="android.permission.TRUST_LISTENER"> </uses-permission> Trust Listener
<uses-permission android:name="android.permission.TV_INPUT_HARDWARE"> </uses-permission> Tv Input Hardware
<uses-permission android:name="android.permission.TV_VIRTUAL_REMOTE_CONTROLLER"> </uses-permission> Tv Virtual Remote Controller
<uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS"> </uses-permission> Update App Ops Stats
<uses-permission android:name="android.permission.UPDATE_CONFIG"> </uses-permission> Update Config
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS"> </uses-permission> Update Device Stats
<uses-permission android:name="android.permission.UPDATE_LOCK"> </uses-permission> Update Lock
<uses-permission android:name="android.permission.UPDATE_LOCK_TASK_PACKAGES"> </uses-permission> Update Lock Task Packages
<uses-permission android:name="android.permission.USER_ACTIVITY"> </uses-permission> User Activity
<uses-permission android:name="android.permission.USE_CREDENTIALS"> </uses-permission> Use Credentials
<uses-permission android:name="android.permission.VIBRATE"> </uses-permission> Vibrate
<uses-permission android:name="android.permission.WAKE_LOCK"> </uses-permission> Wake Lock
<uses-permission android:name="android.permission.WRITE_APN_SETTINGS"> </uses-permission> Write Apn Settings
<uses-permission android:name="android.permission.WRITE_BLOCKED_NUMBERS"> </uses-permission> Write Blocked Numbers
<uses-permission android:name="android.permission.WRITE_DREAM_STATE"> </uses-permission> Write Dream State
<uses-permission android:name="android.permission.WRITE_GSERVICES"> </uses-permission> Write Gservices
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE"> </uses-permission> Write Media Storage
<uses-permission android:name="android.permission.WRITE_PROFILE"> </uses-permission> Write Profile
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"> </uses-permission> Write Secure Settings
<uses-permission android:name="android.permission.WRITE_SETTINGS"> </uses-permission> Write Settings
<uses-permission android:name="android.permission.WRITE_SMS"> </uses-permission> Write Sms
<uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM"> </uses-permission> Write Social Stream
<uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS"> </uses-permission> Write Sync Settings
<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY"> </uses-permission> Write User Dictionary
please comment if any changes or wrong permission .

12/14/2020

How to create google chart

 google chart is in bar chat, line chart, circle(pie) chart like various view


helpful link is https://www.gstatic.com/charts/loader.js


simple steps,

1) first call https://www.gstatic.com/charts/loader.js

2) in chart load core chart package, there are various package available 

3) pass some data to data variable

4) called object google.visualization.PieChart and method 'draw'




<html lang="en-US">

<body>

<div id="piechart"></div>

<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>


<script>

google.charts.load('current', {'packages':['corechart']});

google.charts.setOnLoadCallback(drawChart);


function drawChart()

{

  var data = google.visualization.arrayToDataTable([

   ['Work', 10], ['Eat', 1], ['TV', 3], ['Gym', 1], ['Sleep', 9] ]);


  var options = {'title':'My Day is planned shown in chart', 'width':550, 'height':400};

  var chart = new google.visualization.PieChart(document.getElementById('piechart'));

  chart.draw(data, options);

}

</script>


</body>

</html>


above google chart is lightweight, easy to load, works on all browser, devices, easy to understand by user and also showing chart indication.

12/13/2020

How to add marker to google map for webpage, mobile page

 This tutorial shows you how to add a simple Google map with a marker to a web page. 

You should knowledge of HTML and CSS, and a little knowledge of JavaScript.

Sample Example for google map

  • Create Html

<!DOCTYPE html>

<html>

  <head>

    <title>Add Map</title>

    <script

      src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBIwzALxUPNbatRBj3Xi1Uhp0fFzwWNBkE&callback=initMap&libraries=&v=weekly"

      defer

    ></script>

    

  </head>

  <body>

    <h3>Sample Google Maps Demo</h3>

    <!--The div element for the map -->

    <div id="map"></div>

  </body>

</html>

  • Create CSS

#map {
  height: 400px;
  /* The height is 400 pixels */
  width: 100%;
  /* The width is the width of the web page */
}

  • Create Javascript

// Initialize and add the map

function initMap() {

  // The location 

  const uluru = { lat: -25.344, lng: 131.036 };

  const map = new google.maps.Map(document.getElementById("map"), {

    zoom: 4,

    center: uluru,

  });

   const marker = new google.maps.Marker({

    position: uluru,

    map: map,

  });

}

  • Follow these steps to get an API key:

  1. Go to the Google Cloud Console.

  2. Create or select a project.

  3. Click Continue to enable the API and any related services.

  4. On the Credentials page, get an API key (and set the API key restrictions).  

  5. To prevent quota theft and secure your API key, see Using API Keys.

  6. (Optional) Enable billing. 

  7. Copy the entire code of this tutorial from this page, to your text editor.

  8. Replace the value of the key parameter in the URL with your own API key (that's the API key that you've just obtained). 

       <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap">

    </script>

Simple Steps - 1) create api 2) add above html, javascript 3) check it on webpage.

still if any issue please comment.


how to get geolocation with latitude and longitude

 ask browser to allow location


function getLocation() {

  if (navigator.geolocation) {

    navigator.geolocation.getCurrentPosition(showPosition);

  } else { 

    x.innerHTML = "Geolocation is not supported by this browser.";

  }

}


using position.coords.latitude & position.coords.longitude we can get exact position in map


useful when adding google map to website or app, also track geolocation

no any other script or file required.


<!DOCTYPE html>

<html>

<body>


<p>Click the button to get your coordinates.</p>


<button onclick="getLocation()">Try It</button>


<p><strong>Note:</strong> The geolocation property is not supported in IE8 and earlier versions.</p>


<p id="demo"></p>


<script>

var x = document.getElementById("demo");


function getLocation() {

  if (navigator.geolocation) {

    navigator.geolocation.getCurrentPosition(showPosition);

  } else { 

    x.innerHTML = "Geolocation is not supported by this browser.";

  }

}


function showPosition(position) {

  x.innerHTML = "Latitude: " + position.coords.latitude + 

  "<br>Longitude: " + position.coords.longitude;

}

</script>


</body>

</html>

Useful links 

1) to get latitude and longitude - https://www.latlong.net/

2) google map API - https://maps.googleapis.com/maps/api/js?key=YOUR_KEY&callback=myMap



An Introduction to the Laravel Framework: What It Is and Why You Should Use It

  If you're a PHP developer looking for a modern, efficient, and powerful framework to build web applications, look no further than Lara...