lc-soft/LCUI

[Feature Request] Add Android support #210

lc-soft posted onGitHub

Is your feature request related to a problem? Please describe.

Some Android apps have a very slow startup speed, large memory usage, and poor performance user interfaces. I don't know how Android developers can reduce the performance of app, even if their user interface is simple.

Therefore, I am interested in trying to use LCUI to build Android to experience its performance, to confirm whether the poor performance of the Android application is due to the technical level of Android developers or the GUI framework they use.

But before that, we need to make LCUI work on Android. Since I am not an Android developer, this work needs to be done by Android developers in the open source community.

Describe the solution you'd like

At first, if you want to work on this issue, please request for a bounty on issuehunt.io to tell everyone how much you need.

Next look at the requirements:

  • Drivers
    • Video
    • Touch screen
    • Input
    • Event loop
  • APIs
    • Add a function to get DPI
    • Add a function to display virtual keyboard
    • Add other required APIs
  • Documentation
    • Introduction documentation: introduce how you did it, how these drivers work, how Android apps work, etc.
    • Development documentation: introduce how to build an Android application based on LCUI and how to debug it
  • CI
    • Pass all unit tests in Android
    • The CI server should compile test/helloworld.c and package into apk file
    • The CI server should install and run the apk file, and be able to send screenshots as comment to GitHub
  • Examples
    • Add an Android project template with helloworld example for rapid development
  • Dependent libraries
    • Provide a script or other means to make it easier for libpng, freetype, libxml2 and other dependent libraries to compile for Android

Finally, in order to get more bonuses, I recommend writing some articles to introduce this feature that will be added, so that more people know the value of it and are willing to increase the bonus.

Describe alternatives you've considered

If you think this work is very difficult, you can provide other forms of help, such as:

  • Provide relevant development documents to make development easier
  • Provide technical difficulties that need to be resolved

Additional context

SDL already supports Android, you can refer to its code:

https://github.com/SDL-mirror/SDL/tree/master/src/video/android

For how to develop the Android driver for LCUI, you can refer to the existing driver code:

https://github.com/lc-soft/LCUI/tree/develop/src/platform


@lc-soft has funded $10.00 to this issue.


posted by issuehunt-app[bot] almost 5 years ago

@aish96660 @jduo

The description of this issue has been updated, please re-evaluate its workload, and then update the bounty request.

image

posted by lc-soft over 4 years ago

Fund this Issue

$10.00
Funded

Pull requests

Recent activities

lc-soft funded 10.00 for lc-soft/LCUI# 210
almost 5 years ago