SlideShare une entreprise Scribd logo
1  sur  39
Android Environment
Emulator
Notes are based on:
http://developer.android.com/index.html
http://developer.android.com/guide/developing/tools/emulator.html
1
Part 2-b
2
Android Emulator
• Bộ Android SDK có chứa một trình giả lập thiết bị di động (mobile device
emulator) – một thiết bị di động ảo có thể chạy trên máy tính của ta.
• Emulator cho phép ta làm bản mẫu (prototype), phát triển, và test ứng
dụng Android mà không cần dùng một thiết bị vật lý.
• Android emulator giả lập tất cả các tính năng phần cứng và phần mềm
của một thiết bị di động điển hình, trừ việc nó không thể nhận hoặc gọi
các cú điện thoại thực và một số tính năng khác.
• Nó cung cấp các phím điều khiển đa dạng, ta có thể “nhấn” bằng chuột
hoặc bàn phím để sinh ra các event cho ứng dụng của mình.
• Nó cũng cung cấp một màn hình để hiển thị ứng dụng của ta cùng với các
ứng dụng Android khác đang chạy.
2
3
Android Emulator v1.5 Skin
3
Hang up
Back
Volume
Power
Status Bar – Notification Line
Home
Call
Menu
Tab
Launch
Pad
4
Android Emulator v1.6 Skin
4
Hang up
Back
Volume
Status Bar – Notification Line
Home
Call
Menu
Tab
Launch
Pad
Power
5
Android Emulator v1.6 Skin
5
Hang up
Back
Volume
Status Bar – Notification Line
Home
Call
Menu
Tab
Launch
Pad
Power
6
Android Emulator Features
6
Giả lập điện thoại Android thế hệ thứ nhất
Android emulator hỗ trợ nhiều tính năng phần cứng thường có tại các thiết
bị di động (chẳng hạn HTC-G1), trong đó có:
1. Một CPU ARMv5 và bộ quản lý bộ nhớ tương ứng (memory-
management unit - MMU)
2. Một màn hình LCD 16-bit (giả lập 360 x 480 pixel)
3. Bàn phím (một bàn phím Qwerty và các nút Dpad/Phone liên quan)
4. Một chip âm thanh với khả năng output và input
5. Các phân hoạch bộ nhớ flash (giả lập bằng các file trên đĩa cứng của
máy tính đang dùng để chạy giả lập)
6. Một modem GSM, gồm cả một thẻ SIM được giả lập
7
Android Emulator Features
7
Nexus One (newer Google developer phone)
Some phones in the
market already
surpass these specs
(Fall 2010)
8
Android Virtual Devices
and the Emulator
8
Để dùng emulator, trước hết ta phải tạo một hoặc vài cấu hình thiết bị ảo
(ADV). Mỗi cấu hình quy định platform Android platform sẽ chạy trong
emulator, tập các tùy chọn phần cứng, và bề ngoài của emulator. Sau đó,
khi bật emulator, ta chỉ ra cấu hình AVD ta muốn nạp vào emulator.
Mỗi AVD có chức năng như một thiết bị độc lập, với nơi lưu trữ riêng
dành cho dữ liệu người dùng, SD card, v.v.. Khi ta bật emulator với một
cấu hình AVD, nó sẽ tự động nạp dữ liệu người dùng và SD card.
Ta có thể tạo số lượng AVD tùy theo nhu cầu, dựa trên các loại thiết bị
mà ta muốn mô hình hóa, các Android platform và thư viện ngoài mà ta
muốn chạy ứng dụng trên đó.
Để tạo và quản lý các AVD, ta dùng AVD Manager UI hoặc android tool có
trong SDK. Chi tiết xem tại Managing Virtual Devices
(http://developer.android.com/guide/developing/devices/index.html)
9
Starting – Stopping the Emulator
9
Để start một thực thể của emulator từ dòng lệnh, chuyển tới thư mục
tools/ của SDK. Gõ lệnh emulator như sau:
emulator -avd <avd_name>
Lệnh này sẽ khởi tạo emulator và nạp một cấu hình AVD.
Sau vài giây, ta sẽ thấy cửa sổ emulator hiện trên màn hình.
Nếu đang dùng Eclipse, khi ta run hoặc debug ứng dụng, ADT plugin cho
Eclipse sẽ tự động cài ứng dụng của ta và chạy emulator.
Để stop một thực thể emulator, ta chỉ cần đóng cửa sổ emulator.
Để liệt kê tất cả các AVD hiện có, dùng lệnh DOS
android list avd
10
Controlling the Emulator
10
Keyboard OS function
Escape Back button
Home Home button
F2, PageUp Menu (Soft-Left) button
Shift-F2, PageDown Start (Soft-Right) button
F3 Call/Dial button
F4 Hangup / EndCall button
F5 Search button
F7 Power button
Ctrl-F3, Ctrl-KEYPAD_5 Camera button
Ctrl-F5, KEYPAD_PLUS Volume up button
Ctrl-F6, KEYPAD_MINUS Volume down button
KEYPAD_5 DPad center
KEYPAD_4 DPad left
KEYPAD_6 DPad right
KEYPAD_8 DPad up
KEYPAD_2 DPad down
F8 toggle cell network on/off
F9 toggle code profiling (when -trace option set)
Alt-ENTER toggle FullScreen mode
Ctrl-T toggle trackball mode
Ctrl-F11, KEYPAD_7 switch to previous layout
Ctrl-F12, KEYPAD_9 switch to next layout
Keypad keys only work when
NumLock is deactivated.
11
Working with
Emulator Disk Images
11
Emulator dùng các disk image lưu trên máy tính để giả lập bộ nhớ flash (hoặc
những thứ tương tự) của thiết bị thực.
Ví dụ, nó dùng disk image có chứa:
• Một nhân hệ điều hành đặc thù
của emulator,
• Hệ thống Android,
• ram-disk image, và
• các image ghi được để dành cho
dữ liệu của người dùng
và SD card giả lập.
Mỗi AVD có một bộ disk image
của riêng nó.
1212
Working with
Emulator Disk Images
12
Mặc định, emulator luôn tìm disk image tại vùng lưu trữ riêng
của AVD đang chạy
Nếu chưa có image nào
khi emulator được bật,
nó sẽ tạo các image tại thư mục AVD
dựa theo các phiên bản mặc định
lưu trong SDK.
Nơi lưu trữ mặc định của các AVD:
~/.android/avd đối với OS X và Linux,
C:Documents and Settings<user>.androidavd... đối với Windows XP, và
C:Users<user>.android tại Windows Vista.
13
AVD - Android Virtual Devices
13
Mỗi Android Virtual Device (AVD) là một cấu hình của các tùy chọn
emulator, cho phép ta mô hình hóa một thiết bị thực.
Mỗi AVD gồm có:
• Hardware profile. Ta có thể đặt tùy chọn để quy định các tính năng
phần cứng của thiết bị ảo. Ví dụ, ta có thể quy định xem thiết bị có
camera hay không, nó dùng bàn phím QWERTY vật lý hay một dialing pad,
kích thước bộ nhớ của nó, v.v..
• Ánh xạ tới một system image. Ta có thể quy định phiên bản Android
platform sẽ chạy trên thiết bị ảo. Ta có thể chọn một phiên bản của
Android platform chuẩn hoặc system image đã đóng gói cùng với một SDK
add-on.
• Các tùy chọn khác. Ta có thể quy định emulator skin, kích thước màn
hình, v.v.. SD card giả lập sẽ dùng kèm với AVD.
• Một vùng lưu trữ dành riêng trên máy tính của ta, nơi dành để lưu dữ
liệu người dùng của thiết bị (các ứng dụng đã cài, cấu hình, v.v..) và SD
card giả lập.
14
Creating an AVD
using the Eclipse-ADT Tool
14
From Eclipse, follow the sequence: Main menu (AVD Manager )
> Virtual Devices > New >
Provide a Name,
choose an Android target,
create a new SD card with about 2Gb,
choose a screen type,
add hardware devices…
Click on: Create AVD
(wait, it takes several minutes
to format the new SD card)
15
Creating an AVD
using the android tool
15
Khi tạo một AVD, ta dùng lệnh:
android create avd -n <avd_name> -t <targetID> -c <size>[K|M]
Tham số –t (target) quy định system image mà ta muốn dùng mỗi khi bật
AVD này. Về sau, mỗi khi ứng dụng dùng AVD này, chúng sẽ chạy trên hệ
thống mà ta quy định bởi tham số -t.
Để biết targetID của các system image
có thể dùng, ta có thể dùng công cụ
android để liệt kê các system image
hiện có cùng với target ID của chúng:
android list targets
16
Creating an AVD
using the android tool
16
Example: Creating an AVD using the android tool
Sau khi đã xem danh sách các target, giả sử ta đã quyết định sẽ tạo một
profile dựa trên target id:4 để hỗ trợ SDK1.6 với thư viện Google API
Mapping. Cần có thêm một SD card dung lượng 1Gig. Ta dùng lệnh sau
android create avd -n myAVD4SD1G -t 4 -c 1024M
17
Creating an AVD
using the android tool
17
Example: Creating an AVD using the android tool
Xem hệ thống hiện có những AVD nào:
18
SD Card Emulation
18
Ta có thể tạo một disk image và sau đó nạp nó vào emulator khi khởi động,
để giả lập sự có mặt của một SD card trong thiết bị.
• Emulator hỗ trợ các thẻ SDHC card giả lập, do đó ta có thể tạo một SD
card image với kích thước tùy ý miễn không vượt quá 128 gigabyte.
• Ta có thể dùng adb hoặc emulator để duyệt cây thư mục, gửi file tới, và
chép/xóa file trong SD card.
Tạo một SD card image bằng mksdcard
Dùng công cụ mksdcard có sẵn trong SDK để tạo các disk image dạng FAT32.
mksdcard <size> <file>
Ví dụ:
mksdcard 1024M c:/temp/mysdcard.iso
19
SD Card Emulation
19
Android Emulator – How to use the SDCARD device
Cú pháp chung để tạo một SD card là
mksdcard [ -l label ] <size> <file>
•Công cụ mksdcard là một phần của Android SDK. SD label là không bắt buộc.
•Kích thước thiết bị là số nguyên, theo sau là K (kilobyte) hoặc M (megabyte).
Ví dụ: Tạo một thiết bị SDcard 1GB bằng lệnh sau
mksdcard 1024M c:mysdcard.img
Chạy emulator bằng lệnh
emulator -sdcard c:mysdcard.img
Hoặc
emulator -avd myAvdFile
20
SD Card Emulation
20
Moving Data, Music and Pictures to the Sdcard
1.Dùng chương trình ddms để đẩy file vào SDcard (với điều kiện emulator
đang chạy và SD card đang gắn với nó).
2.Click: Device > File Explorer, dẫn tới một cửa sổ mới, tại đó ta chọn
SDcard.
3.Bây giờ ta chuyển dữ liệu vào sdcard. Có các lựa chọn sau
• Dùng Windows Explore để kéo & thả file và thư mục vào card, hoặc
• Nhấn nút "Push File onto Device"
(see upper left icons: push, pull, delete).
( DDMS stands for Dalvik Debug Monitor Services. The program is located in the /tools folder of the SDK. Also
available in Eclipse perspective – Top upper right icons)
21
SD Card Emulation
21
Moving Data, Music and Pictures to the SDcard
22
SD Card Emulation
22
Moving Data, Music and Pictures to the SDcard
4. Quay lại emulator. Ta sẽ thấy các file nhạc (được đánh dấu) trong SDcard
23
SD Card Emulation
23
Moving Data, Music and Pictures to the SDcard
5. Ảnh hiện ra khi click Application Pad và bật ứng dụng Gallery
24
Login into the OS shell
24
Ta có thể đăng nhập vào phiên bản Linux của Android đang chạy trong
emulator và thực hiện các lệnh.
1.Chạy emulator
2.Chạy ứng dụng adb
c:> adb shell
(adb là ứng dụng Android
Debug Bridge.
Nó nằm trong thư mục /tools
của SDK)
25
Login into the OS shell
25
Nếu có vài emulator đang chạy (hoặc điện thoại vật lý đang nối với máy tính
qua cáp
USB) ta cần chỉ định thiết bị đích.
Thực hiện các bước:
1.Liệt kê danh sách các emulator đang chạy:
adb devices
List of devices attached
emulator-5554 device
emulator-5556 device
HT845GZ45737 device
2.Chạy ứng dụng adb:
adb -s emulator-5554 shell
26
Login into the OS shell
26
3. Android chấp nhận nhiều lệnh shell của Linux, trong đó có các lệnh hữu
ích sau
ls ................. show directory (alphabetical order)
mkdir .............. make a directory
rmdir .............. remove directory
rm -r .............. to delete folders with files
rm ................. remove files
mv ................. moving and renaming files
cat ................ displaying short files
cd ................. change current directory
pwd ................ find out what directory you are in
df ................. shows available disk space
chmod .............. changes permissions on a file
date ............... display date
exit ............... terminate session
27
Login into the OS shell
27
4. Không có lệnh copy (cp) trong Android,
thay vào đó, ta có thể dùng lệnh cat.
Ví dụ:
# cat data/app/theInstalledApp.apk > cache/theInstalledApp.apk
28
Android Emulator
28
Lưu ý #1: Emulators & Hardware Devices
Ta có thể test ứng dụng tại một emulator phần mềm hoặc thiết bị phần cứng.
Nếu dùng phần cứng, xem hướng dẫn thiết lập môi trường tại link dưới đây.
http://developer.android.com/guide/developing/device.html
Tại cửa sổ dòng lệnh, gõ lệnh: “adb devices“ ta sẽ thấy dòng tương tự
“HT845GZ45737 device” cho thấy sự có mặt của thiết bị phần cứng.
Lấy quyền Root tại thiết bị phần cứng
Điện thoại dành cho developer như G1 mở quyền root.
Chạy ứng dụng terminal ( adb shell ) và xem có dấu nhắc # hay không; nếu không có,
thử dùng lệnh su. Nếu lệnh đó không cho dấu nhắc root mà lại báo lỗi permission
denied thì có nghĩa là ta không có quyền root để truy nhập thiết bị.
29
Android Emulator
29
Lưu ý #2: Chuyển một ứng dụng từ thiết bị (rooted) sang
Emulator
Để chuyển ứng dụng đã được cài tại điện thoại có quyền root, thực hiện các bước
sau:
1.Chạy cửa sổ lệnh: > adb devices (tìm id của thiết bị, chẳng hạn HT845GZ45737 )
2.Lấy file từ thiết bị vào hệ thống file máy tính.
adb -s HT845GZ45737 pull data/app/theInstalled.apk c:/theInstalled.apk
3.Tháo cáp nối với điện thoại
4.Chạy emulator
5.Cài ứng dụng vào emulator
adb -s emulator-5554 install c:theInstalledApp.apk
adb -s emulator-5554 uninstall data/app/theInstalled.apk
Ta sẽ thấy một thông điệp thông báo kích thước của gói được cài, và Success.
30
Using the Emulator with
“inserted” SD card from Eclipse
30
Additional Emulator Command Line Options:
-sdcard c:Android_Emulator_Datamysdcard.img -datadir c:Android_Emulator_Data
From Eclipse’s menu create
new launch configuration:
Run >
Run Configurations >
New icon
On the Target panel
1. Select existing Android
Virtual device (AVD)
2. Enter additional
Command Line Options
(see caption)
3. Apply > Run
31
Sending Text Messages
to the Emulator
31
1.Start the emulator.
2.Open a new shell and type :
c:> adb devices
so you know the emulator’s numeric port id (usually 5554, 5556, and so on)
3.Connect to the console using telnet command like:
c:> telnet localhost 5554
4.After receiving the telnet prompt you can send a text message with the
command (no quotes needed for the message)
sms send <Sender’s phone number> <text message>
32
Sending Text Messages
to the Emulator
32
Example:
33
Making a Voice Call
to the Emulator
33
1.Start the emulator.
2.Open a new shell and type :
adb devices
to know the emulator’s numeric port id (usually 5554, 5556, and so on)
3.Connect to the console using telnet command like:
telnet localhost 5554 (this is the ‘number’ to be called)
4.After receiving the telnet prompt you can place a call (voice) with the
command
gsm call <caller’s phone number>
34
Making a Voice Call
to the Emulator
34
Example:
35
Using Eclipse’s DDMS facility
35
Emulator Control
Ta có thể giả lập các trạng thái và hoạt động đặc biệt của thiết bị. Các tính năng bao
gồm:
1.Telephony Status – thay đổi trạng thái cấu hình Voice and Data của thiết bị (home,
roaming, tìm kiếm, v.v..), và giả lập các loại mạng khác nhau (GPRS, EDGE, UTMS,
v.v..).
2.Telephony Actions – thực hiện các cú gọi và tin nhắn SMS giả lập tại emulator.
3.Location Controls – gửi dữ liệu giả về vị trí cho emulator để ta có thể thực hiện
các thao tác liên quan đến địa điểm như GPS mapping. Để dùng Location Controls,
chạy ứng dụng của mình tại Android emulator và mở DDMS. Click tab Emulator
Controls và kéo xuống Location Controls. Từ đây, ta có thể:
• Gửi từng tọa độ kinh độ/vĩ độ cho thiết bị. Click Manual, chọn định dạng
tọa độ (coordinate format), điền vào các trường và click Send.
• Dùng một file GPX mô tả một tuyến đường cần playback cho device.
36
Using Eclipse to test Emulator’s
Telephony Actions
36
37
Android Emulator
37
Questions ?
38
Android Emulator
38
Appendix 1 – Kết nối thiết bị phần cứng với máy tính
1.Dùng cáp mini-USB để nối thiết bị với máy tính
2.Mở rộng Notification bar
3.Mount thiết bị
Ta còn có thể dùng Eclipse-ADT-File Explorer để ghi/đọc file với thiết bị.
39
Android Emulator
39
Appendix 1 – Liên lạc giữa các Emulator
1.Chạy hai thực thể emulator (ID thường là: 5554, 5556, … )
2.Quay số (hoặc gửi SMS) từ emulator này (chẳng hạn 5554) tới emulator kia
(5556)
3.Nhấn các nút gọi Xanh lục/Đỏ để nhận/kết thúc cuộc gọi
4.Thử gửi SMS (dùng các số 5554 và 5556)

Contenu connexe

Similaire à Android chapter 02 - Setup to emulator

mp_hag_slide_android_2321.pptx
mp_hag_slide_android_2321.pptxmp_hag_slide_android_2321.pptx
mp_hag_slide_android_2321.pptxKhngNguyn81
 
Báo cáo thực tập tuần 1 - Trung tâm đào tạo Athena
Báo cáo thực tập tuần 1 - Trung tâm đào tạo AthenaBáo cáo thực tập tuần 1 - Trung tâm đào tạo Athena
Báo cáo thực tập tuần 1 - Trung tâm đào tạo AthenaNhoxPO
 
Báo cáo tuần 1
Báo cáo tuần 1Báo cáo tuần 1
Báo cáo tuần 1ThongErik
 
Cài đặt Genmymotion
 Cài đặt Genmymotion Cài đặt Genmymotion
Cài đặt GenmymotionTrọng An
 
Cài đặt Android trên Eclipse
Cài đặt Android trên EclipseCài đặt Android trên Eclipse
Cài đặt Android trên EclipseNguyễn Anh
 
Cài đặt android ảo
Cài đặt android ảoCài đặt android ảo
Cài đặt android ảoNguyen Stone
 
Slide thuyet trinh android
Slide thuyet trinh androidSlide thuyet trinh android
Slide thuyet trinh androidkuto92love
 
Google Android Security (Basic2Advanced)
Google Android Security (Basic2Advanced)Google Android Security (Basic2Advanced)
Google Android Security (Basic2Advanced)Giap Le Van
 
01. cai dat_va_cau_hinh
01. cai dat_va_cau_hinh01. cai dat_va_cau_hinh
01. cai dat_va_cau_hinhNguyen Thong
 
Bài 1: Giới thiệu Android
Bài 1: Giới thiệu AndroidBài 1: Giới thiệu Android
Bài 1: Giới thiệu Androidhoccungdoanhnghiep
 
Tìm hiểu về microsoft expression encoder 4
Tìm hiểu về microsoft expression encoder 4Tìm hiểu về microsoft expression encoder 4
Tìm hiểu về microsoft expression encoder 4Đăng Khôi
 
L C D Demo Cho Microblaze
L C D Demo Cho MicroblazeL C D Demo Cho Microblaze
L C D Demo Cho Microblazeiuui
 
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...Ngo Trung
 
Cài đặt lập trình Android trên Netbeans
Cài đặt lập trình Android trên NetbeansCài đặt lập trình Android trên Netbeans
Cài đặt lập trình Android trên NetbeansNguyễn Anh
 
BÁO CÁO THỰC TẬP - TUẦN 3-4
BÁO CÁO THỰC TẬP - TUẦN 3-4BÁO CÁO THỰC TẬP - TUẦN 3-4
BÁO CÁO THỰC TẬP - TUẦN 3-4kakawpah0911
 
Bài tập Lập trinh viên thiết bị di động
Bài tập Lập trinh viên thiết bị di độngBài tập Lập trinh viên thiết bị di động
Bài tập Lập trinh viên thiết bị di độngRobert Commando
 
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan Ngoc
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan NgocTạo mã độc trên vps để xâm nhập android - Nguyen Xuan Ngoc
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan NgocXuân Ngọc Nguyễn
 

Similaire à Android chapter 02 - Setup to emulator (20)

mp_hag_slide_android_2321.pptx
mp_hag_slide_android_2321.pptxmp_hag_slide_android_2321.pptx
mp_hag_slide_android_2321.pptx
 
Báo cáo thực tập tuần 1 - Trung tâm đào tạo Athena
Báo cáo thực tập tuần 1 - Trung tâm đào tạo AthenaBáo cáo thực tập tuần 1 - Trung tâm đào tạo Athena
Báo cáo thực tập tuần 1 - Trung tâm đào tạo Athena
 
Báo cáo tuần 1
Báo cáo tuần 1Báo cáo tuần 1
Báo cáo tuần 1
 
Bao cao thuc tap
Bao cao thuc tapBao cao thuc tap
Bao cao thuc tap
 
Genmymotion
GenmymotionGenmymotion
Genmymotion
 
Cài đặt Genmymotion
 Cài đặt Genmymotion Cài đặt Genmymotion
Cài đặt Genmymotion
 
Cài đặt Android trên Eclipse
Cài đặt Android trên EclipseCài đặt Android trên Eclipse
Cài đặt Android trên Eclipse
 
Cài đặt android ảo
Cài đặt android ảoCài đặt android ảo
Cài đặt android ảo
 
Slide thuyet trinh android
Slide thuyet trinh androidSlide thuyet trinh android
Slide thuyet trinh android
 
Google Android Security (Basic2Advanced)
Google Android Security (Basic2Advanced)Google Android Security (Basic2Advanced)
Google Android Security (Basic2Advanced)
 
01. cai dat_va_cau_hinh
01. cai dat_va_cau_hinh01. cai dat_va_cau_hinh
01. cai dat_va_cau_hinh
 
Bài 1: Giới thiệu Android
Bài 1: Giới thiệu AndroidBài 1: Giới thiệu Android
Bài 1: Giới thiệu Android
 
Tìm hiểu về microsoft expression encoder 4
Tìm hiểu về microsoft expression encoder 4Tìm hiểu về microsoft expression encoder 4
Tìm hiểu về microsoft expression encoder 4
 
L C D Demo Cho Microblaze
L C D Demo Cho MicroblazeL C D Demo Cho Microblaze
L C D Demo Cho Microblaze
 
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...
Cách tối ưu hóa môi trường lập trình ứng dụng cho Android - Tăng tốc máy ảo A...
 
Cài đặt lập trình Android trên Netbeans
Cài đặt lập trình Android trên NetbeansCài đặt lập trình Android trên Netbeans
Cài đặt lập trình Android trên Netbeans
 
Kali Linux
Kali LinuxKali Linux
Kali Linux
 
BÁO CÁO THỰC TẬP - TUẦN 3-4
BÁO CÁO THỰC TẬP - TUẦN 3-4BÁO CÁO THỰC TẬP - TUẦN 3-4
BÁO CÁO THỰC TẬP - TUẦN 3-4
 
Bài tập Lập trinh viên thiết bị di động
Bài tập Lập trinh viên thiết bị di độngBài tập Lập trinh viên thiết bị di động
Bài tập Lập trinh viên thiết bị di động
 
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan Ngoc
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan NgocTạo mã độc trên vps để xâm nhập android - Nguyen Xuan Ngoc
Tạo mã độc trên vps để xâm nhập android - Nguyen Xuan Ngoc
 

Plus de Justin Hoang

Tổng quan tài liệu Hướng dẫn hệ thống BMS
Tổng quan tài liệu Hướng dẫn hệ thống BMSTổng quan tài liệu Hướng dẫn hệ thống BMS
Tổng quan tài liệu Hướng dẫn hệ thống BMSJustin Hoang
 
Tam bien kieu Phap
Tam bien kieu PhapTam bien kieu Phap
Tam bien kieu PhapJustin Hoang
 
Huong dan su dung Adobe Presenter
Huong dan su dung Adobe PresenterHuong dan su dung Adobe Presenter
Huong dan su dung Adobe PresenterJustin Hoang
 
Giao trinh corel draw
Giao trinh corel drawGiao trinh corel draw
Giao trinh corel drawJustin Hoang
 
7. xu ly bat dong bo
7. xu ly bat dong bo7. xu ly bat dong bo
7. xu ly bat dong boJustin Hoang
 
5. broadcast receiver
5. broadcast receiver5. broadcast receiver
5. broadcast receiverJustin Hoang
 
3.thiet ke giao dien tren android
3.thiet ke giao dien tren android3.thiet ke giao dien tren android
3.thiet ke giao dien tren androidJustin Hoang
 
2.bat dau voi hello world
2.bat dau voi hello world2.bat dau voi hello world
2.bat dau voi hello worldJustin Hoang
 
1.gioi thieu ve android sdk
1.gioi thieu ve android sdk1.gioi thieu ve android sdk
1.gioi thieu ve android sdkJustin Hoang
 
Hacking your Android (slides)
Hacking your Android (slides)Hacking your Android (slides)
Hacking your Android (slides)Justin Hoang
 
Tutorial How to change the icon
Tutorial How to change the iconTutorial How to change the icon
Tutorial How to change the iconJustin Hoang
 
Giao trinh Corel Draw (By Hoang Ngoc Giao)
Giao trinh Corel Draw (By Hoang Ngoc Giao)Giao trinh Corel Draw (By Hoang Ngoc Giao)
Giao trinh Corel Draw (By Hoang Ngoc Giao)Justin Hoang
 
Giao trinh mang may tinh (Toan tap)
Giao trinh mang may tinh (Toan tap)Giao trinh mang may tinh (Toan tap)
Giao trinh mang may tinh (Toan tap)Justin Hoang
 
Universal modules TXM1.8x Siemens
Universal modules TXM1.8x SiemensUniversal modules TXM1.8x Siemens
Universal modules TXM1.8x SiemensJustin Hoang
 
Mod Two Homology and Cohomology (Jean Claude)
Mod Two Homology and Cohomology (Jean Claude)Mod Two Homology and Cohomology (Jean Claude)
Mod Two Homology and Cohomology (Jean Claude)Justin Hoang
 
Cach in file auto cad
Cach in file auto cadCach in file auto cad
Cach in file auto cadJustin Hoang
 

Plus de Justin Hoang (19)

Tổng quan tài liệu Hướng dẫn hệ thống BMS
Tổng quan tài liệu Hướng dẫn hệ thống BMSTổng quan tài liệu Hướng dẫn hệ thống BMS
Tổng quan tài liệu Hướng dẫn hệ thống BMS
 
Tam bien kieu Phap
Tam bien kieu PhapTam bien kieu Phap
Tam bien kieu Phap
 
Huong dan su dung Adobe Presenter
Huong dan su dung Adobe PresenterHuong dan su dung Adobe Presenter
Huong dan su dung Adobe Presenter
 
Giao trinh corel draw
Giao trinh corel drawGiao trinh corel draw
Giao trinh corel draw
 
7. xu ly bat dong bo
7. xu ly bat dong bo7. xu ly bat dong bo
7. xu ly bat dong bo
 
6. service
6. service6. service
6. service
 
5. broadcast receiver
5. broadcast receiver5. broadcast receiver
5. broadcast receiver
 
3.thiet ke giao dien tren android
3.thiet ke giao dien tren android3.thiet ke giao dien tren android
3.thiet ke giao dien tren android
 
2.bat dau voi hello world
2.bat dau voi hello world2.bat dau voi hello world
2.bat dau voi hello world
 
1.gioi thieu ve android sdk
1.gioi thieu ve android sdk1.gioi thieu ve android sdk
1.gioi thieu ve android sdk
 
Hacking your Android (slides)
Hacking your Android (slides)Hacking your Android (slides)
Hacking your Android (slides)
 
Tutorial How to change the icon
Tutorial How to change the iconTutorial How to change the icon
Tutorial How to change the icon
 
Access Toan Tap
Access Toan TapAccess Toan Tap
Access Toan Tap
 
Autocad toan tap
Autocad toan tapAutocad toan tap
Autocad toan tap
 
Giao trinh Corel Draw (By Hoang Ngoc Giao)
Giao trinh Corel Draw (By Hoang Ngoc Giao)Giao trinh Corel Draw (By Hoang Ngoc Giao)
Giao trinh Corel Draw (By Hoang Ngoc Giao)
 
Giao trinh mang may tinh (Toan tap)
Giao trinh mang may tinh (Toan tap)Giao trinh mang may tinh (Toan tap)
Giao trinh mang may tinh (Toan tap)
 
Universal modules TXM1.8x Siemens
Universal modules TXM1.8x SiemensUniversal modules TXM1.8x Siemens
Universal modules TXM1.8x Siemens
 
Mod Two Homology and Cohomology (Jean Claude)
Mod Two Homology and Cohomology (Jean Claude)Mod Two Homology and Cohomology (Jean Claude)
Mod Two Homology and Cohomology (Jean Claude)
 
Cach in file auto cad
Cach in file auto cadCach in file auto cad
Cach in file auto cad
 

Android chapter 02 - Setup to emulator

  • 1. Android Environment Emulator Notes are based on: http://developer.android.com/index.html http://developer.android.com/guide/developing/tools/emulator.html 1 Part 2-b
  • 2. 2 Android Emulator • Bộ Android SDK có chứa một trình giả lập thiết bị di động (mobile device emulator) – một thiết bị di động ảo có thể chạy trên máy tính của ta. • Emulator cho phép ta làm bản mẫu (prototype), phát triển, và test ứng dụng Android mà không cần dùng một thiết bị vật lý. • Android emulator giả lập tất cả các tính năng phần cứng và phần mềm của một thiết bị di động điển hình, trừ việc nó không thể nhận hoặc gọi các cú điện thoại thực và một số tính năng khác. • Nó cung cấp các phím điều khiển đa dạng, ta có thể “nhấn” bằng chuột hoặc bàn phím để sinh ra các event cho ứng dụng của mình. • Nó cũng cung cấp một màn hình để hiển thị ứng dụng của ta cùng với các ứng dụng Android khác đang chạy. 2
  • 3. 3 Android Emulator v1.5 Skin 3 Hang up Back Volume Power Status Bar – Notification Line Home Call Menu Tab Launch Pad
  • 4. 4 Android Emulator v1.6 Skin 4 Hang up Back Volume Status Bar – Notification Line Home Call Menu Tab Launch Pad Power
  • 5. 5 Android Emulator v1.6 Skin 5 Hang up Back Volume Status Bar – Notification Line Home Call Menu Tab Launch Pad Power
  • 6. 6 Android Emulator Features 6 Giả lập điện thoại Android thế hệ thứ nhất Android emulator hỗ trợ nhiều tính năng phần cứng thường có tại các thiết bị di động (chẳng hạn HTC-G1), trong đó có: 1. Một CPU ARMv5 và bộ quản lý bộ nhớ tương ứng (memory- management unit - MMU) 2. Một màn hình LCD 16-bit (giả lập 360 x 480 pixel) 3. Bàn phím (một bàn phím Qwerty và các nút Dpad/Phone liên quan) 4. Một chip âm thanh với khả năng output và input 5. Các phân hoạch bộ nhớ flash (giả lập bằng các file trên đĩa cứng của máy tính đang dùng để chạy giả lập) 6. Một modem GSM, gồm cả một thẻ SIM được giả lập
  • 7. 7 Android Emulator Features 7 Nexus One (newer Google developer phone) Some phones in the market already surpass these specs (Fall 2010)
  • 8. 8 Android Virtual Devices and the Emulator 8 Để dùng emulator, trước hết ta phải tạo một hoặc vài cấu hình thiết bị ảo (ADV). Mỗi cấu hình quy định platform Android platform sẽ chạy trong emulator, tập các tùy chọn phần cứng, và bề ngoài của emulator. Sau đó, khi bật emulator, ta chỉ ra cấu hình AVD ta muốn nạp vào emulator. Mỗi AVD có chức năng như một thiết bị độc lập, với nơi lưu trữ riêng dành cho dữ liệu người dùng, SD card, v.v.. Khi ta bật emulator với một cấu hình AVD, nó sẽ tự động nạp dữ liệu người dùng và SD card. Ta có thể tạo số lượng AVD tùy theo nhu cầu, dựa trên các loại thiết bị mà ta muốn mô hình hóa, các Android platform và thư viện ngoài mà ta muốn chạy ứng dụng trên đó. Để tạo và quản lý các AVD, ta dùng AVD Manager UI hoặc android tool có trong SDK. Chi tiết xem tại Managing Virtual Devices (http://developer.android.com/guide/developing/devices/index.html)
  • 9. 9 Starting – Stopping the Emulator 9 Để start một thực thể của emulator từ dòng lệnh, chuyển tới thư mục tools/ của SDK. Gõ lệnh emulator như sau: emulator -avd <avd_name> Lệnh này sẽ khởi tạo emulator và nạp một cấu hình AVD. Sau vài giây, ta sẽ thấy cửa sổ emulator hiện trên màn hình. Nếu đang dùng Eclipse, khi ta run hoặc debug ứng dụng, ADT plugin cho Eclipse sẽ tự động cài ứng dụng của ta và chạy emulator. Để stop một thực thể emulator, ta chỉ cần đóng cửa sổ emulator. Để liệt kê tất cả các AVD hiện có, dùng lệnh DOS android list avd
  • 10. 10 Controlling the Emulator 10 Keyboard OS function Escape Back button Home Home button F2, PageUp Menu (Soft-Left) button Shift-F2, PageDown Start (Soft-Right) button F3 Call/Dial button F4 Hangup / EndCall button F5 Search button F7 Power button Ctrl-F3, Ctrl-KEYPAD_5 Camera button Ctrl-F5, KEYPAD_PLUS Volume up button Ctrl-F6, KEYPAD_MINUS Volume down button KEYPAD_5 DPad center KEYPAD_4 DPad left KEYPAD_6 DPad right KEYPAD_8 DPad up KEYPAD_2 DPad down F8 toggle cell network on/off F9 toggle code profiling (when -trace option set) Alt-ENTER toggle FullScreen mode Ctrl-T toggle trackball mode Ctrl-F11, KEYPAD_7 switch to previous layout Ctrl-F12, KEYPAD_9 switch to next layout Keypad keys only work when NumLock is deactivated.
  • 11. 11 Working with Emulator Disk Images 11 Emulator dùng các disk image lưu trên máy tính để giả lập bộ nhớ flash (hoặc những thứ tương tự) của thiết bị thực. Ví dụ, nó dùng disk image có chứa: • Một nhân hệ điều hành đặc thù của emulator, • Hệ thống Android, • ram-disk image, và • các image ghi được để dành cho dữ liệu của người dùng và SD card giả lập. Mỗi AVD có một bộ disk image của riêng nó.
  • 12. 1212 Working with Emulator Disk Images 12 Mặc định, emulator luôn tìm disk image tại vùng lưu trữ riêng của AVD đang chạy Nếu chưa có image nào khi emulator được bật, nó sẽ tạo các image tại thư mục AVD dựa theo các phiên bản mặc định lưu trong SDK. Nơi lưu trữ mặc định của các AVD: ~/.android/avd đối với OS X và Linux, C:Documents and Settings<user>.androidavd... đối với Windows XP, và C:Users<user>.android tại Windows Vista.
  • 13. 13 AVD - Android Virtual Devices 13 Mỗi Android Virtual Device (AVD) là một cấu hình của các tùy chọn emulator, cho phép ta mô hình hóa một thiết bị thực. Mỗi AVD gồm có: • Hardware profile. Ta có thể đặt tùy chọn để quy định các tính năng phần cứng của thiết bị ảo. Ví dụ, ta có thể quy định xem thiết bị có camera hay không, nó dùng bàn phím QWERTY vật lý hay một dialing pad, kích thước bộ nhớ của nó, v.v.. • Ánh xạ tới một system image. Ta có thể quy định phiên bản Android platform sẽ chạy trên thiết bị ảo. Ta có thể chọn một phiên bản của Android platform chuẩn hoặc system image đã đóng gói cùng với một SDK add-on. • Các tùy chọn khác. Ta có thể quy định emulator skin, kích thước màn hình, v.v.. SD card giả lập sẽ dùng kèm với AVD. • Một vùng lưu trữ dành riêng trên máy tính của ta, nơi dành để lưu dữ liệu người dùng của thiết bị (các ứng dụng đã cài, cấu hình, v.v..) và SD card giả lập.
  • 14. 14 Creating an AVD using the Eclipse-ADT Tool 14 From Eclipse, follow the sequence: Main menu (AVD Manager ) > Virtual Devices > New > Provide a Name, choose an Android target, create a new SD card with about 2Gb, choose a screen type, add hardware devices… Click on: Create AVD (wait, it takes several minutes to format the new SD card)
  • 15. 15 Creating an AVD using the android tool 15 Khi tạo một AVD, ta dùng lệnh: android create avd -n <avd_name> -t <targetID> -c <size>[K|M] Tham số –t (target) quy định system image mà ta muốn dùng mỗi khi bật AVD này. Về sau, mỗi khi ứng dụng dùng AVD này, chúng sẽ chạy trên hệ thống mà ta quy định bởi tham số -t. Để biết targetID của các system image có thể dùng, ta có thể dùng công cụ android để liệt kê các system image hiện có cùng với target ID của chúng: android list targets
  • 16. 16 Creating an AVD using the android tool 16 Example: Creating an AVD using the android tool Sau khi đã xem danh sách các target, giả sử ta đã quyết định sẽ tạo một profile dựa trên target id:4 để hỗ trợ SDK1.6 với thư viện Google API Mapping. Cần có thêm một SD card dung lượng 1Gig. Ta dùng lệnh sau android create avd -n myAVD4SD1G -t 4 -c 1024M
  • 17. 17 Creating an AVD using the android tool 17 Example: Creating an AVD using the android tool Xem hệ thống hiện có những AVD nào:
  • 18. 18 SD Card Emulation 18 Ta có thể tạo một disk image và sau đó nạp nó vào emulator khi khởi động, để giả lập sự có mặt của một SD card trong thiết bị. • Emulator hỗ trợ các thẻ SDHC card giả lập, do đó ta có thể tạo một SD card image với kích thước tùy ý miễn không vượt quá 128 gigabyte. • Ta có thể dùng adb hoặc emulator để duyệt cây thư mục, gửi file tới, và chép/xóa file trong SD card. Tạo một SD card image bằng mksdcard Dùng công cụ mksdcard có sẵn trong SDK để tạo các disk image dạng FAT32. mksdcard <size> <file> Ví dụ: mksdcard 1024M c:/temp/mysdcard.iso
  • 19. 19 SD Card Emulation 19 Android Emulator – How to use the SDCARD device Cú pháp chung để tạo một SD card là mksdcard [ -l label ] <size> <file> •Công cụ mksdcard là một phần của Android SDK. SD label là không bắt buộc. •Kích thước thiết bị là số nguyên, theo sau là K (kilobyte) hoặc M (megabyte). Ví dụ: Tạo một thiết bị SDcard 1GB bằng lệnh sau mksdcard 1024M c:mysdcard.img Chạy emulator bằng lệnh emulator -sdcard c:mysdcard.img Hoặc emulator -avd myAvdFile
  • 20. 20 SD Card Emulation 20 Moving Data, Music and Pictures to the Sdcard 1.Dùng chương trình ddms để đẩy file vào SDcard (với điều kiện emulator đang chạy và SD card đang gắn với nó). 2.Click: Device > File Explorer, dẫn tới một cửa sổ mới, tại đó ta chọn SDcard. 3.Bây giờ ta chuyển dữ liệu vào sdcard. Có các lựa chọn sau • Dùng Windows Explore để kéo & thả file và thư mục vào card, hoặc • Nhấn nút "Push File onto Device" (see upper left icons: push, pull, delete). ( DDMS stands for Dalvik Debug Monitor Services. The program is located in the /tools folder of the SDK. Also available in Eclipse perspective – Top upper right icons)
  • 21. 21 SD Card Emulation 21 Moving Data, Music and Pictures to the SDcard
  • 22. 22 SD Card Emulation 22 Moving Data, Music and Pictures to the SDcard 4. Quay lại emulator. Ta sẽ thấy các file nhạc (được đánh dấu) trong SDcard
  • 23. 23 SD Card Emulation 23 Moving Data, Music and Pictures to the SDcard 5. Ảnh hiện ra khi click Application Pad và bật ứng dụng Gallery
  • 24. 24 Login into the OS shell 24 Ta có thể đăng nhập vào phiên bản Linux của Android đang chạy trong emulator và thực hiện các lệnh. 1.Chạy emulator 2.Chạy ứng dụng adb c:> adb shell (adb là ứng dụng Android Debug Bridge. Nó nằm trong thư mục /tools của SDK)
  • 25. 25 Login into the OS shell 25 Nếu có vài emulator đang chạy (hoặc điện thoại vật lý đang nối với máy tính qua cáp USB) ta cần chỉ định thiết bị đích. Thực hiện các bước: 1.Liệt kê danh sách các emulator đang chạy: adb devices List of devices attached emulator-5554 device emulator-5556 device HT845GZ45737 device 2.Chạy ứng dụng adb: adb -s emulator-5554 shell
  • 26. 26 Login into the OS shell 26 3. Android chấp nhận nhiều lệnh shell của Linux, trong đó có các lệnh hữu ích sau ls ................. show directory (alphabetical order) mkdir .............. make a directory rmdir .............. remove directory rm -r .............. to delete folders with files rm ................. remove files mv ................. moving and renaming files cat ................ displaying short files cd ................. change current directory pwd ................ find out what directory you are in df ................. shows available disk space chmod .............. changes permissions on a file date ............... display date exit ............... terminate session
  • 27. 27 Login into the OS shell 27 4. Không có lệnh copy (cp) trong Android, thay vào đó, ta có thể dùng lệnh cat. Ví dụ: # cat data/app/theInstalledApp.apk > cache/theInstalledApp.apk
  • 28. 28 Android Emulator 28 Lưu ý #1: Emulators & Hardware Devices Ta có thể test ứng dụng tại một emulator phần mềm hoặc thiết bị phần cứng. Nếu dùng phần cứng, xem hướng dẫn thiết lập môi trường tại link dưới đây. http://developer.android.com/guide/developing/device.html Tại cửa sổ dòng lệnh, gõ lệnh: “adb devices“ ta sẽ thấy dòng tương tự “HT845GZ45737 device” cho thấy sự có mặt của thiết bị phần cứng. Lấy quyền Root tại thiết bị phần cứng Điện thoại dành cho developer như G1 mở quyền root. Chạy ứng dụng terminal ( adb shell ) và xem có dấu nhắc # hay không; nếu không có, thử dùng lệnh su. Nếu lệnh đó không cho dấu nhắc root mà lại báo lỗi permission denied thì có nghĩa là ta không có quyền root để truy nhập thiết bị.
  • 29. 29 Android Emulator 29 Lưu ý #2: Chuyển một ứng dụng từ thiết bị (rooted) sang Emulator Để chuyển ứng dụng đã được cài tại điện thoại có quyền root, thực hiện các bước sau: 1.Chạy cửa sổ lệnh: > adb devices (tìm id của thiết bị, chẳng hạn HT845GZ45737 ) 2.Lấy file từ thiết bị vào hệ thống file máy tính. adb -s HT845GZ45737 pull data/app/theInstalled.apk c:/theInstalled.apk 3.Tháo cáp nối với điện thoại 4.Chạy emulator 5.Cài ứng dụng vào emulator adb -s emulator-5554 install c:theInstalledApp.apk adb -s emulator-5554 uninstall data/app/theInstalled.apk Ta sẽ thấy một thông điệp thông báo kích thước của gói được cài, và Success.
  • 30. 30 Using the Emulator with “inserted” SD card from Eclipse 30 Additional Emulator Command Line Options: -sdcard c:Android_Emulator_Datamysdcard.img -datadir c:Android_Emulator_Data From Eclipse’s menu create new launch configuration: Run > Run Configurations > New icon On the Target panel 1. Select existing Android Virtual device (AVD) 2. Enter additional Command Line Options (see caption) 3. Apply > Run
  • 31. 31 Sending Text Messages to the Emulator 31 1.Start the emulator. 2.Open a new shell and type : c:> adb devices so you know the emulator’s numeric port id (usually 5554, 5556, and so on) 3.Connect to the console using telnet command like: c:> telnet localhost 5554 4.After receiving the telnet prompt you can send a text message with the command (no quotes needed for the message) sms send <Sender’s phone number> <text message>
  • 32. 32 Sending Text Messages to the Emulator 32 Example:
  • 33. 33 Making a Voice Call to the Emulator 33 1.Start the emulator. 2.Open a new shell and type : adb devices to know the emulator’s numeric port id (usually 5554, 5556, and so on) 3.Connect to the console using telnet command like: telnet localhost 5554 (this is the ‘number’ to be called) 4.After receiving the telnet prompt you can place a call (voice) with the command gsm call <caller’s phone number>
  • 34. 34 Making a Voice Call to the Emulator 34 Example:
  • 35. 35 Using Eclipse’s DDMS facility 35 Emulator Control Ta có thể giả lập các trạng thái và hoạt động đặc biệt của thiết bị. Các tính năng bao gồm: 1.Telephony Status – thay đổi trạng thái cấu hình Voice and Data của thiết bị (home, roaming, tìm kiếm, v.v..), và giả lập các loại mạng khác nhau (GPRS, EDGE, UTMS, v.v..). 2.Telephony Actions – thực hiện các cú gọi và tin nhắn SMS giả lập tại emulator. 3.Location Controls – gửi dữ liệu giả về vị trí cho emulator để ta có thể thực hiện các thao tác liên quan đến địa điểm như GPS mapping. Để dùng Location Controls, chạy ứng dụng của mình tại Android emulator và mở DDMS. Click tab Emulator Controls và kéo xuống Location Controls. Từ đây, ta có thể: • Gửi từng tọa độ kinh độ/vĩ độ cho thiết bị. Click Manual, chọn định dạng tọa độ (coordinate format), điền vào các trường và click Send. • Dùng một file GPX mô tả một tuyến đường cần playback cho device.
  • 36. 36 Using Eclipse to test Emulator’s Telephony Actions 36
  • 38. 38 Android Emulator 38 Appendix 1 – Kết nối thiết bị phần cứng với máy tính 1.Dùng cáp mini-USB để nối thiết bị với máy tính 2.Mở rộng Notification bar 3.Mount thiết bị Ta còn có thể dùng Eclipse-ADT-File Explorer để ghi/đọc file với thiết bị.
  • 39. 39 Android Emulator 39 Appendix 1 – Liên lạc giữa các Emulator 1.Chạy hai thực thể emulator (ID thường là: 5554, 5556, … ) 2.Quay số (hoặc gửi SMS) từ emulator này (chẳng hạn 5554) tới emulator kia (5556) 3.Nhấn các nút gọi Xanh lục/Đỏ để nhận/kết thúc cuộc gọi 4.Thử gửi SMS (dùng các số 5554 và 5556)