Container application that rules all the modules - ios

I got a new project from the client, it's about enterprise app. My question is, is it possible to create an app is a container application that rules/hold all the modules?
What I mean is the container application is the native app itself but the modules can be native or hybrid. Below is the sample screenshot of the app.
Is it possible?

Yes, Its possible to do. Try to utilise native components as many places as possible. Apple will not reject your application.

Related

Access a Qlikview dashboard on an iOS app

I have a Qlikview dashboard that I need to present and I've created a site that loads the Qlikview server onto the browser and runs it from there.
I now need to create an iOS app that does this. But the requirement is that the dashboard shouldn't open on the browser. The server should be loaded and run from the app itself. Is there any way to do this?
PS, I'm completely new to iOS App development and any help will be appreciated.
Yes. While saving it as a shortcut and opening it in the browser would be simple, using Apache Cordova is the best way to develop a smartphone app with HTML5/CSS/JavaScript. From the website:
When using the Cordova APIs, an app can be built without any native
code (Java, Objective-C, etc) from the app developer. Instead, web
technologies are used, and they are hosted in the app itself locally
(generally not on a remote http server).
And to make things better, it's open source.

Does iOS have any equivalents to DLLs/IPC/process spawning?

Are separate apps able to share the same binary in a form like a DLL? I know its possible to compile static libraries but I wouldn't count these as the same as a DLL (i.e. a dll is one copy of a binary shared by multiple apps, whereas static libraries are separately included by any using app).
Is each app totally separate from each other, are there any IPC or file sharing mechanisms available for differing apps to communicate and share data?
Is it possible for an app to create a new process in addition to a new thread (I guess not)?
You can't share executable files between applications. Apple requires that all apps function standalone. However you can use a UIDocumentInteractionController to get another program to deal with files you don't understand, and a 'quick view' may be available. That's how Mail works, for example.
Programs from the same vendor can share the keychain and, I think, iCloud storage as of iOS 5, but can't share storage on disk. As they can declare supported file types, UIDocumentInteractionController can be used to push temporary access to a file from one app to another. A custom URL scheme can be used in a similar way to pass fragments of data if that helps.
As a general rule, only one user process may be active at once in iOS - e.g. background processing is essentially event based. So you can't create a second process for yourself.
You can do this if you are developing for a jailbroken phone. Not
otherwise.On jailbroken phones, you can create .dylibs or shared libraries that can be
loaded via the DYLD_INSERT_LIBRARIES environment var (much like on
MacOS)
Apps are sandboxed. However, there are some ways of communicating between apps. You can use
(a) customURL scheme (also mentioned by Tommy above)
(if any) associated with an app to launch an app and send some
parameters to the launching app
(b) If you control communicating
apps, then you can use Message ports (CFMessagePortCreateRemote)
(c) If you control communicating apps, you could use Darwin
NOtification center for distributed apps.
Of course the expectation for (b) and (c) is that the
communicating apps are all running. On iOS since there is only one foreground
process, you'd have to have the other as a background app and that's
restricted to certain kinds of apps on the iOS platform.
Basically, no to all of the above, unless you're targeting jailbroken phones and are bypassing Apple's App Store. If you jailbreak, I believe you have similar options to those you have in Mac OS X.

Should I be using an iOS framework to create a native version of my web application?

I have a twitter like web application written in Ruby on Rails that allows shops to communicate with their customers.
The web application allows the shop owner to upload product photos as well as new product details.
I want my application to be accessible from an iOS device, and although most of the tasks can be accomplished using my web app with mobile safari, it is impossible to upload images.
What are my options for creating a native ios application? Should I learn objective C, and use Xcode, or are there frameworks out there that make this sort of task easier?
thanks
You could check out http://phonegap.com/ or http://www.appcelerator.com/products/titanium-mobile-application-development/
When you already know webprogramming its much easier to go from that, learning objective-c is a hard road

Embed Adobe Air/Flex application inside a standard iOS application

I have a native (Obj-C, standard Xcode project) application and I'd like to integrate a partners iOS application (or specifically, it's functionality) into it as just another view in my application. The problem is that their application is a Flex/Air app. I really don't understand the Adobe compilation process on how it gets from a bunch of flex code down to an IPA. I don't see intermediate projects, shared objects, etc on the disk to produce that IPA. It looks like it doesn't rely on the Apple tool chain... as I understand it, you can produce the IPA on Windows as well.
Is there any way to build that Flex app in such a way that I can import it into Xcode so I can link against it and use it as a library from within my application?
While I specifically used iOS as an example since that is the most important platform, we'll want to apply this solution to our respective Android and Blackberry 6 apps as well.
No, you cannot embed an application within another application. This is true for all applications. Only thing you could do is get the swf of your partner's code and embed that into an Air application, but since you're not using Actionscript/Flex, it won't be possible.
Only other way would be to have an app link to the other application.

how to add one or more plugins to an existing app

My company want to make an application which like a bookshelf can load more books when the application finished, they want the application to be able to load more plugins without destroying the already installed code: when the app has been purchased and downloaded from the app store, the user can buy plugins in the app store and install them into the app.
Can anyone tell me how this could be achieved? Thank you very much.
Implementing A Plugin System in C or C++
Xcode & iOS - Create Plugins?
How can I combine multiple iPhone applications in to one application?
Objective-C Plugin Architecture Security (Mac, not iPhone)
Objective-C and designing a plugin mechanism
https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFPlugIns/CFPlugIns.html
You have to choose right platform for creating plugins and then you need to link installed plugins to correct app
I don't think you'll be able to check that before installing plugins the app has to be installed
Second way will be using in-app purchase and downloading plugins to program data directory
I think the second way is more usable and more valid, because in AppStore cannot be sold application which is not standalone, and depends on another app.

Resources