SlideShare a Scribd company logo
App  Permissions  
-‐‑‒  M  Preview  -‐‑‒
What's  New  in  Android  (I/O  2015)
About  Me
• Shinobu  Okano  
• @operandoOS  
• Mercari,  Inc.  
• Android  Engineer  
• Garum

https://github.com/operando/Garum
App  Permissions  
Android  M
Android  M  Permissions
https://www.youtube.com/watch?v=f17qe9vZ8RM
Permissions
http://developer.android.com/preview/features/
runtime-‐‑‒permissions.html
Google  I/O  2015    
新しいパミッションモデルの超訳
http://www.taosoftware.co.jp/blog/2015/06/google-‐‑‒i-‐‑‒
o-‐‑‒2015-‐‑‒new-‐‑‒permission_̲model.html
だいたい  
この3つ読めば、問題ない
App  Permissions?
App  Permissions?
New  App  Permissions  Model  
App  Permissions?
“user  does  not  have  to  grant  any  
permissions  when  they    
install  or  upgrade  the  app.  “
App  Permissions?
“Instead,  the  app  requests  
permissions  as  it  needs  them,  
  and  the  system  shows  a  dialog  to  
the  user  asking  for  the  permission.  “
App  Permissions?
App  Permissions?
“If  an  app  supports  the  new  
permissions  model,  it  can  still  be  
installed  and  run  on  devices  running  
older  versions  of  Android,  using  the  old  
permissions  model  on  those  devices.“
App  Permissions?
“Users  can  revoke  an  app's  
permissions  at  any  time.“
Permissions  are  Revocable
App  Permissions?
“On  devices  running  the  M  Developer  Preview,  a  user  can  turn  off  permissions  for  any  app  
(including  legacy  apps)  from  the  app's  Settings  screen.  If  a  user  turns  off  permissions  for  
a  legacy  app,  the  system  silently  disables  the  appropriate  functionality.  When  the  app  
attempts  to  perform  an  operation  that  requires  that  permission,  the  operation  will  not  
necessarily  cause  an  exception.  Instead,  it  might  return  an  empty  data  set,  signal  an  
error,  or  otherwise  exhibit  unexpected  behavior.  For  example,  if  you  query  a  calendar  
without  permission,  the  method  returns  an  empty  data  set.“
Forwards  and  backwards  compatibility
App  Permissions?
“On  devices  running  the  M  Developer  Preview,  a  user  can  turn  off  permissions  for  any  app  
(including  legacy  apps)  from  the  app's  Settings  screen.  If  a  user  turns  off  permissions  for  
a  legacy  app,  the  system  silently  disables  the  appropriate  functionality.  When  the  app  
attempts  to  perform  an  operation  that  requires  that  permission,  the  operation  will  not  
necessarily  cause  an  exception.  Instead,  it  might  return  an  empty  data  set,  signal  an  
error,  or  otherwise  exhibit  unexpected  behavior.  For  example,  if  you  query  a  calendar  
without  permission,  the  method  returns  an  empty  data  set.“
Forwards  and  backwards  compatibility
⻑⾧長い…
App  Permissions?
“On  devices  running  the  M  Developer  Preview,  a  user  can  turn  off  permissions  for  any  app  
(including  legacy  apps)  from  the  app's  Settings  screen.  If  a  user  turns  off  permissions  for  
a  legacy  app,  the  system  silently  disables  the  appropriate  functionality.  When  the  app  
attempts  to  perform  an  operation  that  requires  that  permission,  the  operation  will  not  
necessarily  cause  an  exception.  Instead,  it  might  return  an  empty  data  set,  signal  an  
error,  or  otherwise  exhibit  unexpected  behavior.  For  example,  if  you  query  a  calendar  
without  permission,  the  method  returns  an  empty  data  set.“
Forwards  and  backwards  compatibility
App  Permissionsに対応してないアプリで権限をOFFした時の話。  
例例外起きない。  
空データ返ってくる。
App  Permissions?
つまり…
iOS  like  Permission  Model
許可が必要な機能
• Location  
• Camera  
• Microphone  
• Phone  
• SMS  
• Contacts  
• Calendar  
• Sensor
許可が必要な機能
e.g.  
android.permission.READ_̲PHONE_̲STATE    
android.permission.CAMERA"  
How  to  Permissions
How  to  Permissions
• Check  
• Request  
• Handling
How  to  Permissions
• Check  
• Request  
• Handling
Check  permissions
String[] PERMISSIONS = new String[]{Manifest.permission.READ_PHONE_STATE};
if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
requestPermissions(PERMISSIONS,PERMISSIONS_REQUEST_READ_PHONE_STATE);
} else {
showLineNumber();
}
Check  permissions
String[] PERMISSIONS = new String[]{Manifest.permission.READ_PHONE_STATE};
if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
requestPermissions(PERMISSIONS,PERMISSIONS_REQUEST_READ_PHONE_STATE);
} else {
showLineNumber();
}
Check  permissions
checkSelfPermission
指定Permissionが許可されているかどうか
String[] PERMISSIONS = new String[]{Manifest.permission.READ_PHONE_STATE};
if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
requestPermissions(PERMISSIONS,PERMISSIONS_REQUEST_READ_PHONE_STATE);
} else {
showLineNumber();
}
Check  permissions
checkSelfPermission
ちなみに、これ  
⼀一つのPermissionしか指定できない…
if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED
&&
checkSelfPermission(Manifest.permission.CAMERA)
!= PackageManager.PERMISSION_GRANTED
&&
checkSelfPermission(Manifest.permission. READ_CALL_LOG)
!= PackageManager.PERMISSION_GRANTED
…
Check  permissions
checkSelfPermission
(´́・ω・`)
public abstract class PermissionUtil {
/**
* Returns true if the Activity has access to all given permissions.
* Always returns true on platforms below M.
*
* @see Activity#checkSelfPermission(String)
*/
public static boolean hasSelfPermission(Activity activity, String[] permissions) {
if (!isMNC()) {
return true;
}
for (String permission : permissions) {
if (activity.checkSelfPermission(permission) != PackageManager.PERMISSION_GRANTED) {
return false;
}
}
return true;
}
public static boolean isMNC() {
/*
TODO: In the Android M Preview release, checking if the platform is M is done through
the codename, not the version code. Once the API has been finalised, the following check
should be used: */
// return Build.VERSION.SDK_INT == Build.VERSION_CODES.MNC
return "MNC".equals(Build.VERSION.CODENAME);
}
}
https://github.com/googlesamples/android-RuntimePermissions
Sample  CodeはUtilクラス作ってる
How  to  Permissions
• Check  
• Request  
• Handling
String[] PERMISSIONS = new String[]{Manifest.permission.READ_PHONE_STATE};
if (checkSelfPermission(Manifest.permission.READ_PHONE_STATE)
!= PackageManager.PERMISSION_GRANTED) {
requestPermissions(PERMISSIONS,PERMISSIONS_REQUEST_READ_PHONE_STATE);
} else {
showLineNumber();
}
Request  permissions
requestPermissions
指定Permissionの権限(許可)を求める
How  to  Permissions
• Check  
• Request  
• Handling
Handle  the    
permissions  request  response
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (MY_PERMISSIONS_REQUEST_READ_PHONE_STATE == requestCode) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
showLineNumber();
Toast.makeText(this, "Phone Permission OK", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Phone Permission NG", Toast.LENGTH_SHORT).show();
}
}
}
private void showLineNumber() {
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
Toast.makeText(this, telephonyManager.getLine1Number(), Toast.LENGTH_SHORT).show();
}
Handle  the    
permissions  request  response
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (MY_PERMISSIONS_REQUEST_READ_PHONE_STATE == requestCode) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
showLineNumber();
Toast.makeText(this, "Phone Permission OK", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Phone Permission NG", Toast.LENGTH_SHORT).show();
}
}
}
private void showLineNumber() {
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
Toast.makeText(this, telephonyManager.getLine1Number(), Toast.LENGTH_SHORT).show();
}
Handle  the    
permissions  request  response
onRequestPermissionResult
Permissionの許可・否許可の結果が返される  
結果によって処理理を分ける
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (MY_PERMISSIONS_REQUEST_READ_PHONE_STATE == requestCode) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
showLineNumber();
Toast.makeText(this, "Phone Permission OK", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Phone Permission NG", Toast.LENGTH_SHORT).show();
}
}
}
private void showLineNumber() {
TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
Toast.makeText(this, telephonyManager.getLine1Number(), Toast.LENGTH_SHORT).show();
}
Handle  the    
permissions  request  response
onRequestPermissionResult
Permissionが許可されたら  
権限が必要なAPIへアクセスする
Request  from  Fragment
ほとんど同じ
Sample  Code
android-‐‑‒RuntimePermissions
https://github.com/googlesamples/android-
RuntimePermissions
• Only  ask  for  permissions  you  need  
• Don't  overwhelm  the  user  
• Explain  why  you  need  permissions
Best  Practices
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
意外とアプリ落落ちない
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
意外とアプリ落落ちない
Forwards  and  backwards  compatibility
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
ただ、サービスへの影響は  
でかい
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
ユーザさんの声  
カメラが起動しません  
とにかく動きません
App  Permissions対応してないアプリ  
Android  M  Previewで動かした
Explain  why  you  need  permissions  
これ⼤大事
uses-‐‑‒permission-‐‑‒sdkに書かないで  
Permission  Requestしたらどうなるのか??
uses-‐‑‒permission-‐‑‒sdkに書かないで  
Permission  Requestしたらどうなるのか??
Permission  RequestのDialogが出なかった。  
権限は否許可されたことになって  
onRequestPermissionResultに返ってくる。  
例例外とかにはならない。
Permissionの許可・否許可って  
どこで管理理されてるの??
Permissionの許可・否許可って  
どこで管理理されてるの??
/data/system/users/{userId}/runtime-‐‑‒permissions.xml
Permissionの許可・否許可って  
どこで管理理されてるの??
/data/system/users/{userId}/runtime-‐‑‒permissions.xml
<pkg name="com.os.operando.m_preview_sample">
<item name="android.permission.READ_PHONE_STATE" granted="true" flags="0" />
<item name="android.permission.CAMERA" granted="false" flags="0" />
</pkg>
Permissionの許可・否許可って  
どこで管理理されてるの??
/data/system/users/{userId}/runtime-‐‑‒permissions.xml
/data/system/users/{userId}配下には  
各ユーザの設定ファイル等がある。  
Settingsのファイルとかウィジットの位置とか⾊色々。
Permissionの許可・否許可って  
どこで管理理されてるの??
/data/system/users/{userId}/runtime-‐‑‒permissions.xml
ここに配置されてるからマルチユーザ意識識してる。  
マルチユーザでは、ユーザごとにPermissionの設定を持つ…はず
Permissionの許可・否許可って  
どこで管理理されてるの??
Class的には、PackageManagerが⾊色々管理理してる。  
http://tools.oesf.biz/android-‐‑‒MNC/xref/com/android/server/pm/
adb  shellから権限を変更更できる??
adb  shellから権限を変更更できる??
$  adb  shell  pm  grant  <package_̲name>  <permission_̲name>  
$  adb  shell  pm  revoke  <package_̲name>  <permission_̲name>
adb  shellから権限を変更更できる??
動かない…
Permissionを要求するAPI調べたい
Permissionを要求するAPI調べたい
Android  Studio  1.3から  
Permissionを要求するAPIには注釈が出る??  


Lintでもチェックできる??  
※検証してない…
App  Ops  
Android  4.3
App  Ops
App  Permission  Manager
App  Permision  =  App  Ops
?
App  Permision  ≠  App  Ops
?
App  Permision  
||  
Renewal  App  Ops
!!
※推測
Permission  Manager
Legacy??
まとめ
• とにかく既存のアプリをM  Previewで動かしてみ??  
• 正式にAndroid  M出たら、すぐ対応しないとダメそう  
• とにかく偉い⼈人に、今からApp  Permissionsの説明しよう  
• ユーザが混乱しないために、サービスに対する影響範囲とか
問い合わせ等の対応策は、今から考えておいた⽅方がいい
Thank  you

More Related Content

PDF
Android Wear-What's new in android
Hiroshi Hashimoto
 
PDF
まったりAndroid framework code reading #1
Shinobu Okano
 
PDF
例の縛るやつ(Data binding)
shinnosuke kugimiya
 
ODP
Android permission system
Shivang Goel
 
ODP
Android(1)
Nikola Milosevic
 
ODP
Android permission system
Shivang Goel
 
PDF
Web Services and Android - OSSPAC 2009
sullis
 
PPTX
Tips dan Third Party Library untuk Android - Part 1
Ibnu Sina Wardy
 
Android Wear-What's new in android
Hiroshi Hashimoto
 
まったりAndroid framework code reading #1
Shinobu Okano
 
例の縛るやつ(Data binding)
shinnosuke kugimiya
 
Android permission system
Shivang Goel
 
Android(1)
Nikola Milosevic
 
Android permission system
Shivang Goel
 
Web Services and Android - OSSPAC 2009
sullis
 
Tips dan Third Party Library untuk Android - Part 1
Ibnu Sina Wardy
 

Viewers also liked (20)

PPT
Sandbox Introduction
msimkin
 
ODP
Android training day 4
Vivek Bhusal
 
PPTX
Security threats in Android OS + App Permissions
Hariharan Ganesan
 
PDF
Anatomizing online payment systems: hack to shop
Abhinav Mishra
 
PPTX
Android secuirty permission - upload
Bin Yang
 
PDF
Android 6.0 permission change
彥彬 洪
 
PPTX
Android AsyncTask Tutorial
Perfect APK
 
ODP
Json Tutorial
Napendra Singh
 
PDF
Basic Android Push Notification
Chaiyasit Tayabovorn
 
PDF
Android new permission model
Takuji Nishibayashi
 
PPTX
JSON overview and demo
Flatiron School
 
PDF
Simple JSON parser
Dongjun Lee
 
PDF
Android webservices
Krazy Koder
 
ODP
Android porting for dummies @droidconin 2011
pundiramit
 
PPTX
Android json parser tutorial – example
Rajat Ghai
 
PDF
Android security
Krazy Koder
 
PDF
Screenshots Test spoon + espresso
Shinobu Okano
 
PPTX
Android - Bluetooth
Arthur Emanuel
 
PDF
Android Security Development - Part 2: Malicious Android App Dynamic Analyzi...
Cheng-Yi Yu
 
PDF
Securing android applications
Jose Manuel Ortega Candel
 
Sandbox Introduction
msimkin
 
Android training day 4
Vivek Bhusal
 
Security threats in Android OS + App Permissions
Hariharan Ganesan
 
Anatomizing online payment systems: hack to shop
Abhinav Mishra
 
Android secuirty permission - upload
Bin Yang
 
Android 6.0 permission change
彥彬 洪
 
Android AsyncTask Tutorial
Perfect APK
 
Json Tutorial
Napendra Singh
 
Basic Android Push Notification
Chaiyasit Tayabovorn
 
Android new permission model
Takuji Nishibayashi
 
JSON overview and demo
Flatiron School
 
Simple JSON parser
Dongjun Lee
 
Android webservices
Krazy Koder
 
Android porting for dummies @droidconin 2011
pundiramit
 
Android json parser tutorial – example
Rajat Ghai
 
Android security
Krazy Koder
 
Screenshots Test spoon + espresso
Shinobu Okano
 
Android - Bluetooth
Arthur Emanuel
 
Android Security Development - Part 2: Malicious Android App Dynamic Analyzi...
Cheng-Yi Yu
 
Securing android applications
Jose Manuel Ortega Candel
 
Ad

Similar to App Permissions (20)

PDF
Permissions
A Selim Salman
 
PDF
Runtime permissions handling with easy permissions
Ernest Saidu Kamara
 
PDF
Android_Nougats_security_issues_and_solutions.pdf
Talha Naqash
 
PDF
Android RuntimePermissionsExtended
Nebojša Vukšić
 
PDF
Unit 3 Android Permission Model.pdf Android Permission Model
ChatanBawankar
 
PDF
Android marshmallow permission 対応
Shun Nakahara
 
PDF
Android M - Runtime Permissions | Getting ready for Marshmallow
Umair Vatao
 
PPTX
PiRAMA intro
Varun MC
 
PDF
Android Security
Mehrnaz Amoon
 
PDF
DEFCON 18- These Aren't the Permissions You're Looking For
Michael Scovetta
 
PDF
Android forwork
Ken Yee
 
PDF
Ndss12 woodpecker
Комсс Файквэе
 
PDF
Systematic Detection of Capability Leaks in Stock Android Smartphones
Michael Scovetta
 
PDF
Android Application Security from consumer and developer perspectives
Ayoma Wijethunga
 
PDF
A Framework for Providing Selective Permissions to Android Applications
IOSR Journals
 
PPTX
What's new in android jakarta gdg (2015-08-26)
Google
 
PPTX
Permission in Android Security: Threats and solution
Tandhy Simanjuntak
 
PDF
Securing Android
Marakana Inc.
 
PPT
Android Security
Suminda Gunawardhana
 
PPTX
Android Security
Arqum Ahmad
 
Permissions
A Selim Salman
 
Runtime permissions handling with easy permissions
Ernest Saidu Kamara
 
Android_Nougats_security_issues_and_solutions.pdf
Talha Naqash
 
Android RuntimePermissionsExtended
Nebojša Vukšić
 
Unit 3 Android Permission Model.pdf Android Permission Model
ChatanBawankar
 
Android marshmallow permission 対応
Shun Nakahara
 
Android M - Runtime Permissions | Getting ready for Marshmallow
Umair Vatao
 
PiRAMA intro
Varun MC
 
Android Security
Mehrnaz Amoon
 
DEFCON 18- These Aren't the Permissions You're Looking For
Michael Scovetta
 
Android forwork
Ken Yee
 
Ndss12 woodpecker
Комсс Файквэе
 
Systematic Detection of Capability Leaks in Stock Android Smartphones
Michael Scovetta
 
Android Application Security from consumer and developer perspectives
Ayoma Wijethunga
 
A Framework for Providing Selective Permissions to Android Applications
IOSR Journals
 
What's new in android jakarta gdg (2015-08-26)
Google
 
Permission in Android Security: Threats and solution
Tandhy Simanjuntak
 
Securing Android
Marakana Inc.
 
Android Security
Suminda Gunawardhana
 
Android Security
Arqum Ahmad
 
Ad

More from Shinobu Okano (20)

PDF
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
Shinobu Okano
 
PDF
Kotlinでマッチョする話
Shinobu Okano
 
PDF
Android Framework Code Readingのしおり ver 1.2
Shinobu Okano
 
PDF
まったりAndroid Framework Code Reading #4
Shinobu Okano
 
PDF
Lightweight-Stream-APIのあるAndroidアプリ開発
Shinobu Okano
 
PDF
shinobu.apk #3
Shinobu Okano
 
PDF
Android + JSON-RPC
Shinobu Okano
 
PDF
Inside Android N
Shinobu Okano
 
PDF
Gradle PluginとCIと俺
Shinobu Okano
 
PDF
shinobu.apk #2
Shinobu Okano
 
PDF
まったりAndroid Framework Code Reading #3
Shinobu Okano
 
PDF
Android Framework Code Readingのしおり ver 1.1
Shinobu Okano
 
PDF
Kotlinにお触り
Shinobu Okano
 
PDF
DroidKaigiアプリをSpoonで全画面スクショするぞい\(^o^)/
Shinobu Okano
 
PDF
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Shinobu Okano
 
PDF
ChromeとAndroidの過去・現在・未来
Shinobu Okano
 
PDF
Android Dev Tools Knowledge
Shinobu Okano
 
PDF
shinobu.apk #1
Shinobu Okano
 
PDF
ChromeとAndroidの 過去・現在・未来 ver 0.1
Shinobu Okano
 
PDF
5分で資料作ってSlideShareにアップロードする錬金術
Shinobu Okano
 
OnActivityResult - おまえら!もうonActivityResultでswitchとif書く時代は終わりだぞ!
Shinobu Okano
 
Kotlinでマッチョする話
Shinobu Okano
 
Android Framework Code Readingのしおり ver 1.2
Shinobu Okano
 
まったりAndroid Framework Code Reading #4
Shinobu Okano
 
Lightweight-Stream-APIのあるAndroidアプリ開発
Shinobu Okano
 
shinobu.apk #3
Shinobu Okano
 
Android + JSON-RPC
Shinobu Okano
 
Inside Android N
Shinobu Okano
 
Gradle PluginとCIと俺
Shinobu Okano
 
shinobu.apk #2
Shinobu Okano
 
まったりAndroid Framework Code Reading #3
Shinobu Okano
 
Android Framework Code Readingのしおり ver 1.1
Shinobu Okano
 
Kotlinにお触り
Shinobu Okano
 
DroidKaigiアプリをSpoonで全画面スクショするぞい\(^o^)/
Shinobu Okano
 
Gradle PluginとTwitterとズン ドコ キ・ヨ・シ!
Shinobu Okano
 
ChromeとAndroidの過去・現在・未来
Shinobu Okano
 
Android Dev Tools Knowledge
Shinobu Okano
 
shinobu.apk #1
Shinobu Okano
 
ChromeとAndroidの 過去・現在・未来 ver 0.1
Shinobu Okano
 
5分で資料作ってSlideShareにアップロードする錬金術
Shinobu Okano
 

Recently uploaded (20)

PDF
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PPTX
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
PDF
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
PDF
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
PDF
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PPTX
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PPTX
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
PPTX
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
PDF
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PDF
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Automating ArcGIS Content Discovery with FME: A Real World Use Case
Safe Software
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
AI in Daily Life: How Artificial Intelligence Helps Us Every Day
vanshrpatil7
 
Presentation about Hardware and Software in Computer
snehamodhawadiya
 
Get More from Fiori Automation - What’s New, What Works, and What’s Next.pdf
Precisely
 
Trying to figure out MCP by actually building an app from scratch with open s...
Julien SIMON
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
Agile Chennai 18-19 July 2025 | Emerging patterns in Agentic AI by Bharani Su...
AgileNetwork
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
cloud computing vai.pptx for the project
vaibhavdobariyal79
 
Introduction to Flutter by Ayush Desai.pptx
ayushdesai204
 
How Open Source Changed My Career by abdelrahman ismail
a0m0rajab1
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
SparkLabs Primer on Artificial Intelligence 2025
SparkLabs Group
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 

App Permissions