Java 你能得到你的电话号码吗?

Java 你能得到你的电话号码吗?,java,android,Java,Android,我正在开发一个获取来电号码的应用程序 这是我的代码,我正试图通过它来做到这一点 package com.example.callchecker; import android.os.Bundle; import android.app.Activity ; import android.content.Context; import android.telephony.*; import android.view.Menu; import android.widget.TextView; im

我正在开发一个获取来电号码的应用程序

这是我的代码,我正试图通过它来做到这一点

package com.example.callchecker;

import android.os.Bundle;
import android.app.Activity ;
import android.content.Context;
import android.telephony.*;
import android.view.Menu;
import android.widget.TextView;
import android.widget.Toast;

public class Main_Activity extends Activity {
    String number;
    TextView tv1;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_layout);
        tv1=(TextView) findViewById(R.id.textView1);

        TelephonyManager telephonymanager =
            (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
        //register phone state
        PhoneStateListener callstatelestener = new PhoneStateListener() {
            public void OnCallStateChanged(int state , String incomingNumber) {
                number = incomingNumber;
                tv1.setText(number);
                // If phone ringing
                if(state==TelephonyManager.CALL_STATE_RINGING)
                {
                    Toast.makeText(getApplicationContext(), "Phone Is Riging",
                            Toast.LENGTH_LONG).show();
                }
            }
        };

        telephonymanager.listen(callstatelestener,
                PhoneStateListener.LISTEN_CALL_STATE);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.main_layout, menu);
            return true;
    }
}
但这不做任何事情,即使是在打电话时,当我在这个应用程序。。。 我必须让它一直在后台工作吗?????
如果这是获取传入号码的正确方法???

您将在本教程中找到解决问题所需的所有答案:

您必须使用BroadcastReceiver来监听呼叫状态的变化。将您的手机状态侦听器代码放入广播接收器。如果应用程序未运行,则使用广播接收器应用程序可以获取电话号码???是,一旦你注册了接收者,无论你的应用程序是否在运行,它都会监听特定操作的任何更改。kaushal trivedi你能告诉我你的电子邮件地址吗??所以我可以从你那里得到更多的帮助。谢谢当然,我的电子邮件是kaushal。t1991@gmail.com,你可以随时与我联系。