- 1.基础语法
- 2.[options] -p
- 3.[options] -v
- 4.[options] -s
- 5.[options] —throttle
- 6.[options] —pct-touch
- 7.[options] —pct-motion
- 8.[options] —pct-trackball
- 9.[options] —other
- 10.[options] —ignore-other
- 11.[options] —monitor-native-crashes
- 12.[options] —kill-process-after-error
- 13.[options] —hprof
- 14.[options] —bugreport
- 15.完整命令
- 16.报告
- 17.报告分析
monkey 是一个运行在模拟器或者Android设备中可以产生类似用户点击、触摸、手势以及一些系统级的伪随机事件流的程序。我们可以通过命令让monkey向模拟器或者Android设备发送伪随机事件流来对我们开发的App进行压力测试。
1.基础语法
adb shell monkey [options] <event-count>#<event-count> 发送的次数#[options] 参数项
2.[options] -p
# -p 指定包名(可指定多个)adb shell monkey -p package.name 500adb shell monkey -p package.name1 -p package.name2 500
3.[options] -v
# Level 0 提供少量信息:启动通知,测试完成,最终结果。-v(默认)# Level 1 提供详细信息:测试运行,如个别事件被发送到您的Activity。 -v -v# Level 2 提供更详细信息:设置等信息如Activity选中或未选中的测试信息。 -v -v -vadb shell monkey -p package.name -v -v -v 5
bash arg: -pbash arg: com.autonavi.amapautobash arg: -vbash arg: 5args: [-p, com.autonavi.amapauto, -v, 5]arg: "-p"arg: "com.autonavi.amapauto"arg: "-v"arg: "5"data="com.autonavi.amapauto":Monkey: seed=1668841246615 count=5:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 2.0%// 3: 15.0%// 4: -0.0%// 5: -0.0%// 6: 25.0%// 7: 15.0%// 8: 2.0%// 9: 2.0%// 10: 1.0%// 11: 13.0%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Touch (ACTION_DOWN): 0:(483.0,1345.0):Sending Touch (ACTION_UP): 0:(500.73587,1337.1675)Events injected: 5:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=0 rotations=0## Network stats: elapsed time=73ms (0ms mobile, 0ms wifi, 73ms not connected)// Monkey finished
bash arg: -pbash arg: com.autonavi.amapautobash arg: -vbash arg: -vbash arg: 5args: [-p, com.autonavi.amapauto, -v, -v, 5]arg: "-p"arg: "com.autonavi.amapauto"arg: "-v"arg: "-v"arg: "5"data="com.autonavi.amapauto":Monkey: seed=1668785233885 count=5:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER// + Using main activity com.autonavi.auto.remote.fill.UsbFillActivity (from package com.autonavi.amapauto)// Selecting main activities from category android.intent.category.MONKEY// Seeded: 1668785233885// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 2.0%// 3: 15.0%// 4: -0.0%// 5: -0.0%// 6: 25.0%// 7: 15.0%// 8: 2.0%// 9: 2.0%// 10: 1.0%// 11: 13.0%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapautoSleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(605.0,1393.0):Sending Touch (ACTION_UP): 0:(593.0216,1383.3439)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 21 // KEYCODE_DPAD_LEFT// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Key (ACTION_UP): 21 // KEYCODE_DPAD_LEFTEvents injected: 5:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=0 rotations=0## Network stats: elapsed time=64ms (0ms mobile, 0ms wifi, 64ms not connected)// Monkey finished
bash arg: -pbash arg: com.autonavi.amapautobash arg: -vbash arg: -vbash arg: -vbash arg: 5args: [-p, com.autonavi.amapauto, -v, -v, -v, 5]arg: "-p"arg: "com.autonavi.amapauto"arg: "-v"arg: "-v"arg: "-v"arg: "5"data="com.autonavi.amapauto":Monkey: seed=1668964527417 count=5:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER// - NOT USING main activity com.android.browser.BrowserActivity (from package com.android.browser)// - NOT USING main activity com.android.calendar.homepage.AllInOneActivity (from package com.android.calendar)// - NOT USING main activity com.android.camera.Camera (from package com.android.camera)// - NOT USING main activity com.android.contacts.activities.PeopleActivity (from package com.android.contacts)// - NOT USING main activity com.android.contacts.activities.TwelveKeyDialer (from package com.android.contacts)// - NOT USING main activity com.android.deskclock.DeskClockTabActivity (from package com.android.deskclock)// - NOT USING main activity com.android.fileexplorer.FileExplorerTabActivity (from package com.android.fileexplorer)// - NOT USING main activity com.android.mms.ui.MmsTabActivity (from package com.android.mms)// - NOT USING main activity com.android.settings.MainSettings (from package com.android.settings)// - NOT USING main activity com.android.soundrecorder.SoundRecorder (from package com.android.soundrecorder)// - NOT USING main activity com.android.thememanager.business.startup.view.StartupActivity (from package com.android.thememanager)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.gallery.activity.HomePageActivity (from package com.miui.gallery)// - NOT USING main activity com.xiaomi.market.ui.MarketTabActivity (from package com.xiaomi.market)// - NOT USING main activity com.android.email.activity.Welcome (from package com.android.email)// + Using main activity com.autonavi.auto.remote.fill.UsbFillActivity (from package com.autonavi.amapauto)// - NOT USING main activity com.miui.calculator.cal.CalculatorActivity (from package com.miui.calculator)// - NOT USING main activity com.miui.notes.ui.NotesListActivity (from package com.miui.notes)// - NOT USING main activity com.miui.weather2.ActivityWeatherMain (from package com.miui.weather2)// - NOT USING main activity com.sohu.inputmethod.sogou.SogouIMELauncher (from package com.sohu.inputmethod.sogou)// - NOT USING main activity com.xiaomi.scanner.app.ScanActivity (from package com.xiaomi.scanner)// - NOT USING main activity net.dinglisch.android.taskerm.Tasker (from package net.dinglisch.android.taskerm)// - NOT USING main activity com.android.providers.downloads.ui.DownloadList (from package com.android.providers.downloads.ui)// - NOT USING main activity com.miui.bugreport.ui.MainTabActivity (from package com.miui.bugreport)// - NOT USING main activity com.miui.player.ui.MusicBrowserActivity (from package com.miui.player)// - NOT USING main activity com.miui.securityscan.MainActivity (from package com.miui.securitycenter)// - NOT USING main activity com.miui.video.HomeActivity (from package com.miui.video)// - NOT USING main activity com.xiaomi.voiceassistant.LauncherRouterActivity (from package com.miui.voiceassist)// - NOT USING main activity com.xiaomi.vipaccount.ui.monkeyentry.MonkeyActivity (from package com.xiaomi.vipaccount)// - NOT USING main activity com.autonavi.amapauto.autolink.MainActivity (from package amapauto.autonavi.com.wifidirectlinktest)// - NOT USING main activity cn.wps.moffice.documentmanager.PreStartActivity (from package cn.wps.moffice_eng)// - NOT USING main activity com.alibaba.android.rimet.biz.LaunchHomeActivity (from package com.alibaba.android.rimet.aliding)// - NOT USING main activity com.aliwork.alilang.activity.SplashActivity (from package com.alibaba.android.security.activity)// - NOT USING main activity com.amap.mockgps.activity.MockGpsProviderActivity (from package com.amap.mockgps)// - NOT USING main activity com.amap.qahome.MainActivity (from package com.amap.qahome)// - NOT USING main activity com.alipay.hulu.activity.SplashActivity (from package com.amapauto.autohelper)// - NOT USING main activity com.alipay.hulu.activity.SplashActivity (from package com.autonavi.amapauto.autohelper)// - NOT USING main activity jp.co.cyberagent.stf.IdentityActivity (from package com.autonavi.arc.jarvis)// - NOT USING main activity com.autonavi.autohelper.MainActivity (from package com.autonavi.autohelper)// - NOT USING main activity com.autonavi.diagnose.MainActivity (from package com.autonavi.diagnose)// - NOT USING main activity com.autonavi.gaode.editfuncconfig.MainActivity (from package com.autonavi.gaode.editfuncconfig)// - NOT USING main activity com.autonavi.map.activity.SplashActivity (from package com.autonavi.minimap)// - NOT USING main activity com.autonavi.mockgps.app.MainActivity (from package com.autonavi.mockgps)// - NOT USING main activity com.autonavi.recoveryadb.MainActivity (from package com.autonavi.recoveryadb)// - NOT USING main activity com.duokan.reader.DkReaderActivity (from package com.duokan.reader)// - NOT USING main activity com.eg.android.AlipayGphone.AlipayLogin (from package com.eg.android.AlipayGphone)// - NOT USING main activity com.github.uiautomator.MainActivity (from package com.github.uiautomator)// - NOT USING main activity com.miui.compass.CompassActivity (from package com.miui.compass)// - NOT USING main activity com.miui.screenrecorder.activity.ScreenRecorderHomeActivity (from package com.miui.screenrecorder)// - NOT USING main activity com.miui.virtualsim.ui.MainActivity (from package com.miui.virtualsim)// - NOT USING main activity com.mnu.partitionFiller.mainActivity (from package com.mnu.partitionFiller)// - NOT USING main activity com.mocyx.basic_client.MainActivity (from package com.mocyx.basic_client)// - NOT USING main activity com.netease.nie.yosemite.MainActivity (from package com.netease.nie.yosemite)// - NOT USING main activity com.taobao.tao.welcome.Welcome (from package com.taobao.taobao)// - NOT USING main activity com.tencent.mm.ui.LauncherUI (from package com.tencent.mm)// - NOT USING main activity com.xiaomi.gamecenter.ui.MainTabActivity (from package com.xiaomi.gamecenter)// - NOT USING main activity com.xiaomi.mico.splash.SplashActivity (from package com.xiaomi.mico)// - NOT USING main activity com.xiaomi.shop.activity.MainTabActivity (from package com.xiaomi.shop)// - NOT USING main activity io.appium.settings.Settings (from package io.appium.settings)// - NOT USING main activity make.more.r2d2.cellular_z.activity.SplashGMActivity (from package make.more.r2d2.cellular_z)// - NOT USING main activity com.joaomgcd.taskerm.util.ActivitySecondaryApp (from package net.dinglisch.android.taskerm)// Selecting main activities from category android.intent.category.MONKEY// - NOT USING main activity com.android.quicksearchbox.SearchActivity (from package com.android.quicksearchbox)// - NOT USING main activity com.android.settings.Settings$RunningServicesActivity (from package com.android.settings)// - NOT USING main activity com.android.settings.Settings$StorageUseActivity (from package com.android.settings)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.cloudbackup.ui.CloudBackupDetailActivity (from package com.miui.cloudbackup)// - NOT USING main activity com.miui.cloudservice.ui.MiCloudMainActivity (from package com.miui.cloudservice)// - NOT USING main activity com.miui.home.launcher.Launcher (from package com.miui.home)// - NOT USING main activity miui.notification.management.activity.NotificationAppListActivity (from package com.miui.notification)// - NOT USING main activity com.xiaomi.account.ui.AccountSettingsActivity (from package com.xiaomi.account)// - NOT USING main activity com.xiaomi.payment.MiliCenterEntryActivity (from package com.xiaomi.payment)// - NOT USING main activity com.xiaomi.drivemode.UserGuideActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.miui.micloudsync.MonkeyActivity (from package com.miui.micloudsync)// - NOT USING main activity com.miui.personalassistant.ui.CardSettingsActivity (from package com.miui.personalassistant)// - NOT USING main activity com.miui.virtualsim.monkeyentry.MonkeyActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.drivemode.DriveModeSettingsActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.DriveModeAnimActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.MiuiLabDriveModeActivity (from package com.xiaomi.drivemode)// Seeded: 1668964527417// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 2.0%// 3: 15.0%// 4: -0.0%// 5: -0.0%// 6: 25.0%// 7: 15.0%// 8: 2.0%// 9: 2.0%// 10: 1.0%// 11: 13.0%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapautoSleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(360.0,84.0):Sending Touch (ACTION_UP): 0:(355.05856,92.75435)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 22 // KEYCODE_DPAD_RIGHT// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Key (ACTION_UP): 22 // KEYCODE_DPAD_RIGHTEvents injected: 5:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=0 rotations=0## Network stats: elapsed time=72ms (0ms mobile, 0ms wifi, 72ms not connected)// Monkey finished
4.[options] -s
# 伪随机数生成器的种子值,如果用相同的种子值再次运行monkey,将生成相同的事件序列。adb shell monkey -s 8888 -v -v -v 500
adb shell monkey -p com.autonavi.amapauto -v -v -v 100 > D:\log.txt
bash arg: -pbash arg: com.autonavi.amapautobash arg: -vbash arg: -vbash arg: -vbash arg: 100:Monkey: seed=1678571391982 count=100:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER// - NOT USING main activity com.android.calendar.homepage.AllInOneActivity (from package com.android.calendar)// - NOT USING main activity com.android.camera.Camera (from package com.android.camera)// - NOT USING main activity com.android.contacts.activities.PeopleActivity (from package com.android.contacts)// - NOT USING main activity com.android.contacts.activities.TwelveKeyDialer (from package com.android.contacts)// - NOT USING main activity com.android.deskclock.DeskClockTabActivity (from package com.android.deskclock)// - NOT USING main activity com.android.email.activity.Welcome (from package com.android.email)// - NOT USING main activity com.android.fileexplorer.FileExplorerTabActivity (from package com.android.fileexplorer)// - NOT USING main activity com.android.mms.ui.MmsTabActivity (from package com.android.mms)// - NOT USING main activity com.android.settings.MainSettings (from package com.android.settings)// - NOT USING main activity com.android.soundrecorder.SoundRecorder (from package com.android.soundrecorder)// - NOT USING main activity com.android.thememanager.business.startup.view.StartupActivity (from package com.android.thememanager)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.calculator.cal.CalculatorActivity (from package com.miui.calculator)// - NOT USING main activity com.miui.gallery.activity.HomePageActivity (from package com.miui.gallery)// - NOT USING main activity com.miui.notes.ui.NotesListActivity (from package com.miui.notes)// - NOT USING main activity com.miui.weather2.ActivityWeatherMain (from package com.miui.weather2)// - NOT USING main activity com.xiaomi.scanner.app.ScanActivity (from package com.xiaomi.scanner)// - NOT USING main activity com.google.android.apps.chrome.Main (from package com.android.chrome)// + Using main activity com.autonavi.auto.remote.fill.UsbFillActivity (from package com.autonavi.amapauto)// - NOT USING main activity com.android.providers.downloads.ui.DownloadList (from package com.android.providers.downloads.ui)// - NOT USING main activity com.market2345.ui.navigation.NavigationActivity (from package com.androidmarket.dingzhi)// - NOT USING main activity com.browser2345.StartBrowserActivity (from package com.browser_llqhz)// - NOT USING main activity com.miui.bugreport.ui.MainTabActivity (from package com.miui.bugreport)// - NOT USING main activity com.miui.compass.CompassActivity (from package com.miui.compass)// - NOT USING main activity com.miui.player.ui.MusicBrowserActivity (from package com.miui.player)// - NOT USING main activity com.miui.screenrecorder.activity.ScreenRecorderHomeActivity (from package com.miui.screenrecorder)// - NOT USING main activity com.miui.securityscan.MainActivity (from package com.miui.securitycenter)// - NOT USING main activity com.miui.video.HomeActivity (from package com.miui.video)// - NOT USING main activity com.miui.virtualsim.ui.MainActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.voiceassistant.LauncherRouterActivity (from package com.miui.voiceassist)// - NOT USING main activity com.pp.assistant.activity.PPMainActivity (from package com.wandoujia.phoenix2)// - NOT USING main activity com.xiaomi.vipaccount.ui.home.SplashActivity (from package com.xiaomi.vipaccount)// - NOT USING main activity sogou.mobile.explorer.NoDisplayActivity (from package sogou.mobile.explorer)// - NOT USING main activity com.alibaba.android.rimet.biz.LaunchHomeActivity (from package com.alibaba.android.rimet)// - NOT USING main activity com.amap.mockgps.activity.MockGpsProviderActivity (from package com.amap.mockgps)// - NOT USING main activity com.autonavi.autohelper.MainActivity (from package com.autonavi.autohelper)// - NOT USING main activity com.autonavi.map.activity.SplashActivity (from package com.autonavi.minimap)// - NOT USING main activity tv.danmaku.bili.ui.splash.SplashActivity (from package com.bilibili.app.blue)// - NOT USING main activity com.xiaomi.mitv.phone.remotecontroller.HoriWidgetMainActivityV2 (from package com.duokan.phone.remotecontroller)// - NOT USING main activity com.estrongs.android.pop.app.openscreenad.NewSplashActivity (from package com.estrongs.android.pop)// - NOT USING main activity com.example.app8.MainActivity (from package com.example.app8)// - NOT USING main activity com.example.myappdemo3.MainActivity (from package com.example.myappdemo3)// - NOT USING main activity com.tencent.mm.ui.LauncherUI (from package com.tencent.mm)// - NOT USING main activity a.c (from package com.topjohnwu.magisk)// - NOT USING main activity io.appium.settings.Settings (from package io.appium.settings)// Selecting main activities from category android.intent.category.MONKEY// - NOT USING main activity com.android.quicksearchbox.SearchActivity (from package com.android.quicksearchbox)// - NOT USING main activity com.android.settings.Settings$RunningServicesActivity (from package com.android.settings)// - NOT USING main activity com.android.settings.Settings$StorageUseActivity (from package com.android.settings)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.cloudbackup.ui.CloudBackupDetailActivity (from package com.miui.cloudbackup)// - NOT USING main activity com.miui.cloudservice.ui.MiCloudMainActivity (from package com.miui.cloudservice)// - NOT USING main activity com.miui.home.launcher.Launcher (from package com.miui.home)// - NOT USING main activity com.xiaomi.account.ui.AccountSettingsActivity (from package com.xiaomi.account)// - NOT USING main activity com.xiaomi.drivemode.UserGuideActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.payment.MiliCenterEntryActivity (from package com.xiaomi.payment)// - NOT USING main activity com.miui.micloudsync.MonkeyActivity (from package com.miui.micloudsync)// - NOT USING main activity com.miui.personalassistant.ui.CardSettingsActivity (from package com.miui.personalassistant)// - NOT USING main activity com.miui.virtualsim.monkeyentry.MonkeyActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.drivemode.DriveModeSettingsActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.DriveModeAnimActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.MiuiLabDriveModeActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.vipaccount.ui.monkeyentry.MonkeyActivity (from package com.xiaomi.vipaccount)// Seeded: 1678571391982// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 2.0%// 3: 15.0%// 4: -0.0%// 5: -0.0%// 6: 25.0%// 7: 15.0%// 8: 2.0%// 9: 2.0%// 10: 1.0%// 11: 13.0%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapautoSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 180 // KEYCODE_STB_INPUT// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Key (ACTION_UP): 180 // KEYCODE_STB_INPUTSleeping for 0 milliseconds:Sending Flip keyboardOpen=falseGot IOException performing flipjava.io.IOException: write failed: EINVAL (Invalid argument)// Injection FailedSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(3.0,1.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,2.0):Sending Trackball (ACTION_MOVE): 0:(0.0,2.0):Sending Trackball (ACTION_MOVE): 0:(1.0,-4.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,2.0):Sending Trackball (ACTION_MOVE): 0:(2.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-5.0,3.0):Sending Trackball (ACTION_MOVE): 0:(-2.0,3.0):Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 21 // KEYCODE_DPAD_LEFT:Sending Key (ACTION_UP): 21 // KEYCODE_DPAD_LEFTSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 23 // KEYCODE_DPAD_CENTER:Sending Key (ACTION_UP): 23 // KEYCODE_DPAD_CENTERSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(4.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,2.0):Sending Trackball (ACTION_MOVE): 0:(4.0,1.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(4.0,3.0):Sending Trackball (ACTION_MOVE): 0:(3.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-2.0)// Rejecting start of Intent { cmp=com.android.systemui/.recents.RecentsActivity } in package com.android.systemui:Sending Trackball (ACTION_MOVE): 0:(-3.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(0.0,-1.0):Sending Trackball (ACTION_MOVE): 0:(-2.0,-4.0):Sending Touch (ACTION_DOWN): 0:(12.0,1449.0):Sending Touch (ACTION_UP): 0:(28.040207,1449.7125)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Flip keyboardOpen=trueGot IOException performing flipjava.io.IOException: write failed: EINVAL (Invalid argument)// Injection FailedSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 21 // KEYCODE_DPAD_LEFT:Sending Key (ACTION_UP): 21 // KEYCODE_DPAD_LEFTSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 225 // KEYCODE_PAIRING:Sending Key (ACTION_UP): 225 // KEYCODE_PAIRINGSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(597.0,238.0):Sending Touch (ACTION_MOVE): 0:(580.99255,235.70848):Sending Touch (ACTION_MOVE): 0:(567.8449,227.93594):Sending Touch (ACTION_MOVE): 0:(552.2382,221.74454):Sending Touch (ACTION_MOVE): 0:(540.7079,209.53922):Sending Touch (ACTION_MOVE): 0:(523.68475,194.78691):Sending Touch (ACTION_MOVE): 0:(502.22595,188.17601):Sending Touch (ACTION_MOVE): 0:(498.7138,173.6767):Sending Touch (ACTION_MOVE): 0:(476.45337,162.23425):Sending Touch (ACTION_UP): 0:(464.37738,156.15536)Sleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(464.0,192.0):Sending Touch (ACTION_MOVE): 0:(474.5164,179.84035):Sending Touch (ACTION_MOVE): 0:(488.04498,171.05109):Sending Touch (ACTION_MOVE): 0:(496.79883,160.48438):Sending Touch (ACTION_MOVE): 0:(498.49225,152.8276):Sending Touch (ACTION_UP): 0:(512.50433,144.3187)Sleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(948.0,1466.0):Sending Touch (ACTION_POINTER_DOWN 1): 0:(961.84326,1447.6656) 1:(12.0,1523.0):Sending Touch (ACTION_MOVE): 0:(973.6385,1437.725) 1:(18.231113,1522.5243):Sending Touch (ACTION_MOVE): 0:(997.00134,1423.5723) 1:(22.20216,1521.9719):Sending Touch (ACTION_MOVE): 0:(1011.5516,1419.6057) 1:(25.237625,1514.5171):Sending Touch (ACTION_MOVE): 0:(1027.9148,1416.6036) 1:(26.607368,1513.6372):Sending Touch (ACTION_MOVE): 0:(1028.924,1403.363) 1:(26.760143,1511.0199):Sending Touch (ACTION_MOVE): 0:(1051.0667,1391.5208) 1:(35.385315,1506.3274):Sending Touch (ACTION_POINTER_UP 1): 0:(1054.0309,1389.442) 1:(38.591293,1504.1587):Sending Touch (ACTION_UP): 0:(1067.5797,1377.9822)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 23 // KEYCODE_DPAD_CENTER:Sending Key (ACTION_UP): 23 // KEYCODE_DPAD_CENTERSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(-1.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,2.0):Sending Trackball (ACTION_MOVE): 0:(0.0,0.0):Sending Trackball (ACTION_MOVE): 0:(0.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,0.0):Sending Trackball (ACTION_MOVE): 0:(-5.0,0.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-4.0):Sending Trackball (ACTION_MOVE): 0:(4.0,1.0):Sending Trackball (ACTION_MOVE): 0:(2.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,1.0):Sending Touch (ACTION_DOWN): 0:(364.0,1784.0)Events injected: 100:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=2 rotations=0## Network stats: elapsed time=195ms (0ms mobile, 0ms wifi, 195ms not connected)// Monkey finished
adb shell monkey -s 1678571391982 -p com.autonavi.amapauto -v -v -v 100 > D:\log1.txt
bash arg: -sbash arg: 1678571391982bash arg: -pbash arg: com.autonavi.amapautobash arg: -vbash arg: -vbash arg: -vbash arg: 100:Monkey: seed=1678571391982 count=100:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER// - NOT USING main activity com.android.calendar.homepage.AllInOneActivity (from package com.android.calendar)// - NOT USING main activity com.android.camera.Camera (from package com.android.camera)// - NOT USING main activity com.android.contacts.activities.PeopleActivity (from package com.android.contacts)// - NOT USING main activity com.android.contacts.activities.TwelveKeyDialer (from package com.android.contacts)// - NOT USING main activity com.android.deskclock.DeskClockTabActivity (from package com.android.deskclock)// - NOT USING main activity com.android.email.activity.Welcome (from package com.android.email)// - NOT USING main activity com.android.fileexplorer.FileExplorerTabActivity (from package com.android.fileexplorer)// - NOT USING main activity com.android.mms.ui.MmsTabActivity (from package com.android.mms)// - NOT USING main activity com.android.settings.MainSettings (from package com.android.settings)// - NOT USING main activity com.android.soundrecorder.SoundRecorder (from package com.android.soundrecorder)// - NOT USING main activity com.android.thememanager.business.startup.view.StartupActivity (from package com.android.thememanager)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.calculator.cal.CalculatorActivity (from package com.miui.calculator)// - NOT USING main activity com.miui.gallery.activity.HomePageActivity (from package com.miui.gallery)// - NOT USING main activity com.miui.notes.ui.NotesListActivity (from package com.miui.notes)// - NOT USING main activity com.miui.weather2.ActivityWeatherMain (from package com.miui.weather2)// - NOT USING main activity com.xiaomi.scanner.app.ScanActivity (from package com.xiaomi.scanner)// - NOT USING main activity com.google.android.apps.chrome.Main (from package com.android.chrome)// + Using main activity com.autonavi.auto.remote.fill.UsbFillActivity (from package com.autonavi.amapauto)// - NOT USING main activity com.android.providers.downloads.ui.DownloadList (from package com.android.providers.downloads.ui)// - NOT USING main activity com.market2345.ui.navigation.NavigationActivity (from package com.androidmarket.dingzhi)// - NOT USING main activity com.browser2345.StartBrowserActivity (from package com.browser_llqhz)// - NOT USING main activity com.miui.bugreport.ui.MainTabActivity (from package com.miui.bugreport)// - NOT USING main activity com.miui.compass.CompassActivity (from package com.miui.compass)// - NOT USING main activity com.miui.player.ui.MusicBrowserActivity (from package com.miui.player)// - NOT USING main activity com.miui.screenrecorder.activity.ScreenRecorderHomeActivity (from package com.miui.screenrecorder)// - NOT USING main activity com.miui.securityscan.MainActivity (from package com.miui.securitycenter)// - NOT USING main activity com.miui.video.HomeActivity (from package com.miui.video)// - NOT USING main activity com.miui.virtualsim.ui.MainActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.voiceassistant.LauncherRouterActivity (from package com.miui.voiceassist)// - NOT USING main activity com.pp.assistant.activity.PPMainActivity (from package com.wandoujia.phoenix2)// - NOT USING main activity com.xiaomi.vipaccount.ui.home.SplashActivity (from package com.xiaomi.vipaccount)// - NOT USING main activity sogou.mobile.explorer.NoDisplayActivity (from package sogou.mobile.explorer)// - NOT USING main activity com.alibaba.android.rimet.biz.LaunchHomeActivity (from package com.alibaba.android.rimet)// - NOT USING main activity com.amap.mockgps.activity.MockGpsProviderActivity (from package com.amap.mockgps)// - NOT USING main activity com.autonavi.autohelper.MainActivity (from package com.autonavi.autohelper)// - NOT USING main activity com.autonavi.map.activity.SplashActivity (from package com.autonavi.minimap)// - NOT USING main activity tv.danmaku.bili.ui.splash.SplashActivity (from package com.bilibili.app.blue)// - NOT USING main activity com.xiaomi.mitv.phone.remotecontroller.HoriWidgetMainActivityV2 (from package com.duokan.phone.remotecontroller)// - NOT USING main activity com.estrongs.android.pop.app.openscreenad.NewSplashActivity (from package com.estrongs.android.pop)// - NOT USING main activity com.example.app8.MainActivity (from package com.example.app8)// - NOT USING main activity com.example.myappdemo3.MainActivity (from package com.example.myappdemo3)// - NOT USING main activity com.tencent.mm.ui.LauncherUI (from package com.tencent.mm)// - NOT USING main activity a.c (from package com.topjohnwu.magisk)// - NOT USING main activity io.appium.settings.Settings (from package io.appium.settings)// Selecting main activities from category android.intent.category.MONKEY// - NOT USING main activity com.android.quicksearchbox.SearchActivity (from package com.android.quicksearchbox)// - NOT USING main activity com.android.settings.Settings$RunningServicesActivity (from package com.android.settings)// - NOT USING main activity com.android.settings.Settings$StorageUseActivity (from package com.android.settings)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.cloudbackup.ui.CloudBackupDetailActivity (from package com.miui.cloudbackup)// - NOT USING main activity com.miui.cloudservice.ui.MiCloudMainActivity (from package com.miui.cloudservice)// - NOT USING main activity com.miui.home.launcher.Launcher (from package com.miui.home)// - NOT USING main activity com.xiaomi.account.ui.AccountSettingsActivity (from package com.xiaomi.account)// - NOT USING main activity com.xiaomi.drivemode.UserGuideActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.payment.MiliCenterEntryActivity (from package com.xiaomi.payment)// - NOT USING main activity com.miui.micloudsync.MonkeyActivity (from package com.miui.micloudsync)// - NOT USING main activity com.miui.personalassistant.ui.CardSettingsActivity (from package com.miui.personalassistant)// - NOT USING main activity com.miui.virtualsim.monkeyentry.MonkeyActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.drivemode.DriveModeSettingsActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.DriveModeAnimActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.MiuiLabDriveModeActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.vipaccount.ui.monkeyentry.MonkeyActivity (from package com.xiaomi.vipaccount)// Seeded: 1678571391982// Event percentages:// 0: 15.0%// 1: 10.0%// 2: 2.0%// 3: 15.0%// 4: -0.0%// 5: -0.0%// 6: 25.0%// 7: 15.0%// 8: 2.0%// 9: 2.0%// 10: 1.0%// 11: 13.0%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapautoSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 180 // KEYCODE_STB_INPUT// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Key (ACTION_UP): 180 // KEYCODE_STB_INPUTSleeping for 0 milliseconds:Sending Flip keyboardOpen=falseGot IOException performing flipjava.io.IOException: write failed: EINVAL (Invalid argument)// Injection FailedSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(3.0,1.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,2.0):Sending Trackball (ACTION_MOVE): 0:(0.0,2.0):Sending Trackball (ACTION_MOVE): 0:(1.0,-4.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,2.0):Sending Trackball (ACTION_MOVE): 0:(2.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-5.0,3.0):Sending Trackball (ACTION_MOVE): 0:(-2.0,3.0):Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 21 // KEYCODE_DPAD_LEFT:Sending Key (ACTION_UP): 21 // KEYCODE_DPAD_LEFTSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 23 // KEYCODE_DPAD_CENTER:Sending Key (ACTION_UP): 23 // KEYCODE_DPAD_CENTERSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(4.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,2.0):Sending Trackball (ACTION_MOVE): 0:(4.0,1.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(4.0,3.0):Sending Trackball (ACTION_MOVE): 0:(3.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-2.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(0.0,-1.0):Sending Trackball (ACTION_MOVE): 0:(-2.0,-4.0):Sending Touch (ACTION_DOWN): 0:(12.0,1449.0):Sending Touch (ACTION_UP): 0:(28.040207,1449.7125)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP// Rejecting start of Intent { cmp=com.android.systemui/.recents.RecentsActivity } in package com.android.systemui:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Flip keyboardOpen=trueGot IOException performing flipjava.io.IOException: write failed: EINVAL (Invalid argument)// Injection FailedSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 21 // KEYCODE_DPAD_LEFT:Sending Key (ACTION_UP): 21 // KEYCODE_DPAD_LEFTSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 82 // KEYCODE_MENU:Sending Key (ACTION_UP): 82 // KEYCODE_MENUSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 19 // KEYCODE_DPAD_UP:Sending Key (ACTION_UP): 19 // KEYCODE_DPAD_UPSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 225 // KEYCODE_PAIRING:Sending Key (ACTION_UP): 225 // KEYCODE_PAIRINGSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(597.0,238.0):Sending Touch (ACTION_MOVE): 0:(580.99255,235.70848):Sending Touch (ACTION_MOVE): 0:(567.8449,227.93594):Sending Touch (ACTION_MOVE): 0:(552.2382,221.74454):Sending Touch (ACTION_MOVE): 0:(540.7079,209.53922):Sending Touch (ACTION_MOVE): 0:(523.68475,194.78691):Sending Touch (ACTION_MOVE): 0:(502.22595,188.17601):Sending Touch (ACTION_MOVE): 0:(498.7138,173.6767):Sending Touch (ACTION_MOVE): 0:(476.45337,162.23425):Sending Touch (ACTION_UP): 0:(464.37738,156.15536)Sleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(464.0,192.0):Sending Touch (ACTION_MOVE): 0:(474.5164,179.84035):Sending Touch (ACTION_MOVE): 0:(488.04498,171.05109):Sending Touch (ACTION_MOVE): 0:(496.79883,160.48438):Sending Touch (ACTION_MOVE): 0:(498.49225,152.8276):Sending Touch (ACTION_UP): 0:(512.50433,144.3187)Sleeping for 0 milliseconds:Sending Touch (ACTION_DOWN): 0:(948.0,1466.0):Sending Touch (ACTION_POINTER_DOWN 1): 0:(961.84326,1447.6656) 1:(12.0,1523.0):Sending Touch (ACTION_MOVE): 0:(973.6385,1437.725) 1:(18.231113,1522.5243):Sending Touch (ACTION_MOVE): 0:(997.00134,1423.5723) 1:(22.20216,1521.9719):Sending Touch (ACTION_MOVE): 0:(1011.5516,1419.6057) 1:(25.237625,1514.5171):Sending Touch (ACTION_MOVE): 0:(1027.9148,1416.6036) 1:(26.607368,1513.6372):Sending Touch (ACTION_MOVE): 0:(1028.924,1403.363) 1:(26.760143,1511.0199):Sending Touch (ACTION_MOVE): 0:(1051.0667,1391.5208) 1:(35.385315,1506.3274):Sending Touch (ACTION_POINTER_UP 1): 0:(1054.0309,1389.442) 1:(38.591293,1504.1587):Sending Touch (ACTION_UP): 0:(1067.5797,1377.9822)Sleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 23 // KEYCODE_DPAD_CENTER:Sending Key (ACTION_UP): 23 // KEYCODE_DPAD_CENTERSleeping for 0 milliseconds:Sending Key (ACTION_DOWN): 20 // KEYCODE_DPAD_DOWN:Sending Key (ACTION_UP): 20 // KEYCODE_DPAD_DOWNSleeping for 0 milliseconds:Sending Trackball (ACTION_MOVE): 0:(-1.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,2.0):Sending Trackball (ACTION_MOVE): 0:(0.0,0.0):Sending Trackball (ACTION_MOVE): 0:(0.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,0.0):Sending Trackball (ACTION_MOVE): 0:(-5.0,0.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-4.0):Sending Trackball (ACTION_MOVE): 0:(4.0,1.0):Sending Trackball (ACTION_MOVE): 0:(2.0,1.0):Sending Trackball (ACTION_MOVE): 0:(-3.0,1.0):Sending Touch (ACTION_DOWN): 0:(364.0,1784.0)Events injected: 100:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=2 rotations=0## Network stats: elapsed time=178ms (0ms mobile, 0ms wifi, 178ms not connected)// Monkey finished
5.[options] —throttle
# 事件时间间隔,单位毫秒adb shell monkey --pct-touch 50 -v -v 500
6.[options] —pct-touch
# touch点击事件,percent为百分比,不得超过100,如果不写系统随机分配adb shell monkey --pct-touch 50 -v 100
7.[options] —pct-motion
#motion移图事件,percent为百分比,不得超过100,如果不写系统随机分配,直线移图adb shell monkey --pct-trackball 10 -v 100
8.[options] —pct-trackball
#trackball轨迹球,percent为百分比,不得超过100,如果不写系统随机分配,曲线移图adb shell monkey --pct-trackball 20 -v 100
9.[options] —other
# 指定基本的导航事件百分比。导航事件由方向输入设备的上下左右按键所触发的事件组成,即四个方向键--pct-nav <percent># 指定主导航事件百分比。这些导航事件通常会导致UI界面发生变化,如5-way键盘的中间键,返回按键、菜单按键--pct-majornav <percent># 指定系统事件百分比。这些按键通常由系统保留使用,如Home、Back、Start Call、End Call、音量调节--pct-syskeys <percent># 指定Activity启动的百分比。在随机的时间间隔中,monkey执行startActivity()方法,最大程度地覆盖应用中全部的Activity--pct-appswitch <percent>指定其他事件的百分比。包含所有其他事件,如按键、其他在设备上不常用的按钮等--pct-anyevent <percent>
10.[options] —ignore-other
# 忽略crashes,测试过程中发生crashes继续进行测试直到执行完指定的事件数,如果不忽略遇到crashesmonkey测试会停止--ignore-crashes# 忽略ANR,测试过程中发生ANR继续进行直到执行完指定的事件数,如果不忽略遇到ANR测试也会终止--ignore-timeouts# 忽略权限错误,在设置此选项后,当应用程序发生任何权限错误(如启动一个需要某些权限的Activity)时,monkey将继续运行直到计数完成。如果不设置此选项,monkey遇到此类权限错误将停止运行。--ignore-security-exceptions
11.[options] —monitor-native-crashes
# 监视系统代码,用于指定是否监视并报告Android系统中本地代码的崩溃事件。--monitor-native-crashes
12.[options] —kill-process-after-error
# 发生错误停止应用用于指定当应用程序发生错误时,是否停止其运行。如果指定此参数,当应用程序发生错误时,将会通知系统停止发生错误的进程。--kill-process-after-error
13.[options] —hprof
# 用于在 monkey 事件执行前后生成内存快照文件。通过对比前后的内存快照文件,协助定位内存泄漏问题。快照文件存放于 data/misc目录。由于内存快照文件比较大,所以要小心使用。-- hprof
14.[options] —bugreport
可以运行adb bugreport观察,它提供了meminfo,cpuinfo,vmstat到dmesg,buildprop等信息--bugreport
15.完整命令
adb shell monkey -p com.autonavi.amapauto --bugreport --ignore-crashes--ignore-timeouts --ignore-security-exceptions --monitor-native-crashes--kill-process-after-error --pct-syskeys 1 --pct-motion 2 --pct-touch 80--pct-trackball 0 --throttle 5 -v -v -v 10 > D:\monkeyLog.log
16.报告
bash arg: -pbash arg: com.autonavi.amapautobash arg: --bugreportbash arg: --ignore-crashesbash arg: --ignore-timeoutsbash arg: --ignore-security-exceptionsbash arg: --monitor-native-crashesbash arg: --kill-process-after-errorbash arg: --pct-syskeysbash arg: 1bash arg: --pct-motionbash arg: 2bash arg: --pct-touchbash arg: 80bash arg: --pct-trackballbash arg: 0bash arg: --throttlebash arg: 5bash arg: -vbash arg: -vbash arg: -vbash arg: 10:Monkey: seed=1668891391735 count=10:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY// Selecting main activities from category android.intent.category.LAUNCHER// - NOT USING main activity com.android.browser.BrowserActivity (from package com.android.browser)// - NOT USING main activity com.android.calendar.homepage.AllInOneActivity (from package com.android.calendar)// - NOT USING main activity com.android.camera.Camera (from package com.android.camera)// - NOT USING main activity com.android.contacts.activities.PeopleActivity (from package com.android.contacts)// - NOT USING main activity com.android.contacts.activities.TwelveKeyDialer (from package com.android.contacts)// - NOT USING main activity com.android.deskclock.DeskClockTabActivity (from package com.android.deskclock)// - NOT USING main activity com.android.fileexplorer.FileExplorerTabActivity (from package com.android.fileexplorer)// - NOT USING main activity com.android.mms.ui.MmsTabActivity (from package com.android.mms)// - NOT USING main activity com.android.settings.MainSettings (from package com.android.settings)// - NOT USING main activity com.android.soundrecorder.SoundRecorder (from package com.android.soundrecorder)// - NOT USING main activity com.android.thememanager.business.startup.view.StartupActivity (from package com.android.thememanager)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.gallery.activity.HomePageActivity (from package com.miui.gallery)// - NOT USING main activity com.xiaomi.market.ui.MarketTabActivity (from package com.xiaomi.market)// - NOT USING main activity com.android.email.activity.Welcome (from package com.android.email)// + Using main activity com.autonavi.auto.remote.fill.UsbFillActivity (from package com.autonavi.amapauto)// - NOT USING main activity com.miui.calculator.cal.CalculatorActivity (from package com.miui.calculator)// - NOT USING main activity com.miui.notes.ui.NotesListActivity (from package com.miui.notes)// - NOT USING main activity com.miui.weather2.ActivityWeatherMain (from package com.miui.weather2)// - NOT USING main activity com.sohu.inputmethod.sogou.SogouIMELauncher (from package com.sohu.inputmethod.sogou)// - NOT USING main activity com.xiaomi.scanner.app.ScanActivity (from package com.xiaomi.scanner)// - NOT USING main activity net.dinglisch.android.taskerm.Tasker (from package net.dinglisch.android.taskerm)// - NOT USING main activity com.android.providers.downloads.ui.DownloadList (from package com.android.providers.downloads.ui)// - NOT USING main activity com.miui.bugreport.ui.MainTabActivity (from package com.miui.bugreport)// - NOT USING main activity com.miui.player.ui.MusicBrowserActivity (from package com.miui.player)// - NOT USING main activity com.miui.securityscan.MainActivity (from package com.miui.securitycenter)// - NOT USING main activity com.miui.video.HomeActivity (from package com.miui.video)// - NOT USING main activity com.xiaomi.voiceassistant.LauncherRouterActivity (from package com.miui.voiceassist)// - NOT USING main activity com.xiaomi.vipaccount.ui.monkeyentry.MonkeyActivity (from package com.xiaomi.vipaccount)// - NOT USING main activity com.autonavi.amapauto.autolink.MainActivity (from package amapauto.autonavi.com.wifidirectlinktest)// - NOT USING main activity cn.wps.moffice.documentmanager.PreStartActivity (from package cn.wps.moffice_eng)// - NOT USING main activity com.alibaba.android.rimet.biz.LaunchHomeActivity (from package com.alibaba.android.rimet.aliding)// - NOT USING main activity com.aliwork.alilang.activity.SplashActivity (from package com.alibaba.android.security.activity)// - NOT USING main activity com.amap.mockgps.activity.MockGpsProviderActivity (from package com.amap.mockgps)// - NOT USING main activity com.amap.qahome.MainActivity (from package com.amap.qahome)// - NOT USING main activity com.alipay.hulu.activity.SplashActivity (from package com.amapauto.autohelper)// - NOT USING main activity com.alipay.hulu.activity.SplashActivity (from package com.autonavi.amapauto.autohelper)// - NOT USING main activity jp.co.cyberagent.stf.IdentityActivity (from package com.autonavi.arc.jarvis)// - NOT USING main activity com.autonavi.autohelper.MainActivity (from package com.autonavi.autohelper)// - NOT USING main activity com.autonavi.diagnose.MainActivity (from package com.autonavi.diagnose)// - NOT USING main activity com.autonavi.gaode.editfuncconfig.MainActivity (from package com.autonavi.gaode.editfuncconfig)// - NOT USING main activity com.autonavi.map.activity.SplashActivity (from package com.autonavi.minimap)// - NOT USING main activity com.autonavi.mockgps.app.MainActivity (from package com.autonavi.mockgps)// - NOT USING main activity com.autonavi.recoveryadb.MainActivity (from package com.autonavi.recoveryadb)// - NOT USING main activity com.duokan.reader.DkReaderActivity (from package com.duokan.reader)// - NOT USING main activity com.eg.android.AlipayGphone.AlipayLogin (from package com.eg.android.AlipayGphone)// - NOT USING main activity com.github.uiautomator.MainActivity (from package com.github.uiautomator)// - NOT USING main activity com.miui.compass.CompassActivity (from package com.miui.compass)// - NOT USING main activity com.miui.screenrecorder.activity.ScreenRecorderHomeActivity (from package com.miui.screenrecorder)// - NOT USING main activity com.miui.virtualsim.ui.MainActivity (from package com.miui.virtualsim)// - NOT USING main activity com.mnu.partitionFiller.mainActivity (from package com.mnu.partitionFiller)// - NOT USING main activity com.mocyx.basic_client.MainActivity (from package com.mocyx.basic_client)// - NOT USING main activity com.netease.nie.yosemite.MainActivity (from package com.netease.nie.yosemite)// - NOT USING main activity com.taobao.tao.welcome.Welcome (from package com.taobao.taobao)// - NOT USING main activity com.tencent.mm.ui.LauncherUI (from package com.tencent.mm)// - NOT USING main activity com.xiaomi.gamecenter.ui.MainTabActivity (from package com.xiaomi.gamecenter)// - NOT USING main activity com.xiaomi.mico.splash.SplashActivity (from package com.xiaomi.mico)// - NOT USING main activity com.xiaomi.shop.activity.MainTabActivity (from package com.xiaomi.shop)// - NOT USING main activity io.appium.settings.Settings (from package io.appium.settings)// - NOT USING main activity make.more.r2d2.cellular_z.activity.SplashGMActivity (from package make.more.r2d2.cellular_z)// - NOT USING main activity com.joaomgcd.taskerm.util.ActivitySecondaryApp (from package net.dinglisch.android.taskerm)// Selecting main activities from category android.intent.category.MONKEY// - NOT USING main activity com.android.quicksearchbox.SearchActivity (from package com.android.quicksearchbox)// - NOT USING main activity com.android.settings.Settings$RunningServicesActivity (from package com.android.settings)// - NOT USING main activity com.android.settings.Settings$StorageUseActivity (from package com.android.settings)// - NOT USING main activity com.mipay.wallet.ui.MipayEntryActivity (from package com.mipay.wallet)// - NOT USING main activity com.miui.cloudbackup.ui.CloudBackupDetailActivity (from package com.miui.cloudbackup)// - NOT USING main activity com.miui.cloudservice.ui.MiCloudMainActivity (from package com.miui.cloudservice)// - NOT USING main activity com.miui.home.launcher.Launcher (from package com.miui.home)// - NOT USING main activity miui.notification.management.activity.NotificationAppListActivity (from package com.miui.notification)// - NOT USING main activity com.xiaomi.account.ui.AccountSettingsActivity (from package com.xiaomi.account)// - NOT USING main activity com.xiaomi.payment.MiliCenterEntryActivity (from package com.xiaomi.payment)// - NOT USING main activity com.xiaomi.drivemode.UserGuideActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.miui.micloudsync.MonkeyActivity (from package com.miui.micloudsync)// - NOT USING main activity com.miui.personalassistant.ui.CardSettingsActivity (from package com.miui.personalassistant)// - NOT USING main activity com.miui.virtualsim.monkeyentry.MonkeyActivity (from package com.miui.virtualsim)// - NOT USING main activity com.xiaomi.drivemode.DriveModeSettingsActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.DriveModeAnimActivity (from package com.xiaomi.drivemode)// - NOT USING main activity com.xiaomi.drivemode.MiuiLabDriveModeActivity (from package com.xiaomi.drivemode)// Seeded: 1668891391735// Event percentages:// 0: 80.0%// 1: 2.0%// 2: 0.5862069%// 3: -0.0%// 4: -0.0%// 5: -0.0%// 6: 7.327586%// 7: 4.396552%// 8: 1.0%// 9: 0.5862069%// 10: 0.29310346%// 11: 3.810345%:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapautoSleeping for 5 milliseconds:Sending Key (ACTION_DOWN): 22 // KEYCODE_DPAD_RIGHT// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// Allowing start of Intent { cmp=com.autonavi.amapauto/.MainMapActivity } in package com.autonavi.amapauto// activityResuming(com.autonavi.amapauto):Sending Key (ACTION_UP): 22 // KEYCODE_DPAD_RIGHTSleeping for 5 milliseconds:Sending Touch (ACTION_DOWN): 0:(401.0,591.0):Sending Touch (ACTION_UP): 0:(395.65952,576.1129)Sleeping for 5 milliseconds:Sending Touch (ACTION_DOWN): 0:(1328.0,662.0):Sending Touch (ACTION_UP): 0:(1337.881,659.249)Sleeping for 5 milliseconds:Sending Touch (ACTION_DOWN): 0:(1220.0,217.0):Sending Touch (ACTION_UP): 0:(1210.6814,223.03589)Sleeping for 5 milliseconds:Sending Touch (ACTION_DOWN): 0:(295.0,401.0)Events injected: 10:Sending rotation degree=0, persist=false:Dropped: keys=0 pointers=0 trackballs=0 flips=0 rotations=0## Network stats: elapsed time=133ms (0ms mobile, 0ms wifi, 133ms not connected)// Monkey finished
17.报告分析
组成:
(1) 测试命令信息:随机种子 seed、运行次数、可运行应用列表、各事件百分比。
:Monkey: seed=123456 count=100:AllowPackage: com.autonavi.amapauto:IncludeCategory: android.intent.category.LAUNCHER:IncludeCategory: android.intent.category.MONKEY
(2) App 切换和 Activity 跳转:
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity;end// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto// Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.autonavi.amapauto/com.autonavi.auto.remote.fill.UsbFillActivity } in package com.autonavi.amapauto
(3) 伪随机事件流:记录各种随机操作及中间的延迟时间
- touch 触摸操作
:Sending Touch (ACTION_DOWN): 0:(601.0,1845.0):Sending Touch (ACTION_UP): 0:(602.02075,1859.1255)
- trackball 曲线滑动
:Sending Trackball (ACTION_MOVE): 0:(-4.0,4.0):Sending Trackball (ACTION_MOVE): 0:(4.0,-1.0):Sending Trackball (ACTION_MOVE): 0:(0.0,-2.0):Sending Trackball (ACTION_MOVE): 0:(0.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(1.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,-3.0):Sending Trackball (ACTION_MOVE): 0:(3.0,-4.0):Sending Trackball (ACTION_MOVE): 0:(-2.0,-5.0):Sending Trackball (ACTION_MOVE): 0:(-1.0,-2.0):Sending Trackball (ACTION_MOVE): 0:(-4.0,-3.0)
- motion 滑动操作
:Sending Touch (ACTION_DOWN): 0:(616.0,1839.0):Sending Touch (ACTION_MOVE): 0:(620.33905,1836.9757):Sending Touch (ACTION_MOVE): 0:(622.64496,1834.43):Sending Touch (ACTION_MOVE): 0:(629.02374,1832.316):Sending Touch (ACTION_MOVE): 0:(630.7985,1830.329):Sending Touch (ACTION_MOVE): 0:(632.6726,1830.2623)
- pinch-zoom 缩放操作
:Sending Touch (ACTION_DOWN): 0:(616.0,1839.0):Sending Touch (ACTION_POINTER_DOWN 1): 0:(616.0,1839.0) 1:(178.0.39.0):Sending Touch (ACTION_MOVE): 0:(620.33905,1836.9757) 1:(181.7525.41.002):Sending Touch (ACTION_MOVE): 0:(622.64496,1834.43) 1:(192.0.42.0):Sending Touch (ACTION_MOVE): 0:(629.02374,1832.316) 1:(214.0.43.0):Sending Touch (ACTION_MOVE): 0:(630.7985,1830.329) 1:(236.0.45.0):Sending Touch (ACTION_MOVE): 0:(632.6726,1830.2623) 1:(178.0.39.0):Sending Touch (ACTION_POINTER_UP 1): 0:(90.42,1026.0) 1:(178.0.39.0)
- rotation 旋转操作
:Sending rotation degree=0, persist=false
