Python Q&As
From Symbian Developer Community
| Note The material on this page applies to the most recent beta release of PyS60. It is temporary and may change when PyS60 2.0 is released, at which point this note will be removed. |
Is PyS60 only for S60 and Symbian^1 devices? Not for S40?
PyS60 is available on Symbian^1, and S60 devices from 2nd Edition onwards. PyS60 doesn't support S40 platform (and there are not bright indications that it ever will).
Do other manufacturers except Nokia, support PyS60 runtime?
Yes, Samsung does! Find more details here.
What are advantages of using Python over other technologies?
The main characteristic of Python (which is termed as a "Pseudo-code that runs") is its ease and simplicity of its use. It is powerful in functionality than other runtimes available on the platform and can be easily extended using native Symbian C++. Further reading - Python in a Nutshell.
Where can I download the most recent PyS60 installer?
The most recent PyS60 packages are available at garage.maemo.org/frs/?group_id=854.
Note: All future releases of PyS60 would be available at Maemo Garage.
I see so many files at Maemo garage, which one do I need to install?
Please, refer to this article.
I installed Python on my phone but there is no icon. What could be wrong?
The Python runtime itself has no icon, so that you can have Python installed along with your application without confusing a casual user with superfluous icons. There's a separate package called Python Script Shell which provides the familiar text console Python has on other platforms.
Note: You can find the Python Script Shell in Start|Programs|PythonForS60 2.0.0|PyS60 Dependencies folder after you install PythonForS60_2.0.0_Setup.exe.
I installed Python runtime and Python script shell, but when I click on the Python icon nothing happens. What could be wrong?
Please check if you installed Python runtime and Python script shell on the same memory drive.
What are PyS60 extensions? Where can I find a list of extensions?
PyS60 Extension can be called libraries which present functions that can be called from Python and internally calls native Symbian methods. Most of the extensions can be found listed here.
Will extensions meant for 1.4.x releases, work on current 1.9.x releases? Why?
Unfortunately, they won't work just out of the box. They need to be ported to work on 1.9.x release. This is because the folder structure has changed in 1.9.x releases.
Why are there only countable number of (or few) extensions available for PyS60 1.9.x?
PyS60 1.9.x releases are beta releases, to obtain community feedback for the upcoming graduated PyS60 2.0 release. As 1.9.x releases are new, not many extensions exist for them. However, making an extension (or porting to 1.9.x) is not too difficult, refer to PyS60 documentation.
I created an application with PyS60 1.4.x release, would it run with PyS60 1.9.x releases?
Yes, it should (except the below mentioned exceptions), but you will need to build the SIS file again with your script, using PyS60 Application Packager.
Exceptions:
- module name topwindow should be used in 1.9.x (instead of 'TopWindow' in 1.4.x)
- btsocket should be used instead of socket in 1.9.x
- e32calendar should be used instead of calender in 1.9.x
Note: socket and calendar refer to the Python core modules in 1.9.x
How can I make a regular application out of a Python script (i.e. icon on the phone menu)?
The program used to convert a script into a SIS file is the PyS60 Application Packager, which is installed through PythonForS60_1.9.x_Setup.exe. A detailed guide on using PyS60 Application Packager is available in Python on Symbian book.
Note: You still need the Python runtime installed on the phone for the PyS60 application to work.
I installed my application (packaged as SIS) but all it does is flash briefly and closes. What could be wrong?
Probable causes,
- Currently, it is mandatory for the Python runtime and Python applications to be installed on the same memory drive. The PyS60 Application Packager has an option to force the installation drive of applications (For e.g. --drive=C).
- If the script (which throws some error) is packaged as a sis file, the applications flashes briefly and crashes. If no visible cause of error is observerd, The best possible solution is to debug the packaged sis application. Refer to PyS60 debugging techniques.
My program works wonderfully under the PyS60 Script Shell, but as a SIS file it gives during installation - "Required application access not granted". What gives?
If your application uses special capabilities, you need to sign get it signed either by a development certificate, Open signed online or Symbian Signed. More details here.
I used Open Signed Online to sign my application which uses capabilities that are not available to self signed applications. It still crashes when I try to use those features. What could be wrong?
You also need to set the capabilities when creating the package using the PyS60 Application Packager.
I get a 'certificate error' while installing an extension. What do I do?
Read this article : How to update an old extension.
Is there a place where I can find sample applications?
Yes, sample applications can be found here and on Forum Nokia Wiki.
Where can I find official support for PyS60?
- Nokia manufacturer specific support can be found here.
- Samsung manufacturer specific support can be found here.
I seem to have found a bug/I have a feature request! Where should I report it or add it?
The place for bug reports and feature requests is here: garage.maemo.org/tracker/?group_id=854
Sign in to comment…


