2017-04-26 9 views
1

私のアプリケーションに番号が保存されていて、そのユーザーが私のiPhoneで私に電話をかけた場合、その電話に関する情報を入力できる画面で私のアプリケーションを呼びたいと思っています(通話時間、発信者名、私たちのアプリを起動し、着信コールの詳細を取得する方法?

iOSでログを記録する方法を教えてください。私はアップルが私のアプリケーションではなく普通のダイヤラーで行われるコールに関する情報を得ることを許可しているかどうかはわかりません。

私はこのリンクを見つけました:Call history, SMS history, Email history in iOS しかし、そのユーザーの連絡先番号が自分のアプリケーションに保存されている場合は、着信時に自分のアプリケーションを呼び出す必要があります。

私に手伝ったり、解決策を提案したり、実行可能かどうか、

答えて

1

iOSの10 +:

使用Callkit、および

方法以下

が呼び出され、コールディレクトリの拡張子をそれをチェックアウト:システムがなく、個々のコールのためのアプリ 拡張機能を起動した場合にのみ、あなた一度に 識別情報を指定する必要があります。 に着信コールに関する情報を見つけるためのWebサービスへのリクエストを作成することはできません。

addIdentificationEntry(withNextSequentialPhoneNumber:label:)メソッドを使用してください。アップルによると

class CustomCallDirectoryProvider: CXCallDirectoryProvider { 
    override func beginRequest(with context: CXCallDirectoryExtensionContext) { 
     let labelsKeyedByPhoneNumber: [CXCallDirectoryPhoneNumber: String] = [ … ] 
     for (phoneNumber, label) in labelsKeyedByPhoneNumber.sorted(by: <) { 
      context.addIdentificationEntry(withNextSequentialPhoneNumber: phoneNumber, label: label)   
     } 

     context.completeRequest() 
    } 
} 

:電話が着信コールを受信すると、着信、発信者を特定

は、 システムは、最初に一致した電話 番号を見つけるために、ユーザーの連絡先を調べます。一致するものが見つからない場合、システムはあなたのアプリの ディレクトリ拡張を呼び出して一致するエントリを見つけ、 番の電話番号を特定します。これは、連絡先リスト を、ソーシャルネットワークの など、システムの連絡先とは別のユーザーに対して維持するアプリケーションや、 から開始される可能性のある着信コールを識別するために役立ちます。配達 通知。たとえば、 のJaneとソーシャルネットワーキングアプリの友人で、連絡先に の電話番号がないユーザーを考えてみましょう。ソーシャルネットワーキングアプリには という電話番号アプリがあり、 ユーザーの友だちのすべての電話番号をダウンロードして追加します。このため、ユーザーがJaneから着信コール を取得すると、「不明発信者」ではなく「(App Name)Caller ID: Jane Appleseed」が表示されます。

+0

私のアプリケーションが実行されていない状態にある場合、私のアプリケーションを呼び出すときに私のアプリケーションを呼び出す方法は? – Aashish1aug

+0

Call Directory内線番号を作成する必要があります – ankit

関連する問題