java - 如何获取正在调用的号码,android中的拨出号码

标签 java android eclipse android-studio telephony

我一直在传出号码上获得 null 值,我尝试了一些来自网络的解决方案。

在我的 list 中,我有这些相关的行

 <uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission>

<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" > </uses-permission>
  <receiver android:name=".home.OutgoingReceiver"  android:exported="true">
           <intent-filter>
               <action android:name="android.intent.action.PHONE_STATE" >
                   <action android:name="android.intent.action.NEW_OUTGOING_CALL" />


               </action>
           </intent-filter>
       </receiver>

我的接收器看起来像这样,你会注意到我一直在尝试以各种方式在这里检索数字,但我一直得到空值
public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {


            final String originalNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER).toString();
            Log.d("APP", "outgoing,ringing:" + originalNumber);
        }
        String ph = intent.getExtras().getString(OutgoingReceiver.INTENT_PHONE_NUMBER);
        // savedNumber = intent.getExtras().getString("android.intent.extra.PHONE_NUMBER");
        String number = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
        String phoneNumber = getResultData();
        if (phoneNumber == null) {
            // We could not find any previous data. Use the original phone number in this case.
            phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER);
        }
        String phoneNumberTest = intent.getExtras().getString(OutgoingReceiver.INTENT_PHONE_NUMBER);

最佳答案

首先将其添加到您的 list 中:

<action android:name="android.intent.action.NEW_OUTGOING_CALL" />

然后将其添加到您的接收器:
if (intent.getAction().equals("android.intent.action.NEW_OUTGOING_CALL")) {
          String outoingNumber = intent.getExtras().getString("android.intent.extra.PHONE_NUMBER");
            return;
        }

关于java - 如何获取正在调用的号码,android中的拨出号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38825321/

相关文章:

java - 使用 ContributesAndroidInjector 提供 Activity

java - getApplicationContext() 无法解析

java - SVN颠覆性的。 eclipse 。本地存储库

eclipse - 将旧插件复制到新安装的eclipse中的简便方法

java - Eclipse: "Refactor - Rename"完全困惑,替换文件中的任意字符

java - 如何获取 Swing JTabbedPane 标签的默认字体?

java - 空分析注释包之间有什么区别?

android - 如何在 Android 客户端中使用 Keycloak OpenId 进行 oAuth

java - 获取 IndexWriter 上待处理更改的数量

java - 通用类型重复