SMS Retriever API - phone picker source - google-play-services

Does Google's SMS Retriever API get the list of phone numbers from the SIM lines on the user's device (which means that it's similar to TelephonyManager), or from the user's Google Play account?

I'm the product manager at Google for this API. Yes, as of the latest version of Play Services, the Phone Selector shows both the phone number for the device from the TelephonyManager (if it can be parsed as as a valid phone number) as well as recent phone numbers for the active Google Accounts on the device.

This is not directly addressed from the docs but if we infer from this statement in the Obtain the user's phone number:
Often, it is the best user experience to use the hint picker to prompt
the user to choose from the phone numbers stored on the device and
thereby avoid having to manually type a phone number
we can deduce that SMS Retriever API gets the contacts from your device.

Update
Please look at #Steven Soneff's answer
The numbers are retrieved from Smart Lock for Passwords on Android. They are retrieved if the user already stored it using Smart Lock else they will be empty. You may also ask the user to store the number for future use-cases using Smart Lock for Passwords.

Related

WhatsApp Business api cloud: How do I register a Customer's phonenumber via api?

Currently, I am using WhatsApp Business api cloud on one of my web project, I would like to register a customer's phone number but via api instead through meta, developer platform like following:
"Here is the image to register customer's number in the meta developer platform"
I want do this:
(managing the phone numbers)
but via api, and later of that send the verification code via api as well.
If someone can help me , telling me if that is possible and sharing documentation or the endpoint I would appreciate it very much, I've been looking at the documentation and postman's examples for 2 days without any success.
I'm sorry I didn't share the pictures directly, it is my first question on Stackoverflow
Thanks in advance,
Greetings!
I guess you are using WhatsApp provided a test phone number in From, you need to read this, https://developers.facebook.com/docs/whatsapp/cloud-api/get-started#sent-test-message
Enter the recipient phone number you would like to message in the To field. Ensure the number is correct, and that you want to add it to your list of 5 possible message recipients —as you add phone numbers, follow the prompts on the screen to verify you have access to them. Once this number has been added, it cannot be removed from your list.
Note: This limitation is only for WhatsApp-provided test phone numbers. Real phone numbers that you register do not have a limit on the number of recipients.
You don't need to register receivers' phone numbers if you are using your own real business phone number in the sender's phone number.

How to sync registered users in database with iPhone contacts

Imagine an iphone app that automatically registers users on the first start according to their phone identity (e.g. phone number*) on a server database.
Afterwards, users should see which of their friends already use the app, i.e. which of their contacts are registered on the DB.
An obvious solution would be to always send a select-request to the DB containing all of the users contacts, everytime the user refreshs his or her friend list. As a result, the user retrieves the list of their registered contacts (friends).
Is there any better way to realize this synchronization between the user management on the server and the contacts in the user's address book. Sending multiple select-requests (each user for every refresh) with dozens of phone numbers might not be performant at all.
Example:
WhatsApp is actually a good example for this scenario. You can add new contacts to your address book and WhatsApp automatically refreshs your WhatsApp friend list according to your phone book. I really like this idea because the user don't need to create an account manually.
*I know about the problems of using phone numbers in AppStore apps, so this question really focusses on the architectural problem.
EDIT
this comment (Whatsapp contacts syncronization) describes the mentioned simple approach. but is this really the smartest way?

Objective C:: How to check if the user already installed your app?

I am new to iOS (iphone and ipad) development.
I am developing an app. In the app, at 1 point, I will need to retrieve the contact lists, and my question is, after I get the user's contact list, is it possible to check each user have/have not installed my app? If yes, how? If no, how does Viber works?
They have a database with phone numbers. And I guess they send all the phonenumbers in your contacts to a server and return those who use viber. But I'm just guessing, never installed their app.
From their FAQ:
You don't have to register! You know
your phone number, and so do your
friends, so why bother with yet
another username and password? Viber
uses your phone number as your
"identity" and lets you make free
Viber phone calls to any of your
friends that have Viber - using THEIR
phone number.
From strictly the point of view of checking if another application is already installed,I made use of UIPasteBoard once.We developed a standard of pasting some info based on a key and the app would check first if that particular app name is present it would not show that in offers

How to obtain the phone number when reading facebook contacts

I thought it was impossible to read phone numbers of contacts using facebook APIs, but "Facebook for HTC Sense" android application is syncing all that information to my local agenda.
Somebody knows how are they implementing this feature?
Is it for people you already have in your contacts? It's possible they are just cross-referencing other pieces of information (like email) against your local contact info.
Because phone number isn't a field in the graph nor is it one in the corresponding FQL table.
The fql fields are "cell" and "other_phone" but they are not available unless your app is whitelisted like obviously their iphone/android apps are. You can request those fields but they will return back null values, confirming those are the fields (requesting fields that don't exist throws errors).

Allow user to create account on one device and use that account on others

I want to make an application that has some views for information display. If I install my app on my iPhone then it should display the info. If I then install that app on my iPad then the app should recognize the device and display the info related to my account.
Is there any way to find the single user of two devices without the user's iTunes credentials, or is it possible to generate a key that can identify the common user of both devices?
No, currently there is no way to associate multiple devices to a single user owning those devices given the information you've provided.
However, if you added, "the information I want to display in the views, pertains to the same user account in Game Center for both devices", then you could use the player's identifier from Game Kit API.
https://developer.apple.com/game-center/
This is being added well after the fact, but:
You could use iCloud APIs to accomplish this. These are distinct from iTunes credentials, but obviously the same type of prerequisite in that the user must have an account and it's not under your control.