Android掛斷電話最新實現(xiàn)方法
1.Android 動態(tài)申請權(quán)限
首先,需要在AndroidManifest.xml靜態(tài)申請電話權(quán)限,否則無法動態(tài)申請權(quán)限,以下代碼位置不能放錯(在application之外):
<uses-permission android:name="android.permission.CALL_PHONE" />
然后,在java代碼中寫動態(tài)申請權(quán)限的邏輯(這是官網(wǎng)的寫法)
public void requestPower() { //判斷是否已經(jīng)賦予權(quán)限 if (ContextCompat.checkSelfPermission(this, Manifest.permission.上面電話權(quán)限字符) != PackageManager.PERMISSION_GRANTED) { //如果應(yīng)用之前請求過此權(quán)限但用戶拒絕了請求,此方法將返回 true。 if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.上面電話權(quán)限字符)) {//這里可以寫個對話框之類的項向用戶解釋為什么要申請權(quán)限,并在對話框的確認(rèn)鍵后續(xù)再次申請權(quán)限.它在用戶選擇"不再詢問"的情況下返回false } else { //申請權(quán)限,字符串?dāng)?shù)組內(nèi)是一個或多個要申請的權(quán)限,1是申請權(quán)限結(jié)果的返回參數(shù),在onRequestPermissionsResult可以得知申請結(jié)果 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代碼實現(xiàn)掛斷電話
private void endCall() { try { //通過反射得到隱藏的API,并獲得隱藏類的Class對象 Class<?> clazz = Class.forName("android.os.ServiceManager"); //獲取 Method類對象(方法對象) Method method = clazz.getMethod("getService", String.class); //調(diào)用方法獲到iBinder對象 IBinder ibinder = (IBinder) method.invoke(null, Context.TELEPHONY_SERVICE); ITelephony iTelephony = ITelephony.Stub.asInterface(ibinder); iTelephony.endCall();//結(jié)束電話 } catch (Exception e) { e.printStackTrace(); } }
記得一定要動態(tài)添加電話權(quán)限哦!不然掛電話這個操作實現(xiàn)不了。
總結(jié)
到此這篇關(guān)于Android掛斷電話最新實現(xiàn)方法的文章就介紹到這了,更多相關(guān)Android掛斷電話最新內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android Studio自定義萬能注釋模板與創(chuàng)建類,方法注釋模板操作
這篇文章主要介紹了Android Studio自定義萬能注釋模板與創(chuàng)建類,方法注釋模板操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-03-03Android WebView交互傳遞json字符串并解析的方法
這篇文章主要給大家介紹了關(guān)于Android中WebView交互傳遞json字符串并解析的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對各位Android開發(fā)者具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-05-05Android自定義View實現(xiàn)繪制虛線的方法詳解
這篇文章主要給大家介紹了Android自定義View實現(xiàn)繪制虛線的方法,在繪制過程中走了一些彎路才實現(xiàn)了虛線的效果,所以想著總結(jié)分享出來,方便有需要的朋友和自己在需要的時候參考學(xué)習(xí),下面來一起看看吧。2017-04-04Android使用Javamail發(fā)送Email群發(fā)加附件
這篇文章主要為大家詳細介紹了Android使用Javamail發(fā)送Email群發(fā)加附件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-01-01Android中實現(xiàn)ProgressBar菊花旋轉(zhuǎn)進度條的動畫效果
大家在一些頁面經(jīng)常會遇到加載中需要顯示一個加載動畫,像旋轉(zhuǎn)的菊花旋轉(zhuǎn)的圈圈動畫效果,本文通過實例代碼給大家講解下,需要的朋友參考下吧2021-09-09Android 使用【AIDL】調(diào)用外部服務(wù)的解決方法
本篇文章是對Android中使用AIDL調(diào)用外部服務(wù)的方法進行了詳細的分析介紹,需要的朋友參考下2013-06-06