Not able to select the images from gallery

Hi,

I am not able to select the 2nd image from the gallery. Please find the below code and UI Automator screenshot.

driver.findElementsByClassName(“android.widget.RelativeLayout”).get(1).click();

Kindly help.

@DeekshithaS you are trying to tap on second Relative layout in your app which is not image.

send us more data to help:

  1. in UI Automator tap on second image and send screenshot
  2. in UI Automator tap on first layout above image and again send screenshot

@Aleksei thanks for the quick response.

  1. in UI Automator tap on second image and send screenshot. - I am not able to tap on any image. When i try to tap, it selects full frame. kindly help

  2. Please find the screenshot of UI Automator tap on first layout above image.

@DeekshithaS expand here - https://screencast.com/t/JvoHPaSkwk65

Hi,

Please find the attached screenshot.

@DeekshithaS it is look like more WebView inside. Can you share result of:

  1. open this page in test code
  2. do:
System.out.println(driver.getPageSource())
  1. share it at https://gist.github.com/

BTW give us more info:
Appium version -
Java-client version - (or other used)
Android of test phone/Emulator version -

Hi,

Please find the github link below:

Appium version -Appium v1.6.5
Java-client version - (or other used) - java version 8
Android of test phone/Emulator version -Android test phone 6.0.

@DeekshithaS try:

((AndroidElement) driver.findElements(MobileBy.id("list_item_content")).get(1)).click();

your image gallery is here:

<android.widget.ListView index="0" text="" class="android.widget.ListView" package="com.android.gallery3d" content-desc="Local albums" checkable="false" checked="false" clickable="true" enabled="true" focusable="true" focused="true" scrollable="true" long-clickable="false" password="false" selected="false" bounds="[0,144][720,1208]" resource-id="com.android.gallery3d:id/list_albumset" instance="0">
                        <android.widget.FrameLayout index="0" text="" class="android.widget.FrameLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,144][720,312]" resource-id="com.android.gallery3d:id/gallery_statelist_view" instance="4">
                           <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,144][720,312]" resource-id="com.android.gallery3d:id/list_item_content" instance="5">
                              <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[32,162][178,294]" resource-id="com.android.gallery3d:id/album_cover_image" instance="0" />
                              <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,192][624,264]" resource-id="com.android.gallery3d:id/albumset_info" instance="6">
                                 <android.widget.TextView index="0" text="Camera" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,192][306,230]" resource-id="com.android.gallery3d:id/album_name" instance="1" />
                                 <android.widget.TextView index="1" text=" 3 photos" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,234][300,264]" resource-id="com.android.gallery3d:id/photo_count" instance="2" />
                              </android.widget.RelativeLayout>
                              <android.widget.RelativeLayout index="2" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,196][704,260]" resource-id="com.android.gallery3d:id/right_icons" instance="7">
                                 <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,196][704,260]" resource-id="com.android.gallery3d:id/list_arrow" instance="1" />
                              </android.widget.RelativeLayout>
                           </android.widget.RelativeLayout>
                        </android.widget.FrameLayout>
                        <android.widget.FrameLayout index="1" text="" class="android.widget.FrameLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,313][720,481]" resource-id="com.android.gallery3d:id/gallery_statelist_view" instance="5">
                           <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,313][720,481]" resource-id="com.android.gallery3d:id/list_item_content" instance="8">
                              <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[32,331][178,463]" resource-id="com.android.gallery3d:id/album_cover_image" instance="2" />
                              <android.widget.ImageView index="1" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[32,423][72,463]" resource-id="com.android.gallery3d:id/frame_overlay_icon" instance="3" />
                              <android.widget.RelativeLayout index="2" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,361][624,433]" resource-id="com.android.gallery3d:id/albumset_info" instance="9">
                                 <android.widget.TextView index="0" text="My favourites" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,361][378,399]" resource-id="com.android.gallery3d:id/album_name" instance="3" />
                                 <android.widget.TextView index="1" text=" 1 photo" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,403][289,433]" resource-id="com.android.gallery3d:id/photo_count" instance="4" />
                              </android.widget.RelativeLayout>
                              <android.widget.RelativeLayout index="3" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,365][704,429]" resource-id="com.android.gallery3d:id/right_icons" instance="10">
                                 <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,365][704,429]" resource-id="com.android.gallery3d:id/list_arrow" instance="4" />
                              </android.widget.RelativeLayout>
                           </android.widget.RelativeLayout>
                        </android.widget.FrameLayout>
                        <android.widget.FrameLayout index="2" text="" class="android.widget.FrameLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,482][720,650]" resource-id="com.android.gallery3d:id/gallery_statelist_view" instance="6">
                           <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,482][720,650]" resource-id="com.android.gallery3d:id/list_item_content" instance="11">
                              <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[32,500][178,632]" resource-id="com.android.gallery3d:id/album_cover_image" instance="5" />
                              <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,530][624,602]" resource-id="com.android.gallery3d:id/albumset_info" instance="12">
                                 <android.widget.TextView index="0" text="Screenshots" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,530][364,568]" resource-id="com.android.gallery3d:id/album_name" instance="5" />
                                 <android.widget.TextView index="1" text=" 38 photos" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,572][312,602]" resource-id="com.android.gallery3d:id/photo_count" instance="6" />
                              </android.widget.RelativeLayout>
                              <android.widget.RelativeLayout index="2" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,534][704,598]" resource-id="com.android.gallery3d:id/right_icons" instance="13">
                                 <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,534][704,598]" resource-id="com.android.gallery3d:id/list_arrow" instance="6" />
                              </android.widget.RelativeLayout>
                           </android.widget.RelativeLayout>
                        </android.widget.FrameLayout>
                        <android.widget.FrameLayout index="3" text="" class="android.widget.FrameLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,651][720,819]" resource-id="com.android.gallery3d:id/gallery_statelist_view" instance="7">
                           <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,651][720,819]" resource-id="com.android.gallery3d:id/list_item_content" instance="14">
                              <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[32,669][178,801]" resource-id="com.android.gallery3d:id/album_cover_image" instance="7" />
                              <android.widget.RelativeLayout index="1" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,699][624,771]" resource-id="com.android.gallery3d:id/albumset_info" instance="15">
                                 <android.widget.TextView index="0" text="Pictures" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,699][312,737]" resource-id="com.android.gallery3d:id/album_name" instance="7" />
                                 <android.widget.TextView index="1" text=" 171 photos" class="android.widget.TextView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[210,741][324,771]" resource-id="com.android.gallery3d:id/photo_count" instance="8" />
                              </android.widget.RelativeLayout>
                              <android.widget.RelativeLayout index="2" text="" class="android.widget.RelativeLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,703][704,767]" resource-id="com.android.gallery3d:id/right_icons" instance="16">
                                 <android.widget.ImageView index="0" text="" class="android.widget.ImageView" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[640,703][704,767]" resource-id="com.android.gallery3d:id/list_arrow" instance="8" />
                              </android.widget.RelativeLayout>
                           </android.widget.RelativeLayout>
                        </android.widget.FrameLayout>
                        <android.widget.FrameLayout index="4" text="" class="android.widget.FrameLayout" package="com.android.gallery3d" content-desc="" checkable="false" checked="false" clickable="true" enabled="true" focusable="false" focused="false" scrollable="false" long-clickable="false" password="false" selected="false" bounds="[0,820][720,988]" resource-id="com.android.gallery3d:id/gallery_statelist_view" instance="8" />
                     </android.widget.ListView>

@Aleksei

It is not working still… getting below error:

Finding ‘list_item_content’ using ‘ID’ with the contextId: ‘’ multiple: true
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Using: UiSelector[RESOURCE_ID=com.tripin.shipper:id/list_item_content]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] getElements selector:UiSelector[RESOURCE_ID=com.tripin.shipper:id/list_item_content]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Element[] is null: (0)

@DeekshithaS the search is happens with “com.tripin.shipper” ! package while image gallery has “com.android.gallery3d”. try next:

driver.findElements(MobileBy.AndroidUIAutomator("new UiSelector().resourceIdMatches(\".*id/list_item_content\")")).get(1).click();

@Aleksei I tried with the above code… Still the result is same as before. Kindly find the error below:

Finding ‘new UiSelector().resourceIdMatches(".*id/list_item_content")’ using ‘ANDROID_UIAUTOMATOR’ with the contextId: ‘’ multiple: true
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Parsing selector: new UiSelector().resourceIdMatches(".*id/list_item_content")
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] UiSelector coerce type: class java.lang.String arg: “.*id/list_item_content”
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Using: UiSelector[RESOURCE_ID_REGEX=.*id/list_item_content]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] getElements selector:UiSelector[RESOURCE_ID_REGEX=.*id/list_item_content]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Element[] is null: (0)
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] getElements tmp selector:UiSelector[INSTANCE=0, RESOURCE_ID_REGEX=.*id/list_item_content]

@DeekshithaS i am ended all mine suggestions :frowning: you need investigate yourself more…

@Aleksei Thank you so much for the help… I will investigate more about this…