我正在制作呼叫攔截器。我正在嘗試運行在片段中的 mainActivity 中作業的代碼。
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case PERMISSION_REQUEST_READ_PHONE_STATE: {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Toast.makeText(getActivity(), "Permission granted" PERMISSION_REQUEST_READ_PHONE_STATE , Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(getActivity(), "Permission NOT granted: " PERMISSION_REQUEST_READ_PHONE_STATE, Toast.LENGTH_SHORT).show();
}
return;
}
}
}
onCreateView=
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_call, container, false);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
if (getActivity().checkSelfPermission(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_DENIED || getActivity().checkSelfPermission(Manifest.permission.CALL_PHONE) == PackageManager.PERMISSION_DENIED) {
String[] permissions = {Manifest.permission.READ_PHONE_STATE, Manifest.permission.CALL_PHONE};
requestPermissions(permissions, PERMISSION_REQUEST_READ_PHONE_STATE);
}
}
onRequestPermissionsResult();
return view;
}
問題是 public void onRequestPermissionsResult 上面有一行,當我將滑鼠懸停在它上面時,“onRequestPermissionsResult”會顯示此訊息。我嘗試了幾種方法和方法,希望有人可以幫助我解決它。
uj5u.com熱心網友回復:
該活動是否托管您的片段?如果是這種情況,您可以getActivity()在 Fragment 中使用并將其轉換為MainActivity.
((MainActivity)getActivity()).onRequestPermissionsResult();
但是,如果不是這種情況,請提供更多詳細資訊,因為您不應嘗試訪問與您的片段無關的任何活動。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/451917.html
