5
是否有可能知道哪个包或进程发送了Intent结果?意图结果,如何知道是谁发送的?
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
我发现了一个办法知道哪些应用程序能够处理这个意图,但我也想知道选择哪一个,或者说,哪一个返回的结果。这可能吗?
是否有可能知道哪个包或进程发送了Intent结果?意图结果,如何知道是谁发送的?
Intent intent = new Intent();
intent.setType("image/*");
intent.setAction(Intent.ACTION_GET_CONTENT);
我发现了一个办法知道哪些应用程序能够处理这个意图,但我也想知道选择哪一个,或者说,哪一个返回的结果。这可能吗?
这取决于应用程序是如何开发的。 某些应用程序返回一个充满东西的Intent对象,其他为空或空。
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent i) {
if (i!=null){
i.getPackage();
i.getExtras();
i.getData();
i.getScheme();
i.getType();
}
}
尝试记录/读取Intent中的所有可能的值。
您也可以试着看看Logcat
。它包含有关何时开始以及如何开始的信息。我尝试过使用它来了解意向是否开始。
有趣的问题...... – Pragnani
可能重复的[如何在Android中找到意图源?](http://stackoverflow.com/questions/4789155/how-to-find-intent-source-in-安卓) – nhahtdh