Apakah ada cara mudah untuk menyalin / menempel konten clipboard ke EditView
Android Emulator?
(hanya demi memudahkan pengembangan / tes)
Apakah ada cara mudah untuk menyalin / menempel konten clipboard ke EditView
Android Emulator?
(hanya demi memudahkan pengembangan / tes)
Jawaban:
Dengan v25.3.x dari Android Emulator & x86 Google API Emulator sistem gambar API Level 19 (Android 4.4 - Kitkat) dan lebih tinggi, Anda cukup menyalin dan menempel dari desktop Anda dengan mouse atau keyboard.
Fitur ini diumumkan dengan Android Studio 2.3
~/.android/avd/
.ini
file?
Di terminal, ketik adb shell input text 'my string here. With some characters escaped like \$ that'
Perhatikan bahwa metode alternatif untuk memasukkan spasi dalam teks adalah menggantikan %s
setiap space
karakter.
adb shell input text "
pbpaste"
'ლ\(ಠ益ಠლ\)'
, ia hanya mengatakan 'Dibunuh' atau tampaknya berhasil dan tidak ada yang diketik, juga tidak ada yang bisa saya tempelkan di emulator. Metode SMS (saya coba dari DDMS) bahkan tidak berfungsi di sini, ini ditampilkan sebagai "? (????)" :(
adb shell input text "This%sis%stext\nDoes%snot%work%here."
cetakan "Ini adalah teks \ nTidak berfungsi di sini."
Saya biasanya mengirim teks yang ingin saya salin sebagai pesan sms melalui telnet dan kemudian menyalin teks dari pesan sms. Begini caranya:
Terhubung melalui telnet:
telnet localhost <port>
telnet localhost 5554
(5554 adalah port default. Bilah judul emulator menunjukkan port yang sedang digunakan, sehingga Anda dapat melihat apakah itu berbeda).
Mengirim pesan:
sms send <senders phone number> <message>
sms send 1231231234 This is the message you want to send
(Anda dapat membuat nomor telepon pengirim)
Ini berfungsi dengan sangat baik untuk tautan karena pesan secara otomatis dikonversi menjadi hyperlink yang dapat Anda klik tanpa harus menyalin / menempelkannya ke browser.
Setelah emulator menerima pesan, Anda dapat menyalinnya dan menempelkannya di mana pun Anda suka.
adb
. Lihat jawaban saya.
Cukup salin dari mana saja, klik dan tahan pada teks edit telepon emulator di mana Anda ingin teks pergi (seperti Anda akan menekan dan menahan untuk menempel pada telepon yang sebenarnya), opsi PASTE akan muncul, kemudian PASTE.
Tidak yakin apakah itu berguna, tetapi, jika Anda memerlukan URL panjang dari browser desktop untuk dibuka di browser seluler, Anda dapat mengirim SMS dengan URL itu dan membuka langsung dari aplikasi pesan.
Jika Anda menggunakan Android Studio pada Mac, Anda mungkin perlu memberikan path lengkap ke adb
file executable. Untuk menemukan jalur ini, buka:
Android Studio > Tools > Android > SDK Manager
Salin jalur ke lokasi SDK. Yang adb
dapat dieksekusi akan berada dalam platform-tools
direktori. Bagi saya, ini jalannya:
~/Library/Android/sdk/platform-tools/adb
Sekarang Anda dapat menjalankan perintah ini:
~/Library/Android/sdk/platform-tools/adb shell input text 'thetextyouwanttopaste'
Saya bosan dengan masalah ini jadi saya hanya membuat alias ini untuk menanganinya:
alias ap="pbpaste | xargs adb shell input text"
Kemudian ketika Anda membuka jendela terminal baru, mengetik "ap" akan menempelkan apa pun yang ada di clipboard Anda ke dalam bidang teks yang dipilih secara aktif emulator.
Cukup tambahkan ini ke profil Anda (untuk sebagian besar pengguna yang ~/.bash_profile
untuk pengguna zsh ~/.zshrc
) untuk membuat alias tersedia di mana-mana. Atau, jika Anda adalah pengguna bash (default untuk MacOS), maka Anda dapat menjalankan perintah berikut di terminal untuk mengaturnya untuk Anda:
echo "alias ap='pbpaste | xargs adb shell input text'" >> ~/.bash_profile && source ~/.bash_profile
alias ap="adb shell input text `pbpaste`"
'alias' is not recognized as an internal or external command, operable program or batch file.
apa yang harus dilakukan
Hanya Untuk tingkat API> = 24
Salin teks apa pun dari mesin lokal Anda dan kemudian jalankan perintah ini
adb shell input keyevent 279
Pastikan Dalam Pengaturan Android Emulator Enable Clipboard Sharing
opsi diaktifkan
mungkin sedikit rumit, tetapi Anda bisa mengirim sms ke emulator dengan menggunakan kontrol emulator. maka Anda tidak perlu mengetik ulang semua teks jika lebih panjang dan dapat menyalin-menempelnya di emulator.
cara lain: terhubung ke emulator melalui "telnet localhost PORT" dan kemudian gunakan pengiriman acara perangkat keras untuk mengirim acara input teks ke emulator (perlu UTF-8). lihat ini
Anda dapat melakukan ini tanpa penyelesaian juga. Cukup klik dan tahan sebentar di bidang input hingga pemberitahuan tempel muncul dan kemudian klik tempel. Itu dia!
Di Linux ini akan menempelkan teks langsung dari clipboard
adb shell input text "'$(xclip -selection c -o)'"
Juga sangat berguna untuk membuat shortkey keyboard global dengan perintah ini misalnya Ctrl+Shift+Super+V
Dibuat aplikasi Windows ini yang memungkinkan pengguna untuk menyalin paste ke emulator Android atau perangkat yang terhubung dari antarmuka visual. https://github.com/Florin-Birgu/Android-Copy-Paste
Apakah Anda sudah melihat C2DM? chrome2phone dan fox2phone dapat mengirim tautan dan teks papan klip dan secara otomatis menyalinnya di telepon. Juga, coba gunakan adb shell. Ada perintah layanan (/ sistem / bin / layanan) yang dapat menggunakan layanan (clipboard panggilan layanan ...). Kode transaksi adalah 1, 2, dan 3, untuk getClipboardText, setClipboardText, dan hasClipboardText.
Menggunakan Visual Studio Emulator, Inilah metode saya.
Mound pertama kartu sd virtual:
Siapkan file teks untuk mentransfer teks:
Setiap kali saya perlu mengirim teks ke papan klip.
Setelah diatur cukup mudah untuk mengulanginya. Metode yang sama akan berlaku untuk emulator lain oleh Anda mungkin perlu menggunakan metode yang berbeda untuk mendorong file teks Anda ke emulator.
(mengkonversi diskusi komentar untuk menjawab)
satu-satunya solusi di windows: https://github.com/gcb/AdbPaste
menulisnya dalam beberapa jam untuk mengatasi masalah ini. Saya sekarang kembali ke linux 100%, jadi silakan bergabung sebagai kontributor atau pengelola!
Saya datang ke sini mencari solusi untuk masalah yang sama, dan akhirnya menulis aplikasi Android untuk menyelesaikan masalah ini. Anda dapat mengunduhnya di http://www.box.net/shared/6203bn441bfltkimajmk . Cukup berikan URL melalui menu Preferensi untuk menunjuk ke tempat di mana Anda dapat mengubah respons Web dengan mudah. Baris pertama dari respons Web akan disalin ke clipboard emulator Anda untuk Anda. Detail lebih lanjut dapat ditemukan di http://agilesc.barryku.com/?p=255 .
Untuk Mac dan Linux, coba fungsi ini di file aliases_bash Anda (terletak di / etc / aliases_bash untuk pengguna Mac, pastikan untuk menggunakan sudo vim / etc / aliases_bash)
function adbtx {
userinput="$(sed 's/ /%s/g' <<< $1)"
adb shell input text "${userinput}";
}
export -f adbtx
Kemudian pada baris perintah masukkan:
adbtx 'Your text to emulator input'
' Teks Anda ke input emulator ' akan menjadi input pada bidang teks emulator.
Kudos to Eliot untuk string substitusi untuk sed.