From bbdb6533c740f6797bf04f14bb6c712ec2259fcc Mon Sep 17 00:00:00 2001 From: Rosheen Date: Thu, 24 Nov 2022 22:34:30 +0800 Subject: [PATCH] =?UTF-8?q?=E8=83=BD=E8=B7=91=E3=80=81=E4=BD=86=E6=98=AF?= =?UTF-8?q?=E7=95=A5=E5=8D=A1=E7=9A=84=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 5 +- android/AndroidPerfServerFW.dex | Bin 7472 -> 7660 bytes android/arm64-v8a/AndroidPerfServer | Bin 18640 -> 18640 bytes android/armeabi-v7a/AndroidPerfServer | Bin 22112 -> 22116 bytes pom.xml | 6 +- .../android/androidperf/AppController.java | 69 +++++++++++++----- .../java/com/android/androidperf/Device.java | 2 +- .../com/android/androidperf/main-view.fxml | 2 +- 8 files changed, 56 insertions(+), 28 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index 2e289ef..af6e532 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,5 +1,8 @@ + + - + \ No newline at end of file diff --git a/android/AndroidPerfServerFW.dex b/android/AndroidPerfServerFW.dex index 1726c58e601f2e653aad6afe2cccdc4bdea279b6..87f7ff771ba559c5460935732544004b6c1fc23c 100644 GIT binary patch delta 3625 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 diff --git a/android/arm64-v8a/AndroidPerfServer b/android/arm64-v8a/AndroidPerfServer index 0dbcc02b15d23ebc43d351ea9c385d41700e046d..2df3af0fdb27b126c191fe214a3c8e9a288cf186 100644 GIT binary patch delta 1901 zcmZuyYfKbZ6ux(d$F7UAl!XO%aTxYBJG-z*QiV#J1tCx$tx|v3MjIP#0|}vz*hXtw zv9-oT(=t6I+J`MZ+QOK=va~g+jaCz@(Ny?nQ<^SdQ-0V83UNo4-k!U&P+i<)_M3aY z^Z4e>xpN0pI-t_70ZXWYB!40Gw=;P?<;G$Tp^sj*S=(;vZ?U$0`)p4+D&qTEV2~C? zdrU={#c{vkUu^&x5C|zFIiwW^vzv-5<@?#EQ)~j3n!_{!&zT*xKf2R=CaXB)HeA=O zHc-eg@HDK?bt^Ees?{#w%4oHU-PP&gxDz|-X5o1J#TYBwWixLLdjZeCap#Ai{?6C7F-+9N{z z`?;_ahP@8$XKDNgZkJ9e>WHwU>Nx3ai3tVDD&u*&q;^?7Mmt+Ztzs3oH=sTD-Wpew zRmmb1NR(o-xGAFZqCCNfK(v@ps0|B6+9(G9jY2=oB1^XrvLPnem4)cDdv2YtSm3X+ zAiV&2ZnwPzxtU#ceK8?ln|$(IFRmT1MJ$A8-AY{|!48=T88DYL=}Gk`WE4SEM;%e` zWE1@$@-a72htW30?-38o+3ealTyl#F!4f$!grAn@#T3;JfW9Ny=n9#?ZM4!a_ zy9s#6<9qZPCKx*(sc9u-SpP0SI}h&n>L9GHdshMHmvG0%y^viA{2XFIrRZGW{v2>*vE5F=XKIEu-WS< z`3b|Cg@|sZ^F_`d%aW*C2 z3VIth`>Ji5f;bVR>b4*#{84toXFhT5!w*bnSHfsVZ|t~TDZ*Vkm3;MfB{OM{=mP0{ zA77<1EEH&-WXS^U7UcOWYxqX!#-`&Y`g%I0bqq`6delmA=<=0?7%-L{(Z@{Y%lj$$ z&UhYp-Cvf;rkUdy9QC`4bqwaiGL3le;8@`gznl7i%FA(c)yONU72c3n(>Pp`gLEP~ zC4Ww{x4zi%+Vih$hYyu^>3#?V{ph+r7?!S2FgC!ymuqrLY@e8pWI$Fo4j%E~)y*$B zioQGGQqZ5(Imy_^Cg=#2SzJi*ZFmEukVpyCh5WP<+CpJ^7CylHA^15YO7XjlB|qN}0am4;{#<2J7EQ*dG zj^ARe74hH{V~4pN@f2dw9mZma*W!%X7-KH3192nbM#L_}9f%hZ4z2;xBi$3CLn{gY~%Rewp+$Vlhfy% z_jy0hdCxs@g~k;ci5Hk_N#U)O*b5&z-lZ-mDj(*qc;HfbC3n#Uf0RGBwcV{WA9O2ugxDw{UvW4@U3Sf_X!%0u z>4)rNjVGaJ5Fg>IJu7Vv!)p~Sv>nunwpQK8#elMEx!)zpG^KwigP;W@?5P#7&kh z+2kS24SogGHgGi~)+Ao}N>L^x^I(e$2tSly=FA#+RyXC=b)r*C{TX z*4KM+J;4)IJFkU?s`PrDJv6vW#}`~yIn(@Cge~a ziil>P@+s}zK3OP)bfOW7PmH9llaL)6ZaKk=A)@xEYeIM7E z;E$ANm9OUl>52T7o8N%rE-%+L2Pdi=Fz%`<-tSYyn?7ZR=hT!y(!Tk+m#KGvsAehTHNji+LhEAgt{%QTryF3iZo zX`b|+)N@MkYg9QCca53?zjs}Oej9Arn{;6|m+-!TGJ!X1vXEp7v7*6LemFhFnSOeY zk_*|Q;H1}S%$sASL$e@D&N7D9dMi=XUfNbAaL+5zYAEwun5jl>4S9R_NLI~#)~shrvZ aTA;2qSYQfdjZM(ix}jk4!Hh*)z5M?%0Hdz} diff --git a/android/armeabi-v7a/AndroidPerfServer b/android/armeabi-v7a/AndroidPerfServer index e6d46b0923ee9f3c64ce7299ff2d59c9a965b0c4..abd939ee17bff0fbf91ea525e9cfc6db877166c8 100644 GIT binary patch delta 2704 zcmZ{m3s98T701ur_kt|DJVajZ13?xA7Xd}11{ANmh=Pj7+Gr8Qf$0odCgW&R%Qhw> zCYg%8zGAJlPJM*~DOw$-4CQ2o?s}no!E|?|7?CMm${y%&SX{S5$+jGu+ zoO`}=&;9P_Yh&NEu~rLH?Y6E{x0MjJ?cTXdKU73Cg0QlU#uH=mj+m9#u1$BZh{~(8 zJoX-8LrRn0Oq4)GHX1{%N}_ymOg+VvKC1O!3Zix5uG(x`hgRd$u{SYxp*K-erPpT= z?fD7O*zw-R*n?{Q0@#LfqBCAo;#D@ATZwjqDzF2r2irj-*z#0va1xz{Zm|(XAT^MC z!LLPnQYJep<|Wxpy%wT#;0*ddfIJ|!B_*>hVt>-=m^rX_0w>^tjl0_X7PMM~+YVXC ziE{m+1uY&oU+GNZ2EL_?>ZxAasy-=&Yx=8Q#r&3ET~4;GWm0%)KV>KMmGC8;LhnU1 z6Dx<@brxP3A~se2S6=bcOH#O^-}At|@w@I#K91Q>W=_LQb6;`2>V0Y+)UjeNg^vbh zM>FBdACc`N!T;xQ!c&J%U%_*S1~@eI#SD(o&)`nX?uNH~UJh?-9?JIT!F*r#^U>c2 zDSQ0Q%n`d;ev30Gf%7~VNvG5yACnD&^4i(op3!T(;U8JXGunJL{n$&y%>*r&{+@M4D3d;pKGx) z%F2*bpz4|*Vr;HXj=eh|_o63O(XBcl=Sb&Nk6Jl~H-yqKr`Qy#ag^1=OMCD5+S_Qcl)TI#pv4rRbWGJ?~WQb}lTxFHQ!+tquX2!DemUP_2Q_y$X`(yKCg+Aw7>WX_&ejTs1?NX;9 zuJhu7ZNK{XSnQW~cZQm=D6xNnJ!a|)c+bxyibltMab?14?S+BR47{^Ne&#!DllW_9 zy81QP7BP@{f+dK(Sp}x=`l;)SV!Www3q1xF@wcpkq7UM53&az-J6`j=j;Gfxln?T& z0Po+pTCQ|$EgKGhIxrmmWZ?XCtbmzkMd`#M?ZN&xVK<6x(0|dt82VK4=ZRO$Sp%xU zDykg1{j=e4)_{eRl|oIArUMS~Ag4>;X(E~f z9*E9K7xhkPO}Gs0V&~*{)4vY1w5twmX=kl=9^)jNTzLq%)xn3uUy3EU*62h2kMoH> z#*8MhEw_lB6yDqdU9F#^b=V>9=Q^UR1H<8pK(~XaSJ?9wX;b`%pl|YS%R7a)fSBm8 z+wV^yngt3$XADv47$UC$Nr&A7dpYcPVSnP?>ZnvIHX6jug7Rr+(0UG>2N%Faa2fms zdU4!Fu(00P-EVEtwCC_@bTGm%o;zEekGiy72qEv7xtp#{aTwL}yXP zl={C*&7L;3d)z-D-#56^ZbN!bx?h2eeqHSzlI{1H`_dg*YDMg{HL}^QPOs|Mij$tN6oGO7OvLxj=mZBK1v9TIGAuc~X>u&k~L&r~p#E}q-*8}FA@)y$i<^mB&W;K4Gp`pMT~a&?COLmV8L pYhr%2S=~}X)Z%TZ7L3gikC$h#^TN7f;<)Qo*k$(YsfnJc{{ik*nX3Q* delta 2575 zcmZ{m3s98T701ur7rWuLiy*kL>vK?Z2y3_EPh3Ej-kGWlt>&4piF>IOGo<2V@ANER63U)dF+m9gloe*ZmR%bo6~UNk zr{3R&$r0b@;Qt(=wjal$ihczz0djLxfIpxe&WPnk ztK($Y=w%-otK@30uB1V&rj#qTA+xZBPeHsRxE$FMr;Nt=Z5Wg%cR|W^(s|?FeRND7 zqpDNu@3RraI-=!1h=4?C8NV1@+IMT3N-WgUEWM#N_NJTczn&O+Ce8-E-B74MhCs&}L zxkGxC^GU&M*iDY)9?88}bY!Nd`6TK*HJxZLXhxm}@Vp3Rx>$-x&oY$+rT2!kq>r#< zMYn2)Tn4RI{md0>{Qizuv`kWA{UWTb2ggNomVML>sjTTuetM9S7j~mL8)DI**qt?o zT@oK>nOnQ1?qigzbg6peYdSAA97_o{o0U#&uWZ!~8&NnKEzMn<34A{ViOd@|d(N?j~WNm#-Qgd?UUv{7?g63Y~qsde>+oV_=_M%~+~9 zoa0R7Q}K9yo=Ay_TjE;I{J66ND%j`6jNEtG8gVt(q~10K4_CqR{=~Ay!Mq~Fzx%24 zRw>azyio3eVlj|cq&bvAG@K&x##)ju3=Bul4SYEnt&Hh__|e#sxV`0nsz=FFFsjpW)?Y74H=sX17F@E0bLjjV^2a{?NIJXh+PwCAPRq z*m3c>t4O;vG!LUG6NO^DJAQ#Q9IcmbxQV*OwDHw(IUzsv^?@zp4>C4OOm#b*3Jlav zAo7CtM4~APM2C}5L)d?VT@Cw>urCJQcGoCVUV-{s47Gu+;GG0iDo6)LU;{ZI4>&;qm;eev z2`B|q!S_Hps06z~1o0b$sYF;``#KhT{lzn!&g{OK9N83f|Bw9((Nkid@T)7aR{s&T zuiz@=he#&b9U#~1b&POa}6MNao4!avt7Opwmfo4ZNC9 zbRU?;q0Hdz0?dPZAl`*~fpuUIL|uWM)eD$zS}tk>dIGG*$L8SHpqCq8Uf4_wJwod8 z+0~X+lS%VjT)CF%6wj#>6b40#DwUYax0&kfx;?lhWd1Iy>dfk;9-^gzSL+00 bWrEe))t}T7Wr*_GqeNM~o?Q^t_38fs>!WFk diff --git a/pom.xml b/pom.xml index 961ab48..e22e860 100644 --- a/pom.xml +++ b/pom.xml @@ -59,11 +59,6 @@ commons-lang3 3.12.0 - - com.github.vidstige - jadb - v1.2.1 - org.apache.logging.log4j log4j-core @@ -72,6 +67,7 @@ + compile org.apache.maven.plugins diff --git a/src/main/java/com/android/androidperf/AppController.java b/src/main/java/com/android/androidperf/AppController.java index 2e204a4..b427565 100644 --- a/src/main/java/com/android/androidperf/AppController.java +++ b/src/main/java/com/android/androidperf/AppController.java @@ -32,7 +32,7 @@ public class AppController implements Initializable { @FXML private ComboBox deviceListBox; @FXML - private ComboBox packageListBox; + private ComboBox AppListBox; @FXML private TableView propTable; @FXML @@ -49,6 +49,11 @@ public class AppController implements Initializable { private final HashMap deviceMap = new HashMap<>(); private final ScheduledExecutorService executorService = Executors.newScheduledThreadPool(1); + private ObservableList packageList; + private ObservableList AppList = FXCollections.observableArrayList(); + private HashMap packageToApp = new HashMap<>(); + private HashMap AppToPackage = new HashMap<>(); + @Override public void initialize(URL url, ResourceBundle resourceBundle) { // initialize the device list @@ -77,7 +82,7 @@ public void initialize(URL url, ResourceBundle resourceBundle) { // UI update updateUIOnStateChanges(); - packageListBox.setDisable(true); + AppListBox.setDisable(true); // activate auto refresh task executorService.scheduleAtFixedRate(this::refreshTask, 500, 500, TimeUnit.MILLISECONDS); @@ -197,6 +202,27 @@ public final void addDataToChart(String chartName, XYChart.Data. } } + public void updateConversionHashMap() { + packageToApp.clear(); + AppToPackage.clear(); + for (String packageName: packageList + ) { + String AppName = new String(selectedDevice.sendMSG("convert "+packageName)); + LOGGER.debug(AppName); + packageToApp.put(packageName, AppName); + AppToPackage.put(AppName, packageName); + } + } + + public void updateAppList() { + AppList.clear(); + updateConversionHashMap(); + for (String packageName: packageList + ) { + AppList.add(packageToApp.get(packageName)); + } + } + public void handleDeviceListBox() { if (selectedDevice != null) selectedDevice.endPerf(); @@ -222,8 +248,10 @@ public void handleDeviceListBox() { dialog.close(); propTable.getItems().clear(); - // initialize the package list - packageListBox.setItems(selectedDevice.getPackageList()); + // initialize the package list and the App list + packageList = selectedDevice.getPackageList(); + updateAppList(); + AppListBox.setItems(AppList); // initialize basic properties of the device ArrayList props = selectedDevice.getProps(); @@ -232,7 +260,7 @@ public void handleDeviceListBox() { // UI update updateUIOnStateChanges(); - packageListBox.setDisable(false); + AppListBox.setDisable(false); }); }); task.setOnFailed((e) -> { @@ -250,27 +278,28 @@ private void refreshTask() { } } - public void movePackageToFront(String packageName) { - EventHandler handler = packageListBox.getOnAction(); - packageListBox.setOnAction(null); - String selected = packageListBox.getSelectionModel().getSelectedItem(); - var packageList = selectedDevice.getPackageList(); + public void moveAppToFront(String packageName) { + EventHandler handler = AppListBox.getOnAction(); + AppListBox.setOnAction(null); + String selectedApp = AppListBox.getSelectionModel().getSelectedItem(); + packageList = selectedDevice.getPackageList(); packageList.remove(packageName); packageList.add(0, packageName); - if (selected != null) { - packageListBox.getSelectionModel().select(selected); - packageListBox.setValue(selected); + updateAppList(); + if (selectedApp != null) { + AppListBox.getSelectionModel().select(selectedApp); + AppListBox.setValue(selectedApp); } - packageListBox.setOnAction(handler); + AppListBox.setOnAction(handler); } - public void handlePackageListBox() { - String packageName = packageListBox.getSelectionModel().getSelectedItem(); - if (packageName == null || packageName.length() == 0) { + public void handleAppListBox() { + String AppName = AppListBox.getSelectionModel().getSelectedItem(); + if (AppName == null || AppName.length() == 0) { selectedDevice.endPerf(); return; } - selectedDevice.setTargetPackage(packageName); + selectedDevice.setTargetPackage(AppToPackage.get(AppName)); // UI update updateUIOnStateChanges(); @@ -290,7 +319,7 @@ public void handleUpdateBtn() { if (selectedDevice != null) { selectedDevice.updatePackageList(); } else { - packageListBox.getItems().clear(); + AppListBox.getItems().clear(); propTable.getItems().clear(); } } @@ -300,7 +329,7 @@ public void updateUIOnStateChanges() { if (selectedDevice == null) { deviceListBox.setPromptText("Select connected devices"); } - packageListBox.setPromptText("Select target package"); + AppListBox.setPromptText("Select target App"); perfBtn.setDisable(true); perfBtn.setText("Start"); return; diff --git a/src/main/java/com/android/androidperf/Device.java b/src/main/java/com/android/androidperf/Device.java index b3705e4..68210d7 100644 --- a/src/main/java/com/android/androidperf/Device.java +++ b/src/main/java/com/android/androidperf/Device.java @@ -320,7 +320,7 @@ public void checkCurrentPackage() { String packageName = packageInfo[0]; if (packageInfo.length == 2 && !packageList.get(0).equals(packageName)) { Platform.runLater(() -> { - controller.movePackageToFront(packageName); + controller.moveAppToFront(packageName); }); } } diff --git a/src/main/resources/com/android/androidperf/main-view.fxml b/src/main/resources/com/android/androidperf/main-view.fxml index c6f3967..be0ca01 100644 --- a/src/main/resources/com/android/androidperf/main-view.fxml +++ b/src/main/resources/com/android/androidperf/main-view.fxml @@ -15,7 +15,7 @@ - +