Hello Everyone I Am New In This World And I Have Some Questions About Developing
-Which Programming language Should I Learn To Create Apps.?
-How To Create ROM?
-What About Porting Something From A Device To Another One?
-Is The SDK Of The Mobile Is Enough To Port Something From It?
-Should I Own An Old Phone For Testing?
P.S. I Have GS3
You develop for Android primary in the Java language. You may write native (i.e. compiled) code as well, but Java is recommended in most cases.
Creating custom roms is much like creating a Frankenstein Monster. Decompose your original rom, pick the pieces you like, replace the other with stuff you dig up from other places, or create yourself. Then re-pack everything in your new custom image, flashing you phone. The details about what to use to split images, flash devices etc you have to search this forum for - it'll differ from device to device.
When developing for Android you chose a minimal API level, e.g. Android 1.5. This way your app will run on all devices with at least Android version 1.5, no porting needed. Java is "write once, run many" so to say.
You can test your new apps either on you phone or in the emulator (Android Virtual Device) supplied with the SDK. If you intend to develop lots of code, a dedicated phone may be quite useful for testing, yes, but absolutely not necessary. You'll not crash your phone just because your application crashes, all apps are running in separate processes protected from each others.
You find the official tutorial at developer.android.com/training/basics/firstapp/index.html
Thanks For Your Help. Your Words Are Very Useful
THE.W!ZARD said:
Hello Everyone I Am New In This World And I Have Some Questions About Developing
-Which Programming language Should I Learn To Create Apps.?
-How To Create ROM?
-What About Porting Something From A Device To Another One?
-Is The SDK Of The Mobile Is Enough To Port Something From It?
-Should I Own An Old Phone For Testing?
P.S. I Have GS3
Click to expand...
Click to collapse
you need java to learn programming................
for basic rom making a bit of general knowledge is enought not much of programming is required........
for basic porting you can use cygwin for complex ports u need t change the framwork files which you will learn as the time passes..
sdk is required for building app and adb fastboot not for porting and other kind of stuff(related to api's)............
what do you mean by old phone.. you build mods for your phone so test it on the phone you built the mod for not old phone or something like that.........
The first thing you need to do is learn Java.
http://forum.xda-developers.com/forumdisplay.php?f=613
Hi guys,
I need help. Really I have search on google again again and again but I couldn't find anything about this topic..
My government gave us galaxy (10.1) tablets instead of books. But unfortunately this tablets's OS is not a normal android 3.2; It has been customized and we can't access many applications or other thinks. So I've decided to make a new custom rom for this tablets to offer in a competition of project. I have 2,5 months for this competition and I should make this rom so I need help. I've downloaded the android source (I want to work on 4.1jb) It is 4.2gb on my ubuntu 12.04 and I don't understand anything till see your answer on stackoverflow. I read and have some knowledge about system but It is not enough.. I know c# lang and I know general coding for 4 years.
I should edit the launcher (I said desktop but I don't know how calls It..). It has programs and widgets tabs and I want to put a new tab here. And anyone cannot see programs and widgets tab without any permission. This permission will give students's tablets by teacher ('s tablet). So, students can't play anything in the lesson but when it is over, stundents can play anything what they want.. Teacher will give the permission before leaving class..
This is what I want to do.. Briefly, I want to make a custom rom but directly using android source codes.Because I think I can't make this rom with using kitchen or just editing .apk files..
Thank you for your help..
Go to chef central in XDA forums it's very interesting (read all stickies), build a good kitchen and start building. Take some CM things to build a great ROM.
Sent from my RK29 tab...
I have thought It cannot work, haven't it?
Because I want to make a custom rom with using details. Not just editing .apk packages etc.. I looked for kitchen when I begin to make costum rom but kitchens don't satiate me.
Do you think again I should look kitchens ?
dmrc1143 said:
I have thought It cannot work, haven't it?
Because I want to make a custom rom with using details. Not just editing .apk packages etc.. I looked for kitchen when I begin to make costum rom but kitchens don't satiate me.
Do you think again I should look kitchens ?
Click to expand...
Click to collapse
If you are editing the source code you are doing more than modding apks. What I recommend to you is start building a Android with main features for example low requirements. Then you start deleting all those stuff you don't need building a very small Android. Then you modify system ui like appearance and themes and you start adding those great developer community apps. Those steps are easy for start then you'll modify those great things. And if you have time you should create a project web page in Google developers and start getting support and testers. Also if you post here your Roms you'll gain experienced developer support.
Remember you are building a Android Room not a new OS. Start modding and removing not useful stuff.
If it helps give thanks ! :thumbup:
Edit: I also recommend you if it's possible to don't work with Honeycomb... If you wanna get good results use Jelly Bean or Ice Cream Sandwich.
Sent from my RK29 tab...
SferaDev said:
...Remember you are building a Android Room not a new OS. Start modding and removing not useful stuff.
If it helps give thanks ! :thumbup:
Edit: I also recommend you if it's possible to don't work with Honeycomb... If you wanna get good results use Jelly Bean or Ice Cream Sandwich.
Sent from my RK29 tab...
Click to expand...
Click to collapse
Yes, I'm just editing an android rom not making a new OS. And I'm not working on Honeycomb. I got the source of JB.
Okey, I'll start doing your thinks. But I've an idea and if you know, please help..
Yes, I don't have to edit source code and it seems very hard to do. But I thought making a new tab panel like this panels top of JB. Check it.
http://androidplus.in/wp-content/uploads/2012/08/Jelly-Bean-Apex-theme.jpg
There are apps, downloaded, widgets tab panels on top. If I can add a new panel just with coding a new app. (not editing the source), It would be a solution for me. The panel that I'll add (let's call it education panel) have to open and close with my command (the command that comes from teacher in realty). If the command doesn't let the user of tablet to switch other panels, user can't switch. The education panel is like apps panel and contains some essential tools (like e-book, notepad, some videos about education etc.). Do you have an idea how can I do? or can I do this with just an application?
Please give me knowledge.. (Again I don't have to edit source code (like you've said) if I find this quests answer.)
Ok let's remember how Android it's divided...
I think you must modify for this launcher and systemui, if I'm not wrong. You must deodex the files inside the app package to build the eclipse project.
Good to know you aren't working with Honeycomb
Sent from my RK29 tab...
I was reading out in Android Dev forums and those links are useful to you:
http://forum.xda-developers.com/showthread.php?t=1732635
http://forum.xda-developers.com/showthread.php?t=1814441
Click to expand...
Click to collapse
Sent from my RK29 tab...
Got it. Thank you.
I was (am) busy for this job so I can answer now
dmrc1143 said:
Got it. Thank you.
I was (am) busy for this job so I can answer now
Click to expand...
Click to collapse
For anything you need !
Sent from my RK29 tab...
The first thing I want to say is that my English is not really good. I hope you understand my questions.
I have an idea for a new Android rom, but I'm faced with a dilemma. I want to have as much as possible supported devices, so I also can just build a launcher apk which can be installed through Google Play. In this way all mobile devices with the minimal platform version can use it. The biggest problem is that I don't only want a replacement for the application launcher but also the notification drawer and everything else. Is it possible to replace them also? I don't think so, so I think I'll work on a custom rom.
The next problem is which base rom I would use if I really build a custom rom. It's most likely to use AOSP as base because it's clean. The question is which version of AOSP: Gingerbread, Ice Cream Sandwich, or the newest version Jelly Bean. You would probably say Jelly Bean because this is the newest version. The problem is the phone support. Gingerbread is supported on most phones. If I build ICS or JB the phones which are supported by Cyanogenmod are easy to support, because I can use their device files. The only problem is that my phone, the Samsung Galaxy Gio is not officially supported and the unofficial port is not really stable. I don't think it's a big problem to use this device files and just wait till the developer makes it more stable, but I don't know for sure.
The last thing I want to know is if it's really that simple to support multiple devices. If I read tutorials about porting existing roms to your device they all say you just have to add your device files to the source and compile it. But they never say something about the kernel. Most devices need another kernel because their hardware is different isn't it? Please explain me how this works.
I'm sorry about this hazy story, but please help me before I make wrong choices. Thanks on purpose.
Wietse
WietsedeVries said:
The biggest problem is that I don't only want a replacement for the application launcher but also the notification drawer and everything else. Is it possible to replace them also? I don't think so, so I think I'll work on a custom rom.
Click to expand...
Click to collapse
These changes you are talking about can be done. They are system changes so not supported by the android app installer.
Eg: Your notification drawer, status bar are part of SystemUI.apk. The source for this is can be found in the AOSP source code under android/frameworks/base/...
You can make your modifications, compile it into an apk and then make a flashable zip to replace the current one (or push it via a rooted adb console).
or you can compile the entire source code into a flashable zip (eg CM7,9 etc..) and use it a replacement ROM with your modifications.
This is the line between an application under the android runtime and the android runtime itself.
these files, under framework are part of the OS. so to provide a customized version of the operating itself is what people like to call ROMs.
Now ROMs (like any OS) are device dependant. Windows has the code to run in a lot of different hardware configs, but android aims to be small. It should have only the minimum required code to efficiently run itself on a device.
Thats the kernel. The kernel communicates with the hardware and so the rest of the hardware can happily talk to a working kernel and expect the hardware to function as advertised. Kernel is a simple program which goes into the RAM on system start and sits there directing the operation of the phone.
Kernel devs work on making sure the hardware and the android runtime work perfectly together. Now, in this imperfect world, not all sources are open, even though they should be. and therein the issue lies.
If you want to compile android from source and make sure it works on your phone, first you need to make sure you have the kernel with all the changes(patches) to it made by the vendor (chap who made the phone and bullied you into buying it) to get it working on your hardware.
If you dont have that, you have to do it yourself. Or wait for someone else to do it.
once you can compile android and get it working on your phone with all the itty bitty hardware working A-OK.. then you can browse through the source, make changes as per your individual requirements and compile it into a ROM.
see the changes to the OS are separate from the changes to the kernel. The kernel changes are for hardware-software interaction so they are phone SPECIFIC.
but changes to your custom android OS (ROM) can be "cherry-picked" from other ROM/gerrit/AOSP/CM/AOKP sources and put inside your own source tree to get included in your build.
so if you have all the device / kernel stuff from a working android distribution, you can take the source of another android distribution and swap the device stuff into it and see if it works.
hope this helps.
wingie6200 said:
These changes you are talking about can be done. They are system changes so not supported by the android app installer.
Eg: Your notification drawer, status bar are part of SystemUI.apk. The source for this is can be found in the AOSP source code under android/frameworks/base/...
You can make your modifications, compile it into an apk and then make a flashable zip to replace the current one (or push it via a rooted adb console).
or you can compile the entire source code into a flashable zip (eg CM7,9 etc..) and use it a replacement ROM with your modifications.
This is the line between an application under the android runtime and the android runtime itself.
these files, under framework are part of the OS. so to provide a customized version of the operating itself is what people like to call ROMs.
Now ROMs (like any OS) are device dependant. Windows has the code to run in a lot of different hardware configs, but android aims to be small. It should have only the minimum required code to efficiently run itself on a device.
Thats the kernel. The kernel communicates with the hardware and so the rest of the hardware can happily talk to a working kernel and expect the hardware to function as advertised. Kernel is a simple program which goes into the RAM on system start and sits there directing the operation of the phone.
Kernel devs work on making sure the hardware and the android runtime work perfectly together. Now, in this imperfect world, not all sources are open, even though they should be. and therein the issue lies.
If you want to compile android from source and make sure it works on your phone, first you need to make sure you have the kernel with all the changes(patches) to it made by the vendor (chap who made the phone and bullied you into buying it) to get it working on your hardware.
If you dont have that, you have to do it yourself. Or wait for someone else to do it.
once you can compile android and get it working on your phone with all the itty bitty hardware working A-OK.. then you can browse through the source, make changes as per your individual requirements and compile it into a ROM.
see the changes to the OS are separate from the changes to the kernel. The kernel changes are for hardware-software interaction so they are phone SPECIFIC.
but changes to your custom android OS (ROM) can be "cherry-picked" from other ROM/gerrit/AOSP/CM/AOKP sources and put inside your own source tree to get included in your build.
so if you have all the device / kernel stuff from a working android distribution, you can take the source of another android distribution and swap the device stuff into it and see if it works.
hope this helps.
Click to expand...
Click to collapse
Thank you very very much for your explanation! It's a pity it's impossible to hit multiple times "Thanks".
I think I'm going to make a modified SystemUI.apk but you didn't tell the application launcher is also in this file. Did you just forget this or is this stored in another file/folder? And the lock screen? And I want also to replace the boot animation if it's possible.
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
WietsedeVries said:
Thank you very very much for your explanation! It's a pity it's impossible to hit multiple times "Thanks".
I think I'm going to make a modified SystemUI.apk but you didn't tell the application launcher is also in this file. Did you just forget this or is this stored in another file/folder? And the lock screen? And I want also to replace the boot animation if it's possible.
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
Click to expand...
Click to collapse
Only way is through exchanging the png files since porting the whole .apk is impossible.
Sent from my Jelly Beaned Ace
Thanks for the answer. And do you also know the answers of the other questions?
Sent from my GT-S5660 using xda app-developers app
WietsedeVries said:
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
Click to expand...
Click to collapse
There are two roads you can go now - one is use apktool to *decompile* apk the apk file that you've taken from your phone, it doesnt convert the app to java source code but java bytecode in .smali files (like an assembly version of the source) but you will have access to the resource files (xml, images etc..) so you can replace them and create some new themes.
http://forum.xda-developers.com/showthread.php?t=1814441
http://forum.xda-developers.com/showthread.php?t=1760133
And no - a GB systemUI.apk will *NOT* work on ICS. It is very probable that any changes you make through any of these methods can brick you phone. So make sure you have CWM and a nandroid backup.
If you want to add/edit functionality within the source code of systemUI.apk, you need to learn how to compile Android from Source. i would suggest getting hold of the CyanogenMod source tree for your device and playing around with it.
Ginger bread is CM7 and ICS is CM9.
http://forum.xda-developers.com/showthread.php?t=1552090
once you have the full source tree, you'll find a folder called android/frameworks/base/core/...something../systemui/..
this will contain the javasource code for your application. Here you can edit stuff to your hearts content!
Note that this cannot be compiled standalone by eclipse. The Android build system must be used to compile this (cuz its a system app).
a nice resource i used when i was doing the same thing :laugh:
http://iserveandroid.blogspot.in/2011/01/how-to-implement-your-own-status-bar.html
cheers and have fun.
Hi
I'm Italian and my english is so bad , sorry..
I would ask you what the language is recommended to develop android's app :
Java , C or C++ ? Anothrer doubt but C is used for android app ? mmm ..
There isn't a android native language , right ?
Coult I ask you to suggest me a web site's link where can I see how does android work ?
Sorry for my english , I'm studing english but there are too many word to say same thing
Thanks
dude its ok your english is fine and hear the language important is programming language how much good you are at will lead you to be a good developer and for learning android and how it works and all go to developers.android.com/training you will get whatever you want and browse on google and go to 4shared and find books on Android you get a huge and youtube.com/thenewboston 200 tutorial videos with great explaination and please first make sure you are very good at your oop concepts in java keepitup
devalex from Bolt A67
aeroxr1 said:
Hi
I'm Italian and my english is so bad , sorry..
I would ask you what the language is recommended to develop android's app :
Java , C or C++ ? Anothrer doubt but C is used for android app ? mmm ..
There isn't a android native language , right ?
Coult I ask you to suggest me a web site's link where can I see how does android work ?
Sorry for my english , I'm studing english but there are too many word to say same thing
Thanks
Click to expand...
Click to collapse
Java is the main language to develop Android's app. C or C++ can be used through the NDK to write parts of the app (but only some part, not the whole app) which are heavily CPU-demanding. Java's what you need to learn.
I suggest you start from developer.android[dot]com/training/basics/firstapp/index.html
dev.hinge086 said:
dude its ok your english is fine and hear the language important is programming language how much good you are at will lead you to be a good developer and for learning android and how it works and all go to developers.android.com/training you will get whatever you want and browse on google and go to 4shared and find books on Android you get a huge and youtube.com/thenewboston 200 tutorial videos with great explaination and please first make sure you are very good at your oop concepts in java keepitup
devalex from Bolt A67
Click to expand...
Click to collapse
Thanks a lot
Do you suggest me one particular book or is indifferent ? Aniway I Will begin to study from the link that you give me
Andreaaaaa said:
Java is the main language to develop Android's app. C or C++ can be used through the NDK to write parts of the app (but only some part, not the whole app) which are heavily CPU-demanding. Java's what you need to learn.
I suggest you start from developer.android[dot]com/training/basics/firstapp/index.html
Click to expand...
Click to collapse
The program in android works on the java virtual machine ? Ok
I would ask you One last thing
I have galaxy nexus , and on xda we can find lot of kernel ad rom , but I have one doubt :/
For the kernel the language used is C ?
And for the rom ? Java and C ?
Where can i find the kernel's source and factory image's source ?
O.t : Wich operating system do you use ? Now on my new laptop run window 8 and I ask to my self if is good choice .. For programming kernel,rom and app linux is the best ? or the operating system does not matter ? mmm..
If you want to learn to make a few apps, here is how I would start again:
Learn the Activity lifecycle and they methods ( the srceen ui )
Learn to make layout.xml without the ui editor. - it takes a few weeks.
Learn to use the AsyncTask to be able to make HTTP POST, GET and others stuff.
Only after this learn the Service, for background operations.
Broadcast receivers to listen system events: like boot completer internet connection lost, gps is on and so on.
With those sets you can earn a living at a company, which usually make applications client - Server side. Not really need to know more.
There are optimisations, but not at learning: some part of your code need to handle a lot of calculations, drawing, physics, AI, encryption, decryption: move that code part to NDK and start having problems with NDK development.
If you are a web developer and want to make some web based apps, than there is the webview and its the easiest case, at least virtually. For beginning / learning it is.
Game developers aren't covering they cost at least 80% of they so think about twice if you want to set up a full development cycle with NDK + OpenGL + animation, wasting like 5000 man hours. Depends on complexity of course, but those with 10 million downloads aren't made within 200 hours, for sure.
aeroxr1 said:
Thanks a lot
Do you suggest me one particular book or is indifferent ? Aniway I Will begin to study from the link that you give me
The program in android works on the java virtual machine ? Ok
I would ask you One last thing
I have galaxy nexus , and on xda we can find lot of kernel ad rom , but I have one doubt :/
For the kernel the language used is C ?
And for the rom ? Java and C ?
Where can i find the kernel's source and factory image's source ?
O.t : Wich operating system do you use ? Now on my new laptop run window 8 and I ask to my self if is good choice .. For programming kernel,rom and app linux is the best ? or the operating system does not matter ? mmm..
Click to expand...
Click to collapse
The Kernel is Linux, so it's written in C. I don't know about the ROM, I guess it's only Java, but there could be C parts, it's just guess-work.
Here you can find how and where to download and, if you want to, to build your android kernel, while here you can find AOSP (which stands for Android Open Source Project) code.
I personally use Linux (more precisely, elementaryOS, which shares its core with Ubuntu) and haven't used Windows for a long while. I don't know how good/comfortable Android development is under Windows.
It must be noted that getting Java running under Linux is not a one-click thing, but nothing that couldn't be solved by a simple tutorial on the Internet. On the other hand, Linux is way more light-weighted than Windows, which comes handy when you're running on little RAM as I do.
"I would ask you what the language is recommended to develop android's app : "
I would ask you what the language is recommended to develop android's app :
Click to expand...
Click to collapse
He is asking to develop Android application, not Android Rom, not Android kernel.
Please open your eyes!
matheszabi said:
He is asking to develop Android application, not Android Rom, not Android kernel.
Please open your eyes!
Click to expand...
Click to collapse
In my last post I Also asked for the kernel and rom's code and Language
Andreaaaaa said:
I personally use Linux (more precisely, elementaryOS, which shares its core with Ubuntu) and haven't used Windows for a long while. I don't know how good/comfortable Android development is under Windows.
Click to expand...
Click to collapse
I have a doubt of window or linux because on the link that you have posted there are a "tutorial" for source download on Linux but not on Window .. So I try to find another window's tutorial through google search but no result.
P.s : few weeks ago I'm using linux , but on the new laptop there is window 8 and I have to do a backup before install a dual boot for a future restore in case of warranty assistance -.-"
Thanks a lot All You are the best!
I use Windows for Android development. I don't think it makes much of a difference. I use Eclipse as the IDE, which is written in Java, and is pretty much the same for Windows and Linux.
Thought I'd chime in, though the thread has been quiet for two weeks.
Learning Android application development is going to point you first to Java and only Java.
Despite other posts, and Android documentation INSISTING otherwise, developers (myself in particular) DO write applications for Android entirely in C++, using the NDK. It's an advanced technique.
If you were already a C++ developer you would want to avoid Java, and you'd pursue the NDK and C++. However, if you're not a C++ programmer already, Java is a much easier introduction. C++ is a wonderful language, but it's full of complications. It's my personal favorite, and I have decades of experience using it an C, but it is not for beginners. Used correctly, the results can be many times faster than Java applications (despite Android documentation claiming otherwise).
Also, there are a wide range of targets for which C++ is entirely NOT suitable. Simple applications are typical of that.
One reason seasoned developers prefer C++ is portability. Despite a reputation to the contrary, C++ is the only language you can use to write applications for iOS, Android, Tizen, Blackberry and the non-mobile platforms like Linux, Windows and Mac - from a common base of code.
Since I've not been a beginner for decades, I can't really suggestion any great text, but I can say that Java is your language for Android as a beginner.
Kei here
hmm, can't be believe I'm posting my first reply on something like this, I didn't really want to reply but I know your peril.
I'm a mechatronics student and we're more on g-codes and robotics programming but software programming became my hobby, the first book (not the first book but the first book that I related too) I read was "An Introduction into C++" by Diane Zak (there might be a mistake, just google it, I read the book some couple of years ago).
To directly answer your question,
"Libraries written in C and other languages can be compiled to ARM, MIPS or x86 native code and installed using the Android Native Development Kit." (Wikipedia) but you can also use Java or C++, I personally prefer C++.
I'm going to make an example of a c++
------------------------------------------------------
#include iostream
(etc etc)
using namespace std;
.h estuffus
etc etc
\\ Variable section start
int game = 1;
float letterHead = 2
char appleButter = 'A';
\\ Variable section end
then recall the main function bla bla
{
if (letterHead == appleButter)
{appleButter = 'B';
cout << appleButter << endl; \\common misconception within beginners is that they think that cout would display text, it only works on a \\console window
}
else
{
appleButter = 'A';
cout << appleButter << endl;
}
then stop the application
------------------------------------------------------------
It's pretty straightforward once you grasp the basics, If you are making a game... well I kinda regularly dabble with Unity, I'm not advertising, but it's another straightforward engine, you could finish builds and it would then be processed into an apk file.
Don't hesitate to ask me, I could make you a tutorial on scripting, my current goal is to help people understand this area.
HAPPY SCRIPTING :> oh and for the last, I recommend C++ )
It Actually Depends On What You Are Interested in developing.
Let me Explain you one by one:
C
C is the mother of all programming languages.Unix Operating System is built on C.So Stable It is.
So If You are interested in Kernel or System Level Development , U must surely drink the depths of Ocean Of C Language.
C++
Provides advanced Libraries and can be now a days be used for anything right from System Level Programming to Complex Sockets.
Right From Native Android to Network Designing.
Java:
Has Millions Of Classes and is used for anything and everything.You Choose a Topic And The Java Language has an Inbuilt class for your Designed function.
Its a trend nowadays to do android coding in java ..
If you want you can change the trend by using C++ for android using NDK(Native Development Tools).
I would just like to say choose the right language for you and just gain the expertise to the right depths for your designed application. .
you should use Java by default, its a lot easier and Android sdk framework is for Java.
Furthermore java already calls a lot of c native components through jni.
You will only need c/c++ if you need specific native components that are not available by default in Android framework
Main development language for android is Java. For time consuming operation you can consider to use C++ via NDK.
Go with Java.
Learn C/C++ only when you know under the hood. But this is like 'chicken or the egg paradox' because probably you'll never know under the hood without learning C/C++
Java is the language used for Android programming.
I am not sure whether you want to learn Android programming or just look at some applications made in Android. So here are2 sources I found best suitable for you to learn step by step Android programming.
Courses from developer.android.com and udemy.com are worth implementable once.
Regards,
Derrick Spencer
Mobile App Strategist
AppsFlair.com
Hi.
If you only want to develop apps, the system does not matter. However, if you wish to do some kernel development stuff, you must use Linux since Android kernel is a modified Linux.
Sent from my iPhone using Tapatalk
.
Main language is java for android app.But if you want a complex calculator and secure your code,you need C++ and NDK
In my experience I faced a situation when I could not use Java because guys from Google(or somewhere else) simply forgot to include a proper wrapper for a C function =D
I prefer doing everything in Java(because it's super comfortable), but when it comes to calculation speed I switch to C++(up to 10x boost sometimes). For image processing I use OpenGL - it's lightning fast(except some rare operations)
Gi guys,
Thus is my first post.
---------- Post added at 12:38 PM ---------- Previous post was at 12:34 PM ----------
I've built web based database application for my personal purpose.
If I want it can be accessed via android app which language is more stable and comfortable to be used?
Your suggestion would be appreciated. Thank you.