如何获取android中最后一次调用的确切日期?

时间:2014-11-01 18:35:35

标签: java android date call

我的Android应用程序包含Edittext,Button

Edittext:允许用户输入他想要的号码。 按钮:称为“呼叫”来拨打电话。

我希望有一种方法可以在完成后获得电话的确切日期和时间

我的java代码:
    public String string;     public String number = null; //

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
   Button CallButton = (Button)findViewById(R.id.button1);

   CallButton.setOnClickListener(this);


}

@Override
public void onClick(View arg0) {
    // TODO Auto-generated method stub

       EditText txtcallnumber = null;
       txtcallnumber = (EditText)findViewById(R.id.callEdit);
    string = txtcallnumber.getText().toString();
       number = "tel:" +string ;
    Intent CallIntent = new Intent (Intent.ACTION_CALL,Uri.parse(number));
    startActivity(CallIntent);



}

我该怎么做?

提前致谢

3 个答案:

答案 0 :(得分:0)

假设您的代码成功拨打了电话,而不是使用startActivity,请使用startActivityForResult。这会告诉您的应用在电话完成后返回Activity的特定部分。这部分是onActivityResult方法。

然后,您需要在onActivityResult中实施Activity。如果您在requestCode中使用的startActivityForResultrequestCode参数匹配,则从系统中获取当前时间。

答案 1 :(得分:0)

将startActivity更改为startActivityForResult

startActivityForResult(CallIntent, CALL_REQUEST_CODE);   // any integer value

在onActivityForResult

中获取结果
@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_CODE) {

            SimpleDateFormat formatter = new SimpleDateFormat(
                    "dd/MM/yyyy HH:mm:ss");
            String dateTimeString = formatter.format(new Date(System
                    .currentTimeMillis()));

            Log.d("TIME", dateTimeString);

        }
    }

答案 2 :(得分:0)

正如前面的回答所述,您可以为结果启动一个活动,然后实现onActivityResult方法,如下所示:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if(resultCode == RESULT_OK){
            if(requestCode == DONE_CALL){


             }
        }
}

在方法内部,您可以执行以下操作来捕获日期和时间:

Time today = new Time(Time.getCurrentTimezone());
today.setToNow();
String formattedData = today.format("%F %H:%M");