Permissions.  Applications can protect resources & data with permissions  Applications statically declare permissions  Required of components interacting.

Slides:



Advertisements
Similar presentations
Android Application Development Tutorial. Topics Lecture 6 Overview Programming Tutorial 3: Sending/Receiving SMS Messages.
Advertisements

Application Fundamentals Android Development. Announcements Posting in D2L Tutorials.
Cosc 5/4730 Android Services. What is a service? From android developer web pages: Most confusion about the Service class actually revolves around what.
Android Security. N-Degree of Separation Applications can be thought as composed by Main Functionality Several Non-functional Concerns Security is a non-functional.
The Activity Class 1.  One application component type  Provides a visual interface for a single screen  Typically supports one thing a user can do,
BroadcastReceiver.  Base class for components that receive and react to events  Events are represented as Intent objects  Intents received as parameter.
Application Fundamentals. See: developer.android.com/guide/developing/building/index.html.
Android Permission System
Lecture 27 Exam outline Boxing of primitive types in Java 1.5 Generic types in Java 1.5.
Cosc 5/4730 Android SMS. A note first Depending on the API level, an import changes because of a deprecated API 3 uses – import android.telephony.gsm.SmsManager;
Mobile Programming Pertemuan 6 Presented by Mulyono Poltek NSC Surabaya.
Intent An Intent describes the operation to be performed. Intents are used to start an activity using either of the following methods – Context.startActivity()
@2011 Mihail L. Sichitiu1 Android Introduction Application Fundamentals.
Android Security Enforcement and Refinement. Android Applications --- Example Example of location-sensitive social networking application for mobile phones.
Emerging Platform#4: Android Bina Ramamurthy.  Android is an Operating system.  Android is an emerging platform for mobile devices.  Initially developed.
Chien-Chung Shen Manifest and Activity Chien-Chung Shen
Understanding Android Security Yinshu Wu William Enck, Machigar Ongtang, and PatrickMcDaniel Pennsylvania State University.
CS5103 Software Engineering Lecture 08 Android Development II.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Content Providers & Services.
© Keren Kalif Intro to Android Development Written by Keren Kalif, Edited by Liron Blecher Contains slides from Google I/O presentation.
Software Architecture of Android Yaodong Bi, Ph.D. Department of Computing Sciences University of Scranton.
Android Activities 1. What are Android Activities? Activities are like windows in an Android application An application can have any number of activities.
Cosc 5/4730 Introduction: Threads, Android Activities, and MVC.
Cosc 5/4730 Android Content Providers and Intents.
Data Storage: Part 4 (Content Providers). Content Providers Content providers allow the sharing of data between applications. Inter-process communication.
Android ICC Part II Inter-component communication.
COMP 365 Android Development.  Perform operations in the background  Services do not have a user interface (UI)  Can run without appearing on screen.
This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit
Mobile Application Development using Android Lecture 2.
CS378 - Mobile Computing Intents.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Recitation.
Overview of Android Application Development
CS378 - Mobile Computing Intents. Allow us to use applications and components that are part of Android System – start activities – start services – deliver.
COMP 365 Android Development.  Every android application has a manifest file called AndroidManifest.xml  Found in the Project folder  Contains critical.
Configuring Android Development Environment Nilesh Singh.
Telephony and sms API’S. Objective Telephony ➤ Initiating phone calls ➤ Reading the phone, network, data connectivity, and SIM states ➤ Monitoring changes.
Activity Android Club Agenda Hello Android application Application components Activity StartActivity.
Mobile Application Security on Android Originally presented by Jesse Burns at Black Hat
Applications with Multiple Activities. Most applications will have more than one activity. The main activity is started when the application is started.
Android Permissions Demystified
Access Modifiers Control which classes use a feature Only class-level variables may be controlled by access modifiers Modifiers 1. public 2. protected.
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Android Programming Steve Ko Computer Sciences and Engineering University at Buffalo.
Lecture 2: Android Concepts
Technische Universität München Services, IPC and RPC Gökhan Yilmaz, Benedikt Brück.
Intents and Broadcast Receivers Dr. David Janzen Except as otherwise noted, the content of this presentation is licensed under the Creative Commons Attribution.
Lecture 9: Programming Beans Topics: Bean Android SDK Date: Mar 29, 2016.
Services. What is a Service? A Service is not a separate process. A Service is not a thread. A Service itself is actually very simple, providing two main.
The Ingredients of Android Applications. A simple application in a process In a classical programming environment, the OS would load the program code.
CS371m - Mobile Computing Intents 1. Allow us to use applications and components that are already part of Android System – start activities – start services.
Lab7 – Appendix.
Permissions.
Intents and Broadcast Receivers
Android Mobile Application Development
Lecture 2: Android Concepts
Understanding Android Security
CS499 – Mobile Application Development
Mobile Programming Lecture 2
Lecture 2 Zablon Ochomo Android Programming Lecture 2 Zablon Ochomo
Examples of Classes & Objects
Android Runtime – Dalvik VM
Lecture 7: Android Services
Android Programming Lecture 9
CS371m - Mobile Computing Intents.
Application Fundamentals
Activities and Intents
Understanding Android Security
Android Developer Fundamentals V2 Lesson 5
Emerging Platform#3 Android & Programming an App
Application Fundamentals
Lecture 2: Android Concepts
Presentation transcript:

Permissions

 Applications can protect resources & data with permissions  Applications statically declare permissions  Required of components interacting with them  Required by components they interact with  Android requires users for consent to specific permissions when application is installed

 Applications can define permissions in an AndroidManifest.xml file <permission android:name="android.permission.VIBRATE” … />

 Applications can require components interacting with them to have a specified permission by setting android:permission attribute in AndroidManifest.xml  By default, permissions apply to all components hosted by the application

 AndroidManifest.xml …

 Individual components can set their own permissions  These override application-level permissions

 Restricts which components can start the associated activity  Checked during  Context.startActivity()  Activity.startActivityForResult()  Throws SecurityException on permissions failure

 Restricts which components can start or bind to the associated service  Checked during  Context.startService()  Context.stopService()  Context.bindService()  Throws SecurityException on permissions failure

 Restricts which components can send broadcasts to the associated receiver  Checked after Context.sendBroadcast() returns  Doesn’t throw SecurityException on permissions failure

 Restricts which components can read and write the data in a ContentProvider  Will discuss in more detail later, when we cover ContentProviders

 Applications specify permissions they use … <uses-permission android:name="android.permission.VIBRATE”> …  User must accept permissions before the package can be installed

 Who can receive Broadcast Intents  Context.sendBroadcast()  Can a calling process access a Service  Context.checkCallingPermission()  Does a given processes have specific permissions  Context.checkPermission(String, int, int)  Does a given application have specific permissions  PackageManager.checkPermission(String, String)  Any others to be discussed in later lectures