2016-12-01 6 views
1

私はこれに関して多くの質問がありました。すべての答えは不可能であると言います。 Appleは許可していません。iOS 10.1.1での電話番号の読み方 - Objective C/Swift

私は昨日iOS 10.1.1

上で実行されているiPhone 6sを使用しています私はWhatsAppを開いたときに私の新しいSIMを挿入した後、新しいシムCard.Justを購入しました。

`Your number has been changed. Do you want to use new number` 

そうすることのWhatsAppん方法:私は言う画面を取得しますか?

次に、Airtelアプリをインストールしました。私がアプリを開いたとき。それは自動的に私の電話番号を取得し、私に表示されます。

これらのアプリが電話番号を読み取る方法。

りんごは新しい方法をiOS 10に追加しましたか、そうするために他のロジックを使用していますか?

答えて

0

ios 10ではプライバシーがいくつか変更されています。アプリの連絡先データベースにアクセスするには、新しいキーをplistファイルに追加する必要があります。

<key>NSContactsUsageDescription</key> <string>$(PRODUCT_NAME) want use you contacts</string>

+0

を使用して連絡先アプリから番号を取得することができ、あなたの2番目の質問について。そこに私は他の連絡先の詳細を取得することができます – Dalvik

+0

私は@ Rajatが正しいと思います。彼らは 'subscriberCellularProviderDidUpdateNotifier'を使ってあなたの電話番号を取得し、既存のwhatsappデータベースと一致させました。 – Poles

+0

@Poles私は 'subscriberCellularProviderDidUpdateNotifier'からこれを言及したことはありません。電話番号を取得できるようになります。これは、携帯電話プロバイダを変更したときに起動するオブザーバだけです – Rajat

1

オブザーバーsubscriberCellularProviderDidUpdateNotifier

は、ドキュメントhere

ユーザの携帯プロバイダ情報が変化したときに、デフォルトの優先順位グローバル ディスパッチキューにディスパッチされるブロックオブジェクトごとにあります。 これは、たとえば、ユーザーがアプリケーションが実行されている間に、別のプロバイダの のSIMカードを交換した場合に発生します。

セルラーサービスプロバイダの情報の変更を処理するには、アプリケーション内に ブロックを定義し、このプロパティに割り当てます。ブロック は、任意のコンテキストから呼び出されるように実装する必要があります。

あなたのシムが変更されたことを通知するだけです。

あなたがこの電話番号を取得するためにつながる方法をContacts.framework

関連する問題