Is it possible to get notified on every 'Photos' access? - ios

I'm trying to restrict access to iOS photo album from anywhere, or at least get notified when an app tries to access the photo album.
can it be done?
(private api is also accepted)

Related

IOS photos privacy and image upload process

I am an iPhone user and typically, when you want to upload a photo to an app, there are three steps:first, the app checks whether it has permission to access albums and if it does not ,it will ask you to give permission. Then, you will be presented with an interface from which you can select a photo from the album, and finally, you press a button to upload the selected photo to the app. Previously, I thought the app can only access the photo that the user selects, but then I saw this answer:
https://apple.stackexchange.com/questions/107404/is-it-safe-to-allow-apps-to-access-your-photos
which says: "When you give access to an app to photos...it can read all your photos on the device in an unencrypted form." "For example, once you give permission, iOS apps for popular services like Dropbox, Facebook, Flickr and Google+ can upload all your photos to their services. With iOS 7, these apps can also be allowed to do it in the background (when you're not actively running the app). Most users wouldn't even actively know which photos are being uploaded and when."
Millions of people are using ios system and many photos in the albums are private, including but are not limited to images of having sex, images of getting drunk, etc. so I think the most appropriate design is to let the app only access the photos that users selected, not all the photos on the phone. And I think a lot of users, like me, believe that when you give an app permission to access the album, it can only access the photo selected by users, not every photos on the device.
Since I'm a programmer(but not an ios programmer), I take a look at the ios documentation, and I found a class called UIImagePickerController. I believe it is through this class that the app gets a selected image from the user, so it seems to me that an app can only access the selected image. But on stackoverflow I also found an answer about how to select all photos from the device: IOS Photos framework
So my question is, if you give an app permission to access the album, can it only access the photo users select from UIImagePickerController, or every photo on the device?
Once a user grants permission to access the photo library, that iOS app has complete access to every photo in the user's photo library. The permission is not for a specific photo. And UIImagePickerController is only a graphical means to allow the user to select an image. There are APIs that allow the app to access any photo without user interaction. And all of those APIs are covered by the one single permission to allow access to the photo library.
#rmaddy is correct that the user grants permission to access the entire photo library on the user's device. However, note that iPhone users have the option of hiding photos by viewing the photo and tapping the share button (Tap share and select Hide.) See Apple support article .

Is It possible to get permission for photo deletion when the application is installed

I am deleting pictures from the Photo Library using Photo Framework. When I try to delete a photo it asks for permission. Is it possible that I could get permission from the user when the app is installed?
No -- Apple asks for permission on your behalf when you call an API that requires it.

UIImagePickerController needs access to photos in iOS6?

I normally use the ALAssets library to access photos and display them, but I wanted to provide the user with an alternative in case they didn't feel comfortable giving access to location data. I installed the UIImagePicker, and while it still works fine on iOS5, I noticed on iOS6, when I shut off access to the photos in my app, I get "This app does have access to your photos or videos". Does the UIImagePickerController no long allow non disputed access to the photos?
It doesn't matter which route you take to access the photos, if the user has denied access then none of the options will be permitted to access the photos. The authorisation messages may be a little misleading but the same permissions apply to both access methods.

iOS 6 - Can't gain access to photos?

http://developer.apple.com/library/ios/#releasenotes/General/WhatsNewIniPhoneOS/Articles/iOS6.html
In there it says "For the photo library, the existing interface supports the app being denied access." Does it mean that there is no way for the app to ask the user permission to access his photos? He'll need to manualy go to settings -> privacy -> Photos and toggle my app?
If you are using ALAssets to get access to photo library, for the first time system will ask user if he want's to share photos to your app. If user taps "Allow" - everything will be ok, otherwise, user should go to the preferences and allow it manually when he wants.
Hope it helped
No, that not true. iOS will ask user for persmission when he first time accesses his photos from your app.

can i access a directory list on mobile devices using Trigger.io?

I want access to the file system to get a list of the photos on the device so as to be able to display them in my app.
I don't see a method in the API providing that information. Is there a way of getting at it?
We don't have an API method to list all the photos taken via your app, but you do have options for how to do that yourself.
Firstly, when doing forge.file.getImage, you can save the file objects for later use - in forge.prefs, for example, which does have a list keys method.
Or, if the photos are saved to the gallery, you could use the source: "gallery" argument to getImage, which would let the user browser through the available photos and select one.

Resources