首先,这是一个非常基本的插件,以及我对kodi的第一个插件。
我只是克隆了hello world示例并将addon.py文件更改为:
import xbmcaddon
import xbmcgui
import subprocess
import urllib
import requests
import json
addon = xbmcaddon.Addon()
addonname = addon.getAddonInfo('name')
def check_location():
send_url = 'http://freegeoip.net/json'
r = requests.get(send_url)
j = json.loads(r.text)
city = j['city']
return "Currently connected from: " + city;
def check_ip():
public_ip = subprocess.check_output(["ifconfig `ip route get 8.8.8.8 | grep 8.8.8.8 | cut -d' ' -f5` | grep \'inet \' | awk -F'[: ]+' '{ print $4 }'"], shell=True);
result = ("Your IP is : %s " % public_ip);
return result;
xbmcgui.Dialog().ok("Check IP and Location", check_ip(), check_location())
这个简单的脚本,获取外部Ip和位置,并在运行时以模态打印它们。
我想做的是将这些结果打印在主页上(如果有任何帮助,我正在使用泰坦皮肤)但我不知道从哪里开始,因为谷歌没有&#39 ; t真的很有帮助。
我不在乎是否必须创建两个新的菜单条目,或者我要更改一些皮肤文件,但我的想法是保持IP和位置始终在主页,因为我需要立即检查我的VPN是否断开连接以便我可以重新连接(或者至少我知道我已经不再连接了)
提前感谢您提供任何帮助
答案 0 :(得分:1)
可能可以通过操作皮肤XML文件来完成,但我对Kodi皮肤没有任何了解。
xbmcgui.Window类可用于将各种xbmcgui
控件附加到现有的Kodi窗口。下面是我在其中一个插件中使用的修改后的代码:
window = xbmcgui.Window(10000)
label = xbmcgui.ControlLabel(10, 10, 1000, 50, 'Some label text')
window.addControl(label)
10000
是主窗口的数字ID。窗口ID列表可以在Kodi Wiki中找到。
附加说明: