Skip to content

Commit 402bde0

Browse files
committed
Add Genymotion support
1 parent e42fdc6 commit 402bde0

File tree

5 files changed

+178
-5
lines changed

5 files changed

+178
-5
lines changed

info.plist

Lines changed: 115 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1861,6 +1861,29 @@
18611861
<false/>
18621862
</dict>
18631863
</array>
1864+
<key>CB2093F8-E6AB-4654-8F94-7FDA91C624AB</key>
1865+
<array>
1866+
<dict>
1867+
<key>destinationuid</key>
1868+
<string>B37C7FAB-F5FB-4F18-A10E-831FBCD1A733</string>
1869+
<key>modifiers</key>
1870+
<integer>0</integer>
1871+
<key>modifiersubtext</key>
1872+
<string></string>
1873+
<key>vitoclose</key>
1874+
<false/>
1875+
</dict>
1876+
<dict>
1877+
<key>destinationuid</key>
1878+
<string>8633EBC3-4911-4F76-B926-75BEE8BD839E</string>
1879+
<key>modifiers</key>
1880+
<integer>0</integer>
1881+
<key>modifiersubtext</key>
1882+
<string></string>
1883+
<key>vitoclose</key>
1884+
<false/>
1885+
</dict>
1886+
</array>
18641887
<key>D18A1AD3-E0AD-422C-A477-E940251249B3</key>
18651888
<array>
18661889
<dict>
@@ -3827,7 +3850,7 @@
38273850
<key>hotkey</key>
38283851
<integer>0</integer>
38293852
<key>hotmod</key>
3830-
<integer>655360</integer>
3853+
<integer>524288</integer>
38313854
<key>hotstring</key>
38323855
<string>A</string>
38333856
<key>leftcursor</key>
@@ -4653,7 +4676,7 @@
46534676
<key>config</key>
46544677
<dict>
46554678
<key>alfredfiltersresults</key>
4656-
<false/>
4679+
<true/>
46574680
<key>alfredfiltersresultsmatchmode</key>
46584681
<integer>0</integer>
46594682
<key>argumenttreatemptyqueryasnil</key>
@@ -4706,7 +4729,7 @@
47064729
<key>escaping</key>
47074730
<integer>0</integer>
47084731
<key>script</key>
4709-
<string>python scripts/list_avd.py "{query}"</string>
4732+
<string>python scripts/launch_avd.py "{query}"</string>
47104733
<key>scriptargtype</key>
47114734
<integer>0</integer>
47124735
<key>scriptfile</key>
@@ -4990,6 +5013,78 @@
49905013
<key>version</key>
49915014
<integer>3</integer>
49925015
</dict>
5016+
<dict>
5017+
<key>config</key>
5018+
<dict>
5019+
<key>alfredfiltersresults</key>
5020+
<true/>
5021+
<key>alfredfiltersresultsmatchmode</key>
5022+
<integer>0</integer>
5023+
<key>argumenttreatemptyqueryasnil</key>
5024+
<false/>
5025+
<key>argumenttrimmode</key>
5026+
<integer>0</integer>
5027+
<key>argumenttype</key>
5028+
<integer>1</integer>
5029+
<key>escaping</key>
5030+
<integer>102</integer>
5031+
<key>keyword</key>
5032+
<string>geny</string>
5033+
<key>queuedelaycustom</key>
5034+
<integer>3</integer>
5035+
<key>queuedelayimmediatelyinitially</key>
5036+
<true/>
5037+
<key>queuedelaymode</key>
5038+
<integer>0</integer>
5039+
<key>queuemode</key>
5040+
<integer>2</integer>
5041+
<key>runningsubtext</key>
5042+
<string></string>
5043+
<key>script</key>
5044+
<string>python scripts/list_genymotion.py "{query}"</string>
5045+
<key>scriptargtype</key>
5046+
<integer>0</integer>
5047+
<key>scriptfile</key>
5048+
<string></string>
5049+
<key>subtext</key>
5050+
<string></string>
5051+
<key>title</key>
5052+
<string></string>
5053+
<key>type</key>
5054+
<integer>0</integer>
5055+
<key>withspace</key>
5056+
<true/>
5057+
</dict>
5058+
<key>type</key>
5059+
<string>alfred.workflow.input.scriptfilter</string>
5060+
<key>uid</key>
5061+
<string>CB2093F8-E6AB-4654-8F94-7FDA91C624AB</string>
5062+
<key>version</key>
5063+
<integer>3</integer>
5064+
</dict>
5065+
<dict>
5066+
<key>config</key>
5067+
<dict>
5068+
<key>concurrently</key>
5069+
<false/>
5070+
<key>escaping</key>
5071+
<integer>102</integer>
5072+
<key>script</key>
5073+
<string>python scripts/launch_genymotion.py "$1"</string>
5074+
<key>scriptargtype</key>
5075+
<integer>1</integer>
5076+
<key>scriptfile</key>
5077+
<string></string>
5078+
<key>type</key>
5079+
<integer>0</integer>
5080+
</dict>
5081+
<key>type</key>
5082+
<string>alfred.workflow.action.script</string>
5083+
<key>uid</key>
5084+
<string>8633EBC3-4911-4F76-B926-75BEE8BD839E</string>
5085+
<key>version</key>
5086+
<integer>2</integer>
5087+
</dict>
49935088
<dict>
49945089
<key>config</key>
49955090
<dict>
@@ -6270,6 +6365,13 @@ Use keyword "avd" to list and start emulator</string>
62706365
<key>ypos</key>
62716366
<integer>2500</integer>
62726367
</dict>
6368+
<key>8633EBC3-4911-4F76-B926-75BEE8BD839E</key>
6369+
<dict>
6370+
<key>xpos</key>
6371+
<integer>615</integer>
6372+
<key>ypos</key>
6373+
<integer>1785</integer>
6374+
</dict>
62736375
<key>86E0AE80-E859-4D5D-B15B-D8631B27C24D</key>
62746376
<dict>
62756377
<key>note</key>
@@ -6620,6 +6722,15 @@ Use keyword "avd" to list and start emulator</string>
66206722
<key>ypos</key>
66216723
<integer>70</integer>
66226724
</dict>
6725+
<key>CB2093F8-E6AB-4654-8F94-7FDA91C624AB</key>
6726+
<dict>
6727+
<key>note</key>
6728+
<string>List Genymotion emulators</string>
6729+
<key>xpos</key>
6730+
<integer>250</integer>
6731+
<key>ypos</key>
6732+
<integer>1785</integer>
6733+
</dict>
66236734
<key>CCAADCF9-C6AA-4026-BCCD-594143511EC7</key>
66246735
<dict>
66256736
<key>note</key>
@@ -6873,7 +6984,7 @@ Use keyword "avd" to list and start emulator</string>
68736984
<string>aapt_path</string>
68746985
</array>
68756986
<key>version</key>
6876-
<string>1.8.1</string>
6987+
<string>1.9.0</string>
68776988
<key>webaddress</key>
68786989
<string>https://github.com/zjn0505/adb-alfred</string>
68796990
</dict>
File renamed without changes.

scripts/launch_genymotion.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import subprocess
2+
import sys
3+
from workflow import Workflow3, ICON_INFO
4+
5+
6+
def launch_genymotion():
7+
arg = wf.args[0].strip()
8+
shell_cmd = "/Applications/Genymotion.app/Contents/MacOS/player.app/Contents/MacOS/player --vm-name '{0}'".format(arg)
9+
sys.stderr.write(shell_cmd + "\n")
10+
result = subprocess.check_output(shell_cmd,
11+
stderr=subprocess.STDOUT,
12+
shell=True)
13+
sys.stderr.write(result + "\n")
14+
15+
def main(wf):
16+
launch_genymotion()
17+
18+
if __name__ == '__main__':
19+
wf = Workflow3()
20+
log = wf.logger
21+
sys.exit(wf.run(main))

scripts/list_genymotion.py

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
import subprocess
2+
import sys
3+
from workflow import Workflow3, ICON_INFO
4+
5+
6+
def list_genymotion():
7+
arg = wf.args[0].strip()
8+
shell_cmd = "/usr/local/bin/VBoxManage list vms -l | grep '^Name:\|Hardware UUID:\|Log folder:' | tr -s ' '"
9+
sys.stderr.write(shell_cmd + "\n")
10+
result = subprocess.check_output(shell_cmd,
11+
stderr=subprocess.STDOUT,
12+
shell=True)
13+
sys.stderr.write(result + "\n")
14+
array = result.strip().split('\n')
15+
16+
size = len(array) / 3
17+
18+
for item in range(size):
19+
index = item * 3
20+
location = array[index + 1]
21+
if "Genymotion" not in location:
22+
continue
23+
name = array[index][6:]
24+
uuid = array[index + 2][15:]
25+
it = wf.add_item(title=name, uid=uuid, arg=uuid, valid=True)
26+
m = it.add_modifier("cmd", uuid)
27+
28+
def main(wf):
29+
list_genymotion()
30+
wf.send_feedback()
31+
32+
if __name__ == '__main__':
33+
wf = Workflow3()
34+
log = wf.logger
35+
36+
if wf.update_available:
37+
wf.add_item(u'New version available',
38+
u'Action this item to install the update',
39+
autocomplete=u'workflow:update',
40+
icon=ICON_INFO)
41+
sys.exit(wf.run(main))

version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.8.1
1+
1.9.0

0 commit comments

Comments
 (0)