Kivy veritabanı bağlantısı sorunu

İsabetli bir tahmin hocam bir forumda şok sürümünü 21 yaparak düzeldiğini yazmış arkadaş bende yaptım ancak ndk sürümünden hata verdi onu nasıl çözecegime bakıyorum şuan

Derleme esnasında six, pyjnius ve kivy paketleri tekrar indiriliyor. Önceleri bu paketler indirilemediği için hata veriyordu. Ama daha sonra bu üç paketi manuel olarak indirdim ve ~/.buildozer klasörüne ekledim. buildozer.spec dosyasının içindeki requirements kısmında da paketlerin yollarını tanıttım:

# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = python3crystax,kivy,six,pyjnius

# (str) Custom source folders for requirements
# Sets custom source for any requirements with recipes
# requirements.source.kivy = ../../kivy
android.ndk_path = ~/.buildozer/crystax-ndk
requirements.source.six = ~/.buildozer/six
requirements.source.pyjnius = ~/.buildozer/pyjnius
requirements.source.kivy = ~/.buildozer/kivy

Tekrar aynı yerlerde hata vermedi, daha önce gerekli olan dosyalar manuel olarak indirildiği için atladı o kısımları. Ancak bu sefer başka bir hatayla karşılaştım.

Hata mesajı:

Traceback (most recent call last):
  File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 2170, in background_thread
    handle_exit_code(exit_code)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 1929, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 672, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /usr/bin/python3.5 setup.py build_ext -v

  STDOUT:
/usr/lib/python3/dist-packages/setuptools/dist.py:333: UserWarning: Normalizing '1.1.2-dev' to '1.1.2.dev0'
  normalized_version,
running build_ext
building 'jnius' extension
creating build
creating build/temp.linux-x86_64-3.5
creating build/temp.linux-x86_64-3.5/jnius
/usr/bin/ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/tanberk/.buildozer/crystax-ndk/platforms/android-19/arch-arm -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -I/home/tanberk/.buildozer/crystax-ndk/sources/python/3.5/include/python -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/tanberk/.buildozer/crystax-ndk/platforms/android-19/arch-arm -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.5m -c jnius/jnius.c -o build/temp.linux-x86_64-3.5/jnius/jnius.o
arm-linux-androideabi-gcc: error: jnius/jnius.c: No such file or directory
arm-linux-androideabi-gcc: fatal error: no input files
compilation terminated.
error: command '/usr/bin/ccache' failed with exit status 1


  STDERR:


[INFO]:    pyjnius first build failed (as expected)
[INFO]:    Running cython where appropriate
[INFO]:    Cythonize jnius/jnius.pyx
[INFO]:    -> running cython ./jnius/jnius.pyx

Exception in thread background thread for pid 11379:                           
Traceback (most recent call last):
  File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 2170, in background_thread
    handle_exit_code(exit_code)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 1929, in fn
    return self.command.handle_command_exit_code(exit_code)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 672, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /usr/bin/cython ./jnius/jnius.pyx

  STDOUT:
Traceback (most recent call last):
  File "/usr/bin/cython", line 7, in <module>
    from Cython.Compiler.Main import main
ImportError: No module named Cython.Compiler.Main


  STDERR:


Traceback (most recent call last):
  File "/usr/lib/python3.5/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.5/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/toolchain.py", line 916, in <module>
    main()
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/toolchain.py", line 913, in main
    ToolchainCL()
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/toolchain.py", line 514, in __init__
    getattr(self, args.subparser_name.replace('-', '_'))(args)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/toolchain.py", line 147, in wrapper_func
    build_dist_from_args(ctx, dist, args)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/toolchain.py", line 192, in build_dist_from_args
    build_recipes(build_order, python_modules, ctx)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/build.py", line 572, in build_recipes
    recipe.build_arch(arch)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/recipe.py", line 975, in build_arch
    self.build_cython_components(arch)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/recipe.py", line 1010, in build_cython_components
    self.cythonize_build(env=env)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/recipe.py", line 1055, in cythonize_build
    self.cythonize_file(env, build_dir, join(root, filename))
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/recipe.py", line 1046, in cythonize_file
    shprint(cython_command, filename, *self.cython_args, _env=cyenv)
  File "/home/tanberk/İndirilenler/.buildozer/android/platform/python-for-android-master/pythonforandroid/logger.py", line 175, in shprint
    for line in output:
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 720, in next
    self.wait()
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 651, in wait
    self.handle_command_exit_code(exit_code)
  File "/home/tanberk/.local/lib/python3.5/site-packages/sh.py", line 672, in handle_command_exit_code
    raise exc
sh.ErrorReturnCode_1: 

  RAN: /usr/bin/cython ./jnius/jnius.pyx

  STDOUT:
Traceback (most recent call last):
  File "/usr/bin/cython", line 7, in <module>
    from Cython.Compiler.Main import main
ImportError: No module named Cython.Compiler.Main


  STDERR:

# Command failed: /usr/bin/python3 -m pythonforandroid.toolchain create --dist_name=myapp --bootstrap=sdl2 --requirements=python3crystax,kivy,six,pyjnius --arch armeabi-v7a --copy-libs --color=always --storage-dir=/home/tanberk/İndirilenler/.buildozer/android/platform/build
# 
# Buildozer failed to execute the last command
# The error might be hidden in the log above this error
# Please read the full log, and search for it before
# raising an issue with buildozer itself.
# In case of a bug report, please add a full log with log_level = 2

Özetle ne yaptıysam bir türlü ilk derleme işlemini yapamadım. :confused:

1 Beğeni

Merhaba.

Şuraya bir bakın isterseniz; Buildozer için bir Docker yansısı yapmış bir arkadaş: https://github.com/tshirtman/Buildozer-docker Docker ile hali hazırda kurulmuş ve ayarlanmış teknolojileri doğrudan kullanabilirsiniz. Daha fazla bilgiyi kendi sitesinin başlangıç bölümünde bulabilirsiniz.

İyi çalışmalar.

1 Beğeni

Docker yansısını indirdim, kurdum. Ancak derleme esnasında yine hatayla karşılaştım. Birşeyleri eksik mi yapıyorum diye düşünüyorum.

Önce bir init dosyası oluşturdum:

sudo docker run -v $PWD:/buildozer tshirtman/buildozer buildozer init .

Bu işlem biraz uzun sürdü, indirilmesi gereken dosyalar varmış, onları indirdi ve ardından buildozer.spec dosyası oluşturuldu.

Sonra aşağıdaki komutu yazdım.

sudo docker run -v $PWD:/buildozer/ tshirtman/buildozer

Yukarıdaki komutu yazdıktan sonra beklemeye başladım, ilk derleme biraz uzun sürüyormuş. Ancak uygulamayı paketleme işleminde IOError hatasıyla karşılaştım.

# Check configuration tokens
# Ensure build layout
# Check configuration tokens
# Preparing build
# Check requirements for android
# Install platform
# Apache ANT found at /home/buildozer/.buildozer/android/platform/apache-ant-1.9.4
# Android SDK found at /home/buildozer/.buildozer/android/platform/android-sdk-20
# Android NDK found at /home/buildozer/.buildozer/android/platform/android-ndk-r9c
Refresh Sources:
  Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml
  Validate XML
  Parse XML
  Fetched Add-ons List successfully
  Refresh Sources
  Fetching URL: https://dl-ssl.google.com/android/repository/repository-9.xml
  Validate XML: https://dl-ssl.google.com/android/repository/repository-8.xml
  Parse XML:    https://dl-ssl.google.com/android/repository/repository-8.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
Refresh Sources:
  Fetching URL: https://dl-ssl.google.com/android/repository/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
Refresh Sources:
  Fetching URL: https://dl-ssl.google.com/android/repository/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
Packages available for installation or update: 15
----------
id: 1 or "tools"
     Type: Tool
     Desc: Android SDK Tools, revision 24.0.2
----------
id: 2 or "platform-tools"
     Type: PlatformTool
     Desc: Android SDK Platform-tools, revision 20
----------
id: 3 or "doc-19"
     Type: Doc
     Desc: Documentation for Android SDK, API 19, revision 2
----------
id: 4 or "sample-19"
     Type: Sample
     Desc: Samples for SDK API 19, revision 5
----------
id: 5 or "sample-18"
     Type: Sample
     Desc: Samples for SDK API 18, revision 1
----------
id: 6 or "sample-17"
     Type: Sample
     Desc: Samples for SDK API 17, revision 1
----------
id: 7 or "sample-16"
     Type: Sample
     Desc: Samples for SDK API 16, revision 1
----------
id: 8 or "sample-15"
     Type: Sample
     Desc: Samples for SDK API 15, revision 2
----------
id: 9 or "sample-14"
     Type: Sample
     Desc: Samples for SDK API 14, revision 2
----------
id: 10 or "sample-13"
     Type: Sample
     Desc: Android SDK Samples for Android API 13, revision 1
----------
id: 11 or "sample-12"
     Type: Sample
     Desc: Android SDK Samples for Android API 12, revision 1
----------
id: 12 or "sample-11"
     Type: Sample
     Desc: Android SDK Samples for Android API 11, revision 1
----------
id: 13 or "sample-10"
     Type: Sample
     Desc: Android SDK Samples for Android API 10, revision 1
----------
id: 14 or "sample-8"
     Type: Sample
     Desc: Android SDK Samples for Android API 8, revision 1
----------
id: 15 or "sample-7"
     Type: Sample
     Desc: Android SDK Samples for Android API 7, revision 1

Refresh Sources:
  Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml
  Validate XML
  Parse XML
  Fetched Add-ons List successfully
  Refresh Sources
  Fetching URL: https://dl-ssl.google.com/android/repository/repository-9.xml
  Validate XML: https://dl-ssl.google.com/android/repository/repository-8.xml
  Parse XML:    https://dl-ssl.google.com/android/repository/repository-8.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
Refresh Sources:
  Fetching URL: https://dl-ssl.google.com/android/repository/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/glass/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Validate XML: https://dl-ssl.google.com/android/repository/extras/intel/addon.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-wear/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/android-tv/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis/sys-img.xml
  Fetching URL: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
  Validate XML: https://dl-ssl.google.com/android/repository/sys-img/google_apis_playstore/sys-img.xml
Packages available for installation or update: 49
----------
id: 1 or "tools"
     Type: Tool
     Desc: Android SDK Tools, revision 24.0.2
----------
id: 2 or "platform-tools"
     Type: PlatformTool
     Desc: Android SDK Platform-tools, revision 20
----------
id: 3 or "build-tools-19.1.0"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 19.1
----------
id: 4 or "build-tools-19.0.3"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 19.0.3
----------
id: 5 or "build-tools-19.0.2"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 19.0.2
----------
id: 6 or "build-tools-19.0.1"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 19.0.1
----------
id: 7 or "build-tools-19.0.0"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 19
----------
id: 8 or "build-tools-18.1.1"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 18.1.1
----------
id: 9 or "build-tools-18.1.0"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 18.1
----------
id: 10 or "build-tools-18.0.1"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 18.0.1
----------
id: 11 or "build-tools-17.0.0"
     Type: BuildTool
     Desc: Android SDK Build-tools, revision 17
----------
id: 12 or "doc-19"
     Type: Doc
     Desc: Documentation for Android SDK, API 19, revision 2
----------
id: 13 or "android-19"
     Type: Platform
     Desc: Android SDK Platform 4.4.2
           Revision 3
----------
id: 14 or "android-18"
     Type: Platform
     Desc: Android SDK Platform 4.3
           Revision 2
----------
id: 15 or "android-17"
     Type: Platform
     Desc: Android SDK Platform 4.2.2
           Revision 2
----------
id: 16 or "android-16"
     Type: Platform
     Desc: Android SDK Platform 4.1.2
           Revision 4
----------
id: 17 or "android-15"
     Type: Platform
     Desc: Android SDK Platform 4.0.3
           Revision 3
----------
id: 18 or "android-14"
     Type: Platform
     Desc: Android SDK Platform 4.0
           Revision 3
----------
id: 19 or "android-13"
     Type: Platform
     Desc: Android SDK Platform 3.2, revision 1
----------
id: 20 or "android-12"
     Type: Platform
     Desc: Android SDK Platform 3.1, revision 3
----------
id: 21 or "android-11"
     Type: Platform
     Desc: Android SDK Platform 3.0, revision 2
----------
id: 22 or "android-10"
     Type: Platform
     Desc: Android SDK Platform 2.3.3._r2
           Revision 2
----------
id: 23 or "android-9"
     Type: Platform
     Desc: Android SDK Platform 2.3.1_r2
           Revision 2 (Obsolete)
----------
id: 24 or "android-8"
     Type: Platform
     Desc: Android SDK Platform 2.2_r3
           Revision 3
----------
id: 25 or "android-7"
     Type: Platform
     Desc: Android SDK Platform 2.1_r3
           Revision 3
----------
id: 26 or "android-6"
     Type: Platform
     Desc: Android SDK Platform 2.0.1_r1
           Revision 1 (Obsolete)
----------
id: 27 or "android-5"
     Type: Platform
     Desc: Android SDK Platform 2.0, revision 1
----------
id: 28 or "android-4"
     Type: Platform
     Desc: Android SDK Platform 1.6_r2
           Revision 3
----------
id: 29 or "android-3"
     Type: Platform
     Desc: Android SDK Platform 1.5_r3
           Revision 4
----------
id: 30 or "android-2"
     Type: Platform
     Desc: Android SDK Platform 1.1_r1
           Revision 1 (Obsolete)
----------
id: 31 or "sample-19"
     Type: Sample
     Desc: Samples for SDK API 19, revision 5
----------
id: 32 or "sample-18"
     Type: Sample
     Desc: Samples for SDK API 18, revision 1
----------
id: 33 or "sample-17"
     Type: Sample
     Desc: Samples for SDK API 17, revision 1
----------
id: 34 or "sample-16"
     Type: Sample
     Desc: Samples for SDK API 16, revision 1
----------
id: 35 or "sample-15"
     Type: Sample
     Desc: Samples for SDK API 15, revision 2
----------
id: 36 or "sample-14"
     Type: Sample
     Desc: Samples for SDK API 14, revision 2
----------
id: 37 or "sample-13"
     Type: Sample
     Desc: Android SDK Samples for Android API 13, revision 1
----------
id: 38 or "sample-12"
     Type: Sample
     Desc: Android SDK Samples for Android API 12, revision 1
----------
id: 39 or "sample-11"
     Type: Sample
     Desc: Android SDK Samples for Android API 11, revision 1
----------
id: 40 or "sample-10"
     Type: Sample
     Desc: Android SDK Samples for Android API 10, revision 1
----------
id: 41 or "sample-9"
     Type: Sample
     Desc: Android SDK Samples for Android API 9, revision 1
----------
id: 42 or "sample-8"
     Type: Sample
     Desc: Android SDK Samples for Android API 8, revision 1
----------
id: 43 or "sample-7"
     Type: Sample
     Desc: Android SDK Samples for Android API 7, revision 1
----------
id: 44 or "source-19"
     Type: Source
     Desc: Sources for Android SDK, API 19, revision 2
----------
id: 45 or "source-18"
     Type: Source
     Desc: Sources for Android SDK, API 18, revision 1
----------
id: 46 or "source-17"
     Type: Source
     Desc: Sources for Android SDK, API 17, revision 1
----------
id: 47 or "source-16"
     Type: Source
     Desc: Sources for Android SDK, API 16, revision 2
----------
id: 48 or "source-15"
     Type: Source
     Desc: Sources for Android SDK, API 15, revision 2
----------
id: 49 or "source-14"
     Type: Source
     Desc: Sources for Android SDK, API 14, revision 1

# Android packages installation done.
# Check application requirements
# Check garden requirements
# Compile platform
# Build the application #1
# Package the application
Traceback (most recent call last):
  File "/usr/local/bin/buildozer", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/buildozer/scripts/client.py", line 13, in main
    Buildozer().run_command(sys.argv[1:])
  File "/usr/local/lib/python2.7/dist-packages/buildozer/__init__.py", line 1058, in run_command
    self.target.run_commands(args)
  File "/usr/local/lib/python2.7/dist-packages/buildozer/target.py", line 91, in run_commands
    func(args)
  File "/usr/local/lib/python2.7/dist-packages/buildozer/target.py", line 103, in cmd_debug
    self.buildozer.build()
  File "/usr/local/lib/python2.7/dist-packages/buildozer/__init__.py", line 212, in build
    self.target.build_package()
  File "/usr/local/lib/python2.7/dist-packages/buildozer/targets/android.py", line 808, in build_package
    copyfile(join(apk_dir, apk), join(self.buildozer.bin_dir, apk_dest))
  File "/usr/lib/python2.7/shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 13] Permission denied: u'/buildozer/bin/MyApplication-0.1-debug.apk'
1 Beğeni

Şurada bir yansı daha buldum, işe yarayabilir: https://hub.docker.com/r/olymk2/docker_buildozer/

1 Beğeni

https://hub.docker.com/r/olymk2/docker_buildozer/~/dockerfile/ sayfasındaki bütün işlemleri de yapmamız gerekiyor mu? Yoksa;

docker pull olymk2/docker_buildozer

yazarak yansıyı mı çekmek gerekiyor?

1 Beğeni

Docker’ın güzelliği burada; Dockerfile içindekileri otomatik olarak yapar. Docker’ı otomatik olarak kurulum ve ayarları yapan bir VirtualBox gibi düşünebilirsiniz. Sizin pull komutu ile yansıyı çekmeniz ve bağlantısını verdiğim sayfadaki diğer komutları(run gibi) vermeniz yeterli. Aslında Docker daha çok sunucularda çalışmak için tasarlanmış bir yazılım, geliştirme ortamı için Vagrant isimli bir alternatifi var, ona da bakabilirsiniz. Zor kurulan kütüphane/çatılar için biçilmiş kaftan.

Aynı buradaki örnekteki gibi PHP web geliştirme ortamının da kurulumu zor. Bu sorunu aşmak için öncelerden XAMPP/WAMPP/LAMPP yığınları vardı. Daha sonra bu yığınların daha da otomatikleştirilmiş hali olarak düşünebileceğimiz Vagrant ve Docker araçları çıktı. PHP’nin şu sıralar en gözde web geliştirme çatısı olan Laravel, kurulumu kolay kılmak adına Homestead adını verdiği bir Vagrant yansısını kullanmamızı istiyor. Yani kısacası zor bir kurulum varsa doğrudan Vagrant ve Docker’a bakmanızı şiddetle öneririm.

1 Beğeni

Şimdi yansıyı çekiyorum, biraz zaman alacak galiba. Sonra da sayfadaki komutları çalıştırmayı deneyeceğim.

1 Beğeni

Docker’la da yapamadım.

Ancak daha sonra basit bir “hello world” uygulaması python2.7’de derlendi, bin klasörünün içindeki dosyayı telefona attım, sorun vermeden çalıştı orada da.

Birazdan python3.5 ile yine aynı “hello world” uygulamasını derleyeceğim. Şayet sorun vermeden derlenirse, sqlite3 veya sqlalchemy ile farklı bir çalışmayı derlemeye çalışacağım.

Edit:Hello World” programı Python 3.5’te de derlendi ve bin klasörünün içindeki dosyayı telefona atıp çalıştırdım.

Edit: Yanılmıyorsam hata virtualenv modülünden kaynaklanıyordu. Bu modülü pip ile Python2.7 için, pip3 ile de Python3.5 için çekmiştim. Sonra her ikisini de kaldırdım ve aşağıdaki komutu yazdım ve artık sorun vermemeye başladı:

sudo apt-get install virtualenv
1 Beğeni

Tekrar merhaba, gönderdiğiniz main.py dosyası Python 2.7 kullanılarak android uygulamasına dönüştü. Ancak Python 3.5’de hata veriyor hala.

main.py dosyasının içinde kivy.require(‘1.9.1’) yazıyor. Benim kullandığım sürüm 1.10.0. Bu yüzden bu kısmı 1.10.0 olarak değiştirdim.

buildozer.spec dosyasının içinde aşağıdaki değişiklikler yapıldı:

# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = sqlite3,sqlalchemy,kivy

# change the major version of python used by the app
osx.python_version = 2

# Kivy version to use
osx.kivy_version = 1.10.0

Umarım sizde de çalışır.

Dosyalar: https://www.dropbox.com/sh/9r356h4pex7l0s3/AACuSnZUv-ocuPMnYOHtMojga?dl=0

2 Beğeni

Python3’te android ndk paketi olarak crystax-ndk-10.3.2 öneriliyor. Sanıyorum sqlalchemy modülü python3crystax (crystax-ndk-10.3.2) ndk paketiyle uyumlu değil.

Hem python2’de hem de python3’de basit bir “hello world” android uygulaması derlendi. Her iki uygulama da telefonda çalışıyor. Okuduklarımdan anladığım kadarıyla crystax, Python3’ün standart kütüphane modülleri ile uyumlu ama 3. parti modülleriyle uyumsuz olabiliyor.

Python2’de ndk paketi olarak google’un paketi kullanılıyor. buildozer.spec dosyasının içindeki requirements kısmında ndk ile ilgili olan kısım boş bırakılıyor. Oysa Python3 kullanırken, kullanıcının requirements kısmında ndk paketini tanıtması gerekiyor yoksa derleme esnasında google’un ndk paketi otomatik olarak indiriliyor ve sonra da çeşitli hatalar oluşuyor.

Python3’te sqlalchemy’yi gerekenler listesine eklemeden derleme işlemini yaptığım zaman hata almadım. Android uygulaması oluştu ancak uygulamanın parçası olan sqlalchemy modülü derlemeye dahil olmadığı için uygulama telefonda çalışmadı. Modül, derlemeye dahil edilince de derleme hatayla sonuçlanıyor.

Build options — python-for-android 0.1 documentation sitesinden alıntı:

python2

This option builds Python 2.7.2 for your selected Android architecture. There are no special requirements, all the building is done locally.

Bu seçenek, Python 2.7.2.'yi, seçtiğiniz Android mimarisine kurar. Özel bir gereksinimi yoktur, kurulumun tamamı yerel olarak yapılır.

python3

Warning

Python3 support is experimental, and some of these details may change as it is improved and fully stabilised.

Python3 desteği deneyseldir ve bu ayrıntıların bazıları geliştirilip sabitleştirildiği zaman değişebilir.

This uses the prebuilt Python from the CrystaX NDK, a drop-in replacement for Google’s official NDK which includes many improvements. You must use the CrystaX NDK 10.3.0 or higher when building with python3. You can get it here.

Bu, birçok iyileştirmeleri bulunan ve Google’un resmi NDK’sının yerini alan; CrystaX NDK paketinin önceden hazırlanmış Python’ını kullanır. Python3’le kurulum yaparken CrystaX NDK’yı kullanmak zorundasınız. Ona buradan ulaşabilirsiniz.

The python3crystax build is handled quite differently to python2 so there may be bugs or surprising behaviours. If you come across any, feel free to open an issue.

python3crstax’ın kurulumunun ele alınması python2’den oldukça farklıdır, o halde can sıkıcı ve şaşırtıcı davranışları olabilir. Eğer bunlardan biriyle karşılaşırsanız, konu açmaktan çekinmeyin.

1 Beğeni

Hocam merhabalar

Göndermiş olduğunuz dosyayı indirdim ve buildozer android debug release deploy run komutuyla derlemek istediğimde domain org.test olduğu için hata verdi. Onu değiştirip tekrara derlediğim de de malesef çalışmadı. :confused:

Aşşağıda çökme esnasında buildozer logcat’ten almış olduğum ekran görüntüsü var ve aynı sorunu gösteriyor ‘pysqlite2 import error’ .

Dosyalarda bin klasörünün içinde android uygulaması var, telefona atıldığı zaman çalışmıştı bende, sizde de çalıştı mı?

domain org.test nedir?
Bu arada, daha önceden yaptığınız çalışmalar sonucunda.buildozer isimli dosya oluştuysa onu silin, tekrar debug etmeyi deneyin.

1 Beğeni

domain org.test ilk buildozer.spec dosyası oluşturulduğunda default verilen parametre ve vermiş olduğum buildozer android debug release deploy run komutu ile derleme yapıldığında bunu kabul etmiyor. Muhtemelen siz buildozer -v android debug komutu ile derleme yaptığınız için bu hatayla karşılaşmamışsınızdır. Buildozer.spec dosyasını yeniden oluşturmadım hocam hatta verdiğiniz kodlarla da karşılaştırdım aynı. Doğrudan bin klasöründeki apk’yı atıp denemedim onu da deneyip sonucu burdan yazarım hocam, iyi çalışmalar.

buildozer android debug deploy run yazarak yaptım. Sizin gönderdiğiniz .spec dosyasının içinde değişiklikler yapıldı ama. O haliyle bende de çalışmamıştı. kivy versiyonu yanlıştı, bir de main.py dosyasının içindeki kivy versiyonu yüklü olan kivy versiyonu değildi. Python majör sürümü için 2.7 yazmıştınız, 2 olacak orası. Bu değişiklikleri yapın. Bu arada .buildozer klasörünü de silin, yeniden deneyin.

1 Beğeni

hocam apk yı doğrudan yükleyince çalıştı harika :slight_smile: elinize sağlık ancak konu biraz dağıldı bende şimdi tam olarak sorunumuz ne idi hem diğer arkadaşlar içinde açıklayıcı olacak şekilde rica etsem tespitlerinizi tek bir post ta toplayabilir misiniz ? İyi çalışmalar.

Tamam, toparlamaya çalışayım:

Aşağıdaki yöntem Python2 için geçerlidir.

  1. Önce cython’u ve virtualenv’i aşağıdaki gibi yükleyelim. Daha önce pip ile yüklenmişlerse kaldıralım. Ve bu şekilde yüklemeyi deneyelim.
sudo apt-get install cython
sudo apt-get install virtualenv
  1. Versiyonlarımızı bir kontrol edelim.
>>> import cython
>>> import virtualenv
>>> import kivy
[INFO   ] [Logger      ] Record log in /home/tanberk/.kivy/logs/kivy_17-10-08_1.txt
[INFO   ] [Kivy        ] v1.10.0
[INFO   ] [Python      ] v3.5.3 (default, Sep 14 2017, 22:58:41) 
[GCC 6.3.0 20170406]
>>> cython.__version__
'0.25.2'
>>> 
>>> virtualenv.__version__
'15.1.0'
>>> 
  1. main.py’yi indirelim.

https://www.dropbox.com/sh/9r356h4pex7l0s3/AACuSnZUv-ocuPMnYOHtMojga?dl=0

  1. İndirdiğimiz main.py’yi bir açalım. Kivy sürümünün bu dosya içinde kaç yazıldığına bakalım.
kivy.require('1.10.0')
# kivy sürümleri aynı olmalı.
  1. Yeni bir tane .spec dosyası oluşturalım.
buildozer init
  1. .spec dosyasını açalım ve aşağıdaki eklemeleri yapıp kaydedelim:
# (list) Application requirements
# comma seperated e.g. requirements = sqlite3,kivy
requirements = sqlite3,sqlalchemy,kivy

# change the major version of python used by the app
osx.python_version = 2

# Kivy version to use
osx.kivy_version = 1.10.0
  1. Artık derleme işlemine geçebiliriz.
buildozer android debug deploy run

.

Merhabalar, ben de neredeyse aynı sorunları alıyorum, sqlite3 ile sorunsuz çalıştı mı? Bende base64, simplejson felan da var, sizin dediklerinizi deneyeceğim, 2 gündür sıfırdan kotlinde yqzmaya çalışıyorum, ama bazı webservisleri pythonda yazdığım için javada yazmam zor oluyor, sizin yöntem çalışsa harika olacak))
Buarada Google collab ile yapıyorum, önerilir mi bu yöntem?