I built an CLI app using oclif, and is planning to support desktop app using electron.
I am wondering if it's possible to let electron supports CLI without opening a window.
It would be the best if I can reuse existing oclif code in the electron project.
Related
I am new to mobile development, working on my first app for both iOS and Android. I was under the impression that I can develop it through Ionic once (on my Linux system) and deploy it for both, but recently found out I need to develop on a Mac for iOS?
Like this guy said to someone equally unimpressed:
https://stackoverflow.com/a/38117802/8494414
Also stated here:
https://stackoverflow.com/a/40779188/8494414
My question is, at which stage do I need a Mac? Can I do all the development on my system and then just deploy with a Mac? Did I need to do something special from the get-go to support iOS? I am already rather deep in the process, but should I be considering a different framework?
I do find it strange that this knowledge doesn't seem very explicitly available.
Thank you for any help!
If you want to do a build for the iOS platform you will always need a macOS based operating system with xcode installed at some point. You can do all the coding on your linux machine as the hybrid part will be the same for all platforms. But if you want to test or deploy the iOS version of your app you will need either a mac or you will have to use some third party service where you can upload your sourcecode and you get a ready for install .ipa back. Ionic itself offers a service like that: see Ionic Package Service
As joshmorony said on his blog:
In order to compile an iOS application using Cordova, you need the iOS
SDK, which is only possible if you have a Mac and XCode. This is not
an issue for Android because the Android SDK can be installed on both
Windows and Mac. If you are not using a Mac, you simply can not create
iOS builds.
you can also use some virtual machines but they can be illegal and I don't recommend them
We have build an app using React Native, and are currently looking for a test cloud service.
Xamarin looks like a good choice, but does it work with React Native?
Xamarin UI test doesn't care about how you have compiled your app, it's enough that when launched your app renders native component and React Native makes exactly this. So you can use it, for instance, with native Android and iOS, with Titanium, with Native Script, but not with Ionic and all the Cordova based frameworks.
You could have problems also if inside your app you used a lot of webviews.
I'm working with a customer that wants to migrate an existing native Windows app to Electron in stages. We'd like to be able to embed the native windows inside electron and switch between them and the browser as necessary. I know that Electron includes a module for showing native platform menus. Is it possible to write a native module that can do this for windows as well?
I have to integrate a Worklight project into my existing IOS project (Objective-C)
I have googled but i have not found a clear "guide" on how to perform this integration.
Could you drive me in the right way of integrating this project? The idea is to have a button in my IOS project that open a WebView that loads the pages (HTML5 and javascript with AngularJS and Jquery) contained into the Worklight project.
Thank you so much
There is no guide for this approach, as I don't think it is sustainable.
In Worklight you currently have two approaches:
A native application to which you add the Worklight Native iOS SDK, allowing you to implement security features, invoke adapters and use various other features
A Hybrid application to which you can add native functionality (via Cordova or otherwise), and use the entire set of features provided by Worklight
It is important to note that a Hybrid application is a native application. It is a fully actual real native app. It is a native shell that calls a webview (provided by Cordova) into which the Worklight JS framework and the application web resources are loaded, and thus you see your web app. A Hybrid application allows you to mix & match web and native in one.
So what I am saying is that you can't take an existing iOS app and transplant it into another existing iOS app.
It sounds to me like what you are essentially trying to do, is what a Hybrid app is. A native app that displays web content...
So:
This is not an approach Worklight officially supports. By doing this, you are on your own
You could maybe take the guts of a Hybrid app's iOS environment (myapp\iphone\native) - its classes and resources and add them into your existing app and load the main class which theoretically, or at least the wanted effect, will load the Cordova webview. But I give this low chances of success...
After reading this article still i am not clear with Phonegap and Cordova. Some where said that Cordova is an engine which power up the Phonegap (like webkit in browser) My assumption is
Phonegap -- Adobe product --> used for taking remote build Apache , Its not open source
Cordova -- ASF product --> support only native machine build. (For
an example if developer using Windows PC. To take build for IOS, he needs to setup Cordova environment in MAC too), but free of cost when moves to production.
Other than this anyother major concepts left. Best answer for this post will improve better understanding on this basic concepts.
http://docs.sencha.com/touch/2.3.1/#!/guide/cordova what about this one still i am in confused state
PhoneGap is Cordova with some additional tools such as PhoneGap Build (which takes your HTML and packages it into the native installables (APK/IPA/XAP/etc.). Look at docs.phonegap.com and http://cordova.apache.org/docs/en/3.3.0/index.html you'll see they are exactly the same.
Cordova is a bridge between JavaScript and the native hardware. This means you can write a web app which runs on all platforms and uses Cordova to call native hardware calls through an abstract interface (i.e. the Cordova JavaScript library). E.g. I might need to take a photo, save it to the device's storage and then upload it (admittedly, HTML5 supports this out of the box anyway) - but with Cordova I can do this using the same JavaScript code - so much less coding effort.
The difference between a web app you access browsing the web, and a Cordova web app, is the Cordova web app is package into native binaries to imitate a native app (which is accessed through the device's app store and installed/updated like a native app).