Quiero hacer una aplicación de Android que pueda grabar llamadas entrantes y salientes en segundo plano como un servicio en kotlin y en un momento particular del día, envía todas esas grabaciones a un servidor por API. Investigué al respecto, todo lo que encontré fue usar Device Policy Manager y Telephoney Manager , pero no hay mucho al respecto en Internet. Entonces, ¿pueden ayudarme con algún artículo, documentación o tutorial?
primero cree la clase MyCallRecordReceiver
class MyCallRecordReceiver(callRecord: CallRecord) : CallRecordReceiver(callRecord) { override fun onIncomingCallReceived(context: Context, number: String?, start: Date) { super.onIncomingCallReceived(context, number, start) } }luego en 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() } }Además, agréguelo como una dependencia en el archivo build.gradle de su aplicación
allprojects { repositories { maven { url 'https://jitpack.io' } } }y esto
compile 'com.github.aykuttasil:CallRecorder:1.5.3'