I want to compile a kivy project in apk. But there are errors Warning. Help me to understand.
This is mistake:
[INFO ] Logger: Record log in /home/kaze/.kivy/logs/kivy_18-06-28_1.txt [INFO ] Kivy: v1.11.0.dev0, git-Unknown, 20180625 [INFO ] Python: v3.6.5 (default, Apr 1 2018, 05:46:30) [GCC 7.3.0] [INFO ] Factory: 194 symbols loaded [INFO ] Image: Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored) [INFO ] Text: Provider: sdl2 [INFO ] Window: Provider: sdl2(['window_egl_rpi'] ignored) [INFO ] GL: Using the "OpenGL" graphics system [INFO ] GL: Backend used <gl> [INFO ] GL: OpenGL version <b'3.0 Mesa 18.0.0-rc5'> [INFO ] GL: OpenGL vendor <b'nouveau'> [INFO ] GL: OpenGL renderer <b'NVE7'> [INFO ] GL: OpenGL parsed version: 3, 0 [INFO ] GL: Shading version <b'1.30'> [INFO ] GL: Texture max size <16384> [INFO ] GL: Texture max units <32> [INFO ] Window: auto add sdl2 input provider [INFO ] Window: virtual keyboard not allowed, single mode, not docked [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ uix/listview.py line 845.Called from /usr/lib/python3/dist-packages/kivy/ lang/builder.py line 582 by _apply_rule(). [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ adapters/simplelistadapter.py line 49.Called from /usr/lib/python3/ dist-packages/kivy/uix/listview.py line 859 by __init__(). [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ adapters/adapter.py line 111.Called from /usr/lib/python3/dist-packages/ kivy/adapters/simplelistadapter.py line 55 by __init__(). [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ uix/abstractview.py line 42.Called from /usr/lib/python3/dist-packages/kivy/ uix/listview.py line 865 by __init__(). [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ adapters/listadapter.py line 185.Called from /home/kaze/test2/main.kv line 32 by <module>(). [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/kivy/ adapters/adapter.py line 111.Called from /usr/lib/python3/dist-packages/ kivy/adapters/listadapter.py line 186 by __init__(). [INFO ] Clipboard: Provider: xclip [INFO ] CutBuffer: cut buffer support enabled [INFO ] GL: NPOT texture support is available [INFO ] ProbeSysfs: device match: /dev/input/event6 [INFO ] MTD: Read event from </dev/input/event6> [INFO ] Base: Start application main loop [WARNING] MTD: Unable to open device "/dev/input/event6". Please ensure you have the appropriate permissions. [WARNING] Call to deprecated function __init__ in /usr/lib/python3/dist-packages/ kivy/uix/selectableview.py line 38. Called from /usr/lib/python3/ dist-packages/kivy/uix/listview.py line 593 by __init__().
Main.py code:
import kivy from kivy.app import App from kivy.lang.builder import Builder from kivy.utils import get_color_from_hex as C from kivy.config import Config from kivy.uix.listview import ListItemButton from kivy.properties import ObjectProperty from kivy.uix.screenmanager import ScreenManager, Screen import sqlite3 __version__ = '0.1' kivy.require('1.9.1') Builder.load_file('main.kv') class BaseScreen(Screen): td_list_view = ObjectProperty() def update(self): conn = sqlite3.connect('Tasks.sqlite') cursor = conn.cursor() cursor.execute('SELECT do FROM tasks') while True: row = [] row = cursor.fetchone() if row == None: break for task in row: task = str(task) self.td_list_view.adapter.data.extend([task]) self.td_list_view._trigger_reset_populate() cursor.close() conn.close() def task_done(self): if self.td_list_view.adapter.selection: selection = self.td_list_view.adapter.selection[0].text conn = sqlite3.connect('Tasks.sqlite') print(selection) cursor = conn.cursor() cursor.execute('DELETE FROM tasks WHERE do == ("%s")'%selection) conn.commit() cursor.close() conn.close() self.td_list_view.adapter.data.remove(selection) self.td_list_view._trigger_reset_populate() class AddTaskScreen(Screen): bs = BaseScreen text_input = ObjectProperty() def add_task(self, temp): # with open(file, 'w') as fileObject: # fileObject.write(self.text_input.text+"\n") conn = sqlite3.connect('Tasks.sqlite') cursor = conn.cursor() cursor.execute('INSERT INTO tasks (do) VALUES ("%s")'%(temp)) conn.commit() cursor.close() conn.close() self.bs.update class ToDoListButton(ListItemButton): pass class TodoApp(App): title = "To do" def update_task(self): self.base_screen.td_list_view.adapter.data.extend([self.task.text_input.text]) self.base_screen.td_list_view._trigger_reset_populate() def on_start(self): self.base_screen.update() def build(self): self.sm = ScreenManager() self.base_screen = BaseScreen(name="base") self.task = AddTaskScreen(name='task') self.sm.add_widget(self.base_screen) self.sm.add_widget(self.task) return self.sm if __name__ == "__main__": TodoApp().run() Main.kv code:
#:import C kivy.utils.get_color_from_hex #:import ListAdapter kivy.adapters.listadapter.ListAdapter #:import main main <BaseScreen>: td_list_view: list_view FloatLayout: canvas.before: Color: rgba: C('#ff777b') Rectangle: size: self.size pos: self.pos BoxLayout: orientation: "vertical" size_hint_y: None height: 50 pos: 0, 450 Label: text: "Tasks" font_size: 20 BoxLayout: orientation: "vertical" pos: 0, 130 size_hint_y: None height: 310 ListView: id: list_view adapter: ListAdapter(data = [""], cls=main.ToDoListButton) BoxLayout: orientation: "horizontal" size_hint_y: None height: 100 pos: 86, 15 spacing: 15 Button: size_hint: None, None size: 50, 50 background_normal: "plus.png" on_press: root.manager.transition.direction = "left" root.manager.transition.duration = 1 root.manager.current = 'task' Button: size_hint: None, None size: 50, 50 background_normal: "done.png" on_press: root.task_done() <AddTaskScreen>: text_input: text_input FloatLayout: canvas.before: Color: rgba: C('#ff777b') Rectangle: size: self.size pos: self.pos BoxLayout: orientation: "vertical" size_hint_y: None height: 50 pos: 0, 450 Label: text: "Tasks" font_size: 20 BoxLayout: orientation: "vertical" pos: 0, 350 size_hint_y: None height: 50 TextInput: id: text_input text: "Add your Task" size_hint_x: None width: 288 focus: True readonly: False BoxLayout: orientation: "horizontal" spacing: 15 size_hint_y: None height: 100 pos: 69, 15 Button: size_hint: None, None size: 50, 50 background_color: C("#f06d73") background_normal: "go-back.png" color: C("#ffffff") font_size: 15 bold: True on_press: root.manager.transition.direction = "left" root.manager.transition.duration = 1 root.manager.current = 'base' Button: size_hint: None, None size: 75, 75 background_color: C("#f06d73") background_normal: "" text: "Add Task" color: C("#ffffff") font_size: 15 bold: True on_press: root.add_task(text_input.text) on_press: app.update_task()