I want to learn how to do a program in a HTC - General Topics

Hi actually im a Java programmer and i want to try to do a little programs to the pocket pc can anyone post a manual and the SDKS etc.. to start development???

if you want to program java your best bet is to program to the normal midlet platform of other mobile phones use
but in general java is pretty poorly supported c#.net have better support and c++ is way more powerfull then both

Rudegar said:
if you want to program java your best bet is to program to the normal midlet platform of other mobile phones use
but in general java is pretty poorly supported c#.net have better support and c++ is way more powerfull then both
Click to expand...
Click to collapse
And then what i need to start learning c#.net? where i can download it ?

http://www.microsoft.com/express/
the syntax is not that much diff from java really

Rudegar said:
http://www.microsoft.com/express/
the syntax is not that much diff from java really
Click to expand...
Click to collapse
Lot of thanks!!!
Last one!
In java we have a API with all the methods and Classes, exist a simillar in c# ???
sorry for my bad english hehe

.net is the platform(api class lib)
c# is the language
where in java
both the platform and language share the same name

PaNa-S said:
Hi actually im a Java programmer and i want to try to do a little programs to the pocket pc can anyone post a manual and the SDKS etc.. to start development???
Click to expand...
Click to collapse
Thanks!

Related

How to learn programming for WM2003 ?

I would like to learn to program for PPC.
I am familiar with x86 assembly , and several RISC assembly langauages, while I understand it won't help me here, I also do know VB.
What language do you suggest I should learn, and what tools/compilator should I use ?
I would like to program an todat-plugin , among other things,
thnx
Visual Studio .NET is rather easy to use..
Your VB skills may come in handy..
There is allso the opportunity to use pure VB, but it isn't really any good..
The integration between development environment, emulator and device is awesome in VS.NET..
I personally use VS.NET 2003, with only VB.NET installed. Works for me..
The downside is that the applications require the .NET framework, and eat a little more memory than well written apps in other languages..
For absolute power and control; C++ as allways..
[Norwegian]
Ps. Fyll ut profilen bedre..?
[/Norwegian]
with .net 2003
you can do vb.net
c# .net
c++ .net
with embedded visual studio c++ you can do
win32 applications
you can do mfc applications
heard there also in an embedded visual studio vb
which let you do vb without being .net
visual studio 2005 .net will merge embedded visual studio and smart device .net (the .net you can do with 2003 visual studio)
[Norwegian]
Ps. Fyll ut profilen bedre..?
[/Norwegian][/quote]
what would you like to know ?
www.madhacker.org
Anyway, I was really looking for something lighter that the heavily overpriced and over-sised MS Visial Studio - but it seems that there are no better options
well there is a free c# compiler both a compiler which run on the pocketpc and one that is just a free windows c# compiler for windows but .net should be able to work on pocketpc's not matter what
and i also have a gcc compiler for pocketpc as in it run on the pocketpc
just about every compiler you can find which can compile arm code you can use to make programs for pda's using pocketpc2002 and 2003(SE)
AlCapone said:
www.madhacker.org
Click to expand...
Click to collapse
:shock:
You are one crazy dude!

Programming

I previously posted on the wrong section, sorry, so I'm transferring it here.
Anyway, I want to know what programs I can use to make programs for HTC Raphael. Can I use Microsoft Visual Studio? Borland? I currently know how to use c and c++, do I need to use c# instead? And are the commands the same with the one on for the PC and for the PPC? So yeah any programs for programming on the desktop or on the PPC?
Thanks in advance!
yeah visual studio will do it
it support
1
.net compact framework for c# which is a subset of normal .net with some of the more fancy controls missing is normal .net programs from pc dont use anything missing in the compact framework they can run directly on the pocketpc unless the rest is not programmed to adjust (c#)
2
it support microMFC which is a pocketpc version of the old microsoft foundation classes
which was ms's object lib before .net (c/c++)
3
it support pure win32 api which again is a subset of the normal windows win32 api (c/c++)
performance wise 1 is lowest 3 is fastes
support in turms of having control without programming too many unmanaged hooks 3 is best 1 is worst
speed to get a project up and displaying something and having some functionality 1 is fastest 3 is worst
dont know about borland anymore guess they support compact framework
So if I make a program in c or c++, I can actually run it already on my PPC? If so, why does the .exe files on my PPC disallows me to run them on my desktop? Do I need to like convert the .exe file I made on my desktop to make it run on the PPC? If yes, is there any program out there to convert it to make it available for my PPC?
you have to run it using an emulator on your pc such as the one that comes with vs
userman777 said:
So if I make a program in c or c++, I can actually run it already on my PPC? If so, why does the .exe files on my PPC disallows me to run them on my desktop? Do I need to like convert the .exe file I made on my desktop to make it run on the PPC? If yes, is there any program out there to convert it to make it available for my PPC?
Click to expand...
Click to collapse
if you have Visual Studio 2005 Pro, you can create a new "SmartDevice" project. This will take care of setting up almost everything you need. You can also later create a SmartDevice Cab project to create an cab for your program.
It is quite straightforward...try a simple hello world program to get used to it.

Advice on a new hobbyist phone?

Hello XDA-dev community
For the past couple of months i've been thinking about getting a Pocket PC for a new phone instead of a Symbian Nokia [ah my old 6630, may she rest in pieces...]. Anywho, I think i've decided on the HTC Touch Pro / Raphael. At ~AU$600 it's the highest I was trying not to pay (i'm not rich), however it seems to be a pretty powerful and full featured device.
I do have a few questions I hope some of the kind experts/veterans here might be able to answer for me though
1) I written a few things in Java and PHP and other even-more-basic languages, but am interested in learning a new language with hopes to create software for both Windows PC and Windows Mobile. What choices do we as end-users have here? .NET is an obvious one [I own a copy of Visual Studio 2008 Pro], but are there any other languages of note?
2) From the Raphael specs on the Wiki here, it lists it as an ARMv6 architecture-based processor. This comes from the ARM11 family, which is the successor (I think) to the XScale family (ARMv5TE). Are these ARMv6 processors backwards compatible with 'XScale accelerated' binary builds of software? I.E., a PPC application has two versions for download/purchase - a 'Generic ARM Release' and an 'XScale optimized release' - would the Raphael ARMv6-based device be compatible with these XScale-optimized binaries? Or do ARM do things differently and ARMv6 is not backwards compatible?
3) Has anybody ever heard any rumors or made any talks about porting Android to the Raphael? Just curious. I'd prefer a Windows Mobile device (not a Linux user) but I can see all this OpenSource stuff does have a future... EDIT: Nevermind, I found the page at http://wiki.xda-developers.com/index.php?pagename=RaphaelLinux
4) How does the device perform with 3D-heavy applications? Does it make use of any sort of acceleration (I assume no, not like the iPhone for example).
OK thats all... thanks a lot for your replies, if there's anything else you think is worth mentioning to a soon-to-be-first-time owner of a Windows Mobile device, please do say so Cheers.
In reply to 2) VS 2005 Pro onwards targets code at ARMv4I, basically generic ARM processors also capable of running the Thumb (16 bit) instruction set. Thumb represents a limited set of ARM 32 bit instructions coded as 16 bit instructions. It allows much smaller code sections, but with megabytes of memory available these days who cares? If you code in .NET none of this matters anyway, as the code is created as IL byte code, the .NET runtime sorts it out.
If you code in Embedded Visual C++ 3 or 4 the target chipset is ARMv4. When you use the IDE to create the code on a WinMo 5/6 machine it complains that the target machine cannot run the code. It's lying, what it really means is it does not recognize the processor class. As it is ARM 32bit code only it will work.
It is not worth targetting the code for a specific, (read non generic), ARM chipset. You are just making a rod for your own back when it won't work on something else.
Thanks for the reply stephj. There will indeed be a bit of research for me to do as to which language and/or IDE I decide to choose to train myself in then it seems. Specifically though...
stephj said:
It is not worth targetting the code for a specific, (read non generic), ARM chipset. You are just making a rod for your own back when it won't work on something else.
Click to expand...
Click to collapse
...what I was referring to is - I've seen some freeware PPC software, mainly emulators, that have two versions - a 'generic ARM' one and an 'XScale Compatible' alternative version. On the ARMv6 based phones, assuming the software was released back when XScale was the newest ARM family, would both work on the Raphael? If so, which would be faster?
Obviously though, for a developer, creating the most compatible/generic code to work on the widest range of devices is the main focus - later possibly implementing optimiziations or hacks that are specific to a certain platform - but I'm just wondering if these already built, older 'specifically optimized' builds are compatible with the succeeded chipsets.
P.S. Do you know where I could find some resources on choosing between Visual C++ or .NET? I.e. pros and cons of each?
Thanks a lot!
jonusc said:
Hello XDA-dev community
...
1) I written a few things in Java and PHP and other even-more-basic languages, but am interested in learning a new language with hopes to create software for both Windows PC and Windows Mobile. What choices do we as end-users have here? .NET is an obvious one [I own a copy of Visual Studio 2008 Pro], but are there any other languages of note?
...
Click to expand...
Click to collapse
Since you have VS2008Pro, C++/win32 if you want fast and lightweight applications
"P.S. Do you know where I could find some resources on choosing between Visual C++ or .NET? I.e. pros and cons of each?"
.net pros
easy to get something running fast even if one is a n00b
got a lot of components meaning less time to develop
can be programmed with c# and c++ and even eeeeewww basic
.net con
slow as in sloooooowww
require one to install the framework if the app
require a newer version then what ones phone came with and the framework is pretty big
and people don't seem to have success with installing it on sd cards
compact framework is also limited in features vs. .net on pc so apps don't just port always
limited in features unless one do unmanaged code
c++ pro
fast
require no extre stuff
small in size and again fast
have access to every feature in the phone
c++ con
one have to do everything and that mean msg loop
and a lot of leg work just to get a dialog with a button
steaper learning curve
more risks of mem leaking
harder to debug as stacktrace is not just there
like on .net
Very nice, thanks for the replies guys
So from what I can gather, a basic .NET application would be ideal for RAD (quick and dirty), particularly GUI-centric applications, but tend to be bulky; whereas C(++) is a more native / low-level language and is thus faster, but very hardcore as most functions need to be done from scratch.
I should have assumed it's pretty much the same as a Windows PC
What about C++ versus C#? And does VS2008 have a decent API/IDE set for mobile development i.e. does it have many libraries for C(++/#) already included or are more easily available?
Thanks again for the answers guys... it's obvious i'm keen to learn about it, but i'm a little worried that someone like me going from stuff like PHP and VB to C might be biting off more than I could chew....? Ah well if .NET is gonna cause problems down the line, then I guess I have no choice
Don't bother with the C++ version of .NET, the casts that you have to make, to get it to work makes the code very hard to read, and besides it only compiles to the IL level anyway, it's just not worth the effort.
So, under .NET use C#, or VB if you prefer, there is not much difference between them, but in my opinion, C# is a bit more elegant.
Under C++ you have the choices of WIN32, ATL (Active Template Library), or MFC (Microsoft Foundation Classes), programming models.
WIN32 is the simplist but the hardest to code, the other two add progressively more objects to make things easier, but you need to distribute the run time libraries with them. A simple WIN32 app can be distributed as a single .EXE if the DLLs it already uses are part of the CE/PPC operating system.
PS When it comes to running code compiled for a specific ARM class on your device, just give it a go. If the CPU hits an instruction it can't run, it will throw an exception and stop anyway.
stephj said:
Don't bother with the C++ version of .NET, the casts that you have to make, to get it to work makes the code very hard to read, and besides it only compiles to the IL level anyway, it's just not worth the effort.
Click to expand...
Click to collapse
Fair enough. So C++ in VS2008 is a bad idea
stephj said:
So, under .NET use C#, or VB if you prefer, there is not much difference between them, but in my opinion, C# is a bit more elegant.
Click to expand...
Click to collapse
I thought VB was dead? Wasn't VB6 the last one they made? Or is VB just what they call generic/common .NET Framework apps? Anyway, yeah i've read good things about C#, especially compared to .NET in general. EDIT: Oh, .NET is not the program language but VB is *facepalm* I get it, nevermind
stephj said:
Under C++ you have the choices of WIN32, ATL (Active Template Library), or MFC (Microsoft Foundation Classes), programming models.
WIN32 is the simplist but the hardest to code, the other two add progressively more objects to make things easier, but you need to distribute the run time libraries with them. A simple WIN32 app can be distributed as a single .EXE if the DLLs it already uses are part of the CE/PPC operating system.
Click to expand...
Click to collapse
Ah, same as a Windows PC. That makes sense.
Thanks for the answers I think I might take a look at C sharp.
C++ in VS2008 is fine, use the smart device WIN32 ,ATL, or MFC models take your pick.
Sorry my mistake, the C++ .NET version is not available for smart devices. Its the three models above only.
After additional research, I don't really want to be tied down with the proprietary C# system. So is VS2008 a decent IDE for WIN32 C++ development on Windows Mobile? Or are there better alternatives?
VS 2005/2008 Pro takes some beating. After you have installed about 3 CD's worth of MSDN libraries all the help is on tap. The IDE also looks at MSDN online if you have an internet connection to see if there are any forums on the same topic you are inquiring about.
The code is generated as ARMv4I and can be tested/debugged on the images provided by the WinMo 5 or 6 SDK. The emulators are that good you only put it on your phone when you have tested it to death on the emulator.
EVC 3 and 4 use a previous method where the emulators run a x86 version of the code. I still use EVC 4 for code that has to run on anything, Windows Mobile 2003 for example.
It's all pretty proprietory, when it comes down to it, but I guess we're stuck with it.

How to made an application to HTC?

Can someone tell me what i need?
C++ or Turbo Delphi or something another?
And what is different when i am programming to PC ant when i am programming to PDA
I think you need Microsoft Visual Studio to do that, it comes with C++, C# and Visual Basic. But I guess there are also other possibilities.
ok thanks i will try something

I want to develop.

im looking to start developing android apps. should i start goggling how to develop android apps, or should i learn c++ first?
i have a 500 page PDF on c++ ( from the university that my brother goes to). the pdf is for beginner's learning to c++ it starts of with the common hello world code and advances.is this a good start?
ps: i hope this is the right section.
Damn! 500+ Pages and for Beginners. I couldn't write that much if I had a whole life time to do it. And maybe Android Q&A.
And yeah dude Google then Learn. Or maybe, Google and Learn. OR! Google what you should do first. SMART!
I would suggest you take a course on it then do some real world placement with seasoned programmers, you wont really develop all of the required skills using a beginners guide to programming.
Android is Java not C++.
I heard that a good Java introductory book is Head First Java. If you have some programming experience I would recommend Thinking in Java.
After you are confortable with Java, you could move to Android specific things. Good luck!
thanks for the replies. the 500 pages of C++ are pdf, and the font is kind of big. im ganna keep learning from that for a couple of weeks to get the very basics. then ill move on to java.
PS: another nub question, what dose Linux have to do with android? is it better to develop on Linux or windows 7?
Android is based on Linux. But you can develop in any platform you want. It is the same Linux, windows or OSX, whatever you have would work.
janfsd said:
Android is based on Linux. But you can develop in any platform you want. It is the same Linux, windows or OSX, whatever you have would work.
Click to expand...
Click to collapse
im a little confused .
andriod uses the syntax java,while andriod is based off linux which uses syntax c, c++, java and fortan. so dose andriod use the java part of linux only or what?
To be more specific, it is based on the Linux Kernel, which is written in C. All the apps are already Android specific, so written in Java. Google developed their own virtual machine (Dalvik) so the developers can use it. It is Java based (on the 1.5 version), but it doesn't support all Java classes. It is still possible to write in c++ with the NDK, but only if you need the extra performance or maybe write a game in OpenGL. So you would stick to Java.
If you need to communicate with kernel, or your application has to do something with great calculation (Such as encoding or decoding), you may need to through Java layer and native layer by JNI, than you need C/C++. Else you just need to write your application by Java.
okay that clears it up, thanks guys. now i just gotta give it time and dedication.

Categories

Resources