Получить данные от отправки до намерения

Пытаюсь написать смс менеджер, хочу получить доступ к своему приложению из контакта. Я добавляю следующую строку в манифест

        <intent-filter>
            <category android:name="android.intent.category.DEFAULT" />
            <action android:name="android.intent.action.SENDTO" />
            <data android:scheme="sms" />
            <data android:scheme="smsto" />
        </intent-filter>

и это работает, но я хочу получить номер телефона, имя, идентификатор и ... исходя из этого намерения, как получить данные?


person Shayan Pourvatan    schedule 17.08.2013    source источник


Ответы (1)


В данном случае с этим будет достаточно:

//In the activity
Intent intent = getIntent();
String data = intent.getDataString();
//The result in data will be like sms:999%9999%9999 the % it's because is a URI
//If you want to get the phoneNumber directly
String phoneNumber = i.getData().getSchemeSpecificPart();//The result 999 9999 9999

Таким образом, вы можете получить по номеру телефона (999 9999 9999) имя контакта, идентификатор и т. Д. Ответ вы можете увидеть здесь:

Получить контакт по номеру телефона на Android

Когда вы пытаетесь использовать фильтр намерений, первым делом ищите в документации, куда/как создатель отправляет информацию. В таком случае:

http://developer.android.com/reference/android/content/Intent.html#ACTION_SENDTO

person titusfx    schedule 25.08.2013