1

音声通信アプリを開発しています。私のアプリには、6 つのスレッドがあります (
1. TCP ソケットを介して PC からデータを受信する、
2. jni を使用して受信データをデコードする、
3. AudioTrack を使用してデコードされたデータを再生する、
4. AudioRecord を使用して pcm データを記録する、
5. を使用して pcm データをエンコードするjni; 6. サービスで実行されている
別の TCP ソケットを介してエンコードされたデータを送信します。 それは主な活動でうまくいきます。ただし、問題は、ホームを押すと、2 つのソケットの動作が遅くなることです。アクティビティのようにすばやくデータを送受信できないため、両側で音声の遅延が発生します。メインアクティビティに戻ると、再びうまく機能します。 を使用してスレッドの優先順位を既に設定しています が、まったく機能しません。




android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_URGENT_AUDIO);

誰かアドバイスをくれませんか?

4

0 に答える 0