Search This Blog

22 May 2013

Android Studio desktop entry

I've been using IntelliJ for my Android development from the beginning.  The new from #io13 that they were switching to an IntelliJ-based IDE was awesome.  Of course, I had to download it and try it out.

First thing to note is that although the Ultimate edition of IntelliJ is supposed to have the same support; the two are not exactly the same.  Creating a new project in Android Studio has a different wizard (at least today).

I installed Android Studio in /usr/local/android-studio.  Upon launching Android Studio, I decided to try to do the "Configure | Create desktop entry".

This unfortunately caused an exception:

[  10724]   WARN - tions.CreateDesktopEntryAction - Unable to locate suitable startup script in '/usr/local/android-studio/bin'. java.lang.RuntimeException: Unable to locate suitable startup script in '/usr/local/android-studio/bin'. at com.intellij.ide.actions.CreateDesktopEntryAction.prepare(CreateDesktopEntryAction.java:148) at com.intellij.ide.actions.CreateDesktopEntryAction.createDesktopEntry(CreateDesktopEntryAction.java:99) at com.intellij.ide.actions.CreateDesktopEntryAction$1.run(CreateDesktopEntryAction.java:82) at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:493) at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:185) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:226) at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:175) at com.intellij.openapi.progress.impl.ProgressManagerImpl$8.run(ProgressManagerImpl.java:400) at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:458) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:722) at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:154)

The solution is just to create the desktop entry manually. Create the file ~/.local/share/applications/android-studio.desktop:


[Desktop Entry]
Version=1.0
Comment=Develop Android with pleasure!
Terminal=false
Name=Android Studio
Exec="/usr/local/android-studio/bin/studio.sh" %f
Type=Application
Icon=/usr/local/android-studio/bin/idea.png
Categories=Development;IDE;
StartupNotify=true
StartupWMClass=jetbrains-idea


That's it. Depending on your OS version and window manager, you may need to restart X and/or log out.

2 comments: