从 SL4A 脚本启动 android 应用程序?

Posted

技术标签:

【中文标题】从 SL4A 脚本启动 android 应用程序?【英文标题】:Launch android app from SL4A script? 【发布时间】:2012-09-26 01:44:33 【问题描述】:

我在 /sdcard/sl4a/scripts/twitter.py 中有以下内容

import android
droid = android.Android()
droid.launch('com.twitter.android')

如果我在控制台或后台运行它,它会立即以代码 1 退出,并且日志文件为空。

如果有其他方法可以从某种脚本启动应用程序,我愿意接受建议。我知道 Tasker,但我宁愿编写文本脚本也不愿使用向导。

【问题讨论】:

当然,只要我提出这个问题,我就会尝试其他可行的方法。我可以从 Tasker 调用 javascript 文件,它提供了一个“正常工作”的 loadApp() 函数。离开这个开放的 JIC 如果您对答案感到满意,请将其标记为已回答。谢谢。 【参考方案1】:

您可以为此使用 startActivity

导入安卓
机器人 = android.Android()
droid.startActivity('android.intent.action.MAIN',
                    无,无,无,假,
                    'com.twitter.android',
                    'com.twitter.android.StartActivity'
                   )

查看语法in the API Reference:

开始活动( 字符串动作, 字符串 uri[可选], 字符串类型[可选]:URI 的 MIME 类型/子类型, JSONObject extras[可选]:要添加到 Intent 的附加项映射, Boolean wait[可选]:阻塞直到用户退出启动的活动, String packagename[可选]:包名。如果使用,需要类名才有用, String 类名[可选]:类名。如果使用,需要包名才有用)

【讨论】:

如果我想在 Twitter 中打开一个特定的标签怎么办?还是在视频播放器应用中打开视频而不是 twitter? 1.我认为你做不到,2. 试试这个:droid.startActivity('android.intent.action.VIEW', 'vnd.youtube:3nH_T9fLd_Q', None, None, False, None, None) 好的,很好,您的示例适用于 youtube。但是你如何得到这部分:'vnd.youtube:vid_ID'?它在哪里记录?我很难找到这种信息。我想做一些与 VLC for Android 或 MX Player 类似的事情。谢谢! 我不知道它在哪里记录,我只是从here复制它...只是问一个新问题...

以上是关于从 SL4A 脚本启动 android 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

使用 SL4A 从 python 脚本返回结果返回到 Android 应用程序

Android SL4A:如何链接到 HTML/javascript 应用程序中的相关脚本?

从 Android 开始:Java 或 Python (SL4A)

带有 qpython 的 web 应用程序和 android 中的 SL4A

我可以在 Android Market 上出售我的 SL4A 应用吗?

有没有办法从其他地方的目录运行 SL4A 脚本?