2017-09-24 10 views
1

Wer weiß, warum, wenn die Anwendung auf Android installiert ist es keine Verbindung von der MySQL-Datenbank?App kivy verbindet sich nicht von der mysql-Datenbank

seltsam, dass bei der Installation die App keine Berechtigung für den Zugriff auf das Internet fordert, auch wenn buildozer.spec erlaubt ist.

buildozer.spec sieht wie folgt aus:

Anforderungen = Kivy, pymysql, python2

android.permissions = INTERNET

Hier ist mein Code:

# -*- coding: utf-8 -*- 
from kivy.uix.gridlayout import GridLayout 
from kivy.uix.button import Button 
from kivy.uix.scrollview import ScrollView 
from kivy.core.window import Window 
from kivy.app import runTouchApp 
import pymysql.cursors 


db = pymysql.connect(host="127.0.0.1", user="root", password="xxxxx", 
database="db_financ) 
cur = db.cursor() 

# select database 
cur.execute("SELECT desc_desp, valor FROM despesa WHERE id_despesa <> 0") 
row=cur.fetchall() 


layout = GridLayout(cols=2, spacing=10, size_hint_y=None) 
layout.bind(minimum_height=layout.setter('height')) 


for i in row: 
    btn = Button(text=i[0] + "\nR$ " + str(i[1]), size_hint_y=None, height=150) 
    layout.add_widget(btn) 


root = ScrollView(size_hint=(1, None), size=(Window.width, Window.height)) 
root.add_widget(layout) 

runTouchApp(root) 

tks für Hilfe

Antwort

0

Ich weiß, dass dies eine alte Frage ist, aber ich s weil localhost ('127.0.0.1') die interne IP-Adresse Ihres Computers ist. Es würde also nur auf Ihrer Maschine funktionieren. Sie müssten "Host" in die interne IP-Adresse Ihres Computers ändern. Sie können die interne IP-Adresse Ihres Computers in Windows ermitteln, indem Sie die Befehlszeile "IP CONFIG" eingeben. Dadurch wird die interne IP-Adresse Ihres Computers angezeigt. Ich weiß nicht, was der Befehl arg auf OX oder LINUX ist, aber es ist etwas Ähnliches.

Verwandte Themen