WAI
Status Update
Comments
ss...@google.com <ss...@google.com> #3
Hi,
We have passed this defect on to the development team and will update this issue with more information as it becomes available.
Thanks
We have passed this defect on to the development team and will update this issue with more information as it becomes available.
Thanks
lb...@gmail.com <lb...@gmail.com> #4
@2 Thank you. I've also created a post about this on StackOverflow, in case I did something wrong :
http://stackoverflow.com/q/35842612/878126
lb...@gmail.com <lb...@gmail.com> #5
Also notice the difference between the names of the intents. For Twitter, I see 2 items that are simply "Twitter", instead of the real names. This happens even on Android 5.
ss...@google.com <ss...@google.com> #6
HI,
Comments from Google development:
We do this on purpose to create a deliberate separation between the high-priority app-specific targets/actions and the standard queried targets from the rest of the system.
Comments from Google development:
We do this on purpose to create a deliberate separation between the high-priority app-specific targets/actions and the standard queried targets from the rest of the system.
lb...@gmail.com <lb...@gmail.com> #7
@5 This is incorrect.
I don't see any "high prioroty app-specific targets" compared to the code I've written. In the video, it shows the current app together in the same block as the others, while "Total Commander" is at the bottom, separated from the others for no apparent reason
In addition, you've only addressed one of the problems here, and you didn't explain why it's different from the native dialog.
Please look at the videos again.
One of the items shows an app without any text below, and one app (twitter) has 2 items, while just having the text "Twitter" .
This is not what the native picker shows.
I don't see any "high prioroty app-specific targets" compared to the code I've written. In the video, it shows the current app together in the same block as the others, while "Total Commander" is at the bottom, separated from the others for no apparent reason
In addition, you've only addressed one of the problems here, and you didn't explain why it's different from the native dialog.
Please look at the videos again.
One of the items shows an app without any text below, and one app (twitter) has 2 items, while just having the text "Twitter" .
This is not what the native picker shows.
Description
1. import the project that's attached here, or create a new project that calls "test" function, given this code:
private void prepareIntentToShare(Intent intent) {
intent.setAction(android.content.Intent.ACTION_SEND);
intent.setType("image/*");
intent.putExtra(Intent.EXTRA_STREAM, mUri);
intent.putExtra(android.content.Intent.EXTRA_SUBJECT, "title");
intent.putExtra(android.content.Intent.EXTRA_TEXT, "body");
}
private void test() {
List<Intent> targetedShareIntents = new ArrayList<>();
Intent shareIntent = new Intent();
prepareIntentToShare(shareIntent);
final List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(shareIntent, 0);
if (!resInfo.isEmpty()) {
for (ResolveInfo resolveInfo : resInfo) {
Intent targetedShareIntent = new Intent();
prepareIntentToShare(targetedShareIntent);
targetedShareIntent.setClassName(resolveInfo.activityInfo.packageName,
targetedShareIntents.add(targetedShareIntent);
}
Intent chooserIntent = Intent.createChooser(targetedShareIntents.remove(targetedShareIntents.size() - 1), "Select app to share");
chooserIntent.putExtra(Intent.EXTRA_INITIAL_INTENTS, targetedShareIntents.toArray(new Parcelable[targetedShareIntents.size()]));
startActivity(chooserIntent);
}
}
2. have these apps installed, to reproduce the issue:
com.android.bluetooth
com.google.android.apps.photos
com.google.android.keep
com.google.android.talk
com.google.android.apps.maps
com.google.android.apps.plus
com.google.android.apps.messaging
com.android.nfc
com.google.android.apps.docs
com.whatsapp
com.facebook.orca
com.gogobot.gogodroid
la.droid.qr
com.facebook.katana
com.ghisler.android.TotalCommander
Alternatively, run the app on an emulator, and yet have at least one app that can share the above intent (can be the current app). The attached project can do it. Just uncomment the correct lines in its manifest.
3. run the app, and behold the grid of items.
- What happened.
Some cells became empty (yet at least non clickable), and you might also see one cell that doesn't have a name for the app.
- What you think the correct behavior should be.
It should look about the same as the default intent chooser, with a full grid of items.
On Android 5.x and below, this problem doesn't occur
Tested device: Nexus 5.
Tested Android version: 6.0.1 , MMB29Q
Attached videos of both emulator and Nexus 5, and also the project.
Also attached APKs for device and emulator.