Есть ли способ получить доступ к коду Python из сторонних плагинов kodi/xbmc в вашем плагине?
У меня есть опыт работы с Python, но я только начал изучать, как разрабатывать дополнения для Kodi. Возникли проблемы с пониманием документов.
Можно ли импортировать или иным образом получить доступ к коду Python из другого плагина или скрипта?
Например, если мой аддон был: script.hello.world
и я хотел использовать some_method
от plugin.video.someplugin
,
addon.xml импортирует плагин, к которому я хочу получить доступ:
<requires>
<import addon="xbmc.python" version="2.14.0"/>
<import addon="plugin.video.plexbmc" version="3.4.5" optional="true"/>
</requires>
Я был уверен, что это не сработает, и я был прав:
from plugin.video.someplugin.default import some_method
Единственная вещь в документах, которая выглядела так, как будто это может работать, была такова:
spi = xbmcaddon.Addon ('plugin.video.someplugin')
Я могу получить доступ к встроенным в xbmc методам spi, но не могу добраться до реальных объектов python.
1 ответ
Решение
Понял! Просто добавьте нужный каталог в системный путь python:
spi = xbmcaddon.Addon ('plugin.video.someplugin')
path = spi.getAddonInfo('path')
sys.path.append (xbmc.translatePath( os.path.join( path) ))
from default import some_method
some_method()