1. 程式人生 > >Android自動電話錄音開發過程及問題

Android自動電話錄音開發過程及問題

已經做好了Android下的一個電話錄音軟體,利用的是service和broadcast廣播,功能包括開機自啟,來/去電自動錄音.雖然還存在一些問題,但功能無影響.程式碼放在了github上:檢視原始碼

這裡主要說一下在做的過程中碰到的問題。
在服務啟動的時候軟體會使用Toast輸出”Service was started”,在Device Monitor中發現程序會異常結束,原生系統中也會出現unfortunately的提示,在stackoverflow上了解到是manifest中的問題.
去掉<intent-filter> android:name = "android.intent.action.PHONE_STATE"


原因:

Do not enforce PHONE_STATE_PERMISSION to register listener PHONE_STATE_PERMISSION should not be required to register to the following event types:
- PhoneStateListener.LISTEN_CALL_STATE
- PhoneStateListener.LISTEN_DATA_ACTIVITY
- PhoneStateListener.LISTEN_DATA_CONNECTION_STATE

In case of LISTEN_CALL_STATE, an empty
string should be passed instead of incomingNumber, when caller has no PHONE_STATE_PERMISSION.

現存問題:

  1. 撥出通話錄音開始於撥號之後即開始錄音,並非電話接通後.
  2. 呼入通話錄音開始於鈴聲響時,影響了鈴聲.你自己試試就知道是什麼情況了。。。。。
  3. 程式碼段裡有一段不是錄音而是發簡訊的,但是功能沒實現,我注掉了.