• Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard
CSEstack

What do you want to Learn Today?

  • Programming
    • Tutorial- C/C++
    • Tutorial- Django
    • Tutorial- Git
    • Tutorial- HTML & CSS
    • Tutorial- Java
    • Tutorial- MySQL
    • Tutorial- Python
    • Competitive Coding Challenges
  • CSE Subject
    • (CD) Compiler Design
    • (CN) Computer Network
    • (COA) Computer Organization & Architecture
    • (DBMS) Database Management System
    • (DS) Data Structure
    • (OS) Operating System
    • (ToA) Theory of Automata
    • (WT) Web Technology
  • Interview Questions
    • Interview Questions- Company Wise
    • Interview Questions- Coding Round
    • Interview Questions- Python
    • Interview Questions- REST API
    • Interview Questions- Web Scraping
    • Interview Questions- HR Round
    • Aptitude Preparation Guide
  • GATE 2022
  • Linux
  • Trend
    • Full Stack Development
    • Artificial Intelligence (AI)
    • BigData
    • Cloud Computing
    • Machine Learning (ML)
  • Write for Us
    • Submit Article
    • Submit Source Code or Program
    • Share Your Interview Experience
  • Tools
    • IDE
    • CV Builder
    • Other Tools …
  • Jobs

Building Android Mobile Game Using Python | Good or Bad?

Aniruddha Chaudhari/79230/22
CodePython

Can We Build Android Mobile Game Using Python?

To be Precise to this question…

YES!

You can build the Android App using Python.

But the real question arises… Is it a good choice to make the Android App using the Python programming language?

Android Mobile Game Using Python

As per the reports from The Statistics Portal, Google Play Store recently placed at 3.3 million Android apps (including mobile games) in September 2017. Firmly, it is the Android market. You can see the craze of developers developing mobile applications and honing their career as the fascinated App developer.

How many of them have developed their Android application in Python?

There are so many programming languages, developers are using to build mobile applications and games. There is Java for Android Application development, Swift for iOS development. Recently Google has launched Kotlin as its main programming language for Android.

All these programming languages are dedicated to a particular operating system. You can not use Kotlin for iOS development. You can not build an Android App using Swift.

Looking at my experience in App development (Not so much though).

I remember, using Brew technology to develop a mobile application. Even to display “progress wheel”, I was used to write around 500-600 lines of code. You might be thinking why did I do that? That was the first project assigned to me for my first job being an App developer.

And as expected, I did not do well, seeing all my colleagues developing fancy Android and iOS applications with just a few lines of code.

Later, I jump to Python…

Being a Python developer, just like you, I was curious to know if I can build my mobile game application using Python. Or again it will hold me back?

I have curated complete Python tutorial. But when it comes to answering this question, I was stuck. To find if my world is right, I started reading and doing some study.

Before sharing my study and knowledge on this subject, you should aware…

How is Game App different from other mobile Applications?

As per my prior experience of working on mobile applications development, developing Game is not easy as much as any other mobile application…

There are lot many things come into consideration while developing a mobile gaming application…

  • The game requires high-end graphics.
  • It uses lots of resources.
  • It should be interactive without lacking speed.
  • Most importantly, You can not afford to have an even single memory leak as smartphones have very limited memory resource to provide you.

If you don’t work on these factors, your Gaming application can hang the user’s smartphone. And the user hates it the most.

You can not hang your self while enemy chasing you, right?

To satisfy all the Gaming requirement, you should need your app running faster.

One of the biggest constraints about GAME is that… It has a limited resource available, whether if its memory resource, graphics, data buses or taking user input… And smartphone OS have to share these resource with other running applications as well.

What are the challenges of developing a mobile application using Python?

Python is slower than most of its competitive programming languages like C/C++, Java…

I would better say, it is the only challenge because there are so many areas where Python have feathers in its crown…

To throw the fact, most of the Python libraries are build on C programing language. Python looks like the wrapper on top of compiled C programs. This is to make the Python modules work faster.

So to get on to the point… YES! You can develop an Android application using Python. But, it is not the best choice if we compare to other programming languages to develop the Android app.

There are lot many things you can do with the Python, but developing a solid Android game does not come in Python bucket.

Java programming language is the most preferred for developing an Android application. Google also launched Kotlin as its programming language for Android application development.

Many beginners indulge in Python in a dream of developing an Android application. It is mostly because of Python is far simpler to start with… And on another end, Java is the real challenge to learn if you don’t have previous programming experience. But it worth teaching yourself Java for developing an Android application.

As you are reading this post, you might be good at Python (or maybe decided to learn Python). You can make a simple Game using Python (not recommend developing high graphics games).

The real strength of the Python is the module. It makes your programming easy and precise even for smartphone application development.

Is there a Module for Developing Android Mobile Game using Python?

Kivy: It is the most evaluated module for developing the mobile application so the GAME. Advantages of using Kivy module

  • It is open source.
  • You can develop the cross-platform application.
  • It also gives surety for GPU acceleration, so the good for graphics.

If you make your mind to develop an Android mobile game using Python, Kivy is the best choice.

Final Word Taking over Python Vs Java for Android Game Development:

If your application requires high graphics as like GAMING applications or if you are looking to elevate your application in the competitive market, just take time and rethink your choice.

And again, developing an Android application is not an easy deal. If you want to develop your own mobile application, bear with Java. For being in full-time android development, learn Java. For iOS game development, teach yourself the Swift programming language. Native programming languages are always superior to use for high-end mobile game development.

You might have so many question pumping in your mind as it is an open discussion about developing Android mobile game using Python. You might have your own opinion. Feel free to write the comment. I would love to make fruitful discussion and I am sure it will help many other readers.

If you like it, do share this article with your friends.

Happy Pythoning!

Python Interview Questions eBook

appgamePython
Aniruddha Chaudhari
I am complete Python Nut, love Linux and vim as an editor. I hold a Master of Computer Science from NIT Trichy. I dabble in C/C++, Java too. I keep sharing my coding knowledge and my own experience on CSEstack.org portal.

Your name can also be listed here. Got a tip? Submit it here to become an CSEstack author.

Comments

  • Reply
    Harshit
    June 5, 2018 at 2:51 pm

    hello, sir, I have developed a game using pygame (python) is there any chance I can use it on android platform..

    • Reply
      Aniruddha Chaudhari
      June 6, 2018 at 8:03 am

      Hi Harshit,

      You can try Github open source https://github.com/renpytom/rapt-pygame-example to get your Pygame game working on Android platform.

  • Reply
    brook
    January 27, 2019 at 9:05 am

    Thank you for this answer – I like python too though I never learned too much. But I never understood until you explained here why other languages might be more suited for developing mobile games (the speed/memory resource factor). Finally it makes some sense!

    • Reply
      Aniruddha Chaudhari
      January 27, 2019 at 10:41 am

      You’re welcome, Brook! I am glad as it helped you to understand.

  • Reply
    Joshua
    February 27, 2019 at 12:32 pm

    Is Python able to display “boxes” or some 2d object (sorta like a hitbox) that responds to phone taps? I am trying to code a text-based choice game and I haven’t found a way to do this. What service could I use to do this?

    • Reply
      Aniruddha Chaudhari
      February 28, 2019 at 6:01 pm

      Hi Joshua,

      You can create the 2D button as like a hitbox. Use Button object if you are developing the app in Kivy.

  • Reply
    Mart Galwon
    March 31, 2019 at 6:22 pm

    I think every language has its own purpose and we should use the most suitable languages based on the project requirement. Python is never mean to be developed for mobile application.

    • Reply
      Aniruddha Chaudhari
      April 1, 2019 at 7:59 pm

      Exactly! Agree with you, Mart.

  • Reply
    Oluwatosin paul
    April 9, 2019 at 8:34 pm

    So from this article, python is good for other mobile apps but not mobile games right?

    • Reply
      Aniruddha Chaudhari
      April 9, 2019 at 8:38 pm

      Not really, Oluwatosin. Python is not good for any mobile app development. Platform-specific programming language (like Kotlin/Java for Android app, swift for iOS app) always performs better than any generic programming languages like Python.

  • Reply
    Rakib R Marak
    April 9, 2020 at 11:50 pm

    What’re your thoughts about game engines like unity and unreal? should I go for unity or learn java for making games?

    • Reply
      Aniruddha Chaudhari
      April 10, 2020 at 8:06 am

      Hi, Rukib. I’m really not the right person to suggest you as I’m not much into the gaming development. I will ask some of my friends who are working in the gaming industry and will update you if I find any relevant answers to your question.

  • Reply
    Dai
    September 28, 2020 at 4:54 pm

    I completely agree. We can develop an Android app using Python but not recommended to use Python.

    • Reply
      Aniruddha Chaudhari
      September 28, 2020 at 5:19 pm

      Thanks, Dai! You’re on spot.

  • Reply
    Blake
    February 28, 2021 at 5:02 am

    I was wondering if python would be good enough to build a card game on Android?

    • Reply
      Aniruddha Chaudhari
      February 28, 2021 at 9:12 am

      Yes. You can build a card game on Android using Python. But, if you want to make it more responsive, use the native language instead of Python.

  • Reply
    Arun Kumar
    March 30, 2021 at 12:46 pm

    Python, and some other = pubg
    What about your answer

    • Reply
      Aniruddha Chaudhari
      March 30, 2021 at 11:05 pm

      Can you please rephrase your question? I’m not getting what actually you are asking here.

  • Reply
    ishu
    June 23, 2021 at 8:36 pm

    Which gaming application can I make using python for the final year project? Can you suggest some?

    • Reply
      Aniruddha Chaudhari
      June 24, 2021 at 11:16 pm

      Check the list of Python projects where I have mentioned the Games as well that you can build with Python.

  • Reply
    Dwayne
    July 31, 2021 at 8:17 pm

    What is Python good for?

    • Reply
      Aniruddha Chaudhari
      September 14, 2021 at 12:44 pm

      I have already talked about it.

      Watch the video here- https://www.csestack.org/python-applications-advantages/

Leave a Reply Cancel reply

Basic Python Tutorial

  1. Python- Tutorial Overview
  2. Python- Applications
  3. Python- Setup on Linux
  4. Python- Setup on Windows
  5. Python- Basic Syntax
  6. Python- Variable Declaration
  7. Python- Numeric Data Types
  8. Python- NoneType
  9. Python- if-else/elif
  10. Python- for/while else
  11. Python- User Input
  12. Python- Multiline User Input
  13. Python- String Formatting
  14. Python- Find Substring in String
  15. Python- Bitwise Operators
  16. Python- Range Function
  17. Python- List
  18. Python- List Vs Tuple
  19. Python- Compare Two Lists
  20. Python- Sorting List
  21. Python- Delete Element from List
  22. Python- Dictionary
  23. Python- ‘is’ vs ‘==’
  24. Python- Mutable vs Immutable
  25. Python- Generator & Yield
  26. Python- Fibonacci Generator
  27. Python- Assert Statement
  28. Python- Exception Handling 
  29. Python- RegEx
  30. Python- Lambda Function
  31. Python- Installing Modules
  32. Python- Important Modules
  33. Python- Find all Installed Modules
  34. PyCharm- IDE setup
  35. Python- File Handling
  36. Python- Monkey Patching
  37. Python- Decorators
  38. Python- Instance vs Static vs Class Method
  39. Python- Name Mangling
  40. Python- Working with GUI
  41. Python- Read Data from Web URL
  42. Python- Memory Management
  43. Python- Virtual Environment
  44. Python- Calling C Function

Python Exercise

  1. Python- Tricky Questions
  2. Python- Interview Questions (60+)
  3. Python- Project Ideas (45+)
  4. Python- MCQ Test Online
  5. Python- Coding Questions (50+)
  6. Python- Competitive Coding Questions (20+)

Python String

  1. Reverse the String
  2. Permutations of String
  3. Padding Zeros to String/Number

Python List

  1. Randomly Select Item from List
  2. Find Unique Elements from List
  3. Are all Elements in List Same?

Python Dictionary

  1. Set Default Value in Dictionary
  2. Remove all 0 from a dictionary

File Handling

  1. Python- Read CSV File into List
  2. Check if the File Exist in Python
  3. Find Longest Line from File

Compilation & Byte Code

  1. Multiple Py Versions on System
  2. Convert .py file .pyc file
  3. Disassemble Python Bytecode

Algorithms

  1. Sorting- Selection Sort
  2. Sorting- Quick Sort

Other Python Articles

  1. Clear Py Interpreter Console
  2. Can I build Mobile App in Python?
  3. Extract all the Emails from File
  4. Python Shell Scripting

© 2022 – CSEstack.org. All Rights Reserved.

  • Home
  • Subscribe
  • Contribute Us
    • Share Your Interview Experience
  • Contact Us
  • About
    • About CSEstack
    • Campus Ambassador
  • Forum & Discus
  • Tools for Geek
  • LeaderBoard