Recent

Author Topic: iOS application development tutorial  (Read 14764 times)

GillesH

  • Jr. Member
  • **
  • Posts: 55
iOS application development tutorial
« on: January 22, 2018, 09:25:50 am »
Hello,

I'm working on a Mac OS 10.12.3. The latest stable version of Lazarus is installed.My Lazarus works with gdb 8. I use components from TMS Software and  Devart's Unidac. Many components of these 2 companies are supposed to work with iOS and Android.

But I don't know how to develop with Lazarus on iOS with the latest versions of Lazarus and Mac OS. So I'm looking for a tutorial  step by step.

I do this with Qt 5 on both Android and iOS, Android : Android from Linux version (Ubuntu 16.04) and iOS from Mac OS 10.12.3.

That's why I am looking for any useful and reliable information to approach these developments with Lazarus. Thank you in advance. With kind regards, Gilles.
« Last Edit: January 22, 2018, 04:51:35 pm by GillesH »

jwdietrich

  • Hero Member
  • *****
  • Posts: 1232
    • formatio reticularis
Re: iOS application development tutorial
« Reply #1 on: January 29, 2018, 09:19:04 pm »
I would be interested in a tutorial, too.
function GetRandomNumber: integer; // xkcd.com
begin
  GetRandomNumber := 4; // chosen by fair dice roll. Guaranteed to be random.
end;

http://www.formatio-reticularis.de

Lazarus 2.2.6 | FPC 3.2.2 | PPC, Intel, ARM | macOS, Windows, Linux

Phil

  • Hero Member
  • *****
  • Posts: 2737
Re: iOS application development tutorial
« Reply #2 on: January 29, 2018, 09:23:54 pm »
I would be interested in a tutorial, too.

Your asking for a tutorial for something that does not exist? Namely support for iOS in Lazarus.

skalogryz

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2770
    • havefunsoft.com
Re: iOS application development tutorial
« Reply #3 on: January 29, 2018, 11:16:18 pm »

jwdietrich

  • Hero Member
  • *****
  • Posts: 1232
    • formatio reticularis
Re: iOS application development tutorial
« Reply #4 on: January 30, 2018, 12:39:30 am »
I would be interested in a tutorial, too.

Your asking for a tutorial for something that does not exist? Namely support for iOS in Lazarus.

How about http://wiki.freepascal.org/iPhone/iPod_development, http://wiki.freepascal.org/iPhone_headers_translator, http://wiki.freepascal.org/iPhone_Laz_Extension and http://wiki.freepascal.org/iOS_Designer ? Are these projects not more than vaporware?
function GetRandomNumber: integer; // xkcd.com
begin
  GetRandomNumber := 4; // chosen by fair dice roll. Guaranteed to be random.
end;

http://www.formatio-reticularis.de

Lazarus 2.2.6 | FPC 3.2.2 | PPC, Intel, ARM | macOS, Windows, Linux

Phil

  • Hero Member
  • *****
  • Posts: 2737
Re: iOS application development tutorial
« Reply #5 on: January 30, 2018, 12:50:14 am »
Are these projects not more than vaporware?

The word you're wanting is "abandonware." And one of them does not have anything to do with Lazarus, per se, which is was what was asked.

More abandonware:

https://macpgmr.github.io/ObjP/ObjP_Intro.html

An approach that might actually work would be to use Xcode as described here:

https://macpgmr.github.io/ObjP/ProjectXC.html

One key to getting iOS development right is to get the UI design to be flexible enough to fit all the various iOS device sizes. That means using Xcode, not Lazarus. Sorry.

jwdietrich

  • Hero Member
  • *****
  • Posts: 1232
    • formatio reticularis
Re: iOS application development tutorial
« Reply #6 on: January 30, 2018, 01:05:22 am »
Well, I couldn't know that you gave up some of your projects. What I realised, however, is a confusing variety of (mostly unfinished) approaches. Therefore, a tutorial would have been (and would be) welcome.

I will give ProjectXC a try, but that it "might work" is not very encouraging (given my chronic lack of time).
function GetRandomNumber: integer; // xkcd.com
begin
  GetRandomNumber := 4; // chosen by fair dice roll. Guaranteed to be random.
end;

http://www.formatio-reticularis.de

Lazarus 2.2.6 | FPC 3.2.2 | PPC, Intel, ARM | macOS, Windows, Linux

Phil

  • Hero Member
  • *****
  • Posts: 2737
Re: iOS application development tutorial
« Reply #7 on: January 30, 2018, 01:09:39 am »
Well, I couldn't know that you gave up some of your projects. What I realised, however, is a confusing variety of (mostly unfinished) approaches. Therefore, a tutorial would have been (and would be) welcome.

I will give ProjectXC a try, but that it "might work" is not very encouraging (given my chronic lack of time).

ProjectXC doesn't have any templates for iOS development, although that would be a possibility.

Another approach would be to do the UI with Swift. Think of Swift as the UI language of iOS the way Javascript is the UI language of Web apps. Then put common Pascal code in a dynamic library and call it from the Swift code. Swift can digest any header file (.h) for C and Obj C libraries and frameworks. If the Pascal dynamic library has a C interface and a header file, then you're good to go.

skalogryz

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2770
    • havefunsoft.com
Re: iOS application development tutorial
« Reply #8 on: January 30, 2018, 05:07:36 am »
Another approach would be to do the UI with Swift. Think of Swift as the UI language of iOS the way Javascript is the UI language of Web apps. Then put common Pascal code in a dynamic library and call it from the Swift code. Swift can digest any header file (.h) for C and Obj C libraries and frameworks. If the Pascal dynamic library has a C interface and a header file, then you're good to go.
That defeats the benefits of Pascal being cross-platform.
Why learn pascal, if in the end you've to learn C/ObjC or Swift any way?!

I can accept that approach on an earlier stage of development - back in a days, when there were no Objective-Pascal.
But, with objective-pascal such language mix looks redundant

GillesH

  • Jr. Member
  • **
  • Posts: 55
Re: iOS application development tutorial
« Reply #9 on: January 31, 2018, 05:35:19 pm »
Hello,
actually, I don't know how to start. But maybe Lazarus doesn't make it possible to do...

My lazarus projects are currently targeted  for Windows, Linux and OS X  in which I use TMS Software components. However, this TMS FNC Controls can be simultaneously used on these operating systems: [...], iOS, [...]. I'm obviously putting them in TForms and of course, exclusively in Lazarus Tforms (and not UI Xcode). Is this approach possible in the case of an iOS application produced with Lazarus or does it mean that these components can only be used with Firemonkey ?

Regards. Gilles

« Last Edit: January 31, 2018, 05:40:50 pm by GillesH »

CCRDude

  • Hero Member
  • *****
  • Posts: 596
Re: iOS application development tutorial
« Reply #10 on: April 04, 2018, 07:01:51 pm »
Sounds like Firemonkey stuff!

You need to separate front end and back end when thinking about mobile platforms anyway - there's no one-GUI-fits-all concept with Lazarus (or anything else). But FPC for iOS allows you to re-use your programs logic cross-platform; I wouldn't call that a defeat :)

Btw, many posts by simonsayz here document a way to dynamically create even the UI in FPC - it's just not RAD using Lazarus.

 

TinyPortal © 2005-2018