如何在 ubuntu 14.04 中保持 android 模拟器始终在顶部

问题描述 投票:0回答:7

如何在 ubuntu 14.04 中保持 android 模拟器始终在顶部 我正在使用 Android Studio 2.1.1 和模拟器版本 25.1.6 在将 Android SDK 工具更新到 25.1.6 之前它一直在工作。

android emulation
7个回答
71
投票

我有同样的问题。我解决了如下:

首先要注意模拟器有两个不同的窗口,它们相互连接。

  1. 右键单击模拟器顶部栏,并将其设置为始终在顶部
  2. 右键单击仪表板上的模拟器图标,这次选择“模拟器”,使用快捷键 ALT + SPACE 显示上下文菜单,然后再次选择始终在最前面。

就是这样!

注意每次最小化模拟器窗口时,再次执行上述步骤。


52
投票

在活跃的寡妇模拟器上,按alt + space,选择always on top.


7
投票

终端中的快速方式(切换 always_on_top):

wmctrl -i -r $(wmctrl -l | grep ' Android Emulator - ' | sed -e 's/\s.*$//g') -b toggle,above
wmctrl -i -r $(wmctrl -l | grep ' Emulator$' | sed -e 's/\s.*$//g') -b toggle,above

1
投票

单击模拟器侧栏上的更多选项按钮。进入设置。激活选项“显示设备周围的窗口框架”。然后右键单击模拟器的窗口框架。点击“总在最前面”选项。就是这样。


0
投票

我知道这个问题是针对 Ubuntu 的,但是任何想要其他解决方案的人,就像我在 Debian 上一样,您可以试试这个:

  • 在“Android Emulator”上右键单击任务栏
  • 更多行动
  • 高人一等

0
投票

适用于 Windows

-> 遵循 2 个步骤:-


0
投票

Andrey Izman 的回答 很好,但是当模拟器最小化时,“永远在最前面”的功能就消失了……

根据他的代码,我编写了一个 shell 脚本,每当模拟器最大化时激活“始终在最前面”,并在它最小化时停用该功能。

这是脚本的代码:

#!/bin/bash

# get the window ID of the target window
WINDOW_ID=$(wmctrl -l | grep "Android Emulator - Pixel_4_API_33:5554" | awk '{print $1}')

# define the code to execute when the window is maximized
function on_maximize() {
  wmctrl -i -r $(wmctrl -l | grep ' Android Emulator - ' | sed -e 's/\s.*$//g') -b add,above
  wmctrl -i -r $(wmctrl -l | grep ' Emulator$' | sed -e 's/\s.*$//g') -b add,above
}

# define the code to execute when the window is minimized
function on_minimize() {
  wmctrl -i -r $(wmctrl -l | grep ' Android Emulator - ' | sed -e 's/\s.*$//g') -b remove,above
  wmctrl -i -r $(wmctrl -l | grep ' Emulator$' | sed -e 's/\s.*$//g') -b remove,above
}

# set initial window state to "unknown"
WINDOW_STATE="unknown"

# loop forever and check for window events
while true; do
  # wait for the window to be maximized or minimized
  geometry_output=$(xdotool getwindowgeometry $WINDOW_ID 2>&1)

  # check if the window was maximized or minimized
  if [[ "$(xprop -id $WINDOW_ID _NET_WM_STATE | grep '_NET_WM_STATE_HIDDEN')" != "" ]]; then
    if [[ "$WINDOW_STATE" != "minimized" ]]; then
      WINDOW_STATE="minimized"
      on_minimize
    fi
  else
    if [[ "$WINDOW_STATE" != "maximized" ]]; then
      WINDOW_STATE="maximized"
      on_maximize
    fi
  fi

  # discard the output of the xdotool command
  echo "$geometry_output" > /dev/null
done

现在请按照以下步骤操作:

  1. 将脚本保存为.sh文件在任意位置,例如

    ~/scripts/emulator_always_on_top.sh
    .

  2. 使用

    ~/scripts/emulator_always_on_top.sh &
    在终端中执行它。
    &
    对于将其作为守护进程(后台进程)运行很重要。

瞧!

要关闭它,您需要手动终止进程。在系统监视器中查找

emulator_always_on_top.sh
进程并杀死它。也许有一天我会调整一个更简单的方法......

欢迎接受旨在改进此方法的意见!

P.S.:感谢 GPT 帮助我编写这段代码!虽然经过多次迭代才获得成功。

© www.soinside.com 2019 - 2024. All rights reserved.