代码之家  ›  专栏  ›  技术社区  ›  Barmaley

是否有处理ACTION_RESPONSE_VIA_MESSAGE的服务示例

  •  2
  • Barmaley  · 技术社区  · 10 年前

    尝试将我的应用程序设置为默认短信应用程序(正如KitKat中所要求的那样)。 instructions 非常清楚,相反,指出:

    在服务中,包括ACTION_RESPONSE_VIA_MESSAGE的意向筛选器 (“android.intent.action.RESPOND_VIA_MESSAGE”),带有模式,短信:, smsto:、mms:和mmsto:。此服务还必须要求 SEND_RESPOND_VIA_MESSAGE权限。

    真的无法理解如何编写此服务?我曾试图追踪Android的消息来源,但仍不清楚。

    有人能给我举个好例子吗?

    1 回复  |  直到 10 年前
        1
  •  2
  •   Tomer Mor    10 年前

    注册此意图的短信应用程序示例:

    protected void onHandleIntent(Intent intent) {
            if (intent != null) {
                if (TelephonyManager.ACTION_RESPOND_VIA_MESSAGE.equals(intent.getAction())) {
                    String num = intent.getDataString();
                    num = num.replace("smsto:", "").replace("sms:", "");
                    String msg = intent.getStringExtra(Intent.EXTRA_TEXT);
                    // send the data to via intent
                    Intent intentService = new Intent(this, SomeClass.class);
                    startService(intentService);
                }
            }
        }
    

    通过SmsManeger发送消息- smsManager.sendTextMessage(address, null, msg, piSent, piDelivered);