About the "Send build to iOS Simulator" choice

59 views
Skip to first unread message

P5music

unread,
Mar 10, 2021, 4:16:53 AM3/10/21
to CodenameOne Discussions
This is also about a related thread:
The Microsoft iOS simulator is just a remoted simulator that still uses a Mac in the network.
Noetheless some users could found this useful and viable too.

Now, in general, having the possibility to test the build on iOS simulator, is very important because although a physical device is preferable, one cannot test on all devices of the iOS family, not to mention testing on different iOS versions.
Said that, many companies let the developers test iOS apps on their servers in a remoted way, and on scale.
This is not possible with CodenameOne, although you provided a solution for doing that with a service that uses the executable build on remoted emulators.

I think it is technically feasible to add an option to build for the iOS simulator.
It would be useful at least in 3 scenarios, I sum up here:
1 - using iOS simulator on Mac for various devices and iOS versions
2 - using the remoted Windows iOS simulator
3 - using a remote service
[4 - using a VM (although this is not adviseable)]

Regards

Shai Almog

unread,
Mar 10, 2021, 10:31:10 PM3/10/21
to CodenameOne Discussions
You can test remotely on physical devices. There's several companies that offer that service. Why would you want a simulator?

P5music

unread,
Mar 11, 2021, 1:55:31 AM3/11/21
to CodenameOne Discussions
Why I would want to be able to test on the simulator is clearly stated in my previous post.

It is also blatant that you are offering that on the Android side.
It depends on the fact that the Android apk can be run both on physical devices and the emulator.
This helps developers to try for different form factors and OS versions.

On the iOS side the XCode development encompasses two different kind of compilations.
You implemented just one of them on your server. The most common is not implemented.

XCode developers can do both on their Macs, so it is not difficult for you to provide that possibility, maybe changing just a line of a script.

Builds have different costs in terms of "credits" in your system, so each iOS simulator build would be 8 credit like the iOS build.
I think you would even have a boost in iOS builds with that option.

If you want to charge more you could include that in the "basic" subscription.

I have a free account because I did not need any of your advanced functions, 
but I think that would be a reason I could subscribe, at least for a month.

It would be interesting to hear from other developers here.

Regards

Dave Dyer

unread,
Mar 11, 2021, 2:34:00 PM3/11/21
to CodenameOne Discussions
I agree with you that the free level of codename1 is basically useless (except as a proof that codename1 works) ,
but the guys gotta eat somehow.  The "advanced feature" that you do need is the ability to do lots of builds.

Javier Anton

unread,
Mar 11, 2021, 2:57:59 PM3/11/21
to codenameone...@googlegroups.com
I also think the same. However I also hope that CN1 can do more than just "eat". They have a fantastic product. The basic tier pricing is very reasonable. Even if you don't need it, it's a way of supporting a project like this

If you take the price of similar app development costs into account (ios dev fees, hosting of a server, etc), CN1's basic price tag is close to where you'd expect it to be. More professional devs/companies would fall in a different category (pro/enterprise)

I get that you think that you don't "need" a basic subscription. But if you need CN1 at all, you might also consider what CN1 needs from you. Expecting things to be free is an illusion. Someone somewhere is always paying

Before Microsoft bought Xamarin, it used to cost $2000 to just get started with it. CN1 isn't backed by the likes of MS



--
You received this message because you are subscribed to the Google Groups "CodenameOne Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email to codenameone-discu...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/codenameone-discussions/919945d4-be2e-4cc5-9dba-9bed92c43913n%40googlegroups.com.

P5music

unread,
Mar 11, 2021, 4:21:39 PM3/11/21
to CodenameOne Discussions
I am going to have some days of pause here, I want to check whether the Swift project can be brought to publication any soon so I do not waste too much of my Apple developer program subscription and my website hosting costs.
If the issue I opened will be soon fixed, I have also to test whether on iOS device the Storage is written in the appropriate folders, then if the AppArg works, then if the exporting works.
Those things are better tested on a simulator but I see that's not happening in CN if my proposal is not liked or understood.
Now it is not possible, it is not a question of costs or subscribing, the proposed function would be more practical also for those subscribers, if it was included in the higher subscriptions to be able to test on many devices and iOS versions.
I cannot subscribe at that level only to test an app that in a few weeks I can publish with Apple's own tools.
Maybe I will have an utterly unreadable source code but whatever, I will document it thoroughly although painful and boring.

In fact I never imagined I would finish the CN project. 
I succeded but now it reached the CN limits. I knew it would be risky relying on CN for the future, maybe this is a cold shower that will save my project.

I still hope that the issue is fixed but there are aspects beyond the technical side I am not to deal with.
Regards

Shai Almog

unread,
Mar 11, 2021, 11:35:05 PM3/11/21
to CodenameOne Discussions
Dave, your project is uncommonly large. For smaller developers it's very useful.
FYI the maven build which we will launch officially soon will make offline building in the free tier a bit easier. It's still not as seamless as the build servers as they solve a lot of issues and for iOS you'll obviously need a Mac with xcode for that...

On Android we don't support a simulator. Android has an emulator which is a completely different thing. With the maven build you'll be able to run with the iOS simulator via xcode on a Mac even in the free tier.

P5music

unread,
Mar 16, 2021, 4:33:35 AM3/16/21
to CodenameOne Discussions
I would like to know  whether it is necessary to install CodenameOne on a Mac and create an offline build, or it can be done also from Windows, for instance.
And, if possible, to know when this is would be available.
Regards

Dave Dyer

unread,
Mar 16, 2021, 7:19:27 PM3/16/21
to CodenameOne Discussions
You can create a set of Mac source files on a PC, but to compile them you will need a mac.

Shai Almog

unread,
Mar 16, 2021, 11:05:54 PM3/16/21
to CodenameOne Discussions
Apple requires a Mac to build iOS apps. We use Apples official tools so we generate an xcode project you can literally run under Apples toolchain and debug.

Dave Dyer

unread,
Mar 17, 2021, 1:55:33 AM3/17/21
to CodenameOne Discussions
I would add that debugging "on real hardware" is a desperation measure . For all ordinary purposes, running the
simulator under eclipse works very well.  I've never had to resort to debugging on android hardware.  The 10 or
so times I've resorted to debugging on ios hardware, I've been hunting (and finding!) bugs  thecodename1
vm for ios.   I'm sure 98% of codename1users never need to get that deep into the weeds.

P5music

unread,
Mar 17, 2021, 3:47:07 AM3/17/21
to CodenameOne Discussions
Yes but there can be other reasonable needs, like creating screenshots for the AppStore, otherwise it has to be done with Gimp, scaling, etc, very bad.
And also there are different iOS versions to test on. I do not know if this would be useful, but for Android it is, for permissions and other checks.

But is it happening any soon, for my app to be published?
I can compile with XCode that project that is created from the build.

Furthermore I have a Swift version that could be published for iOS 14>, at least in the future, while CodenameOne version could stand for those who do not update on newer versions of iOS.
Thanks in advance

Shai Almog

unread,
Mar 17, 2021, 11:11:27 PM3/17/21
to CodenameOne Discussions
Debugging on device is pretty common for anyone writing native code, debugging a crash or running a profiler. Once it's there, it's useful.

I think 2 weeks - 1 month time period.

P5music

unread,
Mar 26, 2021, 6:17:49 AM3/26/21
to CodenameOne Discussions
Do you have any update about it?
I mean, just 8 days have passed, but I would like to know if it is going to work.
Maybe you have some prototype working.
I am curious about my app on the iOS simulator, to see if the same Android quirknesses affect it.
Maybe they don't, so the app works on iOS(?).
Regards

Shai Almog

unread,
Mar 27, 2021, 12:36:57 AM3/27/21
to CodenameOne Discussions
Keep an eye on the blog.

P5music

unread,
Mar 30, 2021, 5:05:13 PM3/30/21
to CodenameOne Discussions
I read the blog post. It is a complex matter that has to be studied.
As far as now I would like to understand if the maven system is going to allow me to have the iOS simulator build on the Mac OSX machine.
If I understand well, maven is to have something locally that is compiled in XCode.
But is it different from the old xcode-project download for higher subscribers?

So now it is for free and it uses maven that makes it possible easily.
Is this correct?

Shai Almog

unread,
Mar 30, 2021, 10:00:43 PM3/30/21
to CodenameOne Discussions
It isn't different. It's more like the offline builder from the enterprise plan. That also allowed you to run the simulator.
Reply all
Reply to author
Forward
0 new messages