2012-04-12 34 views
8

Tôi muốn quay số sau khi tôi đã trả lời cuộc gọi, thường được thực hiện bằng bàn phím số trong cuộc gọi.Hiển thị bàn phím quay số trong cuộc gọi - Quay số trong khi gọi - DTMF

Tôi đã thử cách sau, nhưng điều đó bắt đầu quay số cuộc gọi mới thay thế (ACTION_VIEW).

Intent dial = new Intent(Intent.ACTION_DIAL); 
dial.setData(Uri.parse("tel:9")); 
startActivity(dial); 

Tôi đoán là "tel:" sẽ kích hoạt chuỗi quay số mới. Những gì tôi có thể cần là để hiển thị bàn phím quay số trong cuộc gọi và mô phỏng các nét chính.

Bất kỳ ai?

Edit: Tôi tìm thấy câu hỏi này Starting the InCallScreen activity mà làm cho tôi nghĩ rằng tôi cần phải chỉ cần gửi một sự kiện KeyDown để 'com.android.phone.InCallScreen', nhưng tôi không chắc chắn làm thế nào để làm điều đó. Ngoài ra, đây là vấn đề liên quan trực tiếp đến (và vẫn còn) mở trong nhiều năm: http://code.google.com/p/android/issues/detail?id=1428

+0

Theo như tôi có thể biết, không có chức năng nào trong API công khai cho việc này. Đã có một số [thay đổi được đề xuất] (https://groups.google.com/forum/#!msg/android-contrib/4QqHgLOrBO8/xXl9221pv-kJ) cho TelephonyManager để cho phép điều này, nhưng chúng dường như đã ngừng hoạt động. – caseyburkhardt

Trả lời

0

Không. Nó không phải là tel: kích hoạt một cuộc gọi mới, mà đúng hơn là bạn đang tạo ra một Intent mới, và sau đó chạy startActivity (dial);

Hãy suy nghĩ về điều này có nghĩa là: Bạn đang bắt đầu một hoạt động hoàn toàn mới, vì vậy nó không thể tương tác với hoạt động liên quan đến điện thoại mà mã trước của bạn đang sử dụng.

Tôi nghĩ rằng những gì bạn đang thực sự cố gắng làm là thêm một số để sau đó kết thúc những gì bạn đang quay số. Để thực hiện việc này, bạn cần phải đặt toàn bộ số của mình, cộng với ký tự tạm dừng (p) trong dữ liệu URI và sử dụng ACTION_CALL. Mã số:

Intent dial = new Intent(Intent.ACTION_CALL); 
dial.setData(Uri.parse("tel:7195555555ppp9")); 
startActivity(dial); 

Tôi đã tạm dừng ba lần, bạn nên điều chỉnh dựa trên thời gian cần thiết. Cách khác, sử dụng ký tự chờ (w), nhưng điều này dường như yêu cầu người dùng xác nhận để gửi các chữ số bổ sung.

Các vấn đề liên quan