为Android Studio创建一个应用程序启动器图标

我目前是通过进入`/path-to-android-studio/bin`并运行`./studio.sh`来启动Android Studio,一切都正常。
然而,我想在Dash和侧边菜单上创建一个快捷方式,以便更方便地启动它。
在查阅了一些类似的问题后,比如this,我首先尝试了`Tools > Create Desktop Entry`方法。虽然它在Dash上创建了一个条目,但是点击它时Android Studio却没有启动。如果有帮助的话,我在`/usr/share/applications`目录中粘贴了此方法创建的`jetbrains-android-studio.desktop`条目内容。
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Icon=/home/jayant/Android/android-studio/bin/androidstudio.svg
Exec="/home/jayant/Android/android-studio/bin/studio.sh" %f
Comment=Develop with pleasure!
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-android-studio

当这没有帮助时,我删除了上述提到的`.desktop`条目,并尝试了这篇博客文章中提到的方法,该方法要求我创建以下`jetbrains-android-studio.desktop`文件并将其粘贴到`/home/jayant/.local/share/applications`目录中。
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Exec="/home/jayant/Android/android-studio/bin/studio.sh" %f
Icon=/home/jayant/Android/android-studio/bin/idea.png
Categories=Development;IDE;
Terminal=false
StartupNotify=true
StartupWMClass=jetbrains-android-studio

这也在我的Dash中创建了一个图标,但Android Studio也因此而无法启动。我是不是做错了什么?我只想在我的dash上为Android Studio添加一个简单的启动器图标!我使用的是Ubuntu 14.04。

你把 .desktop 文件设置为可执行了吗?sudo chmod +x ./file.desktop - Xweque
这不是必要的,也无法解决这个问题。 - androidevil
这很简单,请按照此链接进行操作。 - Nandan Singh
9个回答

这很简单...
打开 Android Studio,然后点击工具,再选择创建桌面快捷方式。

桌面上没有快捷方式,但是在破折号情况下出现并且正常工作。请注意,本次翻译仅为文本内容的翻译,不对其含义进行解释。 - Napolean
@Napolean cp /usr/share/applications/jetbrains-studio.desktop ~/Desktop/ - Skylar Ittner

这是我的android-studio.desktop文件。在程序路径之前添加bash -i后,它可以正常工作。
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Exec=bash -i "/home/user/android-studio/bin/studio.sh" %f
Icon=/home/user/android-studio/bin/studio.png
Categories=Development;IDE;
Terminal=false
StartupNotify=true
StartupWMClass=jetbrains-android-studio
Name[en_GB]=android-studio.desktop

谢谢。在Exec中添加bash -i解决了问题。 - jayant
你还需要对该文件进行chmod +x操作,以便执行。 - nhp

这个问题之前在IntelliJ中已经被问过了。由于在这个上下文中Android Studio是一样的,我会链接到答案并将其复制到这里。

https://askubuntu.com/a/272336/72597

来自链接答案的摘录

[旧回答]

从[www.jetbrains.com/idea/download/][3]下载 IntelliJ IDEA CE。

  1. 使用以下命令解压 ideaIC-XX.Y.Z.tar.gz 文件:

    tar -zxvf ideaIC-XX.Y.Z.tar.gz
    
  2. 切换为 root 用户:

    sudo -i
    
  3. 将解压后的文件夹移动到 /opt/idea 目录:

    mv ideaIC-XX.Y.Z /opt/idea
    
  4. 创建一个桌面文件并安装它:

    gedit idea.desktop
    

    将以下内容复制到 idea.desktop 文件中:

    [Desktop Entry]
    Name=IntelliJ IDEA 
    Type=Application
    Exec=idea.sh
    Terminal=false
    Icon=idea
    Comment=Integrated Development Environment
    NoDisplay=false
    Categories=Development;IDE;
    Name[en]=IntelliJ IDEA
    

    然后执行以下命令以自动在 Unity 中安装它:

    desktop-file-install idea.desktop
    
  5. 使用以下命令在 /usr/local/bin 目录下创建符号链接:

    cd /usr/local/bin
    ln -s /opt/idea/bin/idea.sh
    
  6. 为了在 Dash 中显示 IntelliJ IDEA 图标,可以将图标文件复制到 /usr/share/pixmaps/idea.png

    cp /opt/idea/bin/idea.png /usr/share/pixmaps/idea.png
    
就是这样。现在,你可以从Ubuntu的dash启动IntelliJ。
请注意,这个答案有一个更新版本,我怀疑它可能也适用于Android Studio。

我在Ubuntu 14.04上遇到了同样的问题,Android Studio是基于IntelliJ IDEA定制的版本,所以我在Stack Overflow上搜索了关于创建IDEA Launcher条目的类似问题,并找到了这个问题: Intellij launcher doesn't work on unity? 该问题的两个答案都提到Launcher条目无法工作是因为找不到JDK安装目录。这个位置可以在系统范围内定义在/etc/environment中,或者在用户的.bashrc文件中定义。我认为报告他们的Android Studio桌面条目能够正常工作而不需要任何调整的用户可能是使用了在系统范围内设置了JDK位置的系统。
如果您没有编辑/etc/environment的权限,或者更喜欢将自定义保留在本地登录中,这仍然是一个简单的修复方法。
  • 通过使用Studio的工具 -> 创建桌面入口...菜单项,为您的登录创建一个Android Studio .desktop文件
  • 在您的.bashrc文件中设置JAVA_HOMEJDK_HOME环境变量来定义JDK的位置
  • 编辑Android Studio .desktop文件,并在Exec语句的开头添加bash -i

bash -i将创建一个新的shell,首先读取您的.bashrc文件以获取Java环境变量的值,然后使用该值执行studio.sh脚本以运行Android Studio。

以下是修改后的示例代码:

Exec=bash -i "/<path-to-android-studio>/android-studio/bin/studio.sh" %f

如果在启动器中看不到Android Studio图标: 在终端窗口中运行“studio.sh”脚本来启动Android Studio。Unity将使用.desktop文件中定义的值。 当图标出现在启动器中时,您可以像往常一样右键单击它并选择“锁定到启动器”。

[Desktop Entry]
Name=Android Studio
Icon=/home/android-studio/bin/studio.png //comment here any file this used for the display icon in desktop
Exec=/home/android-studio/bin/studio.sh
Type=Application

将此文件保存在桌面文件夹(android-studio.desktop)中。
保存后,右键单击此文件的属性选项,并设置权限选择==>在终端模拟器中执行。
谢谢!

如果“工具->创建桌面快捷方式”对你不起作用,那可能意味着Android Studio没有正确安装在系统中。 要检查Android Studio是否已安装,请转到Ubuntu软件并搜索该软件。 如果没有安装,请重新安装软件包,并注意sdk和AndroidStudioProjects的路径。 但是桌面快捷方式图标很可能正常工作。

这是我的Android Studio桌面文件的外观
[Desktop Entry]
Version=1.0
Type=Application
Name=Android Studio
Exec="/home/user-name/android-studio/bin/studio.sh" %f
Icon=/home/user-name/android-studio/bin/idea.png
Categories=Developement;IDE;
Terminal=false
StartupNotify=true
StartupWMClass=jetbrains-android-studio
Name[en_G0]=android-studio.desktop

而且它完美地运行。确保所给出的路径都是正确的,并将其保存在/usr/share/applications目录中。

1我现在有一个完全相同的文件,所有路径都是正确的。但它仍然无法正常工作。你使用的是哪个Ubuntu版本?另外,你能分享一下.desktop文件的权限吗?你是否在PATH环境变量中添加了任何内容以使其正常工作? - jayant
@jayant 我在编辑器上创建了文件,它拥有执行权限,并且在以root身份使用终端的情况下,将其移动到/usr/share/applications目录中。我已经将PATH=$PATH:/home/user-name/android-studio/bin/添加到了~/.bashrc文件的末尾,这是为了在终端中使用studio.sh命令。你的JAVA_HOME变量(echo $JAVA_HOME)是否返回正确的结果? - theDistantStar
我没有设置JAVA_HOME。但即使将其设置为正确的路径,启动器仍然无法工作。您是否使用Ubuntu 14.04? - jayant
是的,我的版本是14.04。你可能已经尝试过这个方法了,如果还没有,请按照以下步骤进行操作,希望能够解决问题:
  1. 删除所有你创建/移动到/usr/share/applications目录下的android-studio的.desktop文件。
  2. 在你的~/.local/share/applications目录下删除jetbrains-android-studio.desktop文件。
  3. 重新启动电脑。
  4. 确保echo $JAVA_HOME命令输出结果,如果没有,请将路径添加到~/.bashrc文件中。
  5. 使用任何文本编辑器创建.desktop文件。
  6. 给该文件赋予执行权限。
  7. 以root身份将该文件移动到usr/share/applications目录下。
  8. 带着一切希望,点击usr/share/applications目录下的studio图标。
- theDistantStar
1谢谢你的跟进。尝试了所有的步骤,但还是不起作用。在日志中找不到任何信息。真的很令人沮丧! - jayant
@jayant: 你应该使用.pam_environment而不是.bashrc。"~/.bashrc~/.bash_profile~/.bash_login这样的shell配置文件经常被建议用于设置环境变量。虽然这在从shell启动的程序中可能有效,但这些文件中设置的变量默认情况下对于从桌面会话中启动的图形环境程序是不可用的。" - Daniel
这里也有同样的问题,伙计。真的很令人沮丧。我已经在谷歌上搜索了很多,看到了很多在SO和这里的答案,但是没有一个有效的解决方法。 你找到解决办法了吗? - androidevil

你所做的“错误”只是没有将jetbrains-android-studio.desktop文件从Android Studio创建它的目录中拖到启动器中,并将其放置在你想要它出现的位置。你可以使用Ubuntu的文件应用程序来查找、拖放和放置.desktop文件。
备注:
如果您在请求AS创建时选择了“为所有用户创建条目”,则文件将是
-rw-r--r-- root root /usr/share/applications/jetbrains-android-studio.desktop 否则,它将是
-rw-r--r-- jayant jayant /home/jayant/.local/share/applications/jetbrains-android-studio.desktop 假设您的用户组是jayant:jayant。不可执行。无需重新登录、重启机器或桌面等。如果仍然无法正常工作(没有/错误的图标,无法启动),请打开.desktop文件并检查其路径是否指向正确的文件。
然后向Ubuntu提交一个错误报告,要求其桌面包含一个简单的功能,可以通过单击一次来安装Launcher图标,并提供编辑其资源标识符的选项:)。

对于Android Studio版本3.6.3,在“工具”选项下没有“创建桌面快捷方式”的选项。 可以通过命令提示符启动应用程序。
/path/to/android-studio/bin./studio.sh

你可以在右下角看到“配置”下拉菜单。在配置菜单下,有一个“创建桌面快捷方式”的选项。点击并创建。