App reads my Apple ID - ios

I am interested to know, can an app read my Apple ID?
Here is my issue: I have outsourced my app to a company. The app is a social networking app: you create a profile and insert few profile details: name, age, gender. However it does not relay on phone numbers like Whats App, email addresses or Facebook profiles.
The App is now live in the App store and I have my Ipad and Iphone registered on the same Apple Id. I have downloaded the app on my phone and created a profile. Now I have downloaded it on the iPad as well and I am seeing the same profile I created on my phone.
I've have tried other apps that use a similar logic, no phone numbers, emails or FB profiles (Whisper App being one of them) and I can create 2 different profiles one on the phone and the other on the iPad. So I am wondering if the problem surfaces because there is something in the code that makes the app read my Apple ID.
I would really appreciate your help

Apple doesn't provide an API allowing an application to read information about the user's Apple ID. This helps protect the identity of the user, I personally don't want any third-party app reading information about my Apple ID.

Related

Possible to rename iOS App before uploading?

I'm about to upload my app to AdHoc for Beta Testing however the Xcode project is named "MyApp" (not the actual name of the app) but I want to upload it to the app store as "MyLive". The bundle identifier is also com.myproject.MyApp but I would like to rename it if possible to something like com.mycompany.MyLive.
At the moment this is just a personal app attatched to my personal App ID but I'd like to future proof it as best as I can so it doesnt cause me any problems down the line.
As I've enrolled in the Apple Dev program using my personal Apple ID the only team I can choose is my name. However, is it possible to create a new team so that it seems like a company based around the app?
Lastly, if I upload it connected to my personal Apple ID how much personal information will be publicly visible? Is it possible to hide my email address?
EDIT: Is it possible to transfer an App from on Apple Developer account to another? Say when my current membership runs out and I set one up in the company name would I be able to transfer ownership?
Once you've created an app in iTunes Connect the bundle identifier can never be changed. If you have created it as com.myproject.MyApp then it's stuck as such. However, if this is your first upload, there's really no loss to create a different iTunes app with the bundle id of com.mycompany.MyLive.
None of that really matters though as no one will ever see this except you and anyone you've allowed on to your account. Just keep it simple.
You can rename your iTunes app name when your app is in editable state. i.e. If you've already submitted version 1.0 of the app with an iTunes app name of 'MyApp', you cannot change it for that version. But you can setup a version 1.1 and change the name before it's submitted.
It's not possible to create new 'teams'. A team is basically a developer account. You can be invited to join other teams via the owner of those accounts. In the future you can convert your personal account to a business account. It requires a bit of legal paperwork but is not hard.
The only publicly available information is what you've added when creating your iTunes Connect app. You have to add an email under review contact info, this is only used by Apple to reach you in case of questions with your app. You are also required to provide a support URL so your customers can reach you.
Everything you wanted to know about what goes on iTunes:
https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Appendices/Properties.html
Google's answer for ability to transfer apps:
https://developer.apple.com/library/content/documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/Chapters/TransferringAndDeletingApps.html

App store guidelines - Can I take users phone contacts and store them on a web server?

I've checked the offical apply guidelines for app reviews but could get an answer. I'm developing an app that will take users phone contacts and store them on my server. These contacts will then be visible to certain other app users. Assuming that I alert the users that their contacts are being stored and will be visible to some other users, will this be a problem? Are apple likely to reject this?
there is no objection for the same from apple.
the main thing that apple may prompt about is the app user should be aware of the fact that your app will do something like this (storing user's contacts on server)
there are some popular apps that are already doing the same like TrueCaller but the app user knows that this is going to happen if he uses the app so no issues...!
I hope this helps.

Getting user details who downloaded my ios app from apple app store

There is requirement in my iOS application to display the list of users who are using my app. can i get this details from apple app store. if it is possible then how can i get user details (mail id, username etc) who have downloaded my app from app store.
Any help would be appreciated.
Before fight for search anything, read this point in the Apple Review Guideline.
12.1 Applications that scrape any information from Apple sites (for example from apple.com, iTunes Store, App Store, iTunes Connect, Apple Developer Programs, etc) or create rankings using content from Apple sites and services will be rejected
2.25 Apps that display Apps other than your own for purchase or promotion in a manner similar to or confusing with the App Store will be rejected
This is not possible using iTunes Connect exposed data and is against AppStore policy.
If you wish to track your users, implement an authentication API in your app, such as Facebook, Twitter, Google or your own, and require users to login before they can use the app.

QuickBlox Messages UDIDs

I'm using QuickBlox for Apple Push Notification Services, while debugging some problems I had a look at their QuickBlox panel:Messages->Devices and I notice there are multiple devices for some users with different UDIDs. These users have only used one device and none of the device UDIDs seem to tie in with the actual iPhone UDIDs as seen on iTunes.
Does anyone know where these UDIDs come from, what they signify and why there are more than one per user?
Apps are not allowed to access the device UDID.
The API for accessing a unique identifier for each device will return a new random ID if you uninstall then reinstall the app.
This is specifically designed to make it impossible for an app to track users of the app.
You must ask the user to type in their email or something, if you want to tell one user from another.

Log In with Apple ID

I am developing an Application where I want the user to log in with his/her Apple ID.
Is this possible? If so, how can I do this?
Apple introduced Sign In with Apple at their worldwide developer conference, WWDC 2019.
Here's how Apple describe it:
Sign In with Apple makes it easy for users to sign in to your apps and websites using their Apple ID. Instead of filling out forms, verifying email addresses, and choosing new passwords, they can use Sign In with Apple to set up an account and start using your app right away. All accounts are protected with two-factor authentication for superior security, and Apple will not track users’ activity in your app or website.
Sign In with Apple requires iOS 13 or later, iPadOS 13 or later, watchOS 6 or later, macOS Catalina 10.15 or later, and tvOS 13 or later.
Nope, there is an standard API for this. You could use a UIWebView to make a user log in to an existing login form somewhere on apple.com, and then check for the subsequent success or failure URL, but that would probably be both brittle and rejected by the App Store approval process.
It is not possible currently. Your best bet is to submit a feature request at https://bugreport.apple.com/
If you want to authenticate users without setting up your own registration system, you could adopt Facebook Connect. Lots of people already use Facebook obviously, and you don't have to maintain the signup/forgot password/security stuff at all.
If you don't like Facebook, Google also offers a similar system. (see https://developers.google.com/accounts/docs/MobileApps)
Apple will probably never allow you to log in with the user's Apple ID.
You might be able to allow your users to log into Game Center. The user's Game Center account is tied to the AppleID, so users can be identified by your app that way. But this is assuming that you were actually building a game.
Apple's Game Center documentation is here: https://developer.apple.com/library/ios/#documentation/LanguagesUtilities/Conceptual/iTunesConnect_Guide/15_GameCenter/GameCenter.html#//apple_ref/doc/uid/TP40011225-CH7-SW1
The App Store Review guidelines preclude using any information from Apple's services in your app, which is why it's dubious they would ever allow you to login with an Apple ID:
12. Scraping and aggregation
12.1
Applications that scrape any information from Apple sites (for example from apple.com, iTunes Store, App Store, iTunes Connect, Apple Developer Programs, etc) or create rankings using content from Apple sites and services will be rejected
If what you want to achieve is a seamless user experience between the user's different iOS devices without requiring the user to pick a username and password for your service you could maybe use iCloud. But of course it depends on what you are building. Apple provides some videos introducing the different iCloud APIs: https://developer.apple.com/icloud/documentation/

Resources