簡體   English   中英

如何使用 Kotlin 記錄 Android 設備中的呼叫?

[英]How To Record Calls In Android Devices Using Kotlin?

我想制作一個 Android 應用程序,它可以在 kotlin 中作為服務在后台記錄傳入和傳出呼叫,並且在一天中的特定時間,它通過 ZDB974238714CA8DE6434A7CE1D08A 將所有記錄發送到服務器。 我對此進行了研究,發現只是使用Device Policy ManagerTelephoney Manager ,但在互聯網上並沒有太多關於它的內容。 那么你能幫我寫任何文章、文檔或教程嗎?

谷歌目前還沒有解決方案。 Google 已棄用在其最新版本的 Android 操作系統中記錄通話的功能。 早些時候有可能,我嘗試了各種方法,但是當我嘗試記錄通話時,我才得到無聲的音頻。 當使用谷歌的電話應用程序時,它只允許該應用程序使用麥克風和其他東西,它不會允許任何其他應用程序壓倒並獲得該硬件訪問權限。

但實際上有兩個技巧可以做到這一點。

  1. 構建您自己的電話應用程序,例如 Truecaller 並管理來自該應用程序的每個呼叫和其他事情,您可以訪問在您的設備上管理呼叫,您還可以訪問記錄呼叫。
  2. 如果您的工作特定於三星、OnePlus 等任何一個移動示例,那么您可以使用任何 Truecaller 或 Google 的電話應用程序,它將通話錄音存儲在文件存儲中,然后您可以提供服務來上傳該通話錄音每天晚上 12 點左右從那個特定的文件位置。

首先創建 MyCallRecordReceiver class

    class MyCallRecordReceiver(callRecord: CallRecord) : CallRecordReceiver(callRecord) {


    override fun onIncomingCallReceived(context: Context, number: String?, start: Date) {
        super.onIncomingCallReceived(context, number, start)
    }
}

然后在 MainActivity

class MainActivity : AppCompatActivity() {

companion object {
    private val TAG = MainActivity::class.java.simpleName
}

private lateinit var callRecord: CallRecord

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
  
    callRecord = CallRecord.Builder(this)
        .setLogEnable(true)
        .setRecordFileName("CallRecorderTestFile")
        .setRecordDirName("CallRecorderTest")
        .setAudioSource(MediaRecorder.AudioSource.VOICE_COMMUNICATION)
        .setShowSeed(true)
        .build()

}

fun StartCallRecordClick(view: View) {
    LogUtils.i(TAG, "StartCallRecordClick")
    callRecord.startCallReceiver()

}

fun StopCallRecordClick(view: View) {
    LogUtils.i(TAG, "StopCallRecordClick")
    callRecord.stopCallReceiver()

}
}

此外,將其作為依賴項添加到您應用的 build.gradle 文件中

    allprojects {
  repositories {
    maven { url 'https://jitpack.io' }  
  }
}

和這個

compile 'com.github.aykuttasil:CallRecorder:1.5.3'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM