Ok to be more specific... can I program an android app in Java that has something like a web view to which I can point to local files on the phone?
I'm thinking about making an android game and i'm wondering if it can be done with a little HTML5 and Javascript that is locally stored on the phone. I heard something about a web view in Java and that is why I am wondering if it could work.
Is this even possible?
As the other answers might be correct, there is a much simpler way:
If you know html5 programming, you can do a simple Android app that has one Activity containing one WebView. In that webview you load your index.html and there you go. You can basically do anything you would do on a normal web app.
PhoneGap and Appcelerator are for cross platform development and they provide access to the hardware (vibration, sensors etc) and they give you the possibility to build the native UI with html and javascript. For a pure WebApp they are not the correct frameworks/tools I think. I might be mistaken, but a WebGL Benchmark I wrote for PCs worked out of the box in the android browser and I justed used html5 and JavaScript.
Your answer is yes, your solution is phoneGap
http://phonegap.com/
yes definitely,
check out appcelerator.com, phonegap.com etc
u can probably go to google "cross platform mobile development"
there's a few neat html javascript frameworks
Related
I am planning to develop a mobile app using HTML CSS and javascript.i plan on storing data in a local file instead of a database.how can I develop this? any ideas? The app will run in the browser of the mobile device. (this eliminates login)
The concept of the project is good.ive also designed the UI.
I think you're talking about making a website with a javascript app in it. Mobile apps are made with swift for IOS and android apps are made in java or c++.
There are programs that will take your website and put it inside an application container (mostly for android) but these programs are not recommended.
I would recommend learning swift or Java or c++ and make an app or using your html/css/javascript knowledge to make a web application.
Okay, so I'm currently looking to see if this is doable so I can hire a programmer. Can I implement let's say a messenger app that is on Android and iPhone just like kik messenger on a website, so the app would be available on the PC online too. If so what language(s) would complete this task? Thank you.
This is not possible using native Android/iOS languages.
These languages are designed to work on mobile devices, not on the web. This means you cannot just embed the source code of a mobile application into a web page.
You can however create a a web version of your application (depending on the complexity of the app). For example: you could create a web version of the mobile app using HTML, JavaScript and CSS. You could also (although slightly dated) create a Flash application and embed it in the browser.
Web apps are becoming more and more common with the rise of HTML5, CSS3 and JavaScript. I recommend this book on building web apps: http://www.amazon.co.uk/Beginning-Web-Applications-HTML5-JavaScript/dp/1430240806
I have a great idea for an Android app, but as I'm only familiar with php/js, I'm uncertain of which approach I should choose for creating it. The app will be based on a google map with a lot of position markers. There won't be any fancy animations or other heavy resource-demanding activities.
As I see it there are three different options:
Read up on Java and program the whole thing in Java
Create the map activity in Java as a mapview and then use webviews for the other activities (which can easily be scripted as html5 webpages.)
Script everything as a webapp (not really an option, as this is not a real mobile app imho.
I'm most keen on using no. 2 as I'm quite familiar with html/php/js/mysql. Have to read up on the html5 specifics, though. Questions:
I need access to GPS and camera hardware. Is that acheivable in webviews?
How complicated is it to pass variables between js in webview activities and java in other activities?
How big a difference in performance can I expect if I use option 1 vs option 2?
Other thoughts?
Kind regards,
Anders
You can choose number 2, but as we are talking about an android phone, you might want to get really accurate coordinates for your map, and you can only achieve this by accessing your phone GPS, through webviews the best you can get is the location trought the device internet IP adress, wich doesnt lead to a very accurate geo position.
The best choice is a 100% java application in my opinion.
1) Yes it's possible, but as commented it will be less accurate and probably slow.
2) Not complicated. Painful if you need loads of interaction between a webview and native app. Using a Javascript Interface that can be set up from the native app. You can basically inject javascript in a webview's html.
3) Heterogeneity of performance depending on device. Because your implementation will be based on the device's browser you can expect to get really sluggish behavior for older devices. Anything to do with HTML events (Dragging, Tabbing...) will have a knock on most devices, from my experience.
4) As #vodich comments there are other party frameworks. My benchmarking on PhoneGap and other js-based options is that they're a waste of time if you are looking at developing a professional app. I haven't developed on Adobe AIR but find a pain the need to be installing plugins to get native functionality (access to sensors, camera, etc) Mobile is all about fast, responsive behaviour. HDI is your finger, user is fast, so app needs to be fast.
EDIT: So hell yeah! Java FTW!
Albert.
4.Other toughts?
Yes, if you really want to make a great Android app, you should be using only Android and specific Android UI components, and give it a native look and feel. And regarding 1,2 yes it is possible, I would say not so complicated to just integrate them, but I think you'll eventually get in big problems.
Learn Java and write your application natively.
Webviews might allow you to use your php skills to present something to the user, but it's entirely one-way - you'll not be able to interact with what's inside.
The Android developer site offers fantastic documentation and jumping from PHP to Java isn't greatly difficult, though you'll need to get used to strict typing and "real" OOP.
Other thoughts? Don't go down the PhoneGap/Cross platform toolkit road - it might allow you to write applications for multiple platforms and using your current skills, but in the end you get a subpar app that doesn't feel right on either platform and doesn't fair well as future versions of iOS and Android are released.
Edit - I know there are similar questions to this on SO, but I feel my specific questions are not duplicates at all. If you disagree with me please bring them to my attention before downnvoting or closevoting! If you can prove to me that my question is a true duplicate I will delete this question myself!
My understanding of the GWT is that it provides an SDK and API that allows you to code in Java, and it generates all the client-side HTML, CSS and JavaScript required to run a full-fledged web (or mobile web) app.
My understanding of PhoneGap is that it allows you to code against its JavaScript API and, through configuration, allows you to tell it which native mobile platforms (Android, iOS, Windows Phone, etc.) it should create nativee wrappers for. Hence you "write once, run many" with it, turning your JavaScript code into a native Android app, native iOS app, etc.
If these two assumption are incorrect, please begin by correcting me! And, if there are any caveats to these assumptions, please let me know!
Assuming my understanding on GWT and PhoneGap are more or less correct, I want to try and use them together for an app that would be available as (1) a web app, (2) a mobile web app, (3) an Android app and (4) as an iOS app.
I want to "daisy-chain" these two in my Ant build, whereby my pure Java code is converted (via GWT) into JavaScript (that complies to the PhoneGap API), and then a second build process uses PhoneGap to create and deploy:
A Java WAR (web and mobile web app)
An Android APK
An iOS binary (I believe this is an IPA file, but I may be wrong)
So with those as the "givens", here are my questions:
Is this possible? If not, why? Any way to hack- or juryrig-together a solution that forces this to work?
I've noticed something called gwt-phonegap - will I need this in order for my proposed solution to work, or would this library just be a "nice to have"? Why or why not?
Any other considerations I am not thinking of here? Other libraries or tools that would behoove me?
Note: I have heard (but am not asserting!) that Titanium is superior to PhoneGap. Titanium, however, is not free. And I am quite broke. Thanks in advance for any help here!
There is an open source project out there combining GWT & Phonegap to build mobile apps:
mgwt - http://www.m-gwt.com
There are many people out there using it to build mobile apps and there is quite a lot on documentation including videos there, especially this one:
http://www.youtube.com/watch?v=0V0CdhMFiao&feature=plcp
I have to play flash (swf) in my program when the user clicks on a link. Which is best? Concentrate on android 2.2 and use the Adobe Flash Player, or what do you recommend? I have tested WebView, but can not play swf in the emulator. HTC has a custom flash player but it feel like a limitation.
Some code samples to play swf in android that works for as many users as possible?
Have you considered using Flash to create an AIR app for Android rather than using Java? If you have to download and run external swf files, this seems like a path of least resistance to me. Of course, this requires learning ActionScript, but it's not difficult if you know Java.
It's hard for me to give you a solid recommendation, much like toggy-tog-togs answer. B/c we don't know exactly how many swfs or what kind of swfs you are playing.
I mean, if your application is pretty much just playing swf's and you need a UI to run it, it might be worth looking at Air and Flex.
However, to address that first problem you had. I haven't tested it myself, but I am nearly 100% certain, that your emulator won't play flash content in a webview b/c you don't have flash player installed on the emulators. :-) Android supports Flash content but only after you download and install the player from the App store.
So you might want to try running your emulator and installing the Flash player app. I don't even know if that is possible but you ought to try it out. :-)
By the way, the Android emulator is trash, if you are serious about developing for the Android platform, you really have to pick up a device or two to debug on.
Good luck!
So your using JAVA if you are then it is best to open up the browser that is the easiest but if you are wanting to use it in the application (This is less loading time if it is included in the package) but it costs try using JFlashPlayer (It Costs For the full version) http://www.jpackages.com/jflashplayer/download/ This runs very fast on the android platform. Hope I could help.