問題があります。異なる電話機でテストを実行しているときに、ギャラリーを開くときに機能していません。デフォルト画像opennerのパッケージ名を取得
ここで、デフォルトのギャラリーオープナーアプリのパッケージ名を取得したいので、コードで使用できます。これをプログラムで行うにはどうすればよいですか?ここで
は基本的に、私がする必要があるすべてはイメージのためのアプリケーションのパッケージ名を取得することです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");
ネクサス上でテストを実行しているときに私が使用しています方法です。