[Q] App Development? - Epic 4G Q&A, Help & Troubleshooting

I have a question. Ive been doing web development for two years now. I would say I am at an expert level in XHTML/HTML and CSS, and I know a little bit of basic PHP. I want to get into Android app development, but I have no idea where to begin. What language do I need to learn? Java?
Should I become more comfortable with PHP first, does it matter?
Sorry for the noob question. I am just interested in hearing from some other devs about this, any advice is appreciated.

Yes, you will need to learn Java programming language. SDK

ryno502 said:
I have a question. Ive been doing web development for two years now. I would say I am at an expert level in XHTML/HTML and CSS, and I know a little bit of basic PHP. I want to get into Android app development, but I have no idea where to begin. What language do I need to learn? Java?
Should I become more comfortable with PHP first, does it matter?
Sorry for the noob question. I am just interested in hearing from some other devs about this, any advice is appreciated.
Click to expand...
Click to collapse
Here's a video tutorial to get you started in application development in android.
http://www.xtensivearts.com/2009/07/03/episode-1-getting-started/

Learn Java, XML, and the inner workings of Android / Linux at the bare minimum. You should be able to make something simple and worthwhile with just that. Once you do, you should learn some basic computer science concepts, such as procedural programming, oo programming, algorithms, data structures, and basc compiler theory. Lastly, you should learn C/C++ and how they hook into Java using JNI. At that point, you could make something really sweet.
Application development is hard and it, in many ways, is a different beast from web deveopment. Experience with HTML / CSS will come in handy when dealing with the XML files. Experience with PHP an Javascript will aid you in learning Java.
I have heard that a true hacker knows at least five different programming languages ( sorry HTML and CSS don't count for that ), and most really good programmers know more. Once you understand the concepts behind programming, and exactly how the code you type becomes binary code that your computer executes, picking up new languages is a breeze.
Sent from my SPH-D700 using Tapatalk

Thank you. I know some basic PHP, but I am not an expert by any means. I will look into taking some tutorials in Java, XML, etc.
I was reading into Android App Inventor, and I know its no substitute for Eclipse/Android SDK for making full blown complex applications, but do you think It would be beneficial for me to experiment with that?

Be sure to check out Adobe AIR. It's open source and you can develop under OS X, Linux or Windows. You can also do cross-platform apps for iOS or Blackberry's new tablet.

Is that whassup adobe air is? Basically dreamweaver for apps?
Sent from my SPH-D700 using XDA App

ryno502 said:
Is that whassup adobe air is? Basically dreamweaver for apps?
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
I'd compare it to Visual Basic. You code in a combination of Actionscript 3 (basically a javascript clone) and mxml. Programs require the Air runtime (again, like old visual basic) to run, except for iOS where supposedly native code is generated.
You can code using Adobe's Flash Builder IDE or other third-party IDEs, or from the command-line.
No Android SDK or Java required.

So can I use Air instead of Eclipse?
Sent from my SPH-D700 using XDA App

ryno502 said:
So can I use Air instead of Eclipse?
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
No. Adobe's IDE is a modified version of Eclipse. You can also get a plugin for "regular" Eclipse.

ryno502 said:
So can I use Air instead of Eclipse?
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
I would imagine you would get far better results using Java (what I imagine you mean by Eclipse), but if any of you have experience developing for Air for Android, please put your experiences! I have not tried it myself, but usually those sort of "easy programming tools" are good mostly for rapid prototyping.

Im just looking for a good place to start. I have zero programming experience.
Sent from my SPH-D700 using XDA App

My suggestion then would be to focus more on learning to program, and getting some experience programming in general. It would might be best to start learning Java while you learn some of those basic CS concepts I mentioned in te earlier post. In the long run, those general programming skills will help you way more than learning to code for a specific platform.
Sent from my SPH-D700 using Tapatalk

Thanks for the advice. I will look into learning some java.
Sent from my SPH-D700 using XDA App

Dont touch app inventor. Its nasty and will make you lazy. Kind of like learning vb before c. You get backwards and lazy and its hard to correct. I won't even higher developers who list vb as a language on their resume, we have no use for it and c# does all of the same things in good oop fashion. Vb should die a horrible painful death.
Sent from my SPH-D700 using XDA App

Kcarpenter said:
Dont touch app inventor. Its nasty and will make you lazy. Kind of like learning vb before c. You get backwards and lazy and its hard to correct. I won't even higher developers who list vb as a language on their resume, we have no use for it and c# does all of the same things in good oop fashion. Vb should die a horrible painful death.
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
I'll have to politely disagree. First, its been my experience that once you know one language, picking up another isn't a big deal.
I'm retired now, but in general business (circa 1978-2001), application development was always about selection of the best tool for the job at hand. Low-level languages like assembler ,c ,c++ were considered overkill for jobs like data entry screens, batch processing, report-writing,etc,etc. You know, the stuff that most businesses do every day
Tools like VB and Delphi were godsends.
Of course if you're coding kernels and compilers, it's a different story

ryno502 said:
I was reading into Android App Inventor, and I know its no substitute for Eclipse/Android SDK for making full blown complex applications, but do you think It would be beneficial for me to experiment with that?
Click to expand...
Click to collapse
From my experience with it, I would say don't bother. I made my first android app with it, but I found it very convoluted and not intuitive at all. It was like they were so intent on everything being graphical that they did everything that way, even it made things ten times harder.
But here were the real problems with it, and why I would not recommend it:
1. Though you can make a functioning app with it, you cannot put that app in the market. This wouldn't be a problem if your goal was simply to use this as a learning step, but for the next item:
2. What you do in app inventor is in no way similar to writing actual code in Eclipse. Nothing I did with app inventor helped me in any way when I started using Eclipse. It might be useful for someone who's never done any programming whatsoever, since you do have to deal with variables and logic, etc., but knowledge of any programing language at all would be more useful that what you'd learn with this.
3. The functionality of an app inventor app is very limited. For example, I do not believe there is a way to have your app access anything on the internet.
It was an interesting experience, and in defense of app inventor, I was able to produce a highly useful app for my co-workers (though I've since re-written it using the standard eclipse/java method). It took no more than a couple of hours to do, which is really pretty amazing since it required no foreknowledge. But ultimately, I don't think it's worth the effort to learn to use if you have any long-term goals related to writing useful android apps, especially apps that any other people will use.
[It was many months ago that I last tried it, so it's possible they have made some improvements to it. The most useful one would be to be able to convert your app into java code --- then it might really become a learning tool for the person with coding and even java code but no familiarity with the android sdk.]

I think app inventor is meant primarily as a rapid prototyping tool and secondarily as an aid to learning the high level view of how Android functions. I haven't used it myself, but it sounds like it is serving its purpose.
Sent from my SPH-D700 using Tapatalk

App Developers
Looking for a developer to build an app for my industry. Thank you.

In an earlier post, I suggested that learning functional programming would be a good idea. I meant procedural programming. My bad, sorry if I caused any confusion.

Related

Wanting to learn the basics of programming

Hi guys, now I know this is a BIG request, but I was hoping someone might be interested in helping me begin to learn the different aspects of programming.
Now I know I cant just "hop on the band waggon" I need lots of training before hand in different programing languages, but the one I really want to understand is c# (thats what most windows mobile apps are built on right?)
So are there any really good recomended beginners guide you guys could suggest to me to get me started.
Sorry I must sound like I dont have a clue xD
(well I dont)
Thanks in advance
Hop on the band waggon? I guess you'd rather have to jump in cold water!
I suggest buy a book. If you actually spend the money on it then it's bigger motivation to make something out of it. There's even a book about Windows Mobile .NET programming. What else could you ask for? I don't have the link at hand but you should easily find it on Amazon.
RAMMANN said:
Hop on the band waggon? I guess you'd rather have to jump in cold water!
I suggest buy a book. If you actually spend the money on it then it's bigger motivation to make something out of it. There's even a book about Windows Mobile .NET programming. What else could you ask for? I don't have the link at hand but you should easily find it on Amazon.
Click to expand...
Click to collapse
Hey thanks for the speedy response,
are you refering to this?
http://www.amazon.co.uk/Programming...=sr_1_1?ie=UTF8&s=books&qid=1264201954&sr=8-1
It looks pretty nice, and will it teach me the basics?
yes, for example. or this one:
http://www.amazon.co.uk/Microsoft®-NET-Compact-Framework-Reference/dp/0735617252/ref=pd_sim_b_5
If you are really looking to learn programming, I would suggest against starting with Windows Mobile development. .NET framework for Windows Mobile is very lacking, and in order to do even simplest things you end up using Interops (way of calling native libraries written in C++) or searching/writing libraries on your own.
.NET (and C# by extension) is a multi-platform framework. Start with simple Windows or Web development. Read up on OOP development, find some simple examples online and start a very small, easy to write project.
Once you can write some simple applications for Windows or Web, then you might want to start looking into Windows Mobile development.
Before you start spending money on books try Microsoft's Beginner Developer Learning Centre a go. There are lots of video tutorials which will help you get the basics down http://msdn.microsoft.com/en-us/beginner/dd435692.aspx.
It's not specifically for windows mobile development, but most of what you will learn is transferable.
Once on the website, click "Windows Track" and then "Tier 1", tutorials are available for both C# and VB.NET.
The guy that made the BDLC tutorials for Microsoft also runs http://www.learnvisualstudio.net/, there are a few more free tutorials there too on more advanced topics, a subscription to the site will let you get all the videos.
And look for open source applications like "ReRemind", "Freda" or "RemoteTracker". If you debug these you can learn alot.
ajhvdb said:
And look for open source applications like ... "Freda" ... If you debug these you can learn alot.
Click to expand...
Click to collapse
No No No please don't use Freda as an educational example It's the first .NetCF app I wrote and I really am not very proud of some parts of it. In particular, I only figured out the right pattern to use for 'settings' forms after I had written several already. Some day I will go back and tidy up the code and document it properly. But right now I am still adding features ...
Jim
dont worry, if i look at my old code it's bad too but still works

Advice please

Greetings all
I'm an XDA veteran, and have had an idea for an application I'd like to develop. I have programming skills, mainly in VB6.
So my question is, what application/language is best/simplest for developing my app on WIndows Mobile? The main criteria I have is that I want to be able to read data from and write data to a remote windows based pc - I'm assuming that I'm going to do that via wifi or bluetooth networking.
I'm "between jobs" at the moment, so looking for a development platform that won't cost me much, if anything. I intend to make my application initially as free/donateware - it's something I need, but may be useful to others, but I don't want the hassle of trying to make it secure, serial numbers etc, for it to end up cracked on a warez site!
So what's the best development tool for PC/Windows Mobile development?
Thanks in advance
TangerineTractor said:
Greetings all
I'm an XDA veteran, and have had an idea for an application I'd like to develop. I have programming skills, mainly in VB6.
So my question is, what application/language is best/simplest for developing my app on WIndows Mobile? The main criteria I have is that I want to be able to read data from and write data to a remote windows based pc - I'm assuming that I'm going to do that via wifi or bluetooth networking.
I'm "between jobs" at the moment, so looking for a development platform that won't cost me much, if anything. I intend to make my application initially as free/donateware - it's something I need, but may be useful to others, but I don't want the hassle of trying to make it secure, serial numbers etc, for it to end up cracked on a warez site!
So what's the best development tool for PC/Windows Mobile development?
Thanks in advance
Click to expand...
Click to collapse
Best is quite subjective
I, personally see it this way:
C# (The language I mainly use) is a powerful, relatively simple one. Maybe equal to VB.net, however I feel that it is a step ahead of that.
C++ Extremely powerful, but hard to use (unless you know how to use it already).
C# will provide you with a lot of pre-built functions that are easy to use, but you compromise some speed and size (more RAM usage generally)...while C++ will require some thinking and referring to many API's , but in doing this you can get a much faster, leaner program.
Since you know VB already, I would either stay with that, or shift to C#...if you want a challenge, go learn C++!
I hope this was of some help...
Thanks. My app will have a PC based management module, which I've just started writing in Visual Basic Express, no Problems. I still need to identify the best platform to write the WM application, which is basically going to read a datafile, display some buttons, and write another datafile...

[Q] Android Development

I'm interested in doing some development for android. I'm just not sure where to start. I see a ton of books on Amazon.
I'm just wondering what would be recommended for an absolute beginner. I know my way around a computer so i don't need it that noob'd down.
I think i would like to play with some apps, and eventually move to Kernels and Roms.
What you you recommend?
Probably the best way to start is to learn Java (the main coding language for apps and userspace), and C (the main languages for kernelspace stuff). After that, messing with the App Inventor would be the place to go.
Search dsixda very helpful thread
Sent from my PC36100 using XDA App
i was thinking of learning some basics of android app development and coding with a very basic walk through so that i can fully understand what i'm going to be able to use the Java code in particular applications. Would this be a bad strategy.
As a software developer, I would recommend spending a couple weeks getting the basics of Java and object-oriented development down. Do a few sample apps in Java. Once you've done that, try Android. I'm afraid that learning to code, learning Java, and learning to develop for Android all in one may be too much for someone.
You really need to have the basics of Java and object-orientation down, then take on Android as it's not altogether simple, particularly for someone who's just learned to code.
As far as kernel/ROM development, I'm guessing C and Linux shell scripts are the things to learn there. If you want to write Android apps, do as I've mentioned above.

<Dev help plz> looking to get into developing stuff...tips?

Hi, I have experience programming in Java and c/c++ and was looking at getting into programming some apps or even helping on on some roms and finally start helping out around the EVO community. I just need a little help getting started. I have eclipse and such set up, but does anyone have any tips or tutorials that might help. (Yes, I have searched Google). Maybe alittle insight in to somethings that I may run into. I want to create apps and games that will be helpful to the community. Thanks
I don't know if it would help but there is an android 'chef' section here on xda:
http://forum.xda-developers.com/forumdisplay.php?f=613
and this thread seems to have a few resources for getting started:
http://forum.xda-developers.com/showthread.php?t=697938
Have you run through the tutorials and read all the documentation on developer.android.com? The "Dev Guide" and the "Resources" tabs are a good place to start, as is just reading through the javadocs for the API. If you're already a Java programmer, you know the code semantics already. It's just a question of understanding the Android concepts. Not to say that's trivial, but the foundation of the language is Java, which means knowing it gives you a head start.
Do a search On xda site for "everything android" its a huge file I put together that includes lots of needed tools and setup files for cooking roms and building apps. It also has a guide with links to the sites where I got the tools from. That should help. Just remember it's for windows and I recommend downloading to ur computer not ur phone cause its over a gig in size
Papa Smurf151 said:
Do a search On xda site for "everything android" its a huge file I put together that includes lots of needed tools and setup files for cooking roms and building apps. It also has a guide with links to the sites where I got the tools from. That should help. Just remember it's for windows and I recommend downloading to ur computer not ur phone cause its over a gig in size
Click to expand...
Click to collapse
Thanks, for that. I looked around the forum but prob would of had a real hard time finding that.
If you are more comfortable with the .net framework, get MonoDroid. C# programming for android. You just need a copy of visual studio 2010, thank god for the free ultimate version I got from school. I haven't messed around with it a lot yet but there is no visual representation of the screen or adding strings like in Eclipse but I like C# more than Java so I'll use this more often than not
Sent from my Evo powered by MIUI
Comrade P said:
If you are more comfortable with the .net framework, get MonoDroid. C# programming for android. You just need a copy of visual studio 2010, thank god for the free ultimate version I got from school. I haven't messed around with it a lot yet but there is no visual representation of the screen or adding strings like in Eclipse but I like C# more than Java so I'll use this more often than not
Sent from my Evo powered by MIUI
Click to expand...
Click to collapse
I have visual studio 2010 ultimate as well from my school. I haven't ever worked with c# but i cant imagine that its much more different from C/C++. Just some different ways of calling/naming things
Exactly. I like it a lot more than Java. Can't really explain it. Just test both of them out and see which you prefer.

Please explain what porting is. I'm still confused after countless google searches.

I'm called for a job interview this Monday. They need someone to port some programs children play with on the web to Android. It's educational software that looks accessible to children.
My only experience with porting is working with Unity and going back and forth from PC to my Android phones. My problem is I don't know how porting is done exactly.
Let's say I want to port a Java program to Android. Do I have to create a layer of coding around the original Java source code and make it work with Android? Or is it just modifying the original source code to fit the new platform?
I searched multiple forums and countless google searches. I'm going insane. Please help me!
Thank you! :laugh:
Well I guess it depends. Unless you are using a cross-platform framework (e.g. Xamarin), then it would involve re-writing the code in Java.
If you already have some Java back end code (e.g. some servlet implementation), then I would just create an interface to this module and leave it as it is. No point in rewriting working code in a language that already runs on Android (unless your one of these people who can't help themselves and has to refactor everything to death).
i dont think there is much for u to do, if the games are web based, just build a laucher that links to the games, otherwise look for similar games in android version and install them as a package on all phones.
Sent from my U8150 using xda app-developers app

Categories

Resources