Sunday, 2 October 2011


Since last few weeks we have been working on learn it yourself project titled ' Mobile phone application ' . It has been a great fun while doing this project as we end up with an application , simple yet very useful especially for youngsters and for office people also . We have made two applications . Firstly, an application which sends messages to group of people according to user and other one which sends MMS .    

Mobile phone application can be made using many software and tools example :- app-inventor ( for android phone ) , python ( for all platforms ) , Qt and using other languages like C++ , Java etc . App-inventor is based on block system while other requires coding . Being IT students and python learners it was more tempting for us to choose python as our mode to develop mobile phone application on symbian operating system . Our mobile phone application focuses on symbian S60 operating system.

Now we are starting with the recipe of how to make mobile phone application :-

What is Python S60 ?

Python for S60 is the platform for symbian mobiles , nokia's modified version of the symbian operating system for mobile devices. It supports many of the Python standard libraries and also has many more features like it can access phone's camera , bluetooth , contacts etc

Which python S60 you should go for ?

There are numerous version of python S60 available on net , latest available being 2.0 . We used both 2.0 and 1.9.4 versions and both of them worked perfectly .

Basically we need to install 2 files on our mobile to run S60 . One being python interpreter and other being shell script . There are different interpreters for different editions of phone like 1st edition , 2nd edition , 3rd edition or 5th edition phone . So as to find which is suitable for your device click here . Select your device and find out which edition is your phone and then
download appropriate files from here . For 1.9.4 version we downloaded these two files 
  1. python Scriptshell_1.9.4_5thEd.sis ( or 3rd edition one depending on your device ) 
  2. python_1.9.4.sis

After installing it will look like this

For 2.0 version follow the steps :-
  • Download PythonForS60_2.0.0.tar.gz
  • go in terminal and use the command tar -zxvf PythonForS60.tar.gz
  • go to the directory where new folder PyhonForS60 is created
  • use the command ./configure , then make and at last make install
  • From PyS60dependencies folder transfer and install  Python_2.0.0.sis , pips.sis and one version of PythonScriptShell package eg :- PythonScriptShell_2.0.0_high_capas.sis  in phone 

Why Python is best as a platform for S60 ?
  1. There is no hard core knowledge required for it . Just some basic knowledge of python and after reading this blog you can make for yourself a simple mobile phone application but interesting and useful
  2. It is easy and quick as just few lines of code are enough to make a simple application
  3. It is well suited for the development of prototypes or for building applications to make proof of concept with a simple and consistent language
Learning python language for making mobile phone application

Expect from the basic knowledge of python coding we need to know many other things when we have to make applications using PyS60 . PyS60 provides many useful modules . For learning read this pdf

These are our codes that we used :-


Testing the script 

After making the script , we need to test it . For testing script we can use different ways :-
  1. Using PyS60 on phone that we installed 
  • If you are using 2nd edition phone , you can transfer your file directly to your mobile using bluetooth  or PC suite .
  • Then install it as python script on phone .
  • Run pys60 application and run script directly from it
  • If you are using 3rd edition phone or higher , you cant directly transfer from bluetooth and run script . You need to create python folder in e drive of your phone and transfer your script to that folder 

  • Run pys60 application and now again run script from it 

    2. Using emulator on PC

Emulator is basically a device which imitates functions of one device/computer system on some other device/ computer device . Here we need to install emulator for nokia S60. Follow the instruction on this site and you can easily install emulator and test  .py script on it

Some other ways are Using bluetooth console and file sync from PC to mobile.

  1. Sending SMS to group of people according to the user's choice 
This application will first ask user to write text what he wants to send :-

Secondly it'll ask user that to how many he wants to send this message :-

Then it will ask user to enter number of first person he wants to send :-

 It will confirm does he wants to send to that number or not :-

It will display "message sent" if message is successfully sent :-

Otherwise it will display "message not sent " if message is not sent :-

It will again repeat this until it sends to as many people as user wanted to send

   2. Sending MMS to group of people according to the user's choice

This application also do the same as earlier application did . Firstly it will ask user to write text and this time it will also ask user to add multimedia file to it .

Converting .py file into sis 
  1. To run the application directly without using pyS60 we will have to convert py file to sis . This is tricky step . There are many things to be take care of . If you are using 2nd edition phone you will have to use  py2sis . Go to this link and follow the instructions 
  2. If you are using 3rd edition phone you will need ensymble . You can download appropriate version from here from here :-
    • For ensymble is available for python version upto 2.5 . So you need to first install that version of python to use ensymble . Follow the steps on the site the site
    • There can be this error while you go try to implement steps on the site ( Runtime error : zlib required ) 
    • You need to install zlib and zlib - devel first and then try again . 
Now you can directly run mobile phone application instead of running through pys60 or an emulator.


Posted by
Aman Chahar 2011014
Shivangi Yadav 2011104

No comments:

Post a Comment