Oh looks like this will work:

  List<ResolveInfo> activityList = pm.queryIntentActivities
(sendIntent, 0);
  for (int i = 0; i < activityList.size(); i++) {
    ResolveInfo app = activityList.get(i);
    Drawable d = app.icon;
    Log.e("###", "Name: " + app.activityInfo.name);
  }

I'll put together a picker dialog to handle this and post it
afterwards, if someone could spot-check it that would be great,

Thanks


On Dec 16, 6:37 pm, Mark Wyszomierski <[email protected]> wrote:
> Ok so I can get a list of names which will match my intent with the
> following:
>
>   // Get apps which can handle text/plain (or at least claim to).
>   Intent sendIntent = new Intent(Intent.ACTION_SEND, null);
>   sendIntent.addCategory(Intent.CATEGORY_DEFAULT);
>   sendIntent.setType("text/plain");
>   PackageManager pm = getPackageManager();
>   List<ResolveInfo> activityList = pm.queryIntentActivities
> (sendIntent, 0);
>
> and this will give me (on my phone):
>
>   com.android.mms.ui.ComposeMessageActivity
>   com.twidroid.SendTweet
>   com.facebook.katana.ShareLinkActivity
>   com.google.android.gm.ComposeActivityGmail
>
> so yeah I can see facebook is handling it with ShareLinkActivity (and
> I ain't sharing a link). So knowing this, I suppose I could build my
> own picker dialog, and specifically modify the intent for facebook by
> supplying only a url, instead of real text.
>
> How could I find the cool little icons that each app uses to go with
> my own picker dialog? I don't like doing this, I wish they did not
> implement facebook like this..
>
> Thanks
>
> On Dec 16, 6:24 pm, "Mark Murphy" <[email protected]> wrote:
>
>
>
> > > Trying to a share a bit of text using ACTION_SEND. Facebook will popup
> > > as an app capable of handling this, but fails to handle the intent
> > > correctly. Using this:
>
> > >     Intent intent = new Intent(Intent.ACTION_SEND);
> > >     intent .setType("text/plain");
> > >     intent .putExtra(android.content.Intent.EXTRA_TEXT, "This is a
> > > test.");
> > >     startActivity(Intent.createChooser(intent, "testing..."));
>
> > > I read that the problem is that while Facebook has registered as
> > > supporting text/plain, it can only actually deal with urls.
>
> > > If this is really a problem, is there a way I can somehow explicitly
> > > remove Facebook from the list of applications that can handle my
> > > ACTION_SEND request? Or somehow modify my intent to specifically deal
> > > with Facebook?
>
> > I don't know about the latter. If you are willing to roll your own
> > chooser, the former should be possible. The underlying PackageManager
> > methods that support the chooser, such as queryIntentActivities(), would
> > allow you to find miscreants and filter them out of your list. You'd need
> > to present that list to the user, though.
>
> > --
> > Mark Murphy (a Commons Guy)http://commonsware.com
> > Android App Developer Books:http://commonsware.com/books.html

-- 
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

Reply via email to