Unfortunately there doesn't seem to be a way to do what you want to do. The
messaging app is looking for an intent with the SENDTO action and a phone
number, or the SEND action and some data (such as an image), but not both a
phone number and some data.
-Erik
On Monday, March 26, 2012 11:59:39 AM UTC-7, Farhan wrote:
>
> I tried the smsto:uri method. It works fine, but does not allow me to
> attach the picture that I am passing with the intent.
> "it.setType("image/jpeg");" causes my application to crash, and without
> this line of code, it would not attach an image file with the intent.
>
> My client has now agreed to let a chooser be there. But I now want the
> chooser to show choices that can send mms only, and omit other
> applications. I think, correct me if wrong, getting list of all packages
> for the intent, and making a custom dialog box to pick one of the package
> would get me through right?
>
> I was wondering if there was a shorter way :(
>
> On Mon, Mar 26, 2012 at 6:02 AM, Justin Anderson <[email protected]>wrote:
>
>> How to go about these?
>>>
>>
>> http://developer.android.com/reference/android/content/pm/PackageManager.html#queryIntentActivities%28android.content.Intent,%20int%29
>>
>> But seriously... you need to tell your client that they shouldn't lock
>> the user into trying to use one app. I don't use the default mms app, and
>> if an app EVER forced me to use the default one it would get uninstalled in
>> half a second.
>>
>>
>> Thanks,
>> Justin Anderson
>> MagouyaWare Developer
>> http://sites.google.com/site/magouyaware
>>
>>
>> On Sun, Mar 25, 2012 at 6:50 PM, Farhan Tariq <[email protected]>wrote:
>>
>>> >> you can always check if the intent will succeed
>>> >> by checking to see if there's anyone registered to receive it.
>>>
>>> How to go about these?
>>>
>>> On Mon, Mar 26, 2012 at 5:32 AM, Kristopher Micinski <
>>> [email protected]> wrote:
>>>
>>>> If that's the case, then you've written the intent wrong.
>>>>
>>>> However. If you want to artificially impose the constraint of using a
>>>> specific messenger, you can always check if the intent will succeed
>>>> and fall back to a more generic intent otherwise, by checking to see
>>>> if there's anyone registered to receive it.
>>>>
>>>> kris
>>>>
>>>> On Sun, Mar 25, 2012 at 8:10 PM, Farhan Tariq <[email protected]>
>>>> wrote:
>>>> > The reasoning to use 'one' app would simply be that my client wants
>>>> it to be
>>>> > like that.
>>>> >
>>>> > Plus, other applications in chooser do not work properly too. Like,
>>>> the
>>>> > addresses do not get populated in the chosen application. It does not
>>>> give a
>>>> > choice for the "SMS" applications, but from a HUGE list if different
>>>> > applications, like facebook, gmail that do not seem to work fine with
>>>> the
>>>> > data being passed with the intent.
>>>> >
>>>> >
>>>> > On Mon, Mar 26, 2012 at 4:57 AM, A. Elk <
>>>> [email protected]>
>>>> > wrote:
>>>> >>
>>>> >> There is no "default" messaging app. Any messaging application that
>>>> >> chooses to handle MMS can respond to this intent. If the
>>>> user chooses to
>>>> >> make one of the applications a default, then it becomes one until
>>>> the user
>>>> >> unsets it as the default.
>>>> >>
>>>> >> You seem to have a reason for wanting "one" application to handle
>>>> MMS. I
>>>> >> would like to know why. Perhaps I can provide further wisdom in this
>>>> regard.
>>>> >> In general, Android promotes the idea of letting the user decide
>>>> which
>>>> >> application to use.
>>>> >>
>>>> >>
>>>> >> On Sunday, March 25, 2012 4:21:57 PM UTC-7, Farhan wrote:
>>>> >>>
>>>> >>> Intent picMessageIntent = new
>>>> Intent(android.content.Intent.ACTION_SEND);
>>>> >>> picMessageIntent.putExtra("address", "Some Numbers");
>>>> >>> picMessageIntent.setType("image/jpeg");
>>>> >>> picMessageIntent.putExtra("sms_body", "Some Text");
>>>> >>> picMessageIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
>>>> >>> picMessageIntent.setPackage("com.android.mms");
>>>> >>>
>>>> >>> Yes, I understand now that the package may not be there in a
>>>> device, so
>>>> >>> it is giving a chooser.
>>>> >>>
>>>> >>> Is there a way to find the default messaging application or the
>>>> built-in
>>>> >>> messaging, and set its package in the intent above?
>>>> >>>
>>>> >>>
>>>> >>> On Sun, Mar 25, 2012 at 5:29 PM, Justin Anderson <
>>>> [email protected]>
>>>> >>> wrote:
>>>> >>>>>
>>>> >>>>> I tried to set package of the intent as "com.android.mms" and it
>>>> seems
>>>> >>>>> to work fine on my phone, as well as emulator
>>>> >>>>
>>>> >>>> You don't want to do this... Not all phones will have the stock
>>>> android
>>>> >>>> app with that package name. Many manufacturers replace stock
>>>> android apps
>>>> >>>> with their own for things like the camera, sms, etc...
>>>> >>>>
>>>> >>>> Also, there are a lot of 3rd party apps out there that handle
>>>> sms/mms...
>>>> >>>> If a user has installed a 3rd party app then they probably don't
>>>> want to be
>>>> >>>> tied down to the one that came on the device.
>>>> >>>>
>>>> >>>>
>>>> >>>>> but it is showing a chooser for the mms intent to my friend. I am
>>>> not
>>>> >>>>> creating a chooser anywhere
>>>> >>>>
>>>> >>>> If that is the case then what is most likely happening is that your
>>>> >>>> friend has more than one sms/mms app on the device. You probably
>>>> also will
>>>> >>>> notice that the chooser has a checkbox that, if checked, will make
>>>> their
>>>> >>>> selection the default from then on. If they check that box and
>>>> choose which
>>>> >>>> app they want to use to send the sms/mms message then the next
>>>> time you run
>>>> >>>> your app you will not get a chooser.
>>>> >>>>
>>>> >>>> This is how standard Android works. Please don't force people out
>>>> of
>>>> >>>> the standard.
>>>> >>>>
>>>> >>>>
>>>> >>>>> Intent it = new Intent(Intent.ACTION_VIEW);
>>>> >>>>> it.setType("vnd.android-dir/mms-sms");
>>>> >>>>
>>>> >>>> I have never created an app dealing with sms/mms messages before,
>>>> but I
>>>> >>>> don't think this is the way to go... ACTION_VIEW generally means
>>>> that you
>>>> >>>> are wanting to display something, not create and/or edit
>>>> something. Unless
>>>> >>>> I am misunderstanding what you are trying to accomplish, you
>>>> should probably
>>>> >>>> use ACTION_SEND. What does your intent actually look like?
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> Thanks,
>>>> >>>> Justin Anderson
>>>> >>>> MagouyaWare Developer
>>>> >>>> http://sites.google.com/site/magouyaware
>>>> >>>>
>>>> >>>>
>>>> >>>>
>>>> >>>> On Sun, Mar 25, 2012 at 5:02 AM, Daniel Hoeggi
>>>> >>>> <[email protected]> wrote:
>>>> >>>>>
>>>> >>>>> try this
>>>> >>>>>
>>>> >>>>> Intent it = new Intent(Intent.ACTION_VIEW);
>>>> >>>>> it.setType("vnd.android-dir/mms-sms");
>>>> >>>>>
>>>> >>>>> On Sun, Mar 25, 2012 at 11:27 AM, Farhan Tariq <
>>>> [email protected]>
>>>> >>>>> wrote:
>>>> >>>>>>
>>>> >>>>>> Hi all,
>>>> >>>>>> I am working on an application that allows user to create mms
>>>> messages
>>>> >>>>>> according to a template, for android 2.2. I am done with most of
>>>> the work,
>>>> >>>>>> but I am stuck with one thing. I want to be able to launch the
>>>> android's
>>>> >>>>>> default messaging application to send the mms. I tried to set
>>>> package of the
>>>> >>>>>> intent as "com.android.mms" and it seems to work fine on my
>>>> phone, as well
>>>> >>>>>> as emulator, but it is showing a chooser for the mms intent to
>>>> my friend. I
>>>> >>>>>> am not creating a chooser anywhere, still. Can anyone help me
>>>> get through
>>>> >>>>>> this. A little guidance is I think all I need. Thank you
>>>> >>>>>>
>>>> >>>>>> Regards
>>>> >>>>>>
>>>> >>>>>> Farhan
>>>> >>>>>> --
>>>> >>>>>> You received this message because you are subscribed to the
>>>> Google
>>>> >>>>>> Groups "Android Developers" group.
>>>> >>>>>> To post to this group, send email to
>>>> >>>>>> [email protected]
>>>> >>>>>> To unsubscribe from this group, send email to
>>>> >>>>>> [email protected]
>>>> >>>>>> For more options, visit this group at
>>>> >>>>>> http://groups.google.com/group/android-developers?hl=en
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> --
>>>> >>>>> You received this message because you are subscribed to the Google
>>>> >>>>> Groups "Android Developers" group.
>>>> >>>>> To post to this group, send email to
>>>> >>>>> [email protected]
>>>> >>>>> To unsubscribe from this group, send email to
>>>> >>>>> [email protected]
>>>> >>>>> For more options, visit this group at
>>>> >>>>> http://groups.google.com/group/android-developers?hl=en
>>>> >>>>
>>>> >>>>
>>>> >>>> --
>>>> >>>> You received this message because you are subscribed to the Google
>>>> >>>> Groups "Android Developers" group.
>>>> >>>> To post to this group, send email to
>>>> [email protected]
>>>> >>>> To unsubscribe from this group, send email to
>>>> >>>> [email protected]
>>>> >>>> For more options, visit this group at
>>>> >>>> http://groups.google.com/group/android-developers?hl=en
>>>> >>>
>>>> >>>
>>>> >> --
>>>> >> You received this message because you are subscribed to the Google
>>>> >> Groups "Android Developers" group.
>>>> >> To post to this group, send email to
>>>> [email protected]
>>>> >> To unsubscribe from this group, send email to
>>>> >> [email protected]
>>>> >> For more options, visit this group at
>>>> >> http://groups.google.com/group/android-developers?hl=en
>>>> >
>>>> >
>>>> > --
>>>> > You received this message because you are subscribed to the Google
>>>> > Groups "Android Developers" group.
>>>> > To post to this group, send email to
>>>> [email protected]
>>>> > To unsubscribe from this group, send email to
>>>> > [email protected]
>>>> > For more options, visit this group at
>>>> > http://groups.google.com/group/android-developers?hl=en
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Android Developers" group.
>>>> To post to this group, send email to
>>>> [email protected]
>>>> To unsubscribe from this group, send email to
>>>> [email protected]
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/android-developers?hl=en
>>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Android Developers" group.
>>> To post to this group, send email to [email protected]
>>> To unsubscribe from this group, send email to
>>> [email protected]
>>> For more options, visit this group at
>>> http://groups.google.com/group/android-developers?hl=en
>>>
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Android Developers" group.
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>> For more options, visit this group at
>> http://groups.google.com/group/android-developers?hl=en
>>
>
>
--
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en