[Apps]What Iv'e learned in the past few years - Your Portfolio

Hello everyone, I'm Matt and I have been learning Android (java) on my own for the past few years. I had no prior programming experience, or even a clue of what went behind it all. One year, an interest sparked in computers and mainly Android which resulted in me pursuing app development as a hobby.
I want to share the results of my tinkering/learning of Android with XDA. There is still much to learn, and I plan on improving all of my apps. Learning by myself (and the internet of course) has been a long bumpy road, no doubt. For those of you who are interested in app development, do not lose faith and maintain your determination.
My Device
A handy app that shows detailed information about your Android device
https://play.google.com/store/apps/details?id=high.caliber.productions.my_device
Math Cards +
Simple math problems
https://play.google.com/store/apps/details?id=high.caliber.productions.mathcards_plus
All-in-one Soundboard
Many sounds at the touch of a button
https://play.google.com/store/apps/details?id=high.caliber.productions.all_in_one_soundboard
Stupid Laws
Some ridiculous Laws in the U.S.
https://play.google.com/store/apps/details?id=high.caliber.productions.stupid_laws
What About Root
An app that explains what the term root is o Android Device, and the pros and cons of it.
https://play.google.com/store/apps/details?id=high.caliber.productions.root
Please keep in mind that most of these were a learning experience for me. I welcome and encourage all feedback here. I will add apps as I make more. Thank you for reading, enjoy!

Related

Android Development School

Where is the best school or course for learning to program android?
Sent from my Droid X2 Eclipse Rom + BNB Theme
You should learn Java first, I guess. And then just read some communities and blogs of practicing Android developers. Also watch videos and read tutorials. Try developing simple apps and practice will make perfect I don't think any organized schooling is needed for this. Most of the Android developers I know learned this by themselves, just because they liked it and wanted to become professionals.
Check the search function this topic gets covered weekly.
It is quite impossible for someone to recommend you the best android course.
First off only people near you could recommend you one you would actually visit.
You would not go to germany if germany has the best android courses, would you?
Also it is a bit like getting your drivers license, yes you can do an android(java) course and learn something there, but you only really start learning and advancing your skills after the course when you are driving/programming yourself without preset tasks.
Fredter said:
You should learn Java first, I guess. And then just read some communities and blogs of practicing Android developers. Also watch videos and read tutorials. Try developing simple apps and practice will make perfect I don't think any organized schooling is needed for this. Most of the Android developers I know learned this by themselves, just because they liked it and wanted to become professionals.
Click to expand...
Click to collapse
Could not have said it better .
Thanks for the help.
Sent from my Droid X2 Eclipse Rom + BNB Theme

[Q] To: MODS - Guide to the Hacking your Android?

Hi Mods, i am a Android user who has been playing around with Android devices for almost a year now, putting ROM's and Kernels, etc on my devices. I had a Mytouch, Galaxy S 4G, and Asus Transformer. Unfortunately, i don't have time to read through all the threads and develop ROMs etc, and i do appreciate all the time and effort that the developers put into it. I am just a normal user who would like to utilize the full potential of my devices (and like to show Apple users how we can kick their A$$e$. I had a thought recently. It would be so useful to all the regular users to have a BIBLE, that gives us the general steps of rooting, installing roms, definitions of terms and abbreviations, and different mods. It doesn't need to be device specific (or maybe it does). I believe it would help everyone out a lot and help bring some uniformity to the world that is Android.
I hope someone would consider this wholeheartedly. And again, BIG THANKS to all the developers!
Yes, I too think that this sounds like an awesome idea. Something like a wiki from xda-developers. With real noob tutorials and introductions. That way, people who are interested in diving deeper into that have a starting point and xda has a recruiting effect. For example I myself would love to learn about developing from scratch because weeks ago i started my studies where I learn java and c++. Having to search for every tiny bit of information is just annoying...
theres already tutorials out there on some basic things...
Yes sure there are some tuts but nothing like a compendium..
Sent from my HTC Sensation Z710e using XDA App

[Q] Android Development for Operating Systems class

Hi guys,
I'm new to the forum, but I plan on developing ROMs with a few people, so I will probably frequent them soon.
In my Operating Systems class, I was asked to come up with ideas for a project. Well, since I'm just starting to build Android ROMs anyways, I was going to see if I could use this idea for class. I guess my question is, do you guys think this would be a good project to last a few weeks of the semester (at least)? If not, can you suggest ways that will make it longer or shorter? We would be building them for a Droid Incredible.
I have a general idea, and it seams that just getting an AOSP ROM up and running would be no problem at all, from what I read anyways. It seems like the tailoring or the importing of ROMs is what really takes time and effort.
Thanks in advance for the input.
It depends on the class skills. But it's really great idea to study Linux and low level Android features. uh.. I didn't have such interesting project during my university years ((
The only big issue is high initial level of knowledge. Also many peoples may quickly give up fighting with some unclear compile or deploy issues. It's not trivial to debug on such devices. They may quickly lost their interest. But overall this is great idea. Where are you teaching?
I'm not actually the professor, I'm a student at Saginaw Valley State University (Michigan). I'm the "Class Leader" so I told the professor that I would give him the list of ideas I had for projects.
If it's for a grade, it might be a good idea then. They may lose interest, but if their grades are on the line, I would hope they struggle through it. Plus, we are all in groups, and they can pick another project if they don't like this one.
Thanks for the info, Purler.
Does anyone know how different it would be to make a ROM for something that requires a mouse input, like the Raspberry Pi?

[Q] cannot root the tablet

I unlocked the bootloader from Sony. How can I root it?
stephenyu said:
I unlocked the bootloader from Sony. How can I root it?
Click to expand...
Click to collapse
You need to flash a custom kernel.
Thankfully, DooMLoRD is awesome and supportive.
Ricky D said:
You need to flash a custom kernel.
Thankfully, DooMLoRD is awesome and supportive.
Click to expand...
Click to collapse
THanks
I flashed it. The tablet cannot power on
stephenyu said:
I flashed it. The tablet cannot power on
Click to expand...
Click to collapse
Someone tell me why I am not surprised at all... :/
To be a bit more constructive: It's a real common problem - "root experts" usually use a kind of secret language when talking about root issues and how-to instructions.
A novice doesn't have much of a chance understanding the tech talk emerging, is quite prone to brick his device; see above.
That's why root commonly remains a secret of the experts, does not become a wide-spread everyday method.
And that's a bad thing ! - Why ?
- If more "plain normal" users were able to root their devices the easy way, more "plain normal" users would actually do.
- If more users root their devices, there would be some more positive pressure on manufacturers about helping with these things.
- If more users can root their devices, more users are willing to donate some money to developers.
- More root users build a stronger community, preventing manufacturers like Samsung trying to prohibit rooting at all costs.
Of course I know the disadvantage: Google wouldn't like that too much because more users would be able to block advertizing and forced Google services and bloatware, would be able to avoid idiotic things like that infamous SD write prohibition introduced with Android 4.4.
So Google might try to fight rooting even more.
Understood.
But Google would realize there's a growing need in the community. And if needs of a broad mass of users won't get satisfied, Google would lose a great deal of customers in the long run.
If we remain a tiny group of root supporters, we'll get ignored more and more. And one day, the chances to root will be gone forever: Because the broad community just doesn't do rooting - and manufacturers won't give a sh... on the ever-shrinking group of root lovers.
So a sound balance might do the trick: Slowly introduce the "secrets" of rooting to the community, in a simple way everybody's able to cope with, slowly create a steadily growing community of people which can make themselves heard.
No more "secret language", no more incomprehensible abbreviations - just plain normal step-by-step instructions so just everybody will be able to root. If he wants to.
This wouldn't start an avalanche of users turning their faces to rooting their devices, but could help building up a larger community Google and other manufacturers just cannot afford to ignore.
If rooting stays a secret method for just a fistful of enlighted adepts (and a far larger mass of users just pretending to know what it's all about), manufacturers are going to lock up their devices more and more.
Just think about Samsung; Knox, Region lock, eFuse...
Things will get very, very bad over time.
Just think about it.
Chefproll said:
Someone tell me why I am not surprised at all... :/
To be a bit more constructive: It's a real common problem - "root experts" usually use a kind of secret language when talking about root issues and how-to instructions.
A novice doesn't have much of a chance understanding the tech talk emerging, is quite prone to brick his device; see above.
That's why root commonly remains a secret of the experts, does not become a wide-spread everyday method.
And that's a bad thing ! - Why ?
- If more "plain normal" users were able to root their devices the easy way, more "plain normal" users would actually do.
- If more users root their devices, there would be some more positive pressure on manufacturers about helping with these things.
- If more users can root their devices, more users are willing to donate some money to developers.
- More root users build a stronger community, preventing manufacturers like Samsung trying to prohibit rooting at all costs.
Of course I know the disadvantage: Google wouldn't like that too much because more users would be able to block advertizing and forced Google services and bloatware, would be able to avoid idiotic things like that infamous SD write prohibition introduced with Android 4.4.
So Google might try to fight rooting even more.
Understood.
But Google would realize there's a growing need in the community. And if needs of a broad mass of users won't get satisfied, Google would lose a great deal of customers in the long run.
If we remain a tiny group of root supporters, we'll get ignored more and more. And one day, the chances to root will be gone forever: Because the broad community just doesn't do rooting - and manufacturers won't give a sh... on the ever-shrinking group of root lovers.
So a sound balance might do the trick: Slowly introduce the "secrets" of rooting to the community, in a simple way everybody's able to cope with, slowly create a steadily growing community of people which can make themselves heard.
No more "secret language", no more incomprehensible abbreviations - just plain normal step-by-step instructions so just everybody will be able to root. If he wants to.
This wouldn't start an avalanche of users turning their faces to rooting their devices, but could help building up a larger community Google and other manufacturers just cannot afford to ignore.
If rooting stays a secret method for just a fistful of enlighted adepts (and a far larger mass of users just pretending to know what it's all about), manufacturers are going to lock up their devices more and more.
Just think about Samsung; Knox, Region lock, eFuse...
Things will get very, very bad over time.
Just think about it.
Click to expand...
Click to collapse
I think you misunderstand the situation a little. Google does encourage rooting within the developer community, it is how they ensure a good app developer base. They've made the android SDK easier and more accessible than ever in recent years to support that, not to mention the introduction of Nexus devices was with the sole intention of offering developers a base 'common' software and hardware on which to develop.
There is no secret language, only a vocabulary specific to these processes. Imagine approaching Windows with a absolutlely no idea what it is, how it works in the background and no developer experience. It'd be easy to confuse the registry with a secret book of coded language, approaching android with no android development experience is exactly the same. Windows don't make it easy for the 'common person' to understand because these things are open to tampering and security flaws.
The same goes for android, rooting and unlocking the bootloader. If you're not careful you can get stung (I've 'broke' my Windows system many times by simple stupid things), but if you read up and take some time to understand there is no secret to it.
Er...
First: The rooting of the Z2 tablet is not complicated. It consists of just flashing SuperSU via CWM. Very easy.
A bit more complicated (but not really) is getting CWM on the tablet.
The most complicated part is the unlocking of the bootloader. And this is a Sony thing.
So to say "rooting is complicated" is in fact wrong.
Second: Rooting a device is something that brings certain problems and security dangers. A rooted device must be handled with a certain care and awareness. So it's absolutely ok that only people who are willing to invest a certain amount of brain power and time are able to root.
No one wants more noobs who flood forums with complaints why their rooted phones don't work anymore ore were hacked!
Ricky and Hasenbein: You got me a bit wrong... (But if I write late at night, it might be easy getting me wrong. )
You both know how rooting is done, I know. Unrooted Android devices are just like cars you're not allowed to open the hood or even the trunk; short: unbearable.
I am a former software developer, and a professional technical writer and perception psychologist - maybe this helps you a bit understanding my points of view.
First: I really don't like calling novices "noobs". The term "noob" has a negative connotation, it's a typical four-letter-word, a cuss word. Thus "newbies" are quite reluctant asking for vital information - just because they don't want to be called a noob. So they don't ask - and then brick their devices. Just see this thread as a real-world example.
We all were "noobs" at the beginning.
But we read and read, spent lots of hours with the topic, we tried and failed and sweared till we finally succeeded. Or not.
So we walked quite some miles. Because we had sufficient time and commitment for doing so. And because we already had a bunch of experience with other devices up our sleeves. So we're part of a quite small group of people having the needed background knowledge.
Others don't.
Shouldn't we help them a bit ? If we do, more users could enjoy the benefits of a rooted device - without having to ask "noobish" questions or bricking their devices, forcing them to ask more "noobish" questions - and shining a bad light on rooting: "Rooting is dangerous".
No, it is not. If people exactly know what they have to do, and what to avoid.
So why don't we tell them ? - Using a language everybody can understand.
Result: More root users = less "noobish" questions = less bricked devices = less fear of rooting.
And: More root users = more money donations for developers = more incentives for developers = more and better root applications, faster development.
It's simple.
Ok, we took the long way, we had to gather information without any greater help, we put much effort into this. It's just natural we expect others doing the same: We had to work for it, so they should work for it, too. A plain normal human attitude.
But a bit selfish, don't you agree ?
Some months ago, I bought a Nexus 7 2013, needed a quick way of rooting the device because I left for a longer Asia vacation right the next day, filled with blogging activities. So I really needed a fast solution. I found a kind of all-in-one package, a "Nexus root toolkit" (or similar), don't remember who did it.
Perfect one ! A kind of menu with buttons to click: "Click here for checking device communication", "Click here for installing missing drivers", "Click here for unlocking the bootloader", "Click here to root", "Click here to unroot", "Click here for locking the bootloader again", "Click here if your device does not respond/boot anymore", "Click here to restore factory state".
Step by step, every step explained, every step to be done by just clicking a button. A package for "noobs". And for people needing a fast solution.
And working perfectly: Just everybody would be able to root his device, "noob" or expert.
THIS is the way it should be, a sound way for improving device usage for many, many users. And for showing manufacturers: "Hey, we're no minority anymore, so stop trying to lock us out if you want to sell in the future !" I just think of Samsung; with an ugly feeling in my guts. They're getting worse than Apple. BECAUSE root is just done by a minority they can easily choose to ignore. And it will be getting worse.
Take Sony as an example: Sure they support rooting the Z2 a bit, but they don't support unlocking the Z2's bootloader without losing DRM keys and X-Reality. A BIG turnoff. I just don't want to lose X-Reality because it's one of the very, very few video enhancements which really work.
But if more users were interested in rooting, Sony would be urged to provide a better solution. Not necessary at present: No greater demand - no greater effort.
Because rooting is still too complicated for the masses.
So: Shouldn't we try making all that things a bit more simple ? Like I saw with the "Nexus root toolkit" or whatever it was called ?
If we help others, we help ourselves at the same time: Mutual beneficial.
If we don't, we'll lose more and more of the ancient Android freedom because manufacturers will ignore our needs more and more.
That's why I wish to suggest trying to find some easier ways.
What I could do: I am a writer; I could provide simple explanations and instructions, I could also translate English documents into German.
What about you ?
Chefproll said:
Because rooting is still too complicated for the masses.
Click to expand...
Click to collapse
I repeat: Rooting is nothing that should be "for the masses".
Rooting should remain something for really interested users who really spend time with understanding, maintaining and modifying their devices because only such people can cope to the necessary extent with the special requirements of a rooted device.
In this respect the politics of the manufacturers (enable a root possibility, but make it quite diffcult) is exactly right.
hasenbein1966 said:
I repeat: Rooting is nothing that should be "for the masses".
Rooting should remain something for really interested users who really spend time with understanding, maintaining and modifying their devices because only such people can cope to the necessary extent with the special requirements of a rooted device.
In this respect the politics of the manufacturers (enable a root possibility, but make it quite diffcult) is exactly right.
Click to expand...
Click to collapse
Just a couple of decades ago, computers were "something for really interested users who really spend time with understanding, maintaining and modifying their devices".
How does it look like today ? I'd been one of the pioneers of that times; you read about me in the news, maybe even saw the (horrible) movie.
But we shared our findings instead of hiding them deep in our bag of secrets, labelled "for experts only".
Rooting is a GOOD thing. So why don't make it easier and safer for everybody ?

[Q] Old developer needs serious learning advice

Hello All,
Will try and keep this short: Am an old time developer, since 1979. I was self-taught, as a kid, never one class. The weakness there is that I never learned most of the terms.
So when learning new languages, it was harder since I didn’t have a reference point. i.e. may no longer be used, but I created “linked lists”, just never knew they were called that.
Anyway, I never got past using C and WinSDK. And I learned just enough Perl on the fly as I needed it to create some backend parts to some of my apps.
I am desperate to start a new project, preferring to do it on Android first. As hard as I looked for LOCAL developers with serious programming experience, and preferably some Voice SDK experience I failed. I tried Craigslist and Meet Up. Nothing.
So I need to do this MYSELF. Or at least start it and come up with the alpha-prototype on my own.
After all that explaining, what’s the BEST (and least expensive) means I can purchase to teach myself programming an Android device?
I always loved forums, we’re talking back when NEWSGROUPS were the way to go. Because out there was always someone who knew…and was willing to share their point of view.
Currently using a PC-Windows environment, so any IDEs in that arena would be preferred.
So any help, any direction would be so appreciated.
Many thanks ahead all,
Sergio
I would definitely recommend grabbing Android studio and looking through Androids developer docs. If you're familiar with java all you really need to know is the Android framework and how everything works together (lifecycles, passing data around, working with various sensors/hardware, etc).
Android studio is free so no cost to you there. If you're not familiar with java there are tons of good resources online
Sent from my XT1254
Hi!
I agree with @blackangus, i started programming for android with eclipse at that time and some tutorials i found online.
In my experience is a little bit frustrating at the beginning because is has some hard to understand concepts if you come from low level languages.
you can try to follow a basic lessons to start understanding the different parts like,
1) Views ( it cost me pretty much to understand how views and activities work)
2) Networking and async threads (restfull services calls and json manipulation)
3) Play services (push notifications, account registration and such)
this was the approach i took and it helped me a lot, i hope my humble guide helps you too.
5 years ago I got my intro to Android via Android App Inventor: http://appinventor.mit.edu/explore/
Good intro to Android concepts but drawing pictures instead of writing code still can't produce professional apps.
So I dove into learning Android Java. Nice...
My background was in C ; I never quite figured out C++ and have heard since that Java is superior anyway, written for OO instead of adapted from C.
I still program plenty of C for Android NDK low level code.
Before C, I did various assembly/machine languages, including the first CPUs in the mid 1970's and in early 80's front panelled a simple OS into an old PDP-11/05 to use an Apple clone keyboard and a "TV Typewriter" type 6847 Video board I built...
Now I'm wondering about iOS Objective C. Much more money still it seems in iPhones/Pads.
I am a newbie too. My background is microcontroller programmer, so i use C very often. When i start learning android programming, i begin with learning java and eclipse first, after i got the OOP concept, i begin learn to use android API and Android Studio....when we start from low level language, learning Java is easier... Java basic first then android API....
I am a serious coder, usually working with enterprise applications at my job. In my experience, if you need to learn something new, it is better if we get help from some friends or professional trainers. Saves us a lot of time and trouble. If you want to learn the basics of OOP and are going to build something, I suggest you get help of a professional trainer. You will be clear about the subject matter easily and with your experience, you will achieve progress within no time.
Wow. I don't feel so bad now. I'm and old geek too. I'm looking at trying to develop a simple game for Android. My last coding was in 1988 using COBOL. I'm a System Analysist but most of my experience was in medical systems and Digital Radiography. I'm basically a College Freshman.
Thanks for the information.
Can we keep this thread open or create another for Q&A from you wiz kids?
A funny note: I was involved with Search and Rescue in 1979. We were a driving force to get SAT phone's going but our budget only allowed for 2 satellites that year. We tested with a fellow driving in California while talking to us in Milwaukee. We only had a 20 minute window , then had to wait till the next.flyover 3 hours later. We've come a long way. Let's keep the momentum going!

Categories

Resources