سؤال

نحن نعمل على S60 نسخة هذا المنبر لديه لطيفة API الثعبان..

ومع ذلك ، لا يوجد شيء رسمي عن الثعبان على الروبوت, ولكن منذ Jython موجود, هل هناك طريقة للسماح الثعبان الروبوت تعمل معا??

هل كانت مفيدة؟

المحلول

طريقة واحدة لاستخدام Kivy:

مفتوحة المصدر بيثون مكتبة السريع تطوير التطبيقات التي تجعل من استخدام واجهات المستخدم المبتكرة ، مثل اللمس المتعدد التطبيقات.

Kivy يعمل على Linux, Windows, OS X, الروبوت و دائرة الرقابة الداخلية.يمكنك تشغيل نفسه [بايثون] رمز على كافة الأنظمة الأساسية المعتمدة.

Kivy عرض التطبيق

نصائح أخرى

هناك أيضا جديدة الروبوت بيئة البرمجة (البورصة/SL4A) المشروع.يبدو رهيبة و التكامل مع الروبوت الأصلي المكونات.

ملاحظة:لم يعد تحت عنوان "التنمية النشطة" ، ولكن بعض الشوك قد يكون.

نعم!: الروبوت بيئة البرمجة

مثال مات كاتس عبر عبر SL4A -- "هنا ماسح الباركود مكتوب في ستة أسطر من التعليمات البرمجية الثعبان:

import android
droid = android.Android()
code = droid.scanBarcode()
isbn = int(code['result']['SCAN_RESULT'])
url = "http://books.google.com?q=%d" % isbn
droid.startActivity('android.intent.action.VIEW', url)

هناك أيضا SL4A مكتوب في كبيرة من قبل موظفي غوغل.

Pygame فرعية للحصول على الروبوت هو ميناء مجموعة فرعية من Pygame وظائف منصة أندرويد.الهدف من المشروع هو السماح إنشاء الروبوت-ألعاب محددة ، لتسهيل ترقية الألعاب من جهاز الكمبيوتر مثل منصات الروبوت."

أمثلة تتضمن اللعبة كاملة تعبئتها في APK, والتي هي مثيرة جدا للاهتمام.

لقد نشرت تعليمات التصحيح عبر تجميع الثعبان 2.7.2 الروبوت, يمكنك الحصول عليه في بلدي بلوق هنا: http://mdqinc.com/blog/2011/09/cross-compiling-python-for-android/

تحرير:لقد مفتوحة المصدر Ignifuga, بلدي لعبة 2D المحرك هو بيثون/SDL على ذلك عبر يجمع لالروبوت.حتى لو كنت لا تستخدم ذلك من أجل ألعاب, قد تحصل على أفكار مفيدة من كود البناء فائدة (اسمه شافر ، بعد تيم...أنت تعرف من).

البرمجة طبقة لالروبوت

SL4A يفعل ما تريد.يمكنك بسهولة تثبيته مباشرة على جهازك من الموقع و لا تحتاج إلى الجذر.

وهو يدعم مجموعة من اللغات.بيثون هو الأكثر نضجا.بشكل افتراضي ، فإنه يستخدم بيثون 2.6, ولكن هناك 3.2 ميناء يمكنك استخدام بدلا من ذلك.لقد استخدمت هذا المنفذ لجميع أنواع الأشياء على Galaxy S2 وانها عملت بشكل جيد.

API

SL4A توفر منفذ من android مكتبة لكل لغة معتمدة.المكتبة يوفر واجهة الأساسية الروبوت API من خلال واحدة Android الكائن.

from android import Android

droid = Android()
droid.ttsSpeak('hello world') # example using the text to speech facade

كل لغة لها تقريبا نفس API.يمكنك حتى استخدام جافا سكريبت API داخل webviews.

let droid = new Android();
droid.ttsSpeak("hello from js");

واجهات المستخدم

واجهات المستخدم لديك ثلاثة خيارات:

  • يمكنك بسهولة استخدام عامة ، الأصلي الحوارات و القوائم من خلال API.هذا أمر جيد بالنسبة تأكيد الحوارات الأساسية الأخرى مدخلات المستخدم.
  • يمكنك أيضا فتح ويب من داخل بيثون السيناريو ، ثم استخدام HTML5 على واجهة المستخدم.عند استخدام webviews من بيثون ، يمكنك تمرير الرسائل ذهابا وإيابا بين webview و الثعبان عملية ولدت عليه.واجهة المستخدم لن يكون أصلي, لكنه لا يزال خيارا جيدا لديك.
  • هناك بعض دعم الروبوت الأصلي واجهات المستخدم, ولكن أنا لا تأكد جيدا كيف يعمل ؛ أنا فقط لم يستخدم أي وقت مضى.

يمكنك خلط الخيارات حتى تتمكن من عرض ويب على الواجهة الرئيسية, و لا تزال تستخدم الأم الحوارات.

QPython

وهناك طرف ثالث مشروع اسمه QPython.فإنه يبني على SL4A ، ويلقي في بعض الأشياء المفيدة الأخرى.

QPython يعطيك أجمل واجهة المستخدم لإدارة التثبيت الخاص بك ، ويشمل قليلا, الشاشة التي تعمل باللمس محرر التعليمات البرمجية ، Python shell النقطة شل حزمة إدارة.لديهم أيضا بيثون 3 الميناء.كل النسخ المتاحة من سوق Play مجانا.QPython أيضا حزم المكتبات من مجموعة من الثعبان على الروبوت المشاريع ، بما في ذلك Kivy ، لذلك ليس فقط SL4A.

علما بأن QPython لا يزال وضع شوكة من SL4A (ليس كثيرا أن نكون صادقين).الرئيسية SL4A المشروع في حد ذاته هو ميت.

روابط مفيدة

كما بيثون عاشق و مبرمج أندرويد, أنا حزين أن أقول ليس هذا هو حقا وسيلة جيدة للذهاب.هناك نوعان من المشاكل.

مشكلة واحدة هي أن هناك الكثير أكثر من مجرد لغة برمجة الروبوت أدوات التنمية.الكثير من الروبوت الرسومات يتضمن ملفات XML إلى تكوين عرض, مماثلة إلى HTML.المدمج في جافا الكائنات حقا المتكاملة مع هذا تخطيط XML, و هو أسهل بكثير من كتابة التعليمات البرمجية الخاصة بك للانتقال من منطق نقطية.

المشكلة الأخرى هي أن G1 (وربما غيرها من أجهزة الروبوت في المستقبل القريب) هي في الحقيقة ليست بهذه السرعة.200 ميغاهيرتز المعالجات و رام محدودة جدا.حتى في جافا عليك القيام به مبلغ محترم من كتابة إلى تجنب المزيد من كائن إنشاء إذا كنت تريد أن تجعل التطبيق الخاص بك على نحو سلس تماما.بيثون ستكون بطيئة جدا لفترة لا يزال على الأجهزة النقالة.

Kivy


أريد الرد على هذا امتدادا لما @JohnMudd وقد أجبت (ولكن يرجى تتحمل معي كما لم تكن الإنجليزية هي اللغة الأولى)

قد مرت سنوات منذ ذلك الحين ، Kivy تطورت إلى v1.9-dev.أكبر نقطة بيع من Kivy ، في رأيي ، هو عبر منصة التوافق.يمكنك كود الاختبار في ظل البيئة المحلية الخاصة بك (ويندوز/*nix الخ) ، يمكنك أيضا بناء التصحيح و حزمة التطبيق الخاص بك لتشغيل على جهاز الروبوت/دائرة الرقابة الداخلية/ماك/ويندوز الأجهزة.

مع Kivy الخاصة KV اللغة, يمكنك كود بناء واجهة المستخدم الرسومية بسهولة (انها مجرد مثل جافا XML, ولكن بدلا من TextView الخ ، KV الخاصة ui.widgets على غرار الترجمة) الذي هو في رأيي من السهل جدا أن تعتمد.

حاليا Buildozer و بيثون-for-android هي الأكثر الموصى بها أدوات بناء/حزمة تطبيقات الخاصة بك.لقد حاولت لهم على حد سواء و يمكن أن أقول جازما أنها تجعل من بناء تطبيقات الروبوت مع بيثون نسيم.المستخدمين الذين يشعرون بالراحة في وحدة التحكم الطرفية//موجه الأوامر ينبغي أن يكون لديك أي مشاكل في استخدام لهم ، أدلة موثقة بشكل جيد أيضا.

وعلاوة على ذلك, دائرة الرقابة الداخلية هو آخر نقطة بيع كبيرة من Kivy ، شريطة أن يمكنك استخدام نفس رمز قاعدة مع القليل من التغييرات المطلوبة لاختبار تشغيل على جهاز iOS الخاص بك عبر kivy-دائرة الرقابة الداخلية البيرة أدوات ، على الرغم من كسكودي مطلوب من أجل بناء قبل تشغيل على أجهزة (AFAIK دائرة الرقابة الداخلية جهاز محاكاة في كسكودي حاليا لا تعمل على x86-العمارة بناء).هناك أيضا بعض التبعية القضايا التي يجب أن يدويا جمعت مغشوش مع حولها في كسكودي أن يكون ناجحا في بناء لكنهم لن يكون من الصعب جدا حل و الناس في Kivy مجموعة جوجل هي حقا مفيدة جدا.

مع كل ما يقال, المستخدمين مع بيثون المعرفة ينبغي أن يكون هناك مشكلة في التقاط أساسيات في أسابيع (إذا لم تكن يوما) لبناء بعض التطبيقات البسيطة.

الجدير بالذكر أيضا هو أنه يمكنك حزمة (بناء وصفات) الخاص بك الثعبان وحدات بناء ذلك حقا يمكن للمستخدمين الاستفادة من العديد من المكتبات الموجودة الثعبان تجلب لنا مثل طلبات & PIL الخ.من خلال Kivy تمديد الدعم.

في بعض الأحيان يتطلب التطبيق الخاص بك الوظيفة التي هو أبعد من نطاق ما Kivy يمكن أن يحقق.في تلك الحالات ، فمن الضروري اللجوء إلى برامج خارجية المكتبات.نظرا لثراء بيثون النظم الإيكولوجية ، هناك بالفعل الكثير من البرامج المكتبات التي يمكنك ببساطة استيراد واستخدام الحق بعيدا.

آخر ولكن ليس آخرا ، إذا كنت تنوي استخدام Kivy أكثر جدية/المشاريع التجارية ، قد تجد الوحدات الحالية غير مرضية.هناك بعض الحلول العملية مع "التقدم في العمل" من pyjnius لالروبوت ، pyobjus.يمكن للمستخدمين الآن الحصول Java/الهدف-C الطبقات من خلال تلك الوحدات من السيطرة على بعض واجهات برمجة التطبيقات الأصلية.

تجربتي في Kivy هو أنه سوف تجد أفضل تتناسب مع محنك الثعبان المبرمجين وبعض خطيرة المبرمجين الذين يريدون التطور السريع أو رمز بسيط قاعدة الصيانة.أنه يعمل بشكل جيد على منصات متعددة ، وإن لم يكن حقا مع الأم الشعور.

أتمنى بعض الثعبان التطبيق المبرمجين تجد هذه المعلومات مفيدة والبدء في اتخاذ نظرة على Kivy.فإنه يمكن فقط الحصول على أفضل (مع المزيد من الدعم و المكتبات/وحدات الحصول على استدار) إذا كان هناك اهتمام كبير من المجتمع.

P. S.ليس لدي أي علاقة مع Kivy على الإطلاق, أنا مجرد مبرمج يحب حقا فكرة جلب الثعبان الترميز متعة المحمول/التنمية عبر منصة.

ليس في هذه اللحظة و سوف تكون محظوظا للحصول على Jython إلى العمل قريبا.إذا كنت تخطط للبدء في تطوير الخاص بك الآن يمكنك أن تكون أفضل حالا مع التمسك جافا الآن على.

باستخدام SL4A (التي سبق ذكرها من قبل نفسه في إجابات أخرى) يمكنك تشغيل كاملة web2py سبيل المثال (أخرى بيثون الأطر ويب هي مرشحة أيضا).SL4A لا تسمح لك أن تفعل الأم مكونات واجهة المستخدم (أزرار أشرطة التمرير ، وما شابه ذلك), ولكن لا دعم WebViews.WebView هي في الأساس ليس أكثر من مخطط أسفل متصفح ويب أشار في عنوان ثابت.أعتقد أن الأم Gmail يستخدم ويب بدلا من الذهاب العادية القطعة الطريق.

هذا الطريق سوف يكون لديك بعض الميزات المثيرة للاهتمام:

  • في حالة معظم الثعبان على شبكة الإنترنت أطر هل يمكن فعلا وضع واختبار دون استخدام جهاز android أو محاكي الروبوت.
  • مهما كود بايثون كنت في نهاية المطاف الكتابة على الهاتف ويمكن أيضا أن توضع على العام ويب مع القليل جدا (إن وجدت) تعديل.
  • هل يمكن الاستفادة من جميع مجنون ويب الاشياء هناك:الاستعلام, HTML5, CSS3, الخ.

يمكنني استخدام QPython التطبيق.أنه يحتوي على محرر, وحدة التحكم, و يمكنك تشغيل برامج بيثون مع ذلك.التطبيق مجاني و الرابط هو http://qpython.com/.

يمكنك استخدام Termux التطبيق:

علما أن الرابطة تثبيت تثبيت بيثون بيثون 3.بايثون 2 فهذه دعوة apt تثبيت python2.

بعض العروض هنا: https://www.youtube.com/watch?v=fqqsl72mASE

و أيضا جيثب الصفحة: https://github.com/termux

من Python for android الموقع:

الثعبان الروبوت هو مشروع إنشاء الخاصة بك الثعبان التوزيع بما في ذلك وحدات تريد إنشاء apk بما في ذلك الثعبان, يبس, و التطبيق الخاص بك.

محاولة أخرى: https://code.google.com/p/android-python27/

هذا واحد تضمين مباشرة الثعبان interpretter في التطبيق apk.

يمكنك تشغيل التعليمات البرمجية باستخدام بيثون sl4a.sl4a يدعم بيثون ، بيرل, JRuby, لوا, BeanShell, جافا سكريبت ، Tcl, و شيل.

يمكنك أن تتعلم sl4a بيثون أمثلة.

هناك أيضا بيثون-on-a-chip وربما تشغيل mosync: مجموعة جوجل

Chaquopy

Chaquopy هو البرنامج المساعد ل Android Studio هو Gradle على أساس نظام البناء.وهو يركز على التكامل الوثيق مع الروبوت القياسية أدوات التنمية.

  • فإنه يوفر كامل واجهات برمجة التطبيقات للاتصال جافا من الثعبان أو الثعبان من جافا, يسمح للمطور استخدام أيهما اللغة هو الأفضل بالنسبة لكل مكون من التطبيق.

  • فإنه يمكن تلقائيا تحميل PyPI حزم وبناء عليها في التطبيق ، بما في ذلك اختيار الأم حزم مثل NumPy.

  • فإنه يتيح الوصول الكامل إلى جميع واجهات برمجة التطبيقات الروبوت من بيثون ، بما في ذلك واجهة مستخدم أصلي أدوات (على سبيل المثال النقي-الثعبان النشاط).

هذا هو منتج تجاري ، لكنه الحرة المفتوحة المصدر الاستخدام وسوف تبقى دائما بهذه الطريقة.

(أنا خالق هذا المنتج.)

هناك هو التطبيق يسمى QPython3 في playstore التي يمكن استخدامها لكل من تحرير وتشغيل بيثون السيناريو.

Playstore الرابط

تطبيق آخر يسمى Termux التي يمكنك تثبيت بيثون باستخدام الأوامر

pkg install python

Playstore الرابط

إذا كنت تريد تطوير تطبيقات , هناك الثعبان الروبوت البرمجة طبقة (SL4A) .

The Scripting Layer for Android, SL4A, is an open source application that allows programs written in a range of interpreted languages to run on Android. It also provides a high level API that allows these programs to interact with the Android device, making it easy to do stuff like accessing sensor data, sending an SMS, rendering user interfaces and so on.

يمكنك استخدام QPython:

وقد بيثون وحدة التحكم, محرر, فضلا عن حزمة إدارة / التركيب

http://qpython.com/

هو مشروع مفتوح المصدر مع كل من بيثون 2 بيثون 3 تطبيقات.يمكنك تحميل المصدر أندرويد .ملفات apk مباشرة من جيثب.

QPython 2: https://github.com/qpython-android/qpython/releases

QPython 3: https://github.com/qpython-android/qpython3/releases

لم أرى هذا السؤال هنا ولكن يمكنك أن تفعل ذلك مع Pyside و Qt الآن أن Qt يعمل على الروبوت بفضل Necessitas.

يبدو تماما الهمجية في الوقت الحالي ولكن يمكن أن تكون قابلة للتطبيق الطريق في نهاية المطاف...

http://qt-project.org/wiki/PySide_for_Android_guide

خيار آخر إذا كنت تبحث عن 3.4.2 أو 3.5.1 هو هذا الأرشيف على جيثب.

Python3-الروبوت 3.4.2 أو Python3-الروبوت 3.5.1

وهو يدعم حاليا الثعبان 3.4.2 أو 3.5.1 و 10d نسخة من NDK.كما يمكن دعم 3.3 و 9c, 11 و 12

ومن الجميل في هذا يمكنك ببساطة تحميل البرنامج تشغيل و الحصول على .إذا أو .a

انا حاليا استخدم هذا إلى تشغيل الخام الثعبان على أجهزة الروبوت.مع بضعة تعديلات على بناء الملفات يمكنك أيضا جعل x86 و armeabi 64 بت

واحد أكثر الخيار يبدو أن pyqtdeploy والتي نقلا عن المستندات هي:

أداة ، بالاقتران مع غيرها من الأدوات المتوفرة مع Qt, تمكن نشر PyQt4 و PyQt5 التطبيقات المكتوبة مع الثعبان v2.7 أو الثعبان v3.3 أو في وقت لاحق.وهو يدعم نشر على سطح المكتب المنصات (لينكس, ويندوز OS X) وعلى منصات متحركة (دائرة الرقابة الداخلية ، الروبوت).

وفقا نشر PyQt5 التطبيق الروبوت عبر pyqtdeploy و Qt5 فمن المتقدمة بنشاط ، على الرغم من أنه من الصعب العثور على أمثلة على عمل تطبيقات أندرويد أو البرنامج التعليمي على كيفية عبر تجميع كافة المكتبات المطلوبة الروبوت.هو مشروع مثير للاهتمام أن نأخذ في الاعتبار على الرغم من!

تحقق من enaml-الأم الذي يأخذ الرد أصلية مفهوم وينطبق ذلك على الثعبان.

فإنه يتيح للمستخدمين إنشاء تطبيقات مع الروبوت الأصلي الحاجيات توفر واجهات برمجة التطبيقات لاستخدام الروبوت جافا المكتبات من بيثون.

أنه يدمج أيضا مع الروبوت-استوديو أسهم عدد قليل من رد الجميل ديف ميزات مثل رمز إعادة شحن و تصحيح الأخطاء عن بعد.

نلقي نظرة على BeeWare.في لحظة من الإجابة عن هذا السؤال فإنه لا يزال في التنمية في وقت مبكر.انها الهدف هو أن تكون قادرة على إنشاء تطبيقات مع بيثون لجميع أنظمة التشغيل المعتمدة ، بما في ذلك الروبوت.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top