2011-02-04 31 views
6

Có thể gửi và nhận phản hồi về các yêu cầu USSD không? Tôi đã googled câu hỏi này và tôi thấy rằng vấn đề này chưa được thực hiện:USSD trên Android từ các ứng dụng

http://code.google.com/p/android/issues/detail?id=1285

Có cách nào làm quá trình yêu cầu USSD cho các ứng dụng Android?

+1

gửi -> không có vấn đề, tiếp nhận -> không bao giờ có nó để làm việc, cùng kinh nghiệm như trong liên kết của bạn ... – user387184

Trả lời

3

Gửi USSD là dễ dàng

startActivityForResult(new Intent("android.intent.action.CALL", 
    Uri.parse("tel:*123" + Uri.encode("#"))), 1); 

Dưới đây là một đoạn mã đó sẽ giúp bạn có câu trả lời. Nó đọc nhật ký để nhận phản hồi. Từ http://codepaste.ru/7545/#

+0

Hi Terence, tôi thấy câu trả lời của bạn rất hữu ích. Tôi chỉ muốn biết, bạn có thể gửi bất kỳ thông tin nào theo chương trình hoặc chỉ cần gọi mã không? Cảm ơn trước! – lisovaccaro

+0

Bạn chỉ có thể gọi mã USSD. –

+0

là có bất kỳ sự kiện để biết cuộc gọi ussd đang xảy ra giống như một số hành động ý định để nhận được thông báo bởi người nhận phát sóng –

4

Hiện tại Android thiếu hỗ trợ cho nhà phát triển tương tác với USSD/MMI. Gửi yêu cầu USSD dễ dàng như đề xuất của Terence nhưng không có cách nào dễ dàng để xử lý phản hồi USSD đến.

Theo như tôi biết, hiện tại có hai cách tiếp cận để theo dõi nếu bạn muốn tương tác với phản hồi.

  1. Extracting nó từ Logs
  2. hoặc Sử dụng giao diện ẩn - 'com.android.internal.telephony.IExtendedNetworkService'.

Giao diện bị ẩn trong gói điện thoại và bạn cần tạo viện trợ và bao gồm trong dự án của bạn.

đây là một ví dụ để giúp bạn bắt đầu ..

http://commandus.com/blog/?p=58

4

Sử dụng này USSD Interceptor found on GitHub.

Mô tả dự án khẳng định rằng đó là:

USSD Interceptor là một dịch vụ Android cho phép chặn và nhận USSD gọi kết quả văn bản và tái phát trên báo chí đối với bất kỳ nghe.

Link: github.com/alaasalman/ussdinterceptor

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