+# About
-Welcome to read the QPython guide!
+QPython is a script engine that runs Python on android devices. It lets your android device run Python scripts and projects. It contains the Python interpreter, console, editor, and the SL4A Library for Android.
-QPython is a script engine that runs Python on android devices. It lets your android device run Python scripts and projects. It contains the Python interpreter, console, editor, and the SL4A Library for Android. It’s Python on Android!
+This is the www.qpython.org website and documentation's project.
+## More information
-QPython has several millions users in the world already, it's a great project for programming users, welcome to join us for contributing to this project NOW.
-
-
-What's NEW
-------------------------
-QPython project include the QPython https://play.google.com/store/apps/details?id=org.qpython.qpy and QPython3 https://play.google.com/store/apps/details?id=org.qpython.qpy3 applications.
-
-QPython application is using the **Python 2.7.2** , and QPython application is using the **Python 3.2.2** .
-
-
-QPython's newest version is 1.3.0 (Released on 2017/3/20) , QPython3's newest version is 1.0.2 (Released on 2017/3/29), New versions include many amazing features, please upgrade to the newest version as soon from google play, amazon appstore etc.
-
-
-Thanks these guys who are contributing
-----------------------------------------
-They are pushing on the QPython project moving forward.
-
-River, Mae, Zoom.Quiet, MathiasLuo, liyuanrui, Kyle kersey ...
-
-
-Do you want to join the great QPython team ? You could Ask qustions on twitter https://twitter.com/qpython or email us mailto:support@qpython.org.
-And you could fork us on github https://github.com/qpython-android/qpython and send pull request.
-
-
-QPython Communities
-----------------------
-**There are many active QPython communities where you could meet the QPython users like you**
-
-* Join Facebook community https://www.facebook.com/groups/qpython
-* Join Google group https://groups.google.com/forum/#!forum/qpython
-* Join Gitter chat https://gitter.com/qpython-android/qpython
-* Join G+ community https://plus.google.com/communities/111759148772865961493
-* QPython on Stackoverflow http://stackoverflow.com/questions/tagged/qpython
-
-**And you could talk to us through social network**
-
-* Like us on facebook https://www.facebook.com/QPython
-* Follow us on twitter https://twitter.com/qpython
-
-* Report issue https://github.com/qpython-android/qpython/issues
-* Email us mailto:support@qpython.org
-
-
-Support
--------------
-We are happy to hear feedback from you, but sometimes some bugs or features demand may not be implemented soon for we lack resources.
-
-So if you have any issue need the core developer team to solve with higher priority, you could try the https://www.bountysource.com .
-
-**It's the official QPython Users & Contributors' Guide, please follow http://www.qpython.org for more information.**
+Please visit [QPython Project Readme](https://github.com/qpython-android/qpython/blob/master/README.md)
diff --git a/docs/.buildinfo b/docs/.buildinfo
index 9ae14c2..a9af287 100644
--- a/docs/.buildinfo
+++ b/docs/.buildinfo
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 58624441babc3dbb65e1c406374e7bff
+config: e4277cb8131332b01f6e2dc120dd6b1b
tags: 645f666f9bcd5a90fca523b33c5a78b7
diff --git a/docs/_sources/contributors.rst.txt b/docs/_sources/contributors.rst.txt
index 904f5d7..1d578cf 100644
--- a/docs/_sources/contributors.rst.txt
+++ b/docs/_sources/contributors.rst.txt
@@ -10,6 +10,8 @@ Developers
-----------
`River `_
+`乘着船 `_
+
`kyle kersey `_
`Mae `_
diff --git a/docs/_sources/document.rst.txt b/docs/_sources/document.rst.txt
index 7ef4e7e..7918285 100644
--- a/docs/_sources/document.rst.txt
+++ b/docs/_sources/document.rst.txt
@@ -6,7 +6,7 @@
.. image:: _static/bestpython.png
-Welcome to read the QPython guide!
+Welcome to read the QPython guide
=============================================
QPython is a script engine that runs Python on android devices. It lets your android device run Python scripts and projects. It contains the Python interpreter, console, editor, and the SL4A Library for Android. It’s Python on Android!
diff --git a/docs/_sources/en/guide_androidhelpers.rst.txt b/docs/_sources/en/guide_androidhelpers.rst.txt
index 4a9c194..e64294a 100644
--- a/docs/_sources/en/guide_androidhelpers.rst.txt
+++ b/docs/_sources/en/guide_androidhelpers.rst.txt
@@ -1446,11 +1446,7 @@ TextToSpeechFacade
EyesFreeFacade
=========================
-.. py:function:: ttsSpeak(message)
-
- Speaks the provided message via TTS
- :param str message: message
BluetoothFacade
diff --git a/docs/_sources/en/qpypi.rst.txt b/docs/_sources/en/qpypi.rst.txt
new file mode 100644
index 0000000..da142e5
--- /dev/null
+++ b/docs/_sources/en/qpypi.rst.txt
@@ -0,0 +1,49 @@
+QPYPI
+======
+You can extend your QPython capabilities by installing packages.
+Because of different computer architectures, we cannot guarantee that QPYPI includes all packages in PYPI.
+If you want us to support a package that is not currently supported, you can raise an issue in the QPYPI project
+
+
+QPySLA Package
+--------------
+
+qsl4ahelper
+>>>>>>>>>>>>>>>
+It extends qpysl4a's APIs. Now the below project depends on it.
+https://github.com/qpython-android/qpy-calcount
+
+
+AIPY Packages
+----------------
+
+AIPY is a high-level AI learning app, based on related libraries like Numpy, Scipy, theano, keras, etc.... It was developed with a focus on helping you learn and practise AI programming well and fast.
+
+Numpy
+>>>>>>>
+NumPy is the fundamental package needed for scientific computing with Python. This package contains:
+
+::
+
+ a powerful N-dimensional array object
+ sophisticated (broadcasting) functions
+ basic linear algebra functions
+ basic Fourier transforms
+ sophisticated random number capabilities
+ tools for integrating Fortran code
+ tools for integrating C/C++ code
+
+
+Scipy
+>>>>>>>>
+SciPy refers to several related but distinct entities:
+
+::
+
+ The SciPy ecosystem, a collection of open source software for scientific computing in Python.
+ The community of people who use and develop this stack.
+ Several conferences dedicated to scientific computing in Python - SciPy, EuroSciPy and SciPy.in.
+ The SciPy library, one component of the SciPy stack, providing many numerical routines.
+
+Other
+------
diff --git a/docs/_sources/en/qpython3.rst.txt b/docs/_sources/en/qpython3.rst.txt
new file mode 100644
index 0000000..291d604
--- /dev/null
+++ b/docs/_sources/en/qpython3.rst.txt
@@ -0,0 +1,53 @@
+# About QPython 3L
+QPython is the Python engine for android. It contains some amazing features such as Python interpreter, runtime environment, editor and QPYI and integrated SL4A. It makes it easy for you to use Python on Android. And it's FREE.
+
+QPython already has millions of users worldwide and it is also an open source project.
+
+For different usage scenarios, QPython has two branches, namely QPython Ox and 3x.
+
+QPython Ox is mainly aimed at programming learners, and it provides more friendly features for beginners. QPython 3x is mainly for experienced Python users, and it provides some advanced technical features.
+
+This is the QPython 3L, it is the only Python interpreter which works under android 4.0 in google play.
+
+# Amazing Features
+- Offline Python 3 interpreter: no Internet is required to run Python programs
+- It supports running multiple types of projects, including: console program, SL4A program, webapp program
+- Convenient QR code reader for transferring codes to your phone
+- QPYPI and a custom repository for prebuilt wheel packages for enhanced scientific libraries, such as numpy, scipy, matplotlib, scikit-learn etc
+- Easy-to-use editor
+- INTEGRATED & EXTENDED SCRIPT LAYER FOR ANDROID LIBRARY (SL4A): IT LETS YOU DRIVE THE ANDROID WORK WITH PYTHON
+- Good documentation and customer support
+
+
+# SL4A Features
+With SL4A features, you can use Python programming to control Android work:
+
+- Android Apps API, such as: Application, Activity, Intent & startActivity, SendBroadcast, PackageVersion, System, Toast, Notify, Settings, Preferences, GUI
+- Android Resources Manager, such as: Contact, Location, Phone, Sms, ToneGenerator, WakeLock, WifiLock, Clipboard, NetworkStatus, MediaPlayer
+- Third App Integrations, such as: Barcode, Browser, SpeechRecongition, SendEmail, TextToSpeech
+- Hardwared Manager: Carmer, Sensor, Ringer & Media Volume, Screen Brightness, Battery, Bluetooth, SignalStrength, WebCam, Vibrate, NFC, USB
+
+[ API Documentation Link ]
+https://github.com/qpython-android/qpysl4a/blob/master/README.md
+
+[ API Samples ]
+https://github.com/qpython-android/qpysl4a/issues/1
+
+[ IMPORTANT NOTE ]
+IT MAY REQUIRE THE BLUETOOTH / LOCATION / READ_SMS / SEND_SMS / CALL_PHONE AND OTHER PERMISSIONS, SO THAT YOU CAN PROGRAM ITH THESE FEATURES. QPYTHON WILL NOT USE THESE PERMISSIONS IN BACKGROUND.
+
+IF YOU GET EXCEPTION IN RUNTIME WHILE USING SL4A API, PLEASE CHECK WHETHER THE RELEVANT PERMISSIONS IN THE SYSTEM SETTINGS ARE ENABLED.
+
+# How To Get Professional Customer Support
+Please follow the guide to get support https://github.com/qpython-android/qpython/blob/master/README.md
+
+[ QPython community ]
+https://www.facebook.com/groups/qpython
+
+[ FAQ ]
+A: Why can't I use the SMS API of SL4A
+Q: Because Google Play and some app stores have strict requirements on the permissions of apps, in QPython 3x, we use x to distinguish branches with different permissions or appstores. For example, L means LIMITED and S means SENSITIVE.
+Sometimes you cannot use the corresponding SL4A APIs because the version you installed does not have the corresponding permissions, so you can consider replace what you have installed with the right one.
+
+You can find other versions here:
+https://www.qpython.org/en/qpython_3x_featues.html
diff --git a/docs/_sources/en/qpython_3x_featues.rst.txt b/docs/_sources/en/qpython_3x_featues.rst.txt
new file mode 100644
index 0000000..0fc4578
--- /dev/null
+++ b/docs/_sources/en/qpython_3x_featues.rst.txt
@@ -0,0 +1,98 @@
+QPython 3x featues
+==================
+
+QPython 3x, Previously it was QPython3.
+
+A: Why are there so many branches?
+
+Q: Because Google Play and some appstores have strict requirements for application permissions,
+they require different permissions, we use different branch codes, for example, 3 means it was QPython3,
+L means LIMITED, S means SENSITIVE permission is required.
+
+A: I know there was a QPython before, what is the difference between it and QPython 3x?
+
+Q: It is now called QPython Ox now, which is mainly aimed at programming learners, and
+it provides more friendly features for beginners. QPython 3x is mainly for experienced
+Python users, and it provides some advanced technical features.
+
+
+A: Where can I get different branches or versions ?
+
+Q: Take a look at `this link `_.
+
+WHAT'S NEW
+-----------
+
+QPython 3x v3.0.0 (Published on 2020/2/1)
+>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+This is the first version after we restarting the QPython project
+
+- It added the `qsl4ahelper `_ as a built-in package
+- It added a `QPySL4A App project sample `_ into built-in editor, you can create QSLAApp by creating an project
+- It rearranged permissions
+- It fixed `ssl error `_ bugs
+
+App's Features
+-----------------
+
+- Offline Python 3 interpreter: no Internet is required to run Python programs
+- It supports running multiple types of projects, including: console program, SL4A program, webapp program
+- Convenient QR code reader for transferring codes to your phone
+- QPYPI and a custom repository for prebuilt wheel packages for enhanced scientific libraries, such as numpy, scipy, matplotlib, scikit-learn etc
+- Easy-to-use editor
+- INTEGRATED & EXTENDED SCRIPT LAYER FOR ANDROID LIBRARY (SL4A): IT LETS YOU DRIVE THE ANDROID WORK WITH PYTHON
+- Good documentation and customer support
+
+
+Android Permissions that QPython requires
+------------------------------------------
+
+QPython require the BLUETOOTH / LOCATION / BLUETOOTH and OTHER permissions, so that you can program using these FEATURES. AND WE WILL NOT USE THIS PERMISSIONS IN BACKGROUND.
+
+Both QPython 3S and 3L
+>>>>>>>>>>>>>>>>>>>>>>
+
+- android.permission.INTERNET
+- android.permission.WAKE_LOCK
+- android.permission.ACCESS_NETWORK_STATE
+- android.permission.CHANGE_NETWORK_STATE
+- android.permission.ACCESS_WIFI_STATE
+- android.permission.CHANGE_WIFI_STATE
+- android.permission.RECEIVE_BOOT_COMPLETED
+- android.permission.CAMERA
+- android.permission.FLASHLIGHT
+- android.permission.VIBRATE
+- android.permission.RECEIVE_USER_PRESENT
+- com.android.vending.BILLING
+- com.android.launcher.permission.INSTALL_SHORTCUT
+- com.android.launcher.permission.UNINSTALL_SHORTCUT
+- android.permission.READ_EXTERNAL_STORAGE
+- android.permission.WRITE_EXTERNAL_STORAGE
+- android.permission.READ_MEDIA_STORAGE
+- android.permission.ACCESS_COARSE_LOCATION
+- android.permission.ACCESS_FINE_LOCATION
+- android.permission.FOREGROUND_SERVICE
+- android.permission.BLUETOOTH
+- android.permission.BLUETOOTH_ADMIN
+- android.permission.NFC
+- android.permission.RECORD_AUDIO
+- android.permission.ACCESS_NOTIFICATION_POLICY
+- android.permission.KILL_BACKGROUND_PROCESSES
+- net.dinglisch.android.tasker.PERMISSION_RUN_TASKS
+
+QPython 3S
+>>>>>>>>>>>
+- android.permission.ACCESS_SUPERUSER
+- android.permission.READ_SMS
+- android.permission.SEND_SMS
+- android.permission.RECEIVE_SMS
+- android.permission.WRITE_SMS
+- android.permission.READ_PHONE_STATE
+- android.permission.CALL_PHONE
+- android.permission.READ_CALL_LOG
+- android.permission.PROCESS_OUTGOING_CALLS
+- android.permission.READ_CONTACTS
+- android.permission.GET_ACCOUNTS
+- android.permission.SYSTEM_ALERT_WINDOW
+
diff --git a/docs/_sources/en/qpython_ox_featues.rst.txt b/docs/_sources/en/qpython_ox_featues.rst.txt
new file mode 100644
index 0000000..f30c15d
--- /dev/null
+++ b/docs/_sources/en/qpython_ox_featues.rst.txt
@@ -0,0 +1,62 @@
+QPython Ox featues
+======================
+
+Because google play and some appstores have strict requirements on the permissions of the app, we use different strategies in different appstores, which is why the branch name will be different. For example, L means Limited, and S means it contains Sensitive permissions.
+
+Python
+---------
+- Python3 + Python2 basis
+- QRCode Reader
+- Editor
+- QPYPI
+- Ftp
+- Course
+
+Permissions
+----------------
+Both QPython OL and OS
+>>>>>>>>>>>>>>>>>>>>>>>>>>>
+
+- android.permission.INTERNET
+- android.permission.WAKE_LOCK
+- android.permission.ACCESS_NETWORK_STATE
+- android.permission.CHANGE_NETWORK_STATE
+- android.permission.ACCESS_WIFI_STATE
+- android.permission.CHANGE_WIFI_STATE
+- android.permission.RECEIVE_BOOT_COMPLETED
+- android.permission.CAMERA
+- android.permission.FLASHLIGHT
+- android.permission.VIBRATE
+- android.permission.RECEIVE_USER_PRESENT
+- com.android.vending.BILLING
+- com.android.launcher.permission.INSTALL_SHORTCUT
+- com.android.launcher.permission.UNINSTALL_SHORTCUT
+- android.permission.READ_EXTERNAL_STORAGE
+- android.permission.WRITE_EXTERNAL_STORAGE
+- android.permission.READ_MEDIA_STORAGE
+- android.permission.ACCESS_COARSE_LOCATION
+- android.permission.ACCESS_FINE_LOCATION
+- android.permission.FOREGROUND_SERVICE
+- android.permission.BLUETOOTH
+- android.permission.BLUETOOTH_ADMIN
+- android.permission.NFC
+- android.permission.RECORD_AUDIO
+- android.permission.ACCESS_NOTIFICATION_POLICY
+- android.permission.KILL_BACKGROUND_PROCESSES
+- net.dinglisch.android.tasker.PERMISSION_RUN_TASKS
+
+QPython OS
+>>>>>>>>>>>
+- android.permission.ACCESS_SUPERUSER
+- android.permission.SEND_SMS
+- android.permission.READ_SMS
+- android.permission.SEND_SMS
+- android.permission.RECEIVE_SMS
+- android.permission.WRITE_SMS
+- android.permission.READ_PHONE_STATE
+- android.permission.CALL_PHONE
+- android.permission.READ_CALL_LOG
+- android.permission.PROCESS_OUTGOING_CALLS
+- android.permission.READ_CONTACTS
+- android.permission.GET_ACCOUNTS
+- android.permission.SYSTEM_ALERT_WINDOW
diff --git a/docs/_sources/features/2018-09-28-dropbear-cn.rst.txt b/docs/_sources/features/2018-09-28-dropbear-cn.rst.txt
index f6de950..11491c4 100644
--- a/docs/_sources/features/2018-09-28-dropbear-cn.rst.txt
+++ b/docs/_sources/features/2018-09-28-dropbear-cn.rst.txt
@@ -39,11 +39,12 @@ mkdir dropbear # 在 /data/data/org.qpython.qpy/files下创建dropbear目录
初始化对应的key
-dbkey -t dss -f dropbear/dropbear_dss_host_key
+dbkey -t dss -f dropbear/dropbear_dss_host_key
dbkey -t rsa -f dropbear/dropbear_rsa_host_key
dbkey -t ecdsa -f dropbear/dropbear_ecdsa_host_key
+
```
完成上述步骤之后,即可启动sshd服务。
diff --git a/docs/agreement-cn.html b/docs/agreement-cn.html
new file mode 100644
index 0000000..dbdf8b4
--- /dev/null
+++ b/docs/agreement-cn.html
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+ 用户使用协议
+
+
+
+
1.1 In order to use this mobile application software and services, you should read and abide by the "User Agreement" (hereinafter referred to as "this Agreement"). Please be sure to carefully read and fully understand the contents of each clause, especially the clauses exempting or limiting liability, as well as separate agreements for agreeing to or using a certain service, and choose to accept or not accept it.
+
1.2 Unless you have read and accepted all the terms of this agreement, you have no right to download, install or use this software and related services. Your downloading, installation, use, account acquisition, login, etc. are deemed to have read and agreed to be bound by the above agreement.
+
1.3 QPYTHON (hereinafter referred to as "QPYTHON") agrees to provide Internet-based related services (hereinafter referred to as the "Service") in accordance with the provisions of this Agreement and its operating rules published from time to time. If you need to obtain this service, you (hereinafter referred to as "User") should agree to all the terms of this agreement and complete the entire application process according to the prompts on the page.
+
+
+
+
2. Scope of application of the agreement
+ This agreement is an agreement between the user and the company regarding the user's downloading, installation, use, copying of this software, and use of the company's related services.
+
+ The terms of service published by QPYTHON on the website and the enrollment plans and class agreements for courses attended by users are supplements to this agreement. If there is any conflict between this Agreement and the above content, this Agreement shall prevail. The content of this agreement also includes relevant agreements, business rules, etc. regarding this service that QPYTHON may publish from time to time. Once the above content is officially released, it will become an integral part of this agreement. Users must also abide by it if they continue to use the company's software and services.
+
+
3. Service content and authorized use scope
+
This software provides services based on the actual needs of users, such as programming tools and online QPYPI. QPYTHON reserves the right to change, interrupt or terminate part or all of this service at any time.
+
+
The authorized use scope of this software’s mobile application: Users can install, use, display, and run this software on their mobile phones.
+
+
Reserved rights: All other rights not expressly authorized are owned by our company.
+
+
3. Rules of use
+
Users must follow the following principles when using this software:
+ Comply with the relevant laws and regulations of your country;
+
+ This service system may not be used for any illegal purpose;
+ Comply with all network protocols, regulations and procedures related to the Service;
+ This software system may not be used to conduct any behavior that may adversely affect the normal operation of the Internet;
+ You may not use this software service system to conduct any behavior that is detrimental to other users;
+ If you discover any illegal use of user accounts or account security vulnerabilities, you should immediately notify QPYTHON officials.
+
+
+
4. Intellectual Property
+
The author of this software is Yan Hecun, and QPYTHON’s trademark rights, patent rights, trade secrets and other knowledge The property rights, as well as all information content related to this software (including but not limited to video courseware, text, pictures, audio, charts, interface design, layout framework, relevant data or electronic documents, etc.) belong to Beijing Youqutianxia Information authorized by River. Technology Co., Ltd. and Beijing Youqutianxia Information Technology Co., Ltd. enjoy the above intellectual property rights. Unless legally authorized by the company in advance, no one may use it in any form without authorization. Otherwise, we may immediately terminate the provision of products and services to the user, and Investigate its legal liability in accordance with the law and compensate QPYTHON for all losses.
We appreciate that you build a QPython topic community, you can invite us to join for answering any question about qpython by sending an email to us for telling how to join<support@qpython.org>.
LocalizationThis repo is the localization project, you can post pull request and send en email to us<support@qpython.org>, then we will merge it and publish in next update.
If you don’t want to use git, you can just translate the words which do not contains translatable=”false” in the following files.
QPython is a script engine that runs Python on android devices. It lets your android device run Python scripts and projects. It contains the Python interpreter, console, editor, and the SL4A Library for Android. It’s Python on Android!
QPython has several millions users in the world already, it’s a great project for programming users, welcome to join us for contributing to this project NOW.
QPython project include the QPython and QPython3 applications.
QPython application is using the Python 2.7.2 , and QPython application is using the Python 3.2.2 .
QPython’s newest version is 1.3.2 (Released on 2017/5/12) , QPython3’s newest version is 1.0.2 (Released on 2017/3/29), New versions include many amazing features, please upgrade to the newest version as soon from google play, amazon appstore etc.
You need to root the android device first, then soure the env vars (Just like the qpython wiki link you mentioned) and execute the /data/data/org.qpython.qpy/bin/python or /data/data/org.qpython.qpy/bin/python-android5 (for android 5 above)
+
You could “share to” qpython from 3rd apps.
+
You need to root the android device first, then soure the env vars (Just like the qpython wiki link you mentioned) and execute the /data/data/org.qpython.qpy/bin/python or /data/data/org.qpython.qpy/bin/python-android5 (for android 5 above)
The Scripting Layer for Android (abridged as SL4A, and previously named Android Scripting Environment or ASE) is a library that allows the creation and running of scripts written in various scripting languages directly on Android devices. QPython start to extend the SL4A project and integrate it.
The Scripting Layer for Android (abridged as SL4A, and previously named Android Scripting Environment or ASE) is a library that allows the creation and running of scripts written in various scripting languages directly on Android devices. QPython start to extend the SL4A project and integrate it.
There are many SL4A APIs, if you found any issue, please report an issue.
Records video from the camera and saves it to the given location.
Duration specifies the maximum duration of the recording session.
If duration is 0 this method will return and the recording will only be stopped
@@ -1197,649 +1183,616 @@
Records video (and optionally audio) from the camera and saves it to the given location.
Duration specifies the maximum duration of the recording session.
If duration is not provided this method will return immediately and the recording will only be stopped
when recorderStop is called or when a scripts exits.
Otherwise it will block for the time period equal to the duration argument.
Recognizes user’s speech and returns the most likely result
-
-
-
-
-
Parameters:
-
prompt(optional) (str) – text prompt to show to the user when asking them to speak
-
language(optional) (str) – language override to inform the recognizer that it should expect speech in a language different than the one set in the java.util.Locale.getDefault()
-
languageModel(optional) (str) – informs the recognizer which speech model to prefer (see android.speech.RecognizeIntent)
-
-
-
-
Returns:
An empty string in case the speech cannot be recongnized
-
-
-
-
+
+
Parameters:
+
+
prompt(optional) (str) – text prompt to show to the user when asking them to speak
+
language(optional) (str) – language override to inform the recognizer that it should expect speech in a language different than the one set in the java.util.Locale.getDefault()
+
languageModel(optional) (str) – informs the recognizer which speech model to prefer (see android.speech.RecognizeIntent)
+
+
+
Returns:
+
An empty string in case the speech cannot be recongnized
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Sets the result of a script execution. Whenever the script APK is called via startActivityForResult(),
the resulting intent will contain SCRIPT_RESULT extra with the given value
Android device which has USB Host controller (and enabled in that firmware).
-
-
Android 4.0 (API14) or later.
-
-
USB Serial devices (see [Status](#Status)).
-
-
USB Serial devices were not handled by Android kernel.
+
Android device which has USB Host controller (and enabled in that firmware).
+
Android 4.0 (API14) or later.
+
USB Serial devices (see [Status](#Status)).
+
USB Serial devices were not handled by Android kernel.
> I heard some android phone handle USB Serial devices
> make /dev/ttyUSB0 in kernel level.
> In this case, Android does not be able to handle the device
@@ -3450,231 +3194,210 @@
QPython is keeping develop!
If you are interested about what we are doing and want to make some contribution, follow this guide to make this project better!
If you find out any bugs or have any cool idea about QPython, please let us know about it.
You could write down your suggestion or bug report on the community.
Can I install some packages which required pre-compiled ?
Sure, you could install some pre-compiled packages from QPypi, you could find it through “Libraries” on dashboard.
If you couldn’t found the package here, you could send email to river@qpython.org .
Can I build an independent APK from QPython script?
Sure you can. now the service is in BETA, it’s a challenging thing. We will publish it as a online service, for we want to let the development process is simple, you don’t need to own the development environment set up when you want to build a application.
If you want to try it out or have some business proposal, please contact with us by sending email to river@qpython.org .
No wonder, it’s just similar to any other hello-world program. When executed, it just shows pop-up message on the screen (see screenshot on the top). Anyway, it’s a good example of QPython program.
It begins with import androidhelper — the most useful module in QPython, which encapsulates almost all interface with Android, available in Python. Any script developed in QPython starts with this statement (at least if it claims to communicate with user). Read more about Python library here and import statement here
By the way, if you’re going to make your script compatible with SL4A, you should replace the first line with the following code (and use android instead androidhelper further in the program):
We can display a simple dialog box with the title, prompt, edit field and buttons Ok and Cancel using dialogGetInput call. Replace the last line of your code and save it as hello1.py:
-
importandroidhelper
+
importandroidhelperdroid=androidhelper.Android()respond=droid.dialogGetInput("Hello","What is your name?")
Well, I think it should return any respond, any user reaction. That’s why I wrote respond = …. But what the call actually returns? Let’s check. Just add print statement after the last line:
-
importandroidhelper
+
importandroidhelperdroid=androidhelper.Android()respond=droid.dialogGetInput("Hello","What is your name?")printrespond
@@ -164,7 +186,7 @@
First of all, we put user input to the variable name. Then we check does name contain anything? In case the user left the line blank and clicked Ok, the return value is empty string ‘’. In case of Cancel button pressed, the return value is None. Both are treated as false in if-statement. So, only if name contans anything meaninful, then-statement is executed and greeting “Hello, …!” shown. In case of empty input the user will see “Hey! And you’re not very polite, %Username%!” message.
Ok, here is the whole program:
-
importandroidhelper
+
importandroidhelperdroid=androidhelper.Android()respond=droid.dialogGetInput("Hello","What is your name?")printrespondname=respond.resultifname:
-message='Hello, %s!'%name
+ message='Hello, %s!'%nameelse:
-message="Hey! And you're not very polite, %Username%!"
+ message="Hey! And you're not very polite, %Username%!"droid.makeToast(message)
After you installed QPython, start it in the usual way by tapping its icon in the menu. Screenshot on the top of this post shows what you should see when QPython just started.
Start button
@@ -137,18 +159,18 @@
1. Dashboard
Tools available here:
-
Console — yes, it’s regular Python console, feel free to comunicate with interpreter directly
-
Editor — QPython has a nice text editor integrated with the rest, you can write code and run it without leaving the application
-
My QPython — here you can find your scripts and projects
-
System — maintain libraries and components: install and uninstall them
-
Package Index opens the page QPyPI in browser allowing to install packages listed there
-
Community leads to QPython.org page. Feel free to join or ask&answer questions in the QPython community.
+
Console — yes, it’s regular Python console, feel free to comunicate with interpreter directly
+
Editor — QPython has a nice text editor integrated with the rest, you can write code and run it without leaving the application
+
My QPython — here you can find your scripts and projects
+
System — maintain libraries and components: install and uninstall them
+
Package Index opens the page QPyPI in browser allowing to install packages listed there
+
Community leads to QPython.org page. Feel free to join or ask&answer questions in the QPython community.
By long clicking on the console or editor, you have chance to create the shortcut on desktop which allow you enter console or editor directly.
As I said before, there is an ordinary Python console. Many people usually use it to explore objects’ properties, consult about syntax and test their ideas. You can type your commands directly and Python interpreter will execute them. You can open additional consoles by tapping the plus button (1) and usedrop-down list on the upper left corner to switch between consoles (2). To close the console just tap the close button (3).
You can find the scripts or projects in My QPython. My QPython contains the scripts and Projects.
By long clicking on script or project, you have chance to create the shortcut for the script or project. Once you have created the shortcuts on desktop, you can directly run the script or project from desktop.
It will redirect to the QPython.org, including somthe source of this documentation, and there are some qpython user communities’ link, many questions of qpython usage or programming could be asked in the community.
QPython has a built-in script which is qedit4web.py, you could see it when you click the start button and choose “Run local script”.
After run it, you could see the result.
To simplify QPython SL4A development in IDEs with a
“hepler” class derived from the default Android class containing
SL4A facade functions & API documentation
The smartphone is becomming people’s essential information & technical assitant, so an flexiable script engine could help people complete most jobs efficiently without complex development.
QPython offer an amazing developing experience, with it’s help, you could implement the program easily without complex installing IDE, compiling, package progress etc.
You can extend your QPython capabilities by installing packages.
+Because of different computer architectures, we cannot guarantee that QPYPI includes all packages in PYPI.
+If you want us to support a package that is not currently supported, you can raise an issue in the QPYPI project
AIPY is a high-level AI learning app, based on related libraries like Numpy, Scipy, theano, keras, etc…. It was developed with a focus on helping you learn and practise AI programming well and fast.
# About QPython 3L
+QPython is the Python engine for android. It contains some amazing features such as Python interpreter, runtime environment, editor and QPYI and integrated SL4A. It makes it easy for you to use Python on Android. And it’s FREE.
+
QPython already has millions of users worldwide and it is also an open source project.
+
For different usage scenarios, QPython has two branches, namely QPython Ox and 3x.
+
QPython Ox is mainly aimed at programming learners, and it provides more friendly features for beginners. QPython 3x is mainly for experienced Python users, and it provides some advanced technical features.
+
This is the QPython 3L, it is the only Python interpreter which works under android 4.0 in google play.
+
# Amazing Features
+- Offline Python 3 interpreter: no Internet is required to run Python programs
+- It supports running multiple types of projects, including: console program, SL4A program, webapp program
+- Convenient QR code reader for transferring codes to your phone
+- QPYPI and a custom repository for prebuilt wheel packages for enhanced scientific libraries, such as numpy, scipy, matplotlib, scikit-learn etc
+- Easy-to-use editor
+- INTEGRATED & EXTENDED SCRIPT LAYER FOR ANDROID LIBRARY (SL4A): IT LETS YOU DRIVE THE ANDROID WORK WITH PYTHON
+- Good documentation and customer support
+
# SL4A Features
+With SL4A features, you can use Python programming to control Android work:
[ IMPORTANT NOTE ]
+IT MAY REQUIRE THE BLUETOOTH / LOCATION / READ_SMS / SEND_SMS / CALL_PHONE AND OTHER PERMISSIONS, SO THAT YOU CAN PROGRAM ITH THESE FEATURES. QPYTHON WILL NOT USE THESE PERMISSIONS IN BACKGROUND.
+
IF YOU GET EXCEPTION IN RUNTIME WHILE USING SL4A API, PLEASE CHECK WHETHER THE RELEVANT PERMISSIONS IN THE SYSTEM SETTINGS ARE ENABLED.
[ FAQ ]
+A: Why can’t I use the SMS API of SL4A
+Q: Because Google Play and some app stores have strict requirements on the permissions of apps, in QPython 3x, we use x to distinguish branches with different permissions or appstores. For example, L means LIMITED and S means SENSITIVE.
+Sometimes you cannot use the corresponding SL4A APIs because the version you installed does not have the corresponding permissions, so you can consider replace what you have installed with the right one.
Q: Because Google Play and some appstores have strict requirements for application permissions,
+they require different permissions, we use different branch codes, for example, 3 means it was QPython3,
+L means LIMITED, S means SENSITIVE permission is required.
+
A: I know there was a QPython before, what is the difference between it and QPython 3x?
+
Q: It is now called QPython Ox now, which is mainly aimed at programming learners, and
+it provides more friendly features for beginners. QPython 3x is mainly for experienced
+Python users, and it provides some advanced technical features.
+
A: Where can I get different branches or versions ?
QPython require the BLUETOOTH / LOCATION / BLUETOOTH and OTHER permissions, so that you can program using these FEATURES. AND WE WILL NOT USE THIS PERMISSIONS IN BACKGROUND.
Because google play and some appstores have strict requirements on the permissions of the app, we use different strategies in different appstores, which is why the branch name will be different. For example, L means Limited, and S means it contains Sensitive permissions.
-A
-| B
-| C
-| D
-| E
-| F
-| G
-| L
-| M
-| N
-| P
-| Q
-| R
-| S
-| T
-| U
-| V
-| W
+ A
+ | B
+ | C
+ | D
+ | E
+ | F
+ | G
+ | L
+ | M
+ | N
+ | P
+ | Q
+ | R
+ | S
+ | T
+ | U
+ | V
+ | W
+