any programmers able to help me create my own app? - myTouch 3G, Magic Android Development

i have little programming experience, and i want to create an app for my own personal use, and maybe to share. and if it is a big hit, put it on the market.
i'll ask for help step by step, i'll probably be getting help from my cousin who is a cs major.
how do i have an app listen to the phone, i was reading the dev guide and is it a broadcast receiver base class?
i'd like for the app to do it's job when the phone is set to vibrate.

if you wnat to program for android .. so here are some tips you can start to program an app for android..
1, Java experience or atleast basic know how, (about classes , objects and other OOP concepts )
2, little xml exposure is required ( basics as because any android app is assosiated with xml manifest also )
3, download the SDK , from andrioid site
4, use IDE eclispe ( required android sdk plugin also to map the SDK and emulator of android )
search it on google......also there is a book named ANDBOOK which will tell you a jumpstart ....!
hope it helps a bit

i downloaded the java ee eclipse, is that the correct one?

yes .. eclipse-jee-galileo- ...... its nick name of code name is galileo...

Related

How do i develop a C# or C++ app to copy files

Basically what i want to do is what M2DC does.
i want the program to list all the .zip files that are in a certain theme folder and then when you apply the theme, it unzips the file and copies whatever is in that file and copy it to the windows folder.
Please help me.
i know NOTHING about programming.
you dont even need to show me, even if you give me a link that give me the necessary information to help me do so.
btw, i have Visual Studio 2008.
http://msdn.microsoft.com/en-us/windowsmobile/default.aspx
that is microsofts windows mobile developer center you may find some stuff there, but if you have no programing experience you may just want to get the developer of m2dc to help you out getting started
best of luck
forgot to mention i already looked there.
good tutorials. just none of which help me in this situation.
kidnamedAlbert said:
Basically what i want to do is what M2DC does.
i want the program to list all the .zip files that are in a certain theme folder and then when you apply the theme, it unzips the file and copies whatever is in that file and copy it to the windows folder.
Please help me.
i know NOTHING about programming.
you dont even need to show me, even if you give me a link that give me the necessary information to help me do so.
btw, i have Visual Studio 2008.
Click to expand...
Click to collapse
Did you download the free copy of visual studio?
bedaweed said:
Did you download the free copy of visual studio?
Click to expand...
Click to collapse
i have the full version
the only reason he would have asked is that you have to have the full version for windows mobile development....
okay well i do.
but im not a programmer so i need some help.
i started trying to jump in just recently, mostly i've just been skinning before so i am in the same boat
this is the c++ library reference, it may provide some help.
http://msdn.microsoft.com/en-us/library/cscc687y.aspx
the code should be the same on a pc performing the same operation
so such code exmpls should be fine too
i tried to do some searching but it appears that there is not very many beginners tutorials for windows mobile so I will just put a couple of suggestions out there.
If you have never written code before I would recommend starting with C#
I personally use C++ but that is because I started writing C++ while still in high school before C# even existed. From what I can tell C# would be a much less painful experience that learning c++.
If you are not all that interested in learning the ins and outs of programming I would take a took at mortscript because that basically gives you just about everything that you would need and I just checked the documentation they have everything you need, the ability to unzip files and make a simple gui
Whenever looking about learning a new programming language you will do best to look for a "Hello World" example, whenever I learna new language / platform (like i am currently doing with android) I always look for a hello world example so that I can get something simple up and running
I end up getting a lot of information from http://www.codeproject.com/ and http://www.pocketpcdn.com/ sometimes the information is outdated, but it is usually pretty good.
The latest and greatest programming website is stackoverflow.com You can ask a question and Usually you will get an answer to your question in a day or so.
If you are ever interested in looking at some C++ things you can look at the full M2DC source code by downloading the zip file from the google code page (latest source code). In the zip file there is a sln file somewhere, that is the entire solution for the program. You should be able to open that file with you copy of visual studio and build a fully working copy of M2DC
good luck
How to teach programming in one post...
Well I don't know where to start, Developing C# apps for PPC is similar to developing desktop apps. The best way to learn is to see what others have done and copy across the code you need (Lookup Popfly Development ).
I'd try and find the code for this in a Normal WinForms app to do this and then port it across to the PPC App.
I'd do it in C#. The un-zipping maybe complicated, I'm not sure what ZIP code is in the .Net Compact Framework.
Let me know if you need any help, I might even knock some code together for ya.
Ta
Dave
mpenguin14 said:
i tried to do some searching but it appears that there is not very many beginners tutorials for windows mobile so I will just put a couple of suggestions out there.
If you have never written code before I would recommend starting with C#
I personally use C++ but that is because I started writing C++ while still in high school before C# even existed. From what I can tell C# would be a much less painful experience that learning c++.
If you are not all that interested in learning the ins and outs of programming I would take a took at mortscript because that basically gives you just about everything that you would need and I just checked the documentation they have everything you need, the ability to unzip files and make a simple gui
Whenever looking about learning a new programming language you will do best to look for a "Hello World" example, whenever I learna new language / platform (like i am currently doing with android) I always look for a hello world example so that I can get something simple up and running
I end up getting a lot of information from http://www.codeproject.com/ and http://www.pocketpcdn.com/ sometimes the information is outdated, but it is usually pretty good.
The latest and greatest programming website is stackoverflow.com You can ask a question and Usually you will get an answer to your question in a day or so.
If you are ever interested in looking at some C++ things you can look at the full M2DC source code by downloading the zip file from the google code page (latest source code). In the zip file there is a sln file somewhere, that is the entire solution for the program. You should be able to open that file with you copy of visual studio and build a fully working copy of M2DC
good luck
Click to expand...
Click to collapse
actually thats the first thing i tried(using m2dc as a template)
but i was super confused.
i tried taking out unessicary things like softkeys, background, internet, etc. but it didnt want to build. and plus, i probably did it all wrong.
if i cant get a good mortscript to do it, ill look into those websites you recommended me.
im in high school right now and im trying to find classing that will teach me some basic programming.
my school is filled with idiots though.
but im moving to a different city, so maybe they can teach me better than i would here.
thanks again.

running application in C on mobile phone with Android

Hello !
SUMMARY: How to run pocketsphinx_continuous on mobile phone with Android, and how to do it with simulator of mobile phone with Android. PocketSphinx can be downloaded for free here, for both Linux and Windows: http://cmusphinx.sourceforge.net/html/download.php .
Click to expand...
Click to collapse
------------------------------------------------------------------------------------------------------------
SHORT EXPLANATION
I'd like to create application for mobile phone and server such that:
1. User runs application on mobile phone with Android, this application uses PocketSphinx. It is Automatic Speech Recognition software for devices like mobile phones, written in C. Somebody told me that "Pocketsphinx is used successfully on Symbian with minimal effort". (However I think Android may be better choice). My knowledge about Android is limited but I know something about CMU Sphinx. Can you help me, please, to run this PocketSphinx on Android? I also need to find simulator of mobile phone with Android. I have already found Wireless Toolkit and I tried to use this emulator, however I think it doesn't allow to run simulation of mobile phones with Android. (By the way I am limited in my project to mobile phone of the price up to about 160 euro; which Android version would be best for my application?).
2. This application communicates with the user. The users speaks digits and some other words (dictionary is about fifteen words, I can create language and acoustic models, as well as formal grammar in CMU Sphinx, with the use of SphinxTrain). The application recognizes those digits.
3. Based on this talk, mobile phone sends information about results of recognition to the server. I can do it in Java for CLDC/MIDP with httpconnection, POST method on the mobile phone side and with Tomcat on server. I think this httpconnection must be possible not only in Java ME, but also in Android C. But this is thing which will bother me later, now I'd like to run pocketsphinx_continuous on Android and try to modify it according to my needs.
Summing up, what I'd like to know is how to run demo pocketsphinx_continuous on mobile phone with Android, and how to do it with simulator of mobile phone with Android. (I've got Wireless Toolkit but I think it is not capable of running Android). PocketSphinx can be downloaded for free here, for both Linux and Windows: http://cmusphinx.sourceforge.net/html/download.php . There are two ways of installing it in Ubuntu. First is to unpack it (it is tar.gz), enter its directory and type "./configure", "make", "sudo make install". The other, different, is written in README file, i.e. run autogen.sh, "./configure", "make clean all", "make test", "make install". The result should be, among many other files, javadoc in doc directory.
------------------------------------------------------------------------------------------------------------
LONG EXPLANATION
What is required to give me some advices is written above. So if you don't want / don't have time to read the whole text, just above explanation is enough. But let me say about other possible approaches which I try to do. Those are worse than what I explained above, but I also tried them.
CMU Sphinx contains SphinxTrain to create acoustic model. It has got some different recognizers (also called decoders), those are PocketSphinx, Sphinx4 and some other. PocketSphinx is written in C and is for devices like mobile phones. Sphinx4 is Java application for PCs because it requires better hardware. There is good tutorial about using SphinxTrain with Sphinx4. It is here: http://www.speech.cs.cmu.edu/sphinx/tutorial.html . There is no similar tutorial for PocketSphinx. However with some knowledge about Android and C it is possible to run it on Android. The other approach than PocketSphinx, is using this Sphinx4. However it requires connection between mobile phone and server, sending audio data from cellular phone to server. It can be done with Skype, but there is still problem on server side with redirecting sound from Skype to Sphinx4. So you see there are two different approaches. One is to run speech recognition on mobile phone with PocketSphinx and Android. The other is speech recognition on server with Sphinx4. There are some ways to follow this second option. One is Skype on both server and mobile phone. (But there is problem with redirecting speech from Skype to Sphinx4). The other is too expensive Digium card. The third one is IVR, but I still look for good open-source IVR software. All of those three ways of second option involve Sphinx4. It was much easier to create application with Sphinx4. It is for PCs, not embedded devices, because it requires better device, extensive floating point math and some other things. But it has much better documentation than PocketSphinx. But I want to use PocketSphinx because I don't need to pay to anybody for access to mobile internet in order to send data through internet for application like Skype. The access to internet is required only for short time to send little text data with httpconnection, POST method. This is why I'd like you to help me, please, with running pocketsphinx_continuous on simulator of PocketSphinx on mobile phone with Android. (By the way, I see I've got installed S60 Developer Tools -> 3rd Edition FP1 SDK -> MIDP -> Emulator).
Summing up in a list, those are in CMU Sphinx:
I. SphinxTrain, which I can use to create files needed for speech recognition
II. decoders which use speech input and some files which I create with SphinxTrain, to follow speech recognition (input speech + files from SphinxTrain = are used by decoder)
II-1. PocketSphinx, written in C, for devices like mobile phones
II-2. Sphinx3, written in C, for PCs, actually the best developed
II-3. Sphinx4, written in Java, for PCs, with the best documentation
II-4. Some other, older versions
Those are possible approaches of solving my task:
I. Speech recognition on mobile phone with PocketSphinx. This is much better way than [II].
Problems: 1. running PocketSphinx on mobile phone with Android. 2. simulating mobile phone with Android on PC. I also thought that maybe I should consider Meamo, what do you think about it? Or use things different than CMU Sphinx, e.g. Simon, HTK, Julius. I looked at those other ASR engines and I think PocketSphinx may be best choice.
II. Speech recognition on server with Sphinx4. There are some different ways of establishing voice connection between mobile phone and server.
II-1. ordinary call from mobile phone to server; server has got Digium card. Disadvantage: Digium card is expensive.
II-2. to use Skype on both mobile phone and server. Problem: redirecting of sound from Skype to Sphinx4 and vice versa.
II-3. can you think about any other ways? I found that Asterisk may be useful.
Greetings !
Summing up, what I'd like to know is how to run demo pocketsphinx_continuous on mobile phone with Android
Click to expand...
Click to collapse
First step would be to setup a toolchain and compile the prog for android
or statically linked with uClibc.
Then push it onto your device and test if it works as expected.
You can also push it onto the android emulator that comes with the sdk.
Just my 2 cents...
Thank you very much!
Can you give me any links to tutorials which can be useful for me?
By the way I know how to create my own application in Sphinx4 and I know how to run demo in PocketSphinx, but I've got some difficulties with creating my own application for PocketSphinx. So if you can have a look at PocketSphinx http://cmusphinx.sourceforge.net/html/download.php and tell me which files I need to have to create new project for PocketSphinx, I would be greatful. I mean that for Sphinx4 the only what I need to do is to enter S:\tutorial\sphinx4-1.0beta3-src\src\apps\edu\cmu\sphinx\demo\helloworld and create my own ...\demo\my_application, and inside it analogically to what is here ...\demo\helloworld. In the case of PocketSphinx, to run the application, I need to enter S:\tutorial\pocketsphinx\doc and run pocketsphinx_continuous. So I check what I've got in this file and I cannot see what files and where I need to have in order to create new project. I uploaded directory doc with pocketsphinx_continuous here: http://www.speedyshare.com/files/19429494/doc.7z
Greetings and thanks once more !
Rough outline: You'll need the Android SDK and NDK, both of which are available from http://developer.android.com/. The NDK will allow you to compile C code. You'll need to wrap the C core in a Java layer to make it accessible to the rest of the Android system. The SDK also includes an emulator, which I believe you've asked for if I understand you right.
I haven't actually attempted this, so that's about all the help I can be, but there is sample code included with the NDK that should get you started.
Thanks for your answer !
I check the google and see that NDK is term of Android, because I knew only SDK abbreviation. I assume NDK is especially for porting (like porting PocketSphinx for Android). So am I right that with this NDK I don't need to change code of PocketSphinx? I think it would be too easy .
There also other question which I've got. It is not strictly connected with Symbian but there wouldn't be any need for porting if I won't solve this problem. I've got my application in Sphinx4. There are also examplary appications for Sphinx4 and PocketSphinx. I can run demos from PocketSphinx (as explained in first post), as well as demos from Sphinx4. I can change source code of demos from Sphinx4 to perform my task. I'd like to do similar thing with PocketSphinx, but even if it should be easy task, I cannot do it. In Sphinx4 it is much simpler because all source files are in one directory. In PocketSphinx it is done in somehow different way. (http://cmusphinx.sourceforge.net/html/download.php). Without ability to move my application from Sphinx4 there is no need for me to port this PocketSphinx to Symbian.
Greetings !
johnyjj2 said:
I assume NDK is especially for porting (like porting PocketSphinx for Android). So am I right that with this NDK I don't need to change code of PocketSphinx? I think it would be too easy .
Click to expand...
Click to collapse
NDK is used to write software for Android devices that are compiled natively to the platform -- for now, this usually means ARM. Java as you probably realize is a bytecode intermediate language that the java virtual machine converts to native calls at runtime. This means that Java is generally platform independent whereas your C code is not.
JNI as used with the NDK is the Java Native Interface (or something to that effect). It allows you to call code that has been compiled for a specific processor from Java. This means that you could put heavily optimized super fast calculations in a native library and call them from your Java app.
It could also mean, that you've more or less written your entire application in some native code, and then you have written a java shim that has enough code to initiate and start your native software. Beware, there be dragons here.
The fact that you CAN do this, doesn't mean you SHOULD. There are a lot of benefits to using the android platform and specifically using the android way of writing applications. Concepts like views, activities, intents, etc., greatly simplify how an Android device interacts with other Android devices and provides a consistent and powerful framework.
For something like SCUMMVM, it is a game (platform) that is very linear in design; you are either actively playing it, or it is on pause. How other applications are running while using SCUMMVM is inconsequential. It sounds like you have very different requirements.
Thanks for answer!
Isn't that link (http://cmusphinx.svn.sourceforge.net/viewvc/cmusphinx?view=rev&revision=9470) simply trying to copy engine library to Symbian, without effect? Only enginge won't help, there is also need to write from zero code which will use this library. So it looks like there is still long way to have it working. Do I understand it properly?
Greetings!

[Q] How to become an Android developer?

I've seen all the work you guys here at XDA developer do (and it's all really great).
And i'd really like to be able to develop stuff for android devices like you guys!
I know how to use Eclipse to develop apps and i've made a few apps already (no games or any real good stuff because i'm still learning right now).
But I want to be able to develop ROMs,kernels,...etc.U know!!
I've signed up for a java coarse at "New Horizons" training center and i'm gonna start in about a month.
But that won't teach me everything,it won't even teach me everything about application-creating
So,here I am,asking you guys (android developers):
How can I learn the stuff that you've learned?
What websites should I check out?
Where and how can I learn how to develop complete apps,games,Roms and kernels for any android smartphone?
In other words;Tell me how you learned all this stuff,and how can I learn it too?
Thank U!!!
Custom ROMS are not created from scratch.
Existing ROMs from the manufactors are taken appart, dissected, modified and packed again to be uploaded here.
The best way to start on that is just by taking apart existing ROMs and looking through the files.
Modifiy some, repack them and check if it still works.
Repeat said process .
If you want to go deeper read up about decompiling & recompiling apk files.
Modifying bak smali code.
For creating your own kernels, just use google, so much info about that. Its not an android only topic, but a linux topic and the internet has plenty of info on that.
Good luck on your journy .
The first thing you have to do is to understand the system. This means you have to understand Linux, the kernel, the datasystem(because Android is obvisiously based on Linux).
You have to be able to understand written code or program/code yourself.
The best way to code for android is to learn java.
Read this here: http://developer.android.com/guide/index.html
Ok,thanks for the information.
But let me tell you what I already know and understand:
Android is Linux,I know what linux is,I know everything about it and i'm already using GNU Fedora and Ubuntu (I have spent countless hours reading the "about Ubuntu" and "about GNU"),In Android or Linux everything is a file and everything in the system or the apps has a file .
Now I have some questions that I need you to answer first before adding anything else:
1-Is learning Java enough?don't I need to learn any other programing languages?And if I do,then what languages will I need to learn?
2-how can I learn to build or modify an android kernel (linux)?give me a good site or something?
3-how can i learn to decompile and recompile apks and roms?
4-What will I be needing to learn in order to buid a kernel?
5-What programing langusge is the android source code written in?I think it's java,am I right?
I hope you answer these questions before adding anymore information.
Thanks in advance,and I hope it's not any trouble)
1-No, you need to compile and modify kernels etc. therefore you need to program in C(I guess)
2- Well, buy books about Linux and Kernels etc. Its quite difficult to teach it. You gotta learn yourself.
3- Decompiling and recompiling is not an option. Its like stealing - Dont modify apks without permission. If you got permission then you modify apks with the SDK(Java).
Roms are often compiled in C(I think)
4 - Books and the will to learn.
5. Android Source Code is C(like Linux), Android Apps are Java.
Quinity said:
1-No, you need to compile and modify kernels etc. therefore you need to program in C#(I guess)
2- Well, buy books about Linux and Kernels etc. Its quite difficult to teach it. You gotta learn yourself.
3- Decompiling and recompiling is not an option. Its like stealing - Dont modify apks without permission. If you got permission then you modify apks with the SDK(Java).
Roms are often compiled in C#(I think)
4 - Books and the will to learn.
5. Android Source Code is C#(like Linux), Android Apps are Java.
Click to expand...
Click to collapse
Just making sure you mean c, not c# right??
Try visiting the android website. There is a tutorial on how to get started with android development.
There is a fee that you would need to pay per year in order for your application to appear on the android market where you will be able to sell your product.
Java will be advantageous when it comes to android programming and if you know J2ME that will be a bonus as well.
ps:Learn from examples, buy a good book for beginners: “Hello, Android” and “Beginning Android“.
(i’m not a developer)
Nilurun said:
There is a fee that you would need to pay per year in order for your application to appear on the android market where you will be able to sell your product.
Click to expand...
Click to collapse
I believe it is a one time fee when you sign up, not a yearly fee.
Ok,I'm already using the Android developer website,but the whole thing takes time to read all the guidelines and do tutorials and packages.
So all i'm asking here:
What programming languages do I need to learn in order to be able to understand the native android source code and develop everything starting from kernel down to apps,I already know that I need to learn Java for apps and thanks to "Quinity" I know I need to learn C to understand the native source code.
I can easily learn C at any professional training center.The questions now are:
1-how and where can I learn to edit the Linux kernel and decompile and recompile ROM and APK files?
2-why do I even need to learn Java ME (formerly J2ME)?
I understand that Java ME is the java environment originally running on small devices with limited processors and performance such as mobile phones and smart phones,but what is the use of it when it comes to the app development,or any Android development at all?
And thanks for all the replies.
One more thing,I have to make sure what the android source code written in.And Quick answers;PLEASE.
Is it C,or C#?
C
Check out the wikipedia article, which states at the beginning:
The Android open-source software stack consists of Java applications running on a Java-based, object-oriented application framework on top of Java core libraries running on a Dalvik virtual machine featuring JIT compilation. Libraries written in C include the surface manager, OpenCore[21] media framework, SQLite relational database management system, OpenGL ES 2.0 3D graphics API, WebKit layout engine, SGL graphics engine, SSL, and Bionic libc.
Dark3n said:
C
Check out the wikipedia article, which states at the beginning:
The Android open-source software stack consists of Java applications running on a Java-based, object-oriented application framework on top of Java core libraries running on a Dalvik virtual machine featuring JIT compilation. Libraries written in C include the surface manager, OpenCore[21] media framework, SQLite relational database management system, OpenGL ES 2.0 3D graphics API, WebKit layout engine, SGL graphics engine, SSL, and Bionic libc.
Click to expand...
Click to collapse
Thanks,the article really did help a lot.
So,now I need to learn Java SE (without question),but what about Java EE and Java ME,will they be useful in the app development process,will I need them?
And what If I can't learn C (it's extremely hard to find a training center that teaches C these days),will learning C++ or C# do me any good?
I know that the source code is written in C,but is it really a big difference between the three,If I learn C# or C++ will I still be able to do everything I need to do and fully understand the code?
note that i'm on a tight schedule for now and I need to learn only the stuff I can't do without.
speeed_demon47 said:
Thanks,the article really did help a lot.
So,now I need to learn Java SE (without question),but what about Java EE and Java ME,will they be useful in the app development process,will I need them?
And what If I can't learn C (it's extremely hard to find a training center that teaches C these days),will learning C++ or C# do me any good?
I know that the source code is written in C,but is it really a big difference between the three,If I learn C# or C++ will I still be able to do everything I need to do and fully understand the code?
note that i'm on a tight schedule for now and I need to learn only the stuff I can't do without.
Click to expand...
Click to collapse
I think you are missunderstanding something here.
You should start by just learning java, the different EE ME SE etc. are still java.
The difference is that those are sets of java platforms. They bring, as does the android platform, prebuild libaries along, these contain functions (i.e. print that, create datastructure X) so you don't have to write every tiny bit of code.
Forget about those.
You want to use java on the android platform, which still uses java, but brings along its own libaries with prebuild code you can use ( See http://developer.android.com/reference/packages.html ).
So just learn java, if you want to work with android you can learn java on the android platform, this way you will already be familiar with the libaries provided by android.
I would say C# is more similar to java and C++ is more similar to C.
I don't understand what you mean with "do everything i need to do".
What do you need to do?
"Understand code".
Understanding code does require more than knowing what each line does, you will have to see the bigger picture ,not just few lines of code, to understand what is does. Depending on how the code is written (tidy or confusing), is the code commented? It might take ages to understand it.
Programming is sometimes a bit like art . Code can be beautiful or horrible
You don't have to do everything in a training center either.
The internet, time and interest is enough. There are so many tutorials and pages available...
You could have also found most of the answers by just using google...
Wikipedia article about java holds the information about the differences between EE/ME/SE etc...
Searching for terms like "difference C C sharp" etc. holds the answer to that question...
So maybe a training center is better for you to learn those programming languages, as "google skills" will certainly be required to teach you those things yourself.
What tight schedule are you on?
Dark3n said:
I think you are missunderstanding something here.
You should start by just learning java, the different EE ME SE etc. are still java.
The difference is that those are sets of java platforms. They bring, as does the android platform, prebuild libaries along, these contain functions (i.e. print that, create datastructure X) so you don't have to write every tiny bit of code.
Forget about those.
You want to use java on the android platform, which still uses java, but brings along its own libaries with prebuild code you can use ( See http://developer.android.com/reference/packages.html ).
So just learn java, if you want to work with android you can learn java on the android platform, this way you will already be familiar with the libaries provided by android.
I would say C# is more similar to java and C++ is more similar to C.
I don't understand what you mean with "do everything i need to do".
What do you need to do?
"Understand code".
Understanding code does require more than knowing what each line does, you will have to see the bigger picture ,not just few lines of code, to understand what is does. Depending on how the code is written (tidy or confusing), is the code commented? It might take ages to understand it.
Programming is sometimes a bit like art . Code can be beautiful or horrible
You don't have to do everything in a training center either.
The internet, time and interest is enough. There are so many tutorials and pages available...
You could have also found most of the answers by just using google...
Wikipedia article about java holds the information about the differences between EE/ME/SE etc...
Searching for terms like "difference C C sharp" etc. holds the answer to that question...
So maybe a training center is better for you to learn those programming languages, as "google skills" will certainly be required to teach you those things yourself.
What tight schedule are you on?
Click to expand...
Click to collapse
Yes,I already know all about java,I read the articles on wikipedia,but why would I need to learn java enterprise? Isn't it mostly used around internet applications and servers? Can't I just use the APIs if i'm going to build an app that needs internet or server connectivity?
And why would I need to learn java Micro? Doesn't android use dalvik virtual machine to run apps? I mean,java Micro is mostly used to create feature phone apps,why would I need it with android?
There's something I don't understand though,on wikipedia the article about android says this:"Applications are usually developed in the Java language using the Android Software Development Kit, but other development tools are available, including a Native Development Kit for applications or extensions in C or C++"
So,the question is;what is the difference between apps developed in java and apps developed in C or C++?
The problem about C# is that I don't know anything about it;can't find any articles on wikipedia and other sites really don't help!!!
I meant by "understanding the code",having the ability to understand the command lines,what they do,what each line is responsible for and having the ability to edit or adjust something,.....etc.
And for the tight schedule;I need to learn everything about android within 6 months (I don't need to learn C as much,but it'd be a bonus),and that's why I go to training centers,faster and more efficient than self learning.
What did u mean by "google skills"?
And what did u mean by "learn java on the android platform"?
Thanks for the help and providing quick answers.
speeed_demon47 said:
Yes,I already know all about java,I read the articles on wikipedia,but why would I need to learn java enterprise? Isn't it mostly used around internet applications and servers? Can't I just use the APIs if i'm going to build an app that needs internet or server connectivity?
And why would I need to learn java Micro? Doesn't android use dalvik virtual machine to run apps? I mean,java Micro is mostly used to create feature phone apps,why would I need it with android?
There's something I don't understand though,on wikipedia the article about android says this:"Applications are usually developed in the Java language using the Android Software Development Kit, but other development tools are available, including a Native Development Kit for applications or extensions in C or C++"
So,the question is;what is the difference between apps developed in java and apps developed in C or C++?
The problem about C# is that I don't know anything about it;can't find any articles on wikipedia and other sites really don't help!!!
I meant by "understanding the code",having the ability to understand the command lines,what they do,what each line is responsible for and having the ability to edit or adjust something,.....etc.
And for the tight schedule;I need to learn everything about android within 6 months (I don't need to learn C as much,but it'd be a bonus),and that's why I go to training centers,faster and more efficient than self learning.
What did u mean by "google skills"?
And what did u mean by "learn java on the android platform"?
Thanks for the help and providing quick answers.
Click to expand...
Click to collapse
You miss understood again...
I will try to be clearer:
I meant by google skills, that you would find most answer yourself if you just use a search engine with the right terms.
You DONT need to learn Java ME/SE etc.
You can and will only use the APIs provided by the android toolkit.
So if you already know java, google "android developement tutorial" and start build some apps to get experience.
Forget C#, you don't need that, AT ALL for android.
Android apps, only need java.
If you want to understand the deeper layers of android, those are written in C.
But "int i=0;" is a variable i with value 0 in java and in C. So if you just want to read some of the code of the deeper layers and change small bits, you don't need to take extra courses in C.
So the conclusion is, you need to understand the android architecture and be able to write apps and have experience...
I would recommend to just think of some thing and write an app for that, learning by doing. Occasionally you can read some theory about the underlying concept of what you are doing.
An example would be to write an app that sorts values the user enters.
You would use already premade sort and array functions from the android api
Something like
Code:
Array x;
x.addAll(y);
x.sort(Descending);
To get deeper knowledge you could then browse the android sourcecode and see how x.sort actually sorts the array.
I think Android application is writen in Java ?
But maybe it is not that your question?
Dark3n said:
You miss understood again...
I will try to be clearer:
I meant by google skills, that you would find most answer yourself if you just use a search engine with the right terms.
You DONT need to learn Java ME/SE etc.
You can and will only use the APIs provided by the android toolkit.
So if you already know java, google "android developement tutorial" and start build some apps to get experience.
Forget C#, you don't need that, AT ALL for android.
Android apps, only need java.
If you want to understand the deeper layers of android, those are written in C.
But "int i=0;" is a variable i with value 0 in java and in C. So if you just want to read some of the code of the deeper layers and change small bits, you don't need to take extra courses in C.
So the conclusion is, you need to understand the android architecture and be able to write apps and have experience...
I would recommend to just think of some thing and write an app for that, learning by doing. Occasionally you can read some theory about the underlying concept of what you are doing.
An example would be to write an app that sorts values the user enters.
You would use already premade sort and array functions from the android api
Something like
Code:
Array x;
x.addAll(y);
x.sort(Descending);
To get deeper knowledge you could then browse the android sourcecode and see how x.sort actually sorts the array.
Click to expand...
Click to collapse
Ok,good,thanks.
So,I don't need EE or ME,right? But if I learn them later on (maybe next year or so),would they come in handy or would they be useless?
I've been developing in Eclipse and SDK with ADT plugin,it's very helpful and I've completed most of the tutorials so far (hello world,tom cat,......etc) and started building something of my own.I've been also using Titanium app accelerator,it's really good too (still mainly eclipse but the tutorials and help are better);but so far all i've done is just copy the code and that's all,I didn't write a single line of code (maybe a few lines,but that's it).
I also started a course a week ago (learning Linux kernel),so far so good,And I found a good site to teach me image files.
But a little hung up on the programming languages section,so,conclusion;I need to learn Java Standard,would enterprise or micro be any good?
And about the native source code,will java be enough? won't I need to learn C?
Thanks for the quick responses,it's a lot of help.
HuTcHx said:
I think Android application is writen in Java ?
But maybe it is not that your question?
Click to expand...
Click to collapse
I already know that,but that's not what i'm asking about.
The enterprise edition and what not just offer different sets of libary for other platforms, aslong as long as you program for android devices you will have little use for knowledge of the other editions.
Think of it as being a specialised technican for cars. They all have engines and 4 tires and a steering wheel and all technicans can work with that, but will you work in a VW repair shop or in the Mercedes repair shop?
In this case you will work on the android platform, as long as you don't want to switch to server programming in java (Java EE) or embedded systems (Java ME), there is no need to get familiar with that.
Java SE means standart edition and basicly already included in the android libaries.
If you don't want to keep copy pasting code, try something different that has not been done in a tutorial, or modifiy a tutorial to do something else.
But there is nothing wrong with copying code, if you have written a good piece of code there is no harm in reusing it elsewhere.
The android sourcecode is a mix of java and C, the lower layers are written in C the higher ones in java.
I don't know what you want to achieve with your knowledge? To write apps you don't need to learn C.
It is difficult to master all fields, easier if you choose one.
Dark3n said:
The enterprise edition and what not just offer different sets of libary for other platforms, aslong as long as you program for android devices you will have little use for knowledge of the other editions.
Think of it as being a specialised technican for cars. They all have engines and 4 tires and a steering wheel and all technicans can work with that, but will you work in a VW repair shop or in the Mercedes repair shop?
In this case you will work on the android platform, as long as you don't want to switch to server programming in java (Java EE) or embedded systems (Java ME), there is no need to get familiar with that.
Java SE means standart edition and basicly already included in the android libaries.
If you don't want to keep copy pasting code, try something different that has not been done in a tutorial, or modifiy a tutorial to do something else.
But there is nothing wrong with copying code, if you have written a good piece of code there is no harm in reusing it elsewhere.
The android sourcecode is a mix of java and C, the lower layers are written in C the higher ones in java.
I don't know what you want to achieve with your knowledge? To write apps you don't need to learn C.
It is difficult to master all fields, easier if you choose one.
Click to expand...
Click to collapse
So,learning java enterprise isn't really important;but is it important if I want to excel in the development process?
But what's the use of learning Micro edition AT ALL when it comes to android development???
Isn't it used to develop apps for feature phones and PDAs,not smartphones?
And after I learn Java standard will I need to learn any special libraries for android? I mean,will I be able to get to writing the code right away or do I need to learn about the android files and libraries? or are they java standard already? I know I need to learn to compile the packages,but is that it?
And what about XML files,I can do them with JDK or Apache Ant,right? so,I don't need to worry about them,do I?
I'm trying to learn as much I can from the dev guide and the tutorials on the developers site,but the dev guide is too long to both read and comprehend,and that's basically a huge problem,cuz I have a job and education and I can't find time to know everything in the dev guide.
I know it'll be difficult to master all fields,but the team I'm going to work with needs someone who's able to edit the deeper layers of the code and,so I think I'll need both java and C for that job,it don't matter anyways I have time to learn both.

[REQUEST FOR HELP] Coding Help

Hello guys, I decided to get serious into learning Java today, and I need someone to help me understand everything about Java included coding, the different folders in the coding process. (Basically, all things Java.) I searched Google without any result. Thanks in advance.
P.S. I'm still in school, and I don't have much for time for Java, so I need someone (preferably) somewhere around my time zone (GMT+8) or night owl to adjust to my time. YouTube videos are welcome too.
P.S. I don't have a computer, so coding and research and everything happens on my Note 2.
http://oreilly.com/android/index.html
Check this link!
shashivydyula said:
http://oreilly.com/android/index.html
Check this link!
Click to expand...
Click to collapse
Thanks, but the vids on the page aren't all that mobile friendly, and I'm not buying any books. I'm trying to make my learning process as inexpensive as possible.
Smack that Thanks button if I helped!
XDAing from a N7105 powered by Illusion ROM.
Sent from a small country called Singapore.
P.S. Time for school, not much time for XDA
Irwenzhao said:
Thanks, but the vids on the page aren't all that mobile friendly, and I'm not buying any books. I'm trying to make my learning process as inexpensive as possible.(
Click to expand...
Click to collapse
For a really basic start you could use something like ConTEXT: http://www.contexteditor.org/downloads/ . After installing a java sdk and adding the java/bin folder to your path (environment) variable you can set up Context to compile and run your opened java files.
I myself quickly switched to Eclipse: http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/keplersr1 . This has many more features like auto-complete/suggestions etc. If you want to create apps for the android dalvik platform you can download the ADT plugin for eclipse: http://developer.android.com/sdk/installing/installing-adt.html . From there you can download the android sdk and start using the android build platform.
For basic introduction to java and object oriented programming i found this for object oriented programming: http://www.ntu.edu.sg/home/ehchua/programming/java/J3a_OOPBasics.html . Basic java tutorials are easy to find with google anyways. I also looked at the courses i had in university but they are in dutch so probably not of use.
Just start working through tutorials and do fool around a bit to find out how some things work. Don't start to early on android sdk because i found the android system quite a challenge to grasp, took me about 2 weeks . I already had on that point quite a bit of experience with java.
-------- edit
Just read your second PS. I think it is hard to really learn java if you don't have a computer to use. I myself learned the most by just fooling around with code
Qaatloz said:
For a really basic start you could use something like ConTEXT: http://www.contexteditor.org/downloads/ . After installing a java sdk and adding the java/bin folder to your path (environment) variable you can set up Context to compile and run your opened java files.
I myself quickly switched to Eclipse: http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/keplersr1 . This has many more features like auto-complete/suggestions etc. If you want to create apps for the android dalvik platform you can download the ADT plugin for eclipse: http://developer.android.com/sdk/installing/installing-adt.html . From there you can download the android sdk and start using the android build platform.
For basic introduction to java and object oriented programming i found this for object oriented programming: http://www.ntu.edu.sg/home/ehchua/programming/java/J3a_OOPBasics.html . Basic java tutorials are easy to find with google anyways. I also looked at the courses i had in university but they are in dutch so probably not of use.
Just start working through tutorials and do fool around a bit to find out how some things work. Don't start to early on android sdk because i found the android system quite a challenge to grasp, took me about 2 weeks . I already had on that point quite a bit of experience with java.
-------- edit
Just read your second PS. I think it is hard to really learn java if you don't have a computer to use. I myself learned the most by just fooling around with code
Click to expand...
Click to collapse
Yep it is really hard. Thanks for that last link though.
Smack that Thanks button if I helped!
XDAing from a N7105 powered by Illusion ROM.
Sent from a small country called Singapore.
P.S. Time for school, not much time for XDA

learning android development

I want to develop android apps.
But first i need informations.
- What is Kotlin? Is that something new. Should i use that? Does it change java. Is that new language that Google uses?
-Should i learn java language to start learning?
- Free e books to learn from it.
- And about making apps.
Does I type every single code to make app or i use various codes from everywhere , just to copy and paste , and type some mine codes, but not all?
-If i learn very good can i work for Google from home or i need to go there and to work in their country ?
There are some tutorials available, mostly for specific tasks or problems.
If you have no previous coding experience you will have a hard time though.
APK files are usually signed ZIP files, so you can unpack them on your computer and check what is actually inside.
Copy and paste works for some things but the main work will be done either by hand or with the use of dedicated coding programs, depending on the language used.
The comes the compiling and all the required things to make the siged ZIP file.
Using an emulator certainly helps too.

Categories

Resources