Android掛斷電話最新實現方法
1.Android 動態(tài)申請權限
首先,需要在AndroidManifest.xml靜態(tài)申請電話權限,否則無法動態(tài)申請權限,以下代碼位置不能放錯(在application之外):
<uses-permission android:name="android.permission.CALL_PHONE" />
然后,在java代碼中寫動態(tài)申請權限的邏輯(這是官網的寫法)
public void requestPower() {
//判斷是否已經賦予權限
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.上面電話權限字符)
!= PackageManager.PERMISSION_GRANTED) {
//如果應用之前請求過此權限但用戶拒絕了請求,此方法將返回 true。
if (ActivityCompat.shouldShowRequestPermissionRationale(this,
Manifest.permission.上面電話權限字符)) {//這里可以寫個對話框之類的項向用戶解釋為什么要申請權限,并在對話框的確認鍵后續(xù)再次申請權限.它在用戶選擇"不再詢問"的情況下返回false
} else {
//申請權限,字符串數組內是一個或多個要申請的權限,1是申請權限結果的返回參數,在onRequestPermissionsResult可以得知申請結果
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.上面電話字符,}, 1);
}
}
}示例圖:


2.創(chuàng)建一個AIDL文件ITelephony包名必須是(com.android.internal.telephony)
// ITelephony.aidl
package com.android.internal.telephony;
// Declare any non-default types here with import statements
interface ITelephony {
boolean endCall();
void answerRingingCall();
}示例圖:

3.寫java代碼實現掛斷電話
private void endCall() {
try {
//通過反射得到隱藏的API,并獲得隱藏類的Class對象
Class<?> clazz = Class.forName("android.os.ServiceManager");
//獲取 Method類對象(方法對象)
Method method = clazz.getMethod("getService", String.class);
//調用方法獲到iBinder對象
IBinder ibinder = (IBinder) method.invoke(null, Context.TELEPHONY_SERVICE);
ITelephony iTelephony = ITelephony.Stub.asInterface(ibinder);
iTelephony.endCall();//結束電話
} catch (Exception e) {
e.printStackTrace();
}
}記得一定要動態(tài)添加電話權限哦!不然掛電話這個操作實現不了。
總結
到此這篇關于Android掛斷電話最新實現方法的文章就介紹到這了,更多相關Android掛斷電話最新內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Android Studio自定義萬能注釋模板與創(chuàng)建類,方法注釋模板操作
這篇文章主要介紹了Android Studio自定義萬能注釋模板與創(chuàng)建類,方法注釋模板操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03
Android WebView交互傳遞json字符串并解析的方法
這篇文章主要給大家介紹了關于Android中WebView交互傳遞json字符串并解析的相關資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2018-05-05
Android使用Javamail發(fā)送Email群發(fā)加附件
這篇文章主要為大家詳細介紹了Android使用Javamail發(fā)送Email群發(fā)加附件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01
Android中實現ProgressBar菊花旋轉進度條的動畫效果
大家在一些頁面經常會遇到加載中需要顯示一個加載動畫,像旋轉的菊花旋轉的圈圈動畫效果,本文通過實例代碼給大家講解下,需要的朋友參考下吧2021-09-09

