Buiding apps for pinephone
#1
Hi,
How easy is it to build apps for the pine phone.

I am currently building apps for android phones and find this process quite frustrating at times. Given that the pine phone essentially runs a conventional Linux distribution, can apps be built using languages such as python directly? Is there a preferred language for building apps? Or is an SDK required?

Also,
Can lightweight Linux distributions such as MXLinux be adapted to run on the pine phone.

Any help is much appreciated.

Cheers.
  Reply
#2
(05-25-2021, 10:08 PM)katesfb Wrote: I am currently building apps for android phones and find this process quite frustrating at times. Given that the pine phone essentially runs a conventional Linux distribution, can apps be built using languages such as python directly? Is there a preferred language for building apps? Or is an SDK required?

Any help is much appreciated.

I've coded a couple of apps in python+gtk for debian+phosh but haven't done much more beyond proof of concept. What is it you want to know?
  Reply
#3
Hi,
And thanks for the reply.

It was just a general query really. Is writing apps for the pine phone similar to writing apps for a standard linux PC?

For example if a i write an app for use on a linux machine i would use say Geany or Idle if using python (with kivy), and processing IDE which can be used for java, python, javascript.

What is access to the phone sensors like from a programming perspective? For example if i wished to write an app that reported information coming from the light sensor, acccelerometer, magnetometer etc. Is this doable using standard programming tools with maybe a few libraries/methods to interface with the sensors?

Any hep is much appreciated.

Cheers.
  Reply
#4
Programming for the PinePhone is just like programming for a typical x86/x64 linux PC except that you have a tiny touch screen, have to use a screen keyboard, you are on ARM64 instead of x86/x64, and the CPU and GPU are puny compared to modern x86/x64 machines.

You can write programs in python. In fact a lot of programs on the PinePhone are written in python for better (faster to get something up and running) or worse (python isn't known for good performance on desktops, so it can struggle a bit on the PinePhone).

If you write programs from an x86/x64 computer in languages that require compilation, you will need to take care to do cross-compilation or you can do the compilation on the PinePhone itself. It is straightforward to install all the compilers in the package databases of each linux distribution and use them. They will take longer to compile, but they will do the job just as good as on a more powerful machine just slower.

You will need to be a bit more mindful of performance and definitely RAM usage than you would on a x86/x64 desktop or laptop of today. If you have done programming for the Raspberry Pi, then your experience with those issues there will carry over here. The PinePhone has more RAM than the Raspberry Pi 3 and earlier and a comparable processor.

As far as sensors, it depends on which sensor you want to access. The IMU and a few other sensors are accessible via the IIO (Industrial Input Output) subsystem of the kernel (use libiio and tools to access). You can also see the devices in /sys as well. One thing to keep in mind, recent PinePhones use a different magnetometer due to pandemic related component shortages.
  Reply
#5
https://imgur.com/a/n44dZsL

Building apps on the PinePhone is a blessing compared to iOS/Android/WP.

You can code on your linux device, rsync the binary over to the pinephone, use SSH with X Forwarding to run the application on the phone but get the actual Window back to your workstation. I can do that without even having to connect my pinephone to my laptop with a cable, i can just rsync and x-forward over wifi, 4g or even fucking bluetooth if i had to.

It feels exactly like writing desktop applications. There's no emulators or special SDKs, everything just works as you'd expect.
  Reply
#6
(05-26-2021, 11:21 PM)katesfb Wrote: What is access to the phone sensors like from a programming perspective? For example if i wished to write an app that reported information coming from the light sensor, acccelerometer, magnetometer etc. Is this doable using standard programming tools with maybe a few libraries/methods  to interface with the sensors?

I'm yet to mess with sensors, because there you have to deal with them like a PC rather than a SDK etc
  Reply
#7
Hi all,
And thanks for all the replies - very helpful.

I am now even more convinced that this is the way to go. So i will be buying a pine phone and look forward to writing apps for it. Maybe Pine64 should partner with a Chinese hardware supplier company.

Thanks for your comments. much appreciated.

Cheers.

(06-10-2021, 10:52 PM)katesfb Wrote: Hi all,
And thanks for all the replies - very helpful.

I am now even more convinced that this is the way to go. So i will be buying a pine phone and look forward to writing apps for it. Maybe Pine64 should partner with a Chinese hardware supplier company.

Also, do i assume based on previous comments that kivy (python module) will work?

Thanks for your comments. much appreciated. 

Cheers.
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Austrialians now have a better reason to use PinePhone KNERD 3 79 2 hours ago
Last Post: evilbunny
  Manjaro Edition Pinephone for sale mstevens 5 162 Yesterday, 10:50 AM
Last Post: mstevens
  Are you using the Pinephone as your daily driver? jro 91 13,556 Yesterday, 07:26 AM
Last Post: user641
  PinePhone is not a daily driver FOSSagent0 17 1,188 Yesterday, 01:11 AM
Last Post: bogen85
  Pinephone app development drgr33n 23 2,835 09-16-2021, 02:16 PM
Last Post: ragreenburg
  New PinePhone user dachalife 4 237 09-15-2021, 12:01 PM
Last Post: dachalife
  UPDATED (June 2021): 17-distro multi-boot image for Pinephone (incl. 3GiB variant) megous 161 111,773 09-11-2021, 10:57 PM
Last Post: ryo
  Writing apps/programs for pine phone katesfb 3 159 09-10-2021, 07:43 PM
Last Post: TRS-80
Heart What native PinePhone application would you like to see in the near future? kern707 82 15,519 09-09-2021, 12:32 PM
Last Post: user641
  Pinephone won't let me enter password czgunner 5 269 09-07-2021, 08:50 PM
Last Post: TRS-80

Forum Jump:


Users browsing this thread: 3 Guest(s)