Here is how you can get the available memory amount:
Runtime.getRuntime().maxMemory()
and here is an interesting blog about memory:
http://codelog.dexetra.com/getting-around-android-memory-blues
The problem with Android is ou never know when you may run ou of memory and the app just crashes. That is why you should try to avoid loading too large bimaps (I usually use maximum of 800 /600 or something like that depending on the screen orientation....)
If loading several bitmaps like for gallery or other view group you should use weak reference:
http://developer.android.com/reference/java/lang/ref/WeakReference.html
Also if you look at the example in the link you provided the scaling first decodes only bounds and then decides on the scale to use.
When you don't need a bitmap anymore call:
bitmap.recycle();