IOS : log of GPS access - ios

Hey guys I'm curious to see if there is a way to access or find out when an app uses gps. To be specific, in the new iMessage update there is a way to always send your location to someone Indefinitely but you can never know when that person is actually looking at your location. So is there any information about this in core location or is it not possible to obtain?
In other words: Can I see when my stalker is looking at my location?

You can enable in the ios settings menu that whenever an (any) application uses GPS, a violett arrow symbol is displayed in the status bar of the phone (top most, near the battery symbol) Enable via Settings->DataProtection->LocationServices->Sytem Services->Enable Status Bar Symbol
Further there is a menu "Settings->DataProtection->LocationServices"
which list all Apps that use GPS. You can disable the location service for each app separately. Look if you find there under "System services" an entry for iMessage.
Of course you cannot see whether a person on a remote device reads your messages, if that App does not support a "messages was read" feature.
So you can try to disab

Related

Apple disallowing background location tracking which is critical to business use case

We have an app that tracks riders in the field and as per their current location and some other parameters assign them deliveries. For this, even when the user is not currently using the app, background mode or device locked, we need to keep track of their location after every x seconds.
Now, we have explained the complete business use case to Apple but they keep coming back with the same response:
Thank you for information. We still need a demo video that shows a
“Background Location” feature (Such as: turn-by-turn navigation,
bread-crumbing) when the app runs in the background.
We still do not see a “Background Location” feature (Such as:
turn-by-turn navigation, bread-crumbing) within your app in the demo
video your provided. If the app does not have this feature, please
kindly use the foreground location instead. please remove the
“location” setting from the UIBackgroundModes key if your app does not
require persistent real-time location updates. You may wish to use the
significant-change location service or the region monitoring location
service if persistent real-time location updates are not required for
your app features.
I wonder how does Uber and other ride sharing/location based apps go around this app for their drivers
You haven't really asked a question above (likely why someone downvoted). You've mostly just posted a complaint about Apple's review process. You've not explained why it's critical to get it every few seconds. And you haven't mentioned why Apple's suggestions don't work/aren't good enough.
Here are some general points around the area you have mentioned that should be useful
Background location:
If you want to allow your app users to close your app, you can use "significant-change location service" to allow your app to detect when the device has moved a lot, in a much more battery efficient way. You get ~10 seconds to ping a server and restart the request for the next time. Apple mentioned this in their response to you, please check it out: https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/LocationAwarenessPG/CoreLocation/CoreLocation.html
"I wonder how does Uber and other ride sharing/location":
They don't do what you are trying to do first of all, they encourage their drivers to keep the app open at all times for optimal performance. Again Apple mentioned this in their response. Your app is not providing any use to the app user while in the background and tracking location. So either keep the app open and track location (How to prevent screen lock on my application with swift on iOS) or, rely on significant change location events in the background
Again as Apple said in their response, if 1 or 2 above doesn't address your needs (likely they do), you need to implement a feature such as turn by turn directions in the background, in order to justify why you need this data. Users also need the ability to turn this off, so that it can't be abused by the developers.
Apple doesn't allow apps to just track whatever they want due to privacy issues. There is no way to get around this, you'll have to do one of the above.

How to have my accessibility app overlay other apps on iOS?

I'm working on an accessibility app for a client and he needs it to be able to have it on top of other apps. It takes a small area and can be moved easily.
Is there an app permission or config setting to do this?
UPDATE:
An iPad owner sent me a screenshot showing a chat app floating on top of another app.
No, its is not possible because apple does not even give you permission to show you wallpaper too... if it does have given that feature then any app could have a possible access to some some secure data situationally.
e.g: You are using payment gateway in an app now another app start running as an overlay over the existing app which means having a snap shot of the previous app as a background of your current app. Hence privacy breaching. Hence apple will not approve of something like that, hence no feature like that.
Hope this will help you to understand more clearly.

Is it possible to customize the Bluetooth message when the alert first show up in iOS

I am writing an app which uses bluetooth to send data. The first time the call is made an alert pops which says
"app name" would like to make data available to nearby bluetooth devices even when you're not using the app.
Is there a way to customize this similar to the the Location services message?
There is a NSBluetoothPeripheralUsageDescription key to store the purpose string in Info.plist to describe the reason that the app uses Bluetooth. When the system prompts the user to allow usage, this string is displayed as part of the dialog box

Why does iOS show me a "home" location when I'm abroad without data roaming?

I'm working on an iOS app which uses Core Location.
I'm usually based in the UK but have been in the US for the past week. When the app can't get a location fix, or doesn't have data service (I've turned roaming data off) it confidently reports its location as Piccadilly Square in London, but when I'm connected to a known WiFi point it corrects itself to the other side of the Atlantic.
Why is this, and how can I check for erroneous location information (e.g. confident reports of being in London) and filter them out?
Check your scheme settings… do you have Default Location set under Run -> Options?
This value seems to persist even when the app isn't running, but restarting your phone fixes the issue.

Is it possible to read how bluetooth notifications are currently configured in iOS 7?

The documentation on ANCS is pretty clear that you can react to notifications when they are coming in, have come in, and when they are cleared from the Notification Center; however, what if I wanted to give a user the ability to configure my Bluetooth 4.0 accessory to only respond to notifications coming from a specified app?
The ideal UI for this would be a simple list of apps they either have installed or apps that have been granted access to the notification center with an on/off switch.
Thanks for editing! I wasn't sure if we were "allowed" to link to Apple documentation or not.
To get a list of the installed apps, there is no dedicated API. You can use the URL scheme trick to detect whether an app is present but its enabled state in the notification center is not detectable in any way. However, based on the URL scheme app list, you can configure your peripheral for a subset of the installed applications and you can provide additional options for the user for other apps. (Though, I think most apps that come into consideration for you should have URL schemes.)

Resources