Java API and Android - Java for Android App Development

Hi
I know for developing Android apps , We should first instal JDK 7 .
Does this mean that we can use extensive Java classes that defined in standard Java ( Java API ) in our Android apps ???
My purpose for asking this question is :
When we master in standard Java and its extensive class libraries...Does we can use this experience and familiartity with Java API in Android development ???
OR we should learn Android specific classes and methods and our experience with Java API is not useful ???
There are thousands of classes and methods in Java class library ( Java API )...If i master in these classess and methods , Does this familiarity is useful for Android development??? Thanks

First of all: Welcome to the forum.
Well, you must not use JDK 7. You need to use JDK 6.
What do you mean with "extensive Java classes"? You can use normal Java classes. There are just some exceptions (not the Java ones ):
Some classes are missing.
You need to use the Android classes for displaying things. (Have a look at the Activity class.)
There are also some special things like Services, BroadcastReceivers and ContentProviders.
However, if you use the classes for example as a holder for your data, you can use them. You can also add external libraries.
Most classes of the Java API can be used, even Streams and things like that.

Related

Software Development

Can I develop software to WM5 but no .Net frameworks ?
Of course!
In fact it is much better to use native code on WM devices because it is faster and takes up less resources.
If you already know C / C++ go to MS site and download the free eMbedded C++ 4 and the Pocket PC 2003 SDK (don't mind the OS version).
Also if you have VS 2005 download the WM 5 SDK and create a smart device project in C++.
1 cool think about .net though is i had a sudoko or whatever it's called
program for pda and the same exe workd on pc too
but all in all .net is a slow as java though on pocketpc the .net maybe better implemented then the java vm's
levenum said:
Of course!
In fact it is much better to use native code on WM devices because it is faster and takes up less resources.
If you already know C / C++ go to MS site and download the free eMbedded C++ 4 and the Pocket PC 2003 SDK (don't mind the OS version).
Also if you have VS 2005 download the WM 5 SDK and create a smart device project in C++.
Click to expand...
Click to collapse
hi levenum,
i have VS 2005 and WM 5 sdk installed.
well my problem is C++ which i never read seriously but i have a good
working base of C on which i had developed two simple game.
How can i implement the code in VS2005/WM5SDK with minimal
interaction of C++ ?
How can i get working base on VS2005/WM5SDK?
Can u suggest me a tutorial or any free book?
with c vs. c++ it's really much the same ++ is just an expansion with nativ class and other object orientented features
any c program should be able to compile using a c++ compiler
but i doubt you can write CE programs or even windows programs without using any kind of class related code
heck you cant even do that in basic (evil language) or c#
the internet is soo full of free programming stuff it's not even funny
buying paper books is a thing of the past imho unless you want to read while on the toilet and dont have a laptop or pda
http://www.brpreiss.com/books/opus6/
good googling for more
Actually, except for M$ nasty invention called "COM" there is nothing in Windows API that requires C++.
In fact I rarely use classes unless I am building an MFC app to save time.
Also, (can't remember the link for the life of me) but there is some way of accessing class objects in pure C using some struct tricks.
So basically you can leave fine without the ++, but you may need to work a little harder.
You should just create a basic smart device project. VS will generate a "hello world" app for you and you can see how it works. Moving from C to C++ should be very easy.
It's C# that is no longer a real programming language
P.S.: Did you know most of Win CE DLL are actually written with ANSI C?
levenum said:
Actually, except for M$ nasty invention called "COM" there is nothing in Windows API that requires C++.
In fact I rarely use classes unless I am building an MFC app to save time.
Also, (can't remember the link for the life of me) but there is some way of accessing class objects in pure C using some struct tricks.
So basically you can leave fine without the ++, but you may need to work a little harder.
You should just create a basic smart device project. VS will generate a "hello world" app for you and you can see how it works. Moving from C to C++ should be very easy.
It's C# that is no longer a real programming language
P.S.: Did you know most of Win CE DLL are actually written with ANSI C?
Click to expand...
Click to collapse
thanx,
i had already compleated "hello world"
and C++ is really not much away from me
actually i only have a single problem:
How can i get working base on VS2005/WM5SDK?
Click to expand...
Click to collapse
well i think it is more exactly Win CE API knowledge which i require.
How Do I Start Cooking Roms
I Know A Bit Of C++ ,how Do I Start Cooking My Own Roms
tawanda: first off - your question has nothing to do with this thread, if you have an unrelated question you should start a new thread BUT search first to make sure it was not asked and answered a 1000 times!
As for your question - cooking ROMs is not programming - it helps to know a programming language but what you really need to do is familiarize your self with the tools used to pack and unpack as well as dump and flash ROM images.
Note that these tools are different for different devices or at the very least need to be configured differently.
I recommend you start by reading the WiKi.
After some years of absence from the programming world I think now I've time enough to start again. I'm familiar (but a bit rusty) with assembler, C and C++, but I think I have start more or less from the beginning.
I already installed Visual Studio 2005 and the WM05 and WM06 SDK. Now I'm not sure whether I should use C# or C++. The big difference is that C# needs compact framework?
Your question is mainly a matter of personal preference.
Here is my opinion on C++ vs. C#:
C++ advantages:
- Native code is faster than .NET
- Easier access to Win32 APIs
- Ability to write system components like keyboards and today plugins.
C# advantages:
- Saves on coding time
- Allows use of many .NET CF components to quickly accomplish complex tasks.
Please note that I am bias. I hate .NET and want nothing to o with it. Specially on mobile devices that do not have the processing power to spare for the .NET overhead.
I second levenum's recommendations -- I've been programming big Windows for 15 years and have managed to avoid .NET. Of course most of what I do these days is NDIS driver programming, so it's mostly straight C, with C++ for supporting user-mode code.
Avoid MFC -- it adds a bit of overhead which is OK for big Windows, but not for WM. If you're going to use a C++ framework, I highly recommend using ATL/WTL -- it's what MFC wants to be when it grows up.
I'm looking at my visual studio 2005 and wanting to covert my c# application to C++...
I clicked on a new project and i'm looking at the various options in Visual C++ for Smart Devices. There are a few to choose from... how do I know which one I want to choose?
ATL Smart Device Project
MFC Smart Device Application
Win32 Smart Device Project
MFC Smart Device ActiveX Control
MFC Smart Device DLL
Can you guys tell me the difference between those options and which I should use to develop for WM6?
Thanks,
Derek
imho then a good pro of c# vs. c++ is the nice object lib that .net give
mfc is pretty crap in every respect and if you do pure stk
it's more work to make it object orientated
"ATL Smart Device Project
MFC Smart Device Application
Win32 Smart Device Project
MFC Smart Device ActiveX Control
MFC Smart Device DLL"
depend on what you want to do
i mean DLL is not a program but a lib that other programs can access
but then today items are dlls
win32 is pure win32 stk where you pretty much have to do all the prev work to get your application up and running
mfc is microsoft foundation clases it's an somewhat dated object lib from ms which makes making an application faster it pretty much give you a dialog and let you place components such as button on it
ActiveX is an somewhat evil internet programming platform
atl http://en.wikipedia.org/wiki/Active_Template_Library
you can prob find more info about everything you want more info about
from wikipedia too
thanks for the info rudegar!

Which language to take?

hi!
next time i wanna try developing diamond apps on my own.
a few years ago, i developed software for pocket pcs using eVC++ 3.0. so you can see i'm used to programming and c++. i also wrote some java-stuff for symbian mobiles, means i do know java too.
in this forum, i saw quite a lot of code-snippets using c#. it looks similar to java and c++, from what i can tell by now. i'm very curious about learning that language in order to write my own diamond applications. so here are my question to the developers:
- are there any limitations to c#? on a pocketpc, you could nearly do everything with c++ and the win api. but java was very limited.
- can i use native api functions?
- which language is the most used one, when it comes to winmobile developing?
- c# is microsoft, right? does it make sense, to learn "a ms specific" language, instead of reactivating and strengthening knowledge in c++ and/or java?
thanks a lot for your advice!
yours, hebbe
I don't know so much about developing....... but some friends of mine develop app for WM and use VisualStudio 2008....... In this package you can find some compilers and I think Visual C++ is the best tool for writing apps....... But I'm telling you.... I'm not a developer, I only give you some information about what I found out listening some friends.
Now it's up to you........ Have a good luck!!!
To answer your questions:
C# does have a lot of limitation on WinMo platform. There's a lot of functionality that is missing from managed .NET libraries on WinMo. There are additional libraries that you can use to gain some of that functionality back, like OpenCFNET.
You can use native api, but you have to create COM Interop wrappers to call them.
C++ is still the language of choice for WinMo development.
C# is part of Microsoft .NET framework. The reason you see a lot of people use it, even with all of the limitations in WinMo environment is that it's a very popular language that can be used for any aspect of development (i.e. windows forms, web, devices, etc.). C# is also kindda not "ms specific" language, since there's a Mono framework, that allows you to use C# and .NET on almost any platform, including Linuxs and Macs.
this isn't the place to ask questions, there is a Q&A section for that.
thank you

Where to start with android devving?

I am very interested in beginning to develope for android.. I just simply do not know where to start. (I am only 15..)
http://www.vogella.de/articles/Android/article.html or google "android tutorial"
Android's own guides are pretty good
http://developer.android.com/resources/tutorials/hello-world.html
(This assumes that you already know how to program in Java)
If you've got c++ background, google the Android NDK - that lets you sidestep the Java and work in c++ instead
If you know any C++ like programming language (this includes Java, php and similar), then simply follow the Android Developer Resources.
If you have no programming knowledge, you can either learn Java, or try the AppInventor: http://appinventor.googlelabs.com/about/

What is NDK ? why we use it ?

Welcome
I want to explain here shortly what is NDK ?
NDK stands for Native Development Kit. It is a good tool which enables you to use native languages like c/c++ in your apps besides android development code in java.
You may ask why i should this tool and write code in hard languages like c++ ?
Well, actually c++ is more complex than android code with java but it is very helpful in some apps like games
Especially, if you are ios and android developer and want to make a game, you will develope it for android by java then you will develope it by xcode and objective c for ios.
But if you made it by c++ using NDK, you will almostly use the same code in ios version and maybe make a little tweaks, so you will save a lot of time :good:
So it is very useful and time saver for apps will be made for ios and android platforms.
For more information about that, check android website by google for NDK and many other resources
Thanks for reading
........ and to think I thought NDK was the spark plugs you add to the development kit...... to give your work some Zing !

Do I need to learn Java to program in Android Studio?

Do I need to learn Java to program in Android Studio? Or I can just jump straight into it? If I must learn it, can u guys show me a great way of learning Java? (I have a Pascal basic BTW).
You definitely must. Java is the main language for android development and without knowing it you can't do anything advanced.
To start learning you can use docs.oracle.com/javase/tutorial/. But learning is nothing without practice so start your own project and use Java in it. It's relatively easy language so you can start quickly.
s0nicyouth said:
You definitely must. Java is the main language for android development and without knowing it you can't do anything advanced.
To start learning you can use docs.oracle.com/javase/tutorial/. But learning is nothing without practice so start your own project and use Java in it. It's relatively easy language so you can start quickly.
Click to expand...
Click to collapse
Thanks Brother i was also looking for some tutoral sites....and found nothing for my choice...i have basic knowledge in Java and Codes 2apps also..check my threads but can u plz send me some Video tutoral video for android app development i want to add advanced Features & libraries
ARGHA_DAS said:
Thanks Brother i was also looking for some tutoral sites....and found nothing for my choice...i have basic knowledge in Java and Codes 2apps also..check my threads but can u plz send me some Video tutoral video for android app development i want to add advanced Features & libraries
Click to expand...
Click to collapse
You are welcome. To be honest I don't know any video tutorial and personally I think the best way to learn programming is practice. So just use any Vogella's tutors and code your apps but always try to make them more complex.
Java is important for Android studio
Yes, you need to learn Java properly before visiting android studio.
Because Java is key to do programming in android studio for Android developers.
appninjaz.co.uk/services.html
I learned from a YouTube series called "mybringback" 5 years ago. It's still a good place to start. Also, a great website that interactively teaches you to code is Codecademy.com. They are mainly a web-development website, but recently added java to their courses. It may be worth trying as well.
Root it and boot it!
Current device: Asus ZenFone 2 (Z00AD/ZE551ML)
ROM: Resurrection Remix
Kernel: FlareM
Service: Straight Talk
Check out my apps on Google Play
I have collected many good tutorials for Java and Android here.
Hope it helps
It best to learn Java, but today you can also use Xamarin to develop cross platform apps using .net (Visual Studio 2015).
java is main language to android studio
if you are using android studio, Java is a must. But you don't have to learn core java, you can just jump in to android programming, coz there are lots of different library there.
i would suggest using android studio instead of others, beside they are free, they are directly from google
Yes, java is must in order to develop android apps. Android virtual machine runs java codes. So android apps needs to be in java.
Now a days, there are so many frameworks and tools available which allow you to develop android apps in other languages and convert the apps developed in other languages to java code to deploy and run on android.
I think it is a good idea to directly code in java as you can easily understand concepts involved in android os and develop apps that perform well proving best user experience.. It is not difficult to learn java and android framework to develop android apps.
As others have pointed out, yes you must. However, if you have Pascal/Delphi background, that helps a lot! So loops/ifs/functions are no stranger to you. You "only" need to learn about classes, interfaces and such stuff, not very hard.
Luckily for you, there's literally thousands of Java tutorials, books, videos, anything you can think of. I always like to stick with books from respected authors and/or the language authors. So for Java, I'd go with https://docs.oracle.com/javase/tutorial/java/nutsandbolts/index.html (just an example, there's tens of other valuable books/tutorials).

Categories

Resources