ADB - UiAutomator XML dump to pandas DataFrame
Tested against Windows / Python 3.11 / Anaconda
pip install adbuiautolite
#UiAutoDumpLite is a class for interacting with the UIAutomator tool to retrieve UI information
#from an Android device using ADB (Android Debug Bridge).
#
# Parameters:
# adb (AdbCommands, optional): An instance of AdbCommands for executing ADB commands.
# adb_path (str, optional): The path to the ADB executable. If not provided, it will use the
# system's ADB if available.
# serial_number (str, optional): The serial number of the Android device to target when using ADB.
# **kwargs: Additional keyword arguments to pass to AdbCommands.
#
# Methods:
# get_df(timeout=60, remove_old_file=True, with_fu=True, tmpfile="/sdcard/view.xml",
# sleep_after_dump=0.05, t_long_touch=1, **kwargs):
# - Retrieves UI information from the Android device and returns it as a DataFrame.
# Example usage
from adbuiautolite import UiAutoDumpLite
adbpath = r"C:\Android\android-sdk\platform-tools\adb.exe"
serial_number = "127.0.0.1:5555"
# alternative:
from usefuladb import AdbCommands
uadb = AdbCommands(adbpath, serial_number, use_busybox=False) #
dfg1 = UiAutoDumpLite(adb_path=adbpath, serial_number=serial_number) # either path and serial number
dfg2 = UiAutoDumpLite(adb=uadb) # or AdbCommands object
# Retrieve UI information from the Android device and return it as a DataFrame.
#
# Parameters:
# timeout (int, optional): The maximum time to wait for UI information retrieval, in seconds.
# remove_old_file (bool, optional): Whether to remove the old UI information file before dumping a new one.
# with_fu (bool, optional): Whether to include Tap objects for interaction in the DataFrame.
# tmpfile (str, optional): The path to the temporary UI information file on the Android device.
# sleep_after_dump (float, optional): Time to sleep after dumping UI information.
# t_long_touch (int, optional): Duration for long-touch actions.
# **kwargs: Additional keyword arguments to pass to AdbCommands.
#
# Returns:
# pandas.DataFrame: A DataFrame containing UI information.
df = dfg1.get_df(
timeout=60,
remove_old_file=True,
with_fu=True,
tmpfile="/sdcard/view.xml",
sleep_after_dump=0.05,
t_long_touch=1,
)
print(df.to_string())
df.loc[df.cc_content_desc=='searchbar'].ff_mouse_tap.iloc[0]()
df.loc[df.cc_content_desc=='searchbar'].ff_mouse_longtap.iloc[0](3) # seconds to click
# cc_hierarchy cc_index cc_text cc_resource_id cc_class cc_package cc_content_desc cc_checkable cc_checked cc_clickable cc_enabled cc_focusable cc_focused cc_scrollable cc_long_clickable cc_password cc_selected cc_NAF cc_start_x cc_start_y cc_end_x cc_end_y cc_width cc_height cc_center_x cc_center_y cc_area ff_dpad_longtap ff_dpad_tap ff_gamepad_longtap ff_gamepad_tap ff_joystick_longtap ff_joystick_tap ff_keyboard_longtap ff_keyboard_tap ff_mouse_longtap ff_mouse_tap ff_stylus_longtap ff_stylus_tap ff_tap ff_touchnavigation_longtap ff_touchnavigation_tap ff_touchpad_longtap ff_touchpad_tap ff_touchscreen_longtap ff_touchscreen_tap ff_trackball_longtap ff_trackball_tap
# 0 (node,) 0 android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 0 0 1600 900 1600 900 800 450 1440000 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450
# 1 (node, node) 0 android.widget.LinearLayout com.bluestacks.launcher False False False True False False False False False False NaN 0 0 1600 900 1600 900 800 450 1440000 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450
# 2 (node, node, node) 0 android:id/content android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 0 0 1600 900 1600 900 800 450 1440000 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450
# 3 (node, node, node, node) 0 android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 0 0 1600 900 1600 900 800 450 1440000 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450 x: 800 y: 450 t:1 x: 800 y: 450
# 4 (node, node, node, node, node) 0 com.bluestacks.launcher:id/drawer_layout androidx.drawerlayout.widget.DrawerLayout com.bluestacks.launcher False False False True False False False False False False NaN 0 36 1600 900 1600 864 800 468 1382400 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468
# 5 (node, node, node, node, node, node) 0 com.bluestacks.launcher:id/item_option android.widget.FrameLayout com.bluestacks.launcher False False False True True True False False False False NaN 0 36 1600 900 1600 864 800 468 1382400 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468
# 6 (node, node, node, node, node, node, node, 0.0) 0 android.view.View com.bluestacks.launcher False False False True False False False False False False NaN 0 36 1600 900 1600 864 800 468 1382400 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468
# 7 (node, node, node, node, node, node, node, 1.0) 1 android.view.ViewGroup com.bluestacks.launcher False False False True False False False False False False NaN 0 36 1600 900 1600 864 800 468 1382400 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468 x: 800 y: 468 t:1 x: 800 y: 468
# 8 (node, node, node, node, node, node, node, 1.0, node, 0.0) 0 com.bluestacks.launcher:id/searchRelativeLayout android.widget.RelativeLayout com.bluestacks.launcher False False True True True False False False False False NaN 501 117 1100 166 599 49 800 141 29351 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141
# 9 (node, node, node, node, node, node, node, 1.0, node, 0.0, node, 0) 0 com.bluestacks.launcher:id/searchPlayIcon android.widget.ImageView com.bluestacks.launcher searchbar False False False True False False False False False False NaN 520 131 539 150 19 19 529 140 361 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140 x: 529 y: 140 t:1 x: 529 y: 140
# 10 (node, node, node, node, node, node, node, 1.0, node, 0.0, node, 1) 1 com.bluestacks.launcher:id/searchEditText android.widget.EditText com.bluestacks.launcher False False True True True False False True False False true 538 117 1062 166 524 49 800 141 25676 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141 x: 800 y: 141 t:1 x: 800 y: 141
# 11 (node, node, node, node, node, node, node, 1.0, node, 0.0, node, 2) 2 com.bluestacks.launcher:id/searchIcon android.widget.ImageView com.bluestacks.launcher searchbar False False True True True False False False False False NaN 1062 131 1081 150 19 19 1071 140 361 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140 x:1071 y: 140 t:1 x:1071 y: 140
# 12 (node, node, node, node, node, node, node, 1.0, node, 1.0) 1 com.bluestacks.launcher:id/desktop androidx.viewpager.widget.b com.bluestacks.launcher False False False True True False False False False False NaN 44 202 1556 590 1512 388 800 396 586656 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396
# 13 (node, node, node, node, node, node, node, 1.0, node, 1.0, node) 0 android.view.ViewGroup com.bluestacks.launcher False False False True False False False False False False NaN 44 202 1556 590 1512 388 800 396 586656 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396 x: 800 y: 396 t:1 x: 800 y: 396
# 14 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 0) 0 android.view.View com.bluestacks.launcher False False True True True False False True False False true 44 202 296 396 252 194 170 299 48888 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299 x: 170 y: 299 t:1 x: 170 y: 299
# 15 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 1) 1 android.view.View com.bluestacks.launcher False False True True True False False True False False true 296 202 548 396 252 194 422 299 48888 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299 x: 422 y: 299 t:1 x: 422 y: 299
# 16 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 2) 2 android.view.View com.bluestacks.launcher False False True True True False False True False False true 548 202 800 396 252 194 674 299 48888 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299 x: 674 y: 299 t:1 x: 674 y: 299
# 17 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 3) 3 android.view.View com.bluestacks.launcher False False True True True False False True False False true 800 202 1052 396 252 194 926 299 48888 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299 x: 926 y: 299 t:1 x: 926 y: 299
# 18 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 4) 4 android.view.View com.bluestacks.launcher False False True True True False False True False False true 1052 202 1304 396 252 194 1178 299 48888 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299 x:1178 y: 299 t:1 x:1178 y: 299
# 19 (node, node, node, node, node, node, node, 1.0, node, 1.0, node, node, 5) 5 android.view.View com.bluestacks.launcher False False True True True False False True False False true 1304 202 1556 396 252 194 1430 299 48888 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299 x:1430 y: 299 t:1 x:1430 y: 299
# 20 (node, node, node, node, node, node, node, 1.0, node, 2.0) 4 com.bluestacks.launcher:id/dock android.widget.LinearLayout com.bluestacks.launcher False False False True False False False False False False NaN 196 667 1404 900 1208 233 800 783 281464 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783 x: 800 y: 783 t:1 x: 800 y: 783
# 21 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 0) 0 POPULAR GAMES TO PLAY com.bluestacks.launcher:id/popular_gam android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 196 676 1404 694 1208 18 800 685 21744 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685 x: 800 y: 685 t:1 x: 800 y: 685
# 22 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1) 1 com.bluestacks.launcher:id/frameLayout android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 196 694 1404 900 1208 206 800 797 248848 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797
# 23 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0) 0 android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 196 694 1404 900 1208 206 800 797 248848 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797 x: 800 y: 797 t:1 x: 800 y: 797
# 24 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node) 0 com.bluestacks.launcher:id/allappsLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False False True False False False False False False NaN 258 694 1342 876 1084 182 800 785 197288 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785 x: 800 y: 785 t:1 x: 800 y: 785
# 25 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 0.0) 0 com.bluestacks.launcher:id/appOneLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 324 694 483 876 159 182 403 785 28938 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785 x: 403 y: 785 t:1 x: 403 y: 785
# 26 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 0.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_one android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 353 720 453 820 100 100 403 770 10000 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770 x: 403 y: 770 t:1 x: 403 y: 770
# 27 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 0.0, node, 0.0, node) 0 com.bluestacks.launcher:id/popup_image_one android.widget.ImageView com.bluestacks.launcher False False False True False False False False False False NaN 427 723 450 746 23 23 438 734 529 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734 x: 438 y: 734 t:1 x: 438 y: 734
# 28 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 0.0, node, 1.0) 1 Dragonheir: Silent Gods com.bluestacks.launcher:id/app_name_one android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 324 828 483 876 159 48 403 852 7632 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852 x: 403 y: 852 t:1 x: 403 y: 852
# 29 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 1.0) 1 com.bluestacks.launcher:id/appTwoLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 483 694 642 876 159 182 562 785 28938 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785 x: 562 y: 785 t:1 x: 562 y: 785
# 30 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 1.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_two android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 512 720 612 820 100 100 562 770 10000 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770 x: 562 y: 770 t:1 x: 562 y: 770
# 31 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 1.0, node, 1.0) 1 The Lord of the Rings: War com.bluestacks.launcher:id/app_name_two android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 483 828 642 876 159 48 562 852 7632 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852 x: 562 y: 852 t:1 x: 562 y: 852
# 32 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 2.0) 2 com.bluestacks.launcher:id/appThreeLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 642 694 801 876 159 182 721 785 28938 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785 x: 721 y: 785 t:1 x: 721 y: 785
# 33 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 2.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_three android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 671 720 771 820 100 100 721 770 10000 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770 x: 721 y: 770 t:1 x: 721 y: 770
# 34 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 2.0, node, 0.0, node) 0 com.bluestacks.launcher:id/popup_image_three android.widget.ImageView com.bluestacks.launcher False False False True False False False False False False NaN 745 723 768 746 23 23 756 734 529 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734 x: 756 y: 734 t:1 x: 756 y: 734
# 35 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 2.0, node, 1.0) 1 Anocris com.bluestacks.launcher:id/app_name_three android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 642 828 801 876 159 48 721 852 7632 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852 x: 721 y: 852 t:1 x: 721 y: 852
# 36 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 3.0) 3 com.bluestacks.launcher:id/appFourLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 801 694 960 876 159 182 880 785 28938 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785 x: 880 y: 785 t:1 x: 880 y: 785
# 37 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 3.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_four android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 830 720 930 820 100 100 880 770 10000 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770 x: 880 y: 770 t:1 x: 880 y: 770
# 38 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 3.0, node, 1.0) 1 Lords Mobile: Kingdom Wars com.bluestacks.launcher:id/app_name_four android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 801 828 960 876 159 48 880 852 7632 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852 x: 880 y: 852 t:1 x: 880 y: 852
# 39 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 4.0) 4 com.bluestacks.launcher:id/appFiveLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 960 694 1118 876 158 182 1039 785 28756 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785 x:1039 y: 785 t:1 x:1039 y: 785
# 40 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 4.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_five android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 989 720 1089 820 100 100 1039 770 10000 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770 x:1039 y: 770 t:1 x:1039 y: 770
# 41 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 4.0, node, 1.0) 1 Idle Heroes com.bluestacks.launcher:id/app_name_five android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 960 828 1118 876 158 48 1039 852 7584 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852 x:1039 y: 852 t:1 x:1039 y: 852
# 42 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 5.0) 5 com.bluestacks.launcher:id/appSixLinearLayout android.widget.LinearLayout com.bluestacks.launcher False False True True True False False False False False NaN 1118 694 1276 876 158 182 1197 785 28756 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785 x:1197 y: 785 t:1 x:1197 y: 785
# 43 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 5.0, node, 0.0) 0 com.bluestacks.launcher:id/app_image_six android.widget.FrameLayout com.bluestacks.launcher False False False True False False False False False False NaN 1147 720 1247 820 100 100 1197 770 10000 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770 x:1197 y: 770 t:1 x:1197 y: 770
# 44 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 5.0, node, 0.0, node) 0 com.bluestacks.launcher:id/popup_image_six android.widget.ImageView com.bluestacks.launcher False False False True False False False False False False NaN 1221 723 1244 746 23 23 1232 734 529 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734 x:1232 y: 734 t:1 x:1232 y: 734
# 45 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 0, node, node, 5.0, node, 1.0) 1 Tentlan com.bluestacks.launcher:id/app_name_six android.widget.TextView com.bluestacks.launcher False False False True False False False False False False NaN 1118 828 1276 876 158 48 1197 852 7584 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852 x:1197 y: 852 t:1 x:1197 y: 852
# 46 (node, node, node, node, node, node, node, 1.0, node, 2.0, node, 1, node, 1) 1 com.bluestacks.launcher:id/viewBackground android.view.View com.bluestacks.launcher False False False True False False False False False False NaN 196 784 1404 900 1208 116 800 842 140128 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842 x: 800 y: 842 t:1 x: 800 y: 842
Metadata
Release files for adbuiautolite 0.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| adbuiautolite-0.10.tar.gz | 29.2 kB | Without provenance | Details for adbuiautolite-0.10.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| adbuiautolite-0.10-py3-none-any.whl | Python 3 | none | any | Details for adbuiautolite-0.10-py3-none-any.whl |
Total release size: 49.7 kB
Release files / adbuiautolite-0.10.tar.gz
| Download URL | adbuiautolite-0.10.tar.gz |
|---|---|
| Size | 29.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
656331b88357e5d4fa5736ce5e1860f3674f5a07a9052c0956d7ef13d5e0a023
|
|
BLAKE2b-256 checksum How to use checksums |
449fab2dde826a79e6eaa86506c806c78a00fb626af8d3ceade56026681b67a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.5
|
Release files / adbuiautolite-0.10-py3-none-any.whl
| Download URL | adbuiautolite-0.10-py3-none-any.whl |
|---|---|
| Size | 20.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3ee1df205136dbce7091bd58a3eb687d811ee6aadfbfa3f06e1dc72704470ea8
|
|
BLAKE2b-256 checksum How to use checksums |
84abff0894dc1d7d1c71b58c9dfdb110558a798ea5eccbe11af77f71c5bca4d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.5
|
Security for adbuiautolite 0.10
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.