Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
We've been making our smaller aplications in FlashBuilder, but now we need to make our apps work on multiple platforms. (iOS/Android phone and tablets)
What should the apps do?
It's rather simple. It's a video player. We build an application that presents you with a menu, where you can navigate to submenus and click to see videos or images.
Functionality needs:
So what we need is basically a way to build a nice interface with buttons for navigation, and the ability to show images and play video clips. All offline.
What would be the best way to do this?
I was thinking about HTML5 maybe, but hos do you make an offline site and put that on an iPad with all the assets?
Any tips, ideas or feedback would be great :)
Thanks!
Depending on your functional needs, ie does the content have to be available offline etc, do you need access to phone specific API's (camera, gps etc) I would suggest looking at either of the following platforms:
Sencha Touch & Phonegap (Cordova)
Essentially in both you create a web interface which is then compiled onto the device using native features. Both frameworks give you access to the phones native functions such as camera, accelerometer etc. However in their core they are still websites.
This way you can use most of the same code base to reach multiple platforms. Be aware that minor difference might still be unavoidable between android/ios etc.
An alternative road to look at is still Flash, as you can deploy to the various mobile devices natively as well. Unfortunately I don't have a lot of experience with this so I can't really advise if this is the way to go.
There are a lot of options here and the tradeoff will always be around development time, cost and maintainability & performance. Although both platforms mentioned above will get the job done, you will get the best performance by creating a native app on iOS & Android. However since you essentially use the same code base in Phonegap & Sencha it would be easier to maintain.
Hope this helps.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 4 years ago.
Improve this question
I'm a web developer that is new to mobile app development and need to start a project asap. Despite researching for the last few weeks, (I have listed what I've done so far at the bottom of this post) I still have not decided between Phonegap or native (for iOS/Android only). Googling “Phonegap vs native” and the like seems to give results with a fairly even split, but there seems no doubt that native will give a faster / better end result, but at the expense of having to learn so many new things in a short timeframe.
One common thing cited about Phonegap is that is runs slowly – but I have also read that since V3 it now runs much faster – is this the case?
The app I need to build is really pretty much like a mobile static site (but the customer insists it must be an app) – just text and a few images and some PDFs. There will be new content added like news, so I was thinking rather than release a new app version for each new item, the app will fetch new data from a web API (JSON or XML) and finally a requirement for push notifications.
There will be no need to access the camera, GPS or any other hardware (bar the file system to cache images/PDFs).
I've looked at similar apps (the competition) and they all appear to make extensive use of web views, which might suggest they were made with Phonegap (or would it?).
So my question is, given the simple type of app I need to do, would there be a big benefit in going native for this, or would Phonegap (latest version) work just as well. Or on the other hand, since it is a simple app, would it be easy to do (i.e. from zero to both app stores in 10 weeks) in native?
I do have a mac with ADT/Xcode installed so that is not a factor in the choice.
My research so far.
Followed the Android getting started to here http://developer.android.com/training/basics/actionbar/styling.html but got lost with the tabs
Then got a book, SAMS teach yourself android in 24 hours, on about hour 6
Followed iOS to here https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOS/ThirdTutorial.html#//apple_ref/doc/uid/TP40011343-CH10-SW1
Several Phonegap tutorials such as http://coenraets.org/blog/phonegap-tutorial/ but all seemed to have issues getting them to work as is.
Clearly native has some benefits over the web frameworks like phonegap. But the thing is what you want & need? If you want a quick solution then phonegap is best for cross platform. You can do it in easy way for all common platforms. But if you want your app to be fast & efficient, of course native has it's benefits.
Given your requirements, phonegap could be better to serve your purpose. You can continue with same code, and exact same design for all platforms. Not only for ios and android, but also with windows phone, amazon fireos etc.
One of the thing is that there are thousands of app building in phonegap these days, so it can be told that it meets with the expectation to a certain extent. Phonegap is efficient enough to fill these apps' terms. With proper use of frameworks like sencha, jquery mobile, kendo UI and many more phonegap can be highly efficient.
I don't think it's possible for anyone to tell you that if the app could be completed in 10 weeks in native apps or not. I would go for phonegap to continue with same design and same code. It would be easy to make change in the app if needed in future. But decision have to be yours based on the issues and requirements :)
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I want to develop a simple App for iOS, Android and windows phone.
I just wondered that a simple HTML5, JS and CSS combination can work in all of these platforms.
I want to know which one will be efficient?
No problem with time and coding. But if i can achieve everything with HTML5-JS itself, i will chose Hybrid development. I want to know the major difference between the Native and Hybrid Development with example(I know that the main difference is HTML5-JS supports cross platform).
Note : I am not making a game app.
In my experience, these cross-platform solutions like PhoneGap and others never really hold up to expectations unless the app you're developing is super simple. Even basic things like transitional animations and small UI tweaks will be an uphill battle using these tools.
Native development might take longer (if you're building an app for more than 1 platform), but the advantage is that you get full control over what you're making. Performance-wise, native development is still, and will probably always be, far ahead from cross-platform development, simply because it doesn't have the overhead of being nested within a browser, or any other run-time interpretive platform.
Also, from my experience, the myth of being able to write code once and have it work on all platforms instantly is a sort'v holy grail. Many people claim to have achieved it, but you will always find yourself writing platform specific code (in the form of "if explorer, if safari, if chrome" etc).
My advice, write a solid architecture for your app. Build the app once in one platform, work out all the glitches in the design, then copy the design to other platforms. It'll take you a little bit longer, but the strength of your app, and the flexibility to add / change features and other small things in your app will be worth it.
As an example, take Facebook. Their previous app (if you remember) was a cross-platform app. It was slow, non-responsive, would crash all the time and was practically unusable. About a year or so ago, after countless complaints, they released an update with their native app, and suddenly, all those problems disappeared (well, at least most).
The main difference is about UI component which is the main thing in an app. You can't achieve the native look and feel like native dialogs, notifications and native animations in a Hybrid app.
I want to know which one will be efficient?
Efficiency is not an issue, Hybrid app will be a single app that will support multiple platforms which is cost and time effective.
PROS of Hybrid app
Cost effective, A single app will be developed thereby saving cost
paid to developer for making app in different platform.
Time effective, Time will be saved for making different app for
different platforms.
Will Update very fast, Unlike you update from google playstore the
app will be updated on the server end only and you do not need to
re-install it again.
Smaller in size. As the resources used for support of multiple
screens will be handled by HTML .
CONS of Hybrid app
No look and feel like native app.
App will not even show static behaviour, if server is down.
If you are willing to compromise with the UI , Then you should go with Hybrid app.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
I have Android apps and I would like to port them to Blackbarry decives so I can also distribute them on the blackberry app store. What is the best way to do that? Is it possible? Or do I have to re-write the whole app in blackberry code whatever that is :)
Thanks,
Alex
Based on the whole "Blackberry code, whatever that is" comment, I'm going to assume you haven't programmed this in SenchaTouch, or PhoneGap, or some other mobile unification type of language based in HTML5. As such, I'm assuming you have used native Android APIs. Therefore, the answer is you have are likely to have to re-write your application. Though there is a little bit of hope.
http://developer.blackberry.com/android/.
Some applications can be ported, but it's not guaranteed to work, it depends on which version of the Android tools/apis your application uses and the type of application that you developed. It is likely to require at least a little re-tooling regardless. If this leads to a dead end you have to re-write your application.
http://developer.blackberry.com/
As referenced in the comments, you have a little more research to do. The site above is a good place to start.
You have to rewrite your apps to expose to Blackberry. If you want to write your application just once and export to Android and Blackberry (IOS too... at least it says the docs) you can test Titanium.
Natively written Android apps can be 'easily' converted to BlackBerry using:
https://bdsc.webapps.blackberry.com/android/bpaa/apk-compatibility-check
You don't have to have had the Android app written in PhoneGap, html5, etc.
There are plenty of modules/frameworks that are not compatible unfortunately so often there is some tweaking to do. As an example, if your Android app uses Bluetooth, you won't be able to port without some changes.
However, simpler apps can be easily ported. As an example, a very commonly used sample app provided by Android is called ApiDemos (if you haven't used it, just search for it and download the .apk). In the link I provided, you can browse to the apk and your android-sdks folder and start the compatibility test and you'll see it passes. That is, once that's done, it's literally a repackaging/signing exercise with no code changes needed!
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
There are hundreds of sites now which allow you to create apps for iOS & Android on the fly. Am completely lost on how they are able to achieve this online. Are there any services which help compile the code?
Can anyone help in giving an outline of the full process? They primarily look like mobile webapps placed in a virtual browser.
Any thoughts on the flow will be helpful.
Sample sites:
http://www.theappbuilder.com,
http://www.shoutem.com,
http://www.appypie.com,
http://www.appsbar.com,
http://mobiappbuilder.com
All of them support native apps. How do they do this?
UPDATE
Thank you for your answers. But am not looking at creating apps. Am looking at creating a service which creates apps. A service which allows creating mobile webapps is no issue at all. But how do the above companies allow creation of Android & iOS native apps on the fly? How do they do it i.e. what is the technology/flow for that?
They are HTML5+javascript based like crossplatform frameworks like PhoneGap for instance.
You are exactly right.
The trick is in the word native. A native application in this context doesn't mean an application written in Obj-C or Java. They have a small native core, mostly only to display a web view and they dynamically generate HTML pages for it. They can run their own web server on the device or use HTML prepared beforehand or load it from some internet source but most of the functionality is done by HTML(5).
Depending on how advanced the framework is, the native core is bigger and can provide some of the native features, e.g. access to filesystem or notifications. If a web server is running inside the application, then the server can provide the advanced functionality using some HTTP API.
The UI is usually done in HTML (+ CSS & javascript) but there can be also some native components.
The biggest problem is usually the look & feel which is not native (usually CSS mocks up the native UI), performance and memory problems.
It's good for small applications, it's terrible for bigger applications.
Once you have the framework and the user-generated functionality (UI, images etc), it's trivial to compile it using command line tools (e.g. ant for Android, xcodebuild for iOS).
Edit:
In other words, the native framework contains a web server and a web browser. The application is only a resource that is inserted into the framework. It's exactly the same as when you are creating a normal web application. The only difference is that the server side data is stored on the client, too. Depending on the framework, the server side scripts can be either compiled or interpreted.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
I want to develop a local web app using mobile jquery.
what is the way to open the app using icon in iphone and in android?
Thanks,
it really depends on your project depth.depth in sense of complexity.its always suggested to develop separate for each platform.evaluate your needs carefully.
if the application is simple enough then you can go for third party apis
PhoneGap and Sencha Touch are good options.
but still you might find yourself restricted by a third party API if you need to add new functionality in the future.
What i understand from your question is you want to create a iOS and Android app using html, jQuery etc. There are tools such as PhoneGap, Titanium and Sencha touch. Using this tools you can create a mobile applications with help you HTML, jQuery. However, this apps won't have same user experience as it'll have with the native apps. Also, just think about future releases of your application. If Apple or Android adds new features to there OS it'll be definitely take sometime for above third party API to implement them
Also, apple clearly rejects app which acts like a website. So, you'll have to be careful with this. I'd suggest you to go for native app development. It'll provide you flexibility.
As far as I know, you can't get anything onto iOS without an Apple Developer account. As for Android, you can check out PhoneGap. It also has iOS, but it won't build without a valid apple dev account. Does that seem to be what you're looking for?