我正在从Android Studio发起通话。代码如下: 我想在任何时候获得通话状态。链接:https://developer.android.com/reference/android/telecom/Call.html 显示调用状态可以通过使用Class调用获得。如果我使用Call.getState(),我应该能够获得当前状态。但是我收到编译错误: 错误:(28,20)错误:Call()在调用中不公开;不能从外部包访问。在枚举中定义了几种呼叫状态:拨号,振铃,连接,DI连接,保持等。 当我运行代码时,它确实进行了呼叫,因为我可以看到模拟器拨打电话的屏幕。如何获取即将离任的Android通话的通话状态
开发者指南没有提供使用这些类的任何示例。 谢谢你的帮助。
package com.example.ramesh.makeacall;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.telecom.Call;
import android.telephony.*;
import android.util.Log;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Call call;
call = new Call();
call();
}
private void call() {
try {
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:5555551212"));
System.out.println("====before startActivity====");
startActivity(callIntent);
} catch (ActivityNotFoundException e) {
Log.e("helloAndroid","Call failed",e);
}
}
}
谢谢..它的工作原理 –