Как я могу получить время начала звонка? - PullRequest
0 голосов
/ 11 февраля 2019

Я создаю приложение для Android. Я позвоню с одного устройства и получу на другом, но может кто-нибудь сказать мне, как я могу получить время на устройстве-получателе, в какое время устройство вызывающего абонента инициировало вызов?Потому что я хочу рассчитать задержку, когда был набран звонок и когда он был получен?

Ответы [ 2 ]

0 голосов
/ 11 февраля 2019

, когда вы звоните с одного устройства, вы можете сохранять время на стороне сервера с помощью API, а когда вы получаете вызов, вы можете снова интегрировать API, чтобы получить время, когда первое устройство позвонило вам.

0 голосов
/ 11 февраля 2019

Вы должны создать BroadcastReceiver:

public class CallReciever extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {

        if (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
                TelephonyManager.EXTRA_STATE_RINGING)) {

                // Phone number 
                String incomingNumber = intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER);

                // Ringing state
                // This code will execute when the phone has an incoming call
        } else if (intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
                TelephonyManager.EXTRA_STATE_IDLE)
                || intent.getStringExtra(TelephonyManager.EXTRA_STATE).equals(
                        TelephonyManager.EXTRA_STATE_OFFHOOK)) {

            // This code will execute when the call is answered or disconnected
        }

    }
}

Вы должны зарегистрировать свое приложение для прослушивания этих намерений в манифесте:

<receiver android:name=".CallReciever" >
            <intent-filter>
                <action android:name="android.intent.action.PHONE_STATE" />
            </intent-filter>
 </receiver>

В этом вы можете сохранить стартвремя и время снятой трубки.Получить разницу между этим будет задержка, которую вы хотите.

...