我遇到問題。在不同的手機上運行我的測試時,試圖打開圖庫時,它不起作用。獲取默認圖像openner的軟件包名稱
現在,我想要做的是獲取默認畫廊開罐器應用程序的包名稱,所以我可以在我的代碼中使用它。我怎樣才能以編程方式做到這一點?
這是爲什麼我在Nexus 5,運行測試時
Resources resources = InstrumentationRegistry.getTargetContext().getResources();
Uri imageUri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://" +
resources.getResourcePackageName(R.drawable.ic_launcher) + '/' +
resources.getResourceTypeName(R.drawable.ic_launcher) + '/' +
resources.getResourceEntryName(R.drawable.ic_launcher));
Intent resultData = new Intent();
resultData.setData(imageUri);
Instrumentation.ActivityResult result = new Instrumentation.ActivityResult(Activity.RESULT_OK, resultData);
intending(toPackage("com.google.android.apps.photos")).respondWith(result);
//Click the select button
onView(withId(R.id.register_image)).perform(click());
threadSleep(MILISECONDS_TIMEOUT);
onView(withText("From Gallery")).perform(click());
threadSleep(MILISECONDS_TIMEOUT);
Spoon.screenshot(getActivityInstance(), "picture_selected");
基本上使用時,所有我需要做的就是以獲取影像的應用程序的包名。