我是kivy的新手,我正在开发一个使用python套接字连接到我的windows pc的应用程序
这是我的Kivy应用程序代码:
import kivy
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
import socket
class FloatLay(FloatLayout):
def Connect(self):
try:
s = socket.socket()
hostname = '127.0.0.1'
port = 8080
s.connect((hostname, port))
except Exception as e:
self.ids.text.text = str(e)
class MyApp(App):
def build(self):
return FloatLay()
if __name__ == "__main__":
MyApp().run()
这是我的.kv kivy文件
<FloatLay>:
Button:
text:"Connect"
pos_hint:{"x":0.6,"top":0.5}
size_hint:0.1,0.05
on_press: root.Connect()
Label:
id:text
text:"Connect Status"
pos_hint:{"x":0.2,"top":0.5}
size_hint:0.4,0.05
这是我的Socket_Server
import socket
def main():
while True:
running=False
listensocket = socket.socket()
Port = 8080
maxConnections = 999
IP = '127.0.0.1' #IP address of local machine
listensocket.bind((IP,Port))
listensocket.listen(maxConnections)
print("Server started at " + IP + " on port " + str(Port))
(clientsocket, address) = listensocket.accept()
print("New connection made!")
running = True
try:
while running:
message = clientsocket.recv(1024).decode()
print(message)
except:
print('')
main()
每当我运行代码时,他们都会出现一个名为Connection Rejected 的错误
我不认为它们是我代码中的错误,因为当我在windows pc上同时运行客户端代码和服务器时,它们都是连接的。
注意:我在安卓设备上运行应用程序,代码在windows pc
我已经找到了解决方案,如果您使用的是windows,请按照以下步骤操作:
- 打开命令提示符
- 类型
ipconfig
- 在
Wireless LAN adapter Wi-Fi
部分中查找IPv4 - 复制它并将您的IPv4作为字符串粘贴到可用的IP中
注意:键入IP 时不要添加任何空格