From 9ee7654e49767c24ef17c7dbd6edf8188518f3e1 Mon Sep 17 00:00:00 2001 From: Astariul Date: Fri, 29 Mar 2024 19:54:32 +0900 Subject: [PATCH 1/3] =?UTF-8?q?=E2=9C=A8=20Use=20website=20with=20text=20f?= =?UTF-8?q?ield=20instead=20of=20message=20app=20(which=20is=20not=20worki?= =?UTF-8?q?ng=20on=20all=20emulators)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kebbie/emulator.py | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/kebbie/emulator.py b/kebbie/emulator.py index bd8a091..95d7836 100644 --- a/kebbie/emulator.py +++ b/kebbie/emulator.py @@ -22,7 +22,6 @@ from selenium.webdriver.common.actions.action_builder import ActionBuilder from selenium.webdriver.common.actions.pointer_input import PointerInput from selenium.webdriver.common.by import By -from selenium.webdriver.common.keys import Keys from selenium.webdriver.remote.webelement import WebElement @@ -52,11 +51,8 @@ } DEFAULT_IOS_NAME = "iPhone 15 Pro" DEFAULT_IOS_PLATFORM = "17.4" -APP_PACKAGE = "com.google.android.apps.messaging" -APP_ACTIVITY = "com.google.android.apps.messaging.ui.ConversationListActivity" -ANDROID_TYPING_FIELD_ID = "com.google.android.apps.messaging:id/compose_message_text" -ANDROID_START_CHAT_FIELD_ID = "com.google.android.apps.messaging:id/start_chat_fab" -ANDROID_RECIPIENT_FIELD_ID = "com.google.android.apps.messaging:id/recipient_text_view" +BROWSER_PAD_URL = "https://www.justnotepad.com" +ANDROID_TYPING_FIELD_CLASS_NAME = "android.widget.EditText" DUMMY_RECIPIENT = "0" IOS_TYPING_FIELD_ID = "messageBodyField" IOS_START_CHAT_CLASS_NAME = "XCUIElementTypeCell" @@ -295,13 +291,15 @@ def _access_typing_field(self): will type our text. """ if self.platform == ANDROID: - self.driver.start_activity(APP_PACKAGE, APP_ACTIVITY) - self.driver.find_element(By.ID, ANDROID_START_CHAT_FIELD_ID).click() - recipient = self.driver.find_element(By.ID, ANDROID_RECIPIENT_FIELD_ID) - recipient.click() - recipient.send_keys(DUMMY_RECIPIENT) - ActionChains(self.driver).send_keys(Keys.RETURN).perform() - self.typing_field = self.driver.find_element(By.ID, ANDROID_TYPING_FIELD_ID) + subprocess.run( + ["adb", "shell", "am", "start", "-a", "android.intent.action.VIEW", "-d", BROWSER_PAD_URL], + stdout=subprocess.PIPE, + ) + typing_field_loaded = False + while not typing_field_loaded: + typing_fields = self.driver.find_elements(By.CLASS_NAME, ANDROID_TYPING_FIELD_CLASS_NAME) + typing_field_loaded = len(typing_fields) == 2 + self.typing_field = typing_fields[0] else: self.driver.find_element(By.CLASS_NAME, IOS_START_CHAT_CLASS_NAME).click() self.typing_field = self.driver.find_element(By.ID, IOS_TYPING_FIELD_ID) From 9836fe17fe1ee9f2040c8577883e150b9079a3e6 Mon Sep 17 00:00:00 2001 From: Astariul Date: Fri, 29 Mar 2024 19:58:29 +0900 Subject: [PATCH 2/3] =?UTF-8?q?=F0=9F=93=9D=20Remove=20outdated=20document?= =?UTF-8?q?ation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/assets/emu_setup_3.webp | Bin 18922 -> 0 bytes docs/assets/emu_setup_4.webp | Bin 33256 -> 0 bytes docs/emu_setup.md | 23 ----------------------- 3 files changed, 23 deletions(-) delete mode 100644 docs/assets/emu_setup_3.webp delete mode 100644 docs/assets/emu_setup_4.webp diff --git a/docs/assets/emu_setup_3.webp b/docs/assets/emu_setup_3.webp deleted file mode 100644 index 7a55c716d5e7bdcb9050e382b7e5dd760d9f13d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18922 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 Jz2Wcx0045zMZf?6 diff --git a/docs/assets/emu_setup_4.webp b/docs/assets/emu_setup_4.webp deleted file mode 100644 index 4aefaccf3a1f659f23f8b41b328f5b26632dc219..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33256 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 Date: Fri, 29 Mar 2024 20:04:35 +0900 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=93=9D=20Add=20a=20note=20in=20the=20?= =?UTF-8?q?docs=20about=20typing=20field=20in=20Android?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/emu_setup.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/emu_setup.md b/docs/emu_setup.md index c519099..1234c48 100644 --- a/docs/emu_setup.md +++ b/docs/emu_setup.md @@ -76,6 +76,11 @@ adb devices export PATH=$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$PATH ``` +!!! info + In Android, to open the keyboard, we access a notepad website ([www.justnotepad.com](www.justnotepad.com)). + + The reason we do that is because it's the easiest way to access a typing field, and it works across versions and emulators. + ### Preparing GBoard GBoard is enabled by default on Android, so there is nothing to do.