[Q] The various versions of Android and XPath support - Android Software Development

Hi folks,
I am a newbie in the Android world, having limited experience in Java from my varsity days decades ago. These days I am a pampered dev in the .NET world.
These days I am a proud owner of an HTC Desire and decided to try my hand at Android dev. Now I have struck a bit of a dilemma. I am writing an app which heavily uses XML chunks of data. I immediately notice there are two ways of doing this - I can laboriously navigate down from the root level, or (somewhat less laboriously) I can use XPath. The trouble is XPath is only supported at a minimum API level of 8 according to the docs. Ideally I would like to support down to 4 (which is 1.6 I think?)
What is the best way of doing this? Are there external libraries or packages I can use? Please remember I am a complete newbie so please correct me if I am mistaken in any of the above.
Many thanks,
Dany.

Related

New programmer on pocketPC... advice?

hey guys, I'm a career developer with tons of experience in a lot of things except PocketPC. I want to play around a bit with PPC, but would like to hear about the development platforms, languages, etc. that you're using and what you like about them. I don't know anybody personally that's even remotely interested.
I'm currently using VIsualStudio2005/C# for my day job, and am pondering whether that's a good fit for PPC. A lot of documentation exists for both managed and native PPC C# code. Managed code is more like the stuff I do all day.
What I've found so far is that managed code requires runtimes to be installed (already there on WM6 i hear), there's a noticeable delay when starting a managed program, and a lot of functions are missing from the .NetCF.
I'd probably be writing business apps (database stuff, web back-end client/server, etc.) as well as hacks like today plugins, utility programs, etc.
Should I just start right out with native coding, or try and hack away with managed code. What's your opinion?
roboHaxx,
As i'm sure you're already aware of, choice of language on this environment really depends on the application you're designing.
I tend to use Visual Studio/C# for applications that I need to develop rapidly where I'm not too concerned about load times. The .NetCF libraries really helps in ensuring things get done quicker but there's a tradeoff in speed and functionality but not by too much thanks to all the new spec devices that are coming out.
If I'm developing something that doesnt need to get done faster, and I need quick loading times (like today plugins for example), I tend to stick with C (evc4).
Personally I stay away from .NET and all related stuff like it was toxic waste.
As kunz wrote it is too slow for PPC (at least for now) and if you want to use the .NET CF 2 any user with a device prier to WM 6 (which is the majority for at least another year) will have to install 5MB worth of run time.
But there are some very nice apps made with CF already out there like Hitchhiker so it defiantly has its place.
One problem though: if you want to develop system components like today plugins, keyboards (SIP) or control panel applets you will need a component written in C / C++. All those are DLLs that the system expects to export certain functions. This can not be done with managed code, and as far as I know not at all in C#.
One final recommendation: look up all threads started by Vijay555.
He wrote a pretty good summary of programing tools and options for WM devices somewhere on this forum.
Thanks for the replies. I'm think I'm starting to get a grip on this platform.
Sounds like the same principles as programming on a PC. For business apps (like in my day job), the managed, quick-to-market environments like C#, .net and CF2 prevail. But for performance, versatility and access to everything, C is the way to go. C++ if you must.
by the way, I thnk you can create DLLs in any Visual Studio language. I do it all the time with C# and VB. Now whether these DLLs can export the functions that are needed in PPC, I don't know the answer to that.
kunz, you said
If I'm developing something that doesnt need to get done faster, and I need quick loading times (like today plugins for example), I tend to stick with C (evc4).
pardon the dumb question but, what is evc4? A compiler I presume. That was going to be my next question. Which compilers do you like?
eVC is eMbedded Visual C++ 4.0 its a free C++ IDE for Windows Mobile from Microsoft.
It is almost identical to VS 6 (if you are familiar with it).
It won't except WM 5 or 6 SDKs, but any program create on it (with WM 2003 SDKs) will run on any Smartphone or Pocket PC starting with WM 2003 through WM 6.
For older versions you will need eVC 3.
The following pages should provide some useful information:
http://channel9.msdn.com/wiki/default.aspx/MobileDeveloper.HomePage
http://www.pocketpcdn.com/tools/index.html
Enjoy!
Hi,
I am programmer but I'm new in mobile development too.
I have an ideal to write a program that can speak the caller number instead of ringtone. The problem is that I don't know how to get the receiving call events.
Can we solve this situation with .net compact framework?
Anyone have documents to share?
Thanks

So many question, so little time.

Hello all,
I am new to the Android scene and I wanted to find out if there are any good tutorials on app/rom development, what are the programming languages used, etc... I know learning from scratch is probably a long and bumpy road, but it is something I am interested in. I have already rooted and flashed my phone, good times that was. Thank you all for your help.
Th3Cap3
What's your existing programming experience? You could do worse than check out the anddev forums. App development is principally in Java though you can write parts of apps in C or even assembler.
My existing programming consist of very very very basic python, and some web stuff like HTML and CSS, I would basically have to learn how to program the ones you have mentioned from scratch, I have books for most of those though. I will go check out those forums and see what I can dig up Thanks for the info.
I bookmarked that page thank you, I just got a hold of their Eclipse software and all of their beginner tutorials I can't wait to dive into this stuff.
Me too. I know C, but only have a passing acquaintance with Java & Linux; Android I know even less about, not having encountered it till getting my Hero in February. I'm working my way through Thinking in Java (Eckel) to be followed by Professional Android 2 Application Development (Meier).
Even if your grasp of Python is basic it's still a start - you don't have to struggle again with fundamental procedural programming concepts like conditional execution, program flow control & so forth. Plus Python is an OOP language, aiui (I don't know Python) so you have a head start there too
I've installed Java, Eclipse & Android's SDK on this Windows box, but I'm thinking of dual booting Ubuntu as some things just work better in Linux, especially if one wants to cross compile ROMs. Aiui Cygwin, which I already use, can be a little problematic & when one is likely to be asking for help at times, it's useful to be using a similar set up to most devs.
I have been thinking about dual booting again, I just havent had to time to partition my drive and install some sort of linux release, UBuntu is the one I am most familiar with, which isnt very, but its a start.
I am going through those video tutorials from anddev.org right now, it seems to be similar to Python in the way the coding is done, I am excited.
I have also downloaded the Eclipse program, but I have the pulsar version, it seems to be geared more towards mobile development and I have gotten the Android toolkit installed and I have had the Android SDK from when I rooted my Hero (Which is awesome, running the newest Damage Control) good times.
I think I may have a java book on PDF somewhere as well, I will have to go look.
Atm I can't make up my mind between dual boot & Virtual Box, or maybe both, to see if I can wean myself off m$
I have been thinking about the dual boot option a lot since you mentioned it, not sure what to do, I may wait till this quarters class is over so that if something goes missing. it Sony be a big deal
Sent from my HERO200 using the XDA mobile application powered by Tapatalk

How challenging is making an app?

I am not to sure if this is the correct area for this. But I am wondering how hard it is to make a Android game? This isn't something I want to just jump into, but learn while I am doing it and take my time.
So how challenging is it to someone who has no experience?
Thank You
Do you have any programming experience at all?
If you know languages like C++ or Java you're pretty close already. Android is programmed in Java, and you need to be familiar with Java's memory management to understand what happens behind the scenes since memory is critical on a mobile device. Also you should get some experience with multithreaded programming, since most times you'll need threads to complete tasks without getting the UI stuck.
Android uses a component based architecture that might be a bit unfamiliar in the beginning, since there's no 'main' entrypoint and you have to split your app into 'activities' that talk to each other through 'intents'.
Games present additional challenges, since they often require you to take care of several things involved with graphics and audio, so maybe they're not the ideal first step into programming.
I started programming for my phone on my Touch HD (windows mobile 6.5, using c#). I'd done some java (not a lot, really, and I hated it), some c (a bit, liked it much more) and quite a few script languages.
I have to say, I got into c# with the compact .NET framework VERY easily. It was very straightforwards, nicely syntaxed ... it was just programming as I'd known it. I've made some office apps, one or two games (just for fun, although the apps were meant to be sold ... **** MS for going wp7 and incompatible!; they were solid pieces of software engineering, if I say so myself)
Two weeks ago I got my Desire HD and a few books on programming Android ( O'Reilly, Sam's) and went looking through developer.android.com .
And I have to say, I find it hard! The concepts and how they work together are a bit ... uhm ... distributed. Good software design, but hard on the programmer (and ****ing verbose to actually type in the porgamming! Sheesh!). It took me a while to grok how all these systems are fitting together: to be honest, I'm still trying to make it all jell. All these intents, services, activities, broadcast receivers ... very interesting, but just thinking of the best (or even correct!) way of setting up your porgram is kinda difficult.
But, that's just me, in two weeks time in my spare time. I am getting it now and it is interesting (and, actually, very well set up for what they want android to do/be). c# was just easier, friendlier and faster to get into.
Sorry if this sounds negative: learning a new language isn't EASY, but it is FUN And very informative. If you have a few hours to start off with and then an hour a day, go for it ... but keep in mind there are easier/more straightforwards programming languages/environments than android (or so I think).
I would like to know this too because I got my HTC Wildfire for a few months now and I just rooted my phone yesterday to get into the whole development and modding.
I would like to learn how to make a widget first and then move onto a app/game. My goal would be to know how to create a 2D based side scroller, I would like to recreate "Bio Menace" for the Android. (I have the sprites and maps, now I only need to learn to make it into a game). (Bio Menace was my all-time favorite game when I was a child and I sometimes still play it on dosbox, but I would like to take it with me on transits to work)
I have no experience in Programming at all, I only did graphical stuff (Photoshop, 3DS Max) I know a little html for basic websites, but this was also more in Dreamweaver with the layout to designer.
So I found these books on android, but before I begin to read any of them. Can somebody tell me which book is best to start on first or which book to skip? I also like a video tutorial, but has anybody seen it? Is it any good?
Ebooks
Apress: Beginning Android 2 http://apress.com/book/view/9781430226291
Apress: Pro Android Games http://apress.com/book/view/9781430226475
Apress: Pro Android 2 http://apress.com/book/view/9781430226598
CommonsWare LLC The Busy Coders Guide to Android Development http://commonsware.com/Android/
Sam's Sams Teach Yourself Android Application Development in 24 Hours http://www.amazon.com/Teach-Yourself-Android-Application-Development/dp/0321673352
O'Reilly Media: Building Android Apps with HTML CSS and JavaScript http://oreilly.com/catalog/0636920010067
O'Reilly Media: Hello Android 3rd Edition http://oreilly.com/catalog/9781934356562
Video tutorial
O'Reilly Media: Developing Android Applications with Java, Part 1 http://oreilly.com/catalog/0636920001690
Sorry to threadjack you, but it made no sense to me to start a new thread on the same topic. There really should be an own section for noobs or a good sticky with this kind of information for noobs.
lol Im in the process of learning java right now, basic java though.
Mathods
Interfaces
Static Methods
Im pretty interested in what I need to know for development on the andriod platform. By mid/late spring I should know quite a bit more. Taking an Advanced java course. Current I only know C#, C++, and Visual Basics.
Never worked on a GUI before =(.

Changes in SDK 1.x -> 2.x

Hi there
not THAT much threads here related to development questions. Now it's absolutly ironic that I ASK this, cause Im no dev and coded the last small tools in C some 10 yrs ago. I'm a complete and definite noob in C++ ... bada SDK is my first contact with C++. I though it's interesting to try some first steps in bada.
Started in SDK 2.0.2. I found out that code examples in Internet relate to bada SDK 1.x and things seem to have changed here and there. After 3 days I was able to understand structurally what I collected together or found in help.
Question: What did you guys face as difference in 2.0 compared to 1.x?
I wasn't able to invoke the app "terminate()" command. What do I need to include/declare? I'm puzzled. this is the most difficult exit function of all languages I know
I had trouble to insert a photo as the splash screen. You guys have difficulties too?
More philosophic question: What do you think of Samsung, that they gave you SDK 2.0 and even started a competition, while there's STILL NO bada 2.0 device ready? So you can only test in Emulator or Remote ... is it normal in this industry that you don't have access to the target platform while creating an app?
Oh, just want to mention: I'm no competition - I'm too uneducated to code - and no time for a serious app.
Ray
Its simple, alot of things gone easier.
CustomList, GroupedList, SllidableList, IconList, ... all collected to two types
ListView and GroupedListView, they both are using SimpleItems (Image, Text, Option) or a CustomItem as we devs them wish. GroupedItems are in GroupedListView and saying itself what they does, both lists have a fast scroll option and automatically relocating on need their items. The best autoscroll for bigger text in elements and of cousre the behind Context menu for each item which can be changed in different ways if user slides left or right and so on. Finally to update the list, only UpdateList() is needet not after every change every item as i used in badaSI before.
Than we have the powerfull Gallery that provides all featuers to show pictures as you all saw it in badas Gallary App.
Then header and footer, very nice, devs can so made a good basci gui that looks good integreted to the os, the best function of them are the back button option with its listener, it reduces a lot of time.
My pesonal favorit is the extension for animation class, there you can make every thinkable animation for forms, panels, controls and other stuff, with some code lines. So the UIx is improved and no extra code is needet.
I would rather say that the 2.0 sdk makes c++ a lot of easier to use also for beginners, the api itself is self explaining for what it stands, so it is not like old c++ stuff bada SDK makes many things alot of easier than people think. And of course it has more oportunities than other ... and so on.
Push Notifications and some old unaccessable System Privilegs are now free to use for every developer. Auto resolution takes a lot of work from us all devs.
PThread is addet so porting applications from other oses like ios are much easier, in my oppinion useless cause i am not porting i am writing from scratch.
In a whole overview of the new sdk, a lot of new stuff that makes everything easier, and the old stuff is still in there to support older applications. so no visible changes are there if you see an custom list or a listview in voluntas as example, but the behind things made it a lot of easier and better for memory.
And so on....................
ah, so push noti was there before, but only to priviledged partner dev's right?
Lari, you list is your favourites? What of them will help most often? Header/Footer? Auto Resolution to unite higher and lower lever Waves? Let's see if there's still two separate bada versions for the 2 familys.
Ray
So finally I got the Terminate() function up and running ...
In the form.cpp I had to add these:
#include "<myappname>.h"
... to get declaration of my app name
using namespace Osp::App;
... to enable the Terminate function (don't know if the include makes this unnecessary now ... in "<myappname>.h the public Osp::App::Application,
is used as class
<myappname>::GetInstance()->Terminate();
... only with this the function worked.
Is this standard in C++? Help didn't show me this way, and it seems quite complicated for me as a former ANSI C amateur
Ray
hello? zehn zoicha kaesdreck!

Develpoing GUI in Java

Hi everyone,
some days ago, i was substancially forced to join an Android project by my professor.
The fact is that his course was about C++ (your equivalent of that course should be Compuer Science II, and i have a good knowledge of C++), and this project is in Java. I have a little experience in Java (in fact, one of the courses that i am attending is focused on Java). Now, i think that in order to be a Computer Science engineer i have to fit myself to the situation ( i have some docs about the project) but i have no experience in Android app development and a very little knowledge of XML, so i ask you some help :good:.
What i have to do is to realize some GUI for his application. It is not very difficult, but i have no idea about from where i have to begin. In these 2 days i have managed to start some very simple application from Eclipse on my smartphones, but that's all, nothing more. So, is there any book or (better) some short guide or video to follow?
I use, as IDE, Eclipse (because i usually use it for Cpp, but some people said me that Android Studio should be better). I know that Eclipse is a really god IDE (For Cpp i tried also CodeBlocks, VisualStudio and Netbeans), but i know too that it raises some error that newbie user could not managed to solve easily: one of them is a java.lang.nullPointerException raised in every main.xml file...
Moreover, the project has to connect to a IBM Bluemix-stored database.
Last but not least please share a comment about my English (that, i have to admit, is not very good). I would really like to know how it - really - is.
(Excepting the typo in the thread title).
So, i ask you to kindly share resources (video, guides ...) about realizing GUI in Android.
Well first i'd recommend using android studio since it is the official ide for android by google, and I have worked with eclipse for 2 years and the android plugin is just too buggy.
About designing the ui it is usually done in xml rather than in code since its more intuitive and there is a preview.
You should start learning the basics and from there they teach you how to design the ui.
Try the official guide in the google developers section for android "developers android training"
Are you talking about https: //developer .android.com /training/index .html ?
Yes exactly, they have some nice guides there.
Here is a very nice guide for creating your first app in Android Studio: http://www.raywenderlich.com/78574/android-tutorial-for-beginners-part-1
Here is a layout tutorial: http://code.tutsplus.com/tutorials/android-user-interface-design-layout-basics--mobile-3671
Here is a compilation of Android beginners tutorials: http://www.sitepoint.com/12-android-tutorials-beginners/
If you give a more focused description of what you are trying to achieve (what are you intending to display and how do you want to display it), more focused tutorials can be suggested.
Best of luck
EliteRazor said:
Hi everyone,
some days ago, i was substancially forced to join an Android project by my professor.
The fact is that his course was about C++ (your equivalent of that course should be Compuer Science II, and i have a good knowledge of C++), and this project is in Java. I have a little experience in Java (in fact, one of the courses that i am attending is focused on Java). Now, i think that in order to be a Computer Science engineer i have to fit myself to the situation ( i have some docs about the project) but i have no experience in Android app development and a very little knowledge of XML, so i ask you some help :good:.
What i have to do is to realize some GUI for his application. It is not very difficult, but i have no idea about from where i have to begin. In these 2 days i have managed to start some very simple application from Eclipse on my smartphones, but that's all, nothing more. So, is there any book or (better) some short guide or video to follow?
I use, as IDE, Eclipse (because i usually use it for Cpp, but some people said me that Android Studio should be better). I know that Eclipse is a really god IDE (For Cpp i tried also CodeBlocks, VisualStudio and Netbeans), but i know too that it raises some error that newbie user could not managed to solve easily: one of them is a java.lang.nullPointerException raised in every main.xml file...
Moreover, the project has to connect to a IBM Bluemix-stored database.
Last but not least please share a comment about my English (that, i have to admit, is not very good). I would really like to know how it - really - is.
(Excepting the typo in the thread title).
So, i ask you to kindly share resources (video, guides ...) about realizing GUI in Android.
Click to expand...
Click to collapse
You can take a look at vogella web site tutorials
They have very usable tutorials, easy to understand.
Thanks everyone, i'll give a look to these resources

Categories

Resources