因此,一段时间以来,我一直在使用本地意图将变量从我的 python 脚本发送到简约文本小部件。
import android
droid = android.Android()
activity = 'com.twofortyfouram.locale.intent.action.FIRE_SETTING'
extras = {}
extras['de.devmil.minimaltext.locale.extras.VAR_NAME'] = 'test'
extras['de.devmil.minimaltext.locale.extras.VAR_TEXT'] = 'Passed'
packagename = 'de.devmil.minimaltext'
classname = 'de.devmil.minimaltext.locale.LocaleFireReceiver'
intent = droid.makeIntent(activity, None, None, extras, None, packagename, classname).result
droid.sendBroadcastIntent(intent)
现在我正在尝试对 Zooper 小部件做同样的事情,在联系开发人员后,他告诉我:
只需发送一个带有“org.zooper.zw.action.TASKERVAR”动作的广播,将一个Bundle添加到意图中作为“org.zooper.zw.tasker.var.extra.BUNDLE”和“org.zooper.zw.tasker. var.extra.STRING_VAR”和“org.zooper.zw.tasker.var.extra.STRING_TEXT”。
不幸的是,我对意图系统的工作原理了解有限,但我尝试了几种我认为可能的方法:
import android
droid = android.Android()
activity = 'org.zooper.zw.action.TASKERVAR'
extras = {}
extras['org.zooper.zw.tasker.var.extra.STRING_VAR'] = '#TTest#'
extras['org.zooper.zw.tasker.var.extra.STRING_TEXT'] = 'Passed'
packagename = 'org.zooper.zw'
classname = 'org.zooper.zw.tasker.var.extra.BUNDLE'
intent = droid.makeIntent(activity, None, None, extras, None, packagename, classname).result
droid.sendBroadcastIntent(intent)
和
import android
droid = android.Android()
activity = 'org.zooper.zw.action.TASKERVAR'
extras = {}
extras['org.zooper.zw.tasker.var.extra.BUNDLE'] = {'org.zooper.zw.tasker.var.extra.STRING_VAR':'#TTest#','org.zooper.zw.tasker.var.extra.STRING_TEXT':'Passed'}
intent = droid.makeIntent(activity, None, None, extras, None, None, None).result
droid.sendBroadcastIntent(intent)
不幸的是,这不起作用。