I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by niko20 » Wed, 17 Mar 2010 21:04:44 GMT

Sponsored Links
 First off I like to write music apps, so I keep an eye on the music
apps that are out for iPhone.

Two of these really popular apps are BeatMaker and Noise.IO. Beatmaker
is a sample driven sequencer MPC style, and Noise.IO is a full
featured FM synth.

I read something disturbing in the app info yesterday that shows just
how much power Apple has over developers.

In the past Beatmaker and Noise.IO had formed a way to share data -
the ability to export a synth sound out of Noise.IO and import it into
Beatmaker. It looks like Apple now "forced" them to change how this
sharing works - in fact so much so that currently the export feature
in Noise.IO is GONE! And the lastest reviewers of the app aren't happy
about it LOL. And the Beatmaker app indicates that import is gone in
the current update. Imagine LOSING functionality in an update!
Wouldn't that piss off a customer! Anyway the Beatmaker page mentions
something about having to switch over to Apple's copy/paste
functionality instead of the way they were using before, and that this
was requested by Apple.

So that makes me feel much better about Android, I think it sucks when
a product that has been out for a long while already, and now Apple
comes in and bullies the developers to break their software basically
for no good reason except they want some control over how stuff is
done. How obnoxious.

Also, I dont see how Apple is so "groundbreaking". I was looking up
specs on the iPhone OS 3.0 yesterday, and it didn't come out until
June/July 2009, this is when it finally got copy/paste, MMS, and Push
notifications. By the way Push notifications are where an app can get
notified to start when it receives some data, even though the app
isn't "running". Well, Android was well along the way already back in
2008 and it had Widgets and Intents, which do this already. Push
notification is just a widget with an intent basically, and it came
out much later.

I am not an Android Fanboy or an Apple fanboy, I always figure whoever
has the best tech wins in the end, I am writing Android apps and I
usually compare Apple apps to what I'm doing so I can see if such a
thing is possible at all processor speed wise, etc. I found that the
original iPhone processor was actually only running at 412Mhz or so,
and still has some good music apps, so that gives me a bit of info on
how those apps are written then. iPhone has objective C and can
compile to native code, but Android has NDK and you can also use
native code, so I should be able to still write comparable apps
processing power wise.

So reading some of this info made me start to see how Android is
really ahead of the game in a lot of ways. Back in 2008 it already had
copy/paste, MMS messaging, and widgets and intents long before iPhone
OS 3.0..The hardware such as the touch screens still isn't as accurate
or as good, but the OS it pretty darn good, and it's nice not to have
big brother over your shoulder everytime you write an app.



I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by Gabriel SimēŽ«es » Wed, 17 Mar 2010 22:23:11 GMT

  do agree with you that the Apple app publishing restriction is
pushing developpers too far, far enough to see some great developers
give the plataform up not for technical reasons, but for their

On the other side, as a music app developer I dont know how you are
happy with Android.
First, a lot of developers (including me) cant even figure out how to
acquire audio streams from AudioRecord and play them using AudioTrack
without problems such audio chopping, sample rate differences,
distortion, ... (see how many posts without solutions we have here on
this group). We cant syncronize audio input and ouput, or audio
output and video, so it gets hard to develop apps that need to handle
those events precisely, such as samplers, music games, music makers
based on gestures, etc.
We dont have a low latency audio interface to access (ALSA would be
great and its already working on Android ... but we cant access it),
so give up virtual instruments and low latency audio apps (small
buffers arent available too). We dont have native audio interfaces
officially supported by Google and AudioRecord (at least running on
the emulator) warns buffer overflows if you just receive audio from it
and play using AudioTrack on the same thread, it doesnt matter which
buffer sizes you use.

The behavior of the apps running on different devices is unpredictable
while on iPhone, since the archtecture and hardware is a lot more
closely related on different devices and thought to be compatible, it
s a lot easier to predict, test and publish apps that you know that
will run as great as you intended them to be. On Android this is not
something up to the developers to do, but to Google and the device
developers that should garantee compatibility with the OS and what
runs on top of it.

Im working on Android mostly because of Apples restrictions on its
plataform, on publication, on development, on resources usage... But
yes, I think Android still needs to play ball, and play a lot to catch
iPhone + IphoneOS. And I hope it doest it!

On 17 mar, 10:04, niko20 <nikolatesl...@yahoo.com> wrote:


Sponsored Links

I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by MobDev » Thu, 18 Mar 2010 00:26:23 GMT

another music app developer here, with no decent streaming app
possibilities :(
It's nice to have a MediaPlayer which streams MP3, but thats way way
too limited..
I want it to be compatible with AAC to begin with (because of the
bandwidth), and I definitely would want more control (and maybe
somewhat lessi nterfaces??)...
I mean you are saying it was an advanced platform in 2008, but what
you want to say that it hasn't evolved since 2004, since J2ME MIDP...
A class like MediaPlayer is actually based on that one (which is old
and has never been updated nor up par) with the same functionality !
Even worse actually, the SE devices had a better MediaPlayer
implementation 4 years ago...
My personal experience, after working in J2ME and objective C, has
been of utter dissapointment...

On 17 mrt, 15:23, Gabriel Simes <gsim...@gmail.com> wrote:


I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by Sundog » Thu, 18 Mar 2010 01:12:17 GMT

 ight on point here, all three of you, and representative of the
problems of both platforms. I won't even consider continuing my IPhone
development, but I've had to completely drop several projects I wanted
to do in Android because it simply isn't up to it. Since they're being
nice enough to send me a phone I'll probably try once more, but I'll
choose what I write around what Android can do well (audio-visually),
which isn't much. Margarita Drop was a silly little game but I had to
work like crazy to get it to work as smoothly as it does... no more 3d
from us until things improve.

On Mar 17, 10:26am, MobDev <developm...@mobilaria.com> wrote:


I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by Kevin Duffey » Thu, 18 Mar 2010 01:32:14 GMT

  too wanted to work on some audio apps.. I had bought BeatMaker on iPhone,
and wanted to do something similar for Android. It's a blind guess, but
unless the google team has a massive update in 3.0 coming by end of year, I
would guess that we wont get the audio/low latency capabilities of iPhone
for at least 2 years. I can not imagine why, but games and audio, even tho
they are huge on the iPhone, seem to be lacking interest from the Android
team as being important. From the various forum posts I've seen over the
last several months, it seems like the JVM doesn't have a JIT, so its
actually slower than J2ME JVMs although the hardware is faster so it is
probably comparable. Most basic apps run fine, but games struggle to keep
solid framerates up do to the GC issues among other things. With a new
thread that started a few days ago describing other apps stealing cpu/gc
cycles and causing games to hiccup, there seems to be almost no way to
provide a solid smooth game that provides any sort of detail all the time.
I've not personally played any iphone level game on android other than basic
puzzle games, so I am formulating my opinion from various other developers
that have posted these issues.

I would agree that Android is STILL more appealing to write for than iPhone.
I just can't stand the ridiculousness of apple and their changes, forceful
removals, etc. It's crap. I don't care if there are 60 million iPhones and
only a few million android devices... why suffer thru having to work with
objective-c and having to own a mac to write for it, and all their rules..
worrying about whether or not your months of hard work will even get

but ya, Android has a long way to go to catch up. If they are even trying
to. I don't know if anyone on the android team could comment, but it would
be really nice to get some sort of inclination of what is going on with the
various threads discussed here about the major shortcomings of android. I
would think that android/google would be listening to the developers that
plan to write for it, and thus want to focus resources on things like low
latency audio, keeping background processes from interfering with foreground
real-time games, better 3D support and so on.

On Wed, Mar 17, 2010 at 10:12 AM, Sundog <sunns...@gmail.com> wrote:


I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by niko20 » Thu, 18 Mar 2010 03:08:54 GMT

 es, agreed on the low latency audio. However I do think this may be
more of an issue with the hardware possibly. For example, if may
depend on the hardware what kind of audio abilities you get, whereas
in the iPhone they are all a standard set by Apple. But right now the
smallest latency is around 100ms or so buffers, which is way too much

Fortunately I'm making apps that really dont care about latency, they
are sample driven (my main app is Electrum Drum Machine), they only
have latency problems when trying to play live with the touchscreen
(and I think some of that latency is from the screen hardware itself).
So for me processor power is most important right now. Having access
to NDK audio would be nice, but not really necessary, since I've found
that calling JNI and passing a buffer back from Native Code doesn't
have as much overhead as most people think, I've had speed increases
of up to 100 or more by doing so, native code is just that much faster
than the Dalvik java!


On Mar 17, 11:32am, Kevin Duffey <andjar...@gmail.com> wrote:
> >

I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by Kevin Duffey » Thu, 18 Mar 2010 04:30:53 GMT

 ne of these days I have to dive in to NDK. I haven't done C code in 12
years.. I am afraid I've probably forgotten all my old C code. Having last
worked with Watcom C/C++ and Borland C++... is the NDK C that much
different? I am wondering if there is a book or something I should get/read
to get a good idea of how to use NDK with android.

On Wed, Mar 17, 2010 at 12:08 PM, niko20 <nikolatesl...@yahoo.com> wrote:

> > >

I don't HATE apple, but I found these interesting things yesterday, poor iphone developers.

by David Ashwood » Thu, 18 Mar 2010 04:37:39 GMT

http://oo-androidnews.blogspot.com/2010/02/ffmpeg-and-androidmk.html might
give you a leg up.

On 17 March 2010 21:30, Kevin Duffey <andjar...@gmail.com> wrote:

>> > >

Other Threads

1. can develop in any phone ?

i am from afric. android phones have started selling here. if i buy a
tattoo device [around 300$] i can use it for developing apps ? or
devices which can be used for dev/debug apps are different from
devices being sold in market ?


2. Crashing after giving interrupt in android devices for porting

Hello All,
Here is a problem when am porting a game to the Android device (G1).
Game is crashing after giving any interrupt, Am not able to find exact
problem with the code

Can any one suggest me the probable reason causing this?

Here is the error log:

I/System.out(  995):   Restore_suspend
I/System.out(  995): m3gconv: free 46 textures
I/dalvikvm( 1022): De{*filter*} thread not active, ignoring DDM send
(t=0x41504e4d l=38)
I/dalvikvm( 1022): De{*filter*} thread not active, ignoring DDM send
(t=0x41504e4d l=44)
I/System.out(  995):  Restore_prepareRestore
I/System.out(  995): m3gconv:  Restoring textures: 46
I/System.out(  995): m3gconv: 0 loading file : tex/loading.tex
W/InputManagerService(   73): Window already focused, ignoring focus
gain of: com.android.internal.view.
I/System.out(  995): m3gconv: 1 loading file : tex/ball_01.tex
I/System.out(  995): m3gconv: 2 loading file : tex/ball_02.tex
I/DEBUG   (   47): *** *** *** *** *** *** *** *** *** *** *** *** ***
*** *** ***
I/DEBUG   (   47): Build fingerprint: 'tmobile/kila/dream/trout:1.6/
I/DEBUG   (   47): pid: 995, tid: 1003  >>> com.mywrap.android.EGL_APP
I/DEBUG   (   47): signal 11 (SIGSEGV), fault addr 0000000c
I/DEBUG   (   47):  r0 afe3c9a0  r1 00000000  r2 00000000  r3 00000003
I/DEBUG   (   47):  r4 00000000  r5 00574c90  r6 00574d10  r7 00000080
I/DEBUG   (   47):  r8 00000040  r9 ffffffff  10 00000001  fp 00000001
I/DEBUG   (   47):  ip 00000001  sp 44c0acf0  lr afe0ea00  pc
afe0ad96  cpsr 80000030
I/DEBUG   (   47):          #00  pc 0000ad96  /system/lib/libc.so
I/DEBUG   (   47):          #01  pc 0000bcc8  /system/lib/libc.so
I/DEBUG   (   47):          #02  pc 0000bd40  /system/lib/libc.so
I/DEBUG   (   47):          #03  pc 00033bdc  /system/lib/libhgl.so
I/DEBUG   (   47): stack:
I/DEBUG   (   47):     44c0acb0  005e2700  [heap]
I/DEBUG   (   47):     44c0acb4  005e4708  [heap]
I/DEBUG   (   47):     44c0acb8  001e4d28  [heap]
I/DEBUG   (   47):     44c0acbc  001e5d28  [heap]
I/DEBUG   (   47):     44c0acc0  00000000
I/DEBUG   (   47):     44c0acc4  00000000
I/DEBUG   (   47):     44c0acc8  00574c98  [heap]
I/DEBUG   (   47):     44c0accc  afe0ea00  /system/lib/libc.so
I/DEBUG   (   47):     44c0acd0  00574c98  [heap]
I/DEBUG   (   47):     44c0acd4  afe3c9a0
I/DEBUG   (   47):     44c0acd8  00002bcc
I/DEBUG   (   47):     44c0acdc  afe39dd4  /system/lib/libc.so
I/DEBUG   (   47):     44c0ace0  00000040
I/DEBUG   (   47):     44c0ace4  ffffffff
I/DEBUG   (   47):     44c0ace8  df002777
I/DEBUG   (   47):     44c0acec  e3a070ad
I/DEBUG   (   47): #00 44c0acf0  0000001e
I/DEBUG   (   47):     44c0acf4  00000000
I/DEBUG   (   47):     44c0acf8  afe3c9a0
I/DEBUG   (   47):     44c0acfc  afe39dd4  /system/lib/libc.so
I/DEBUG   (   47):     44c0ad00  0000a000  [heap]
I/DEBUG   (   47):     44c0ad04  00000000
I/DEBUG   (   47):     44c0ad08  00574c08  [heap]
I/DEBUG   (   47):     44c0ad0c  00574c08  [heap]
I/DEBUG   (   47):     44c0ad10  00574c08  [heap]
I/DEBUG   (   47):     44c0ad14  00574c98  [heap]
I/DEBUG   (   47):     44c0ad18  000000dc
I/DEBUG   (   47):     44c0ad1c  afe0bccd  /system/lib/libc.so
I/DEBUG   (   47): #01 44c0ad20  00000080
I/DEBUG   (   47):     44c0ad24  00574c10  [heap]
I/DEBUG   (   47):     44c0ad28  afe3c9a0
I/DEBUG   (   47):     44c0ad2c  00000108
I/DEBUG   (   47):     44c0ad30  001e5d28  [heap]
I/DEBUG   (   47):     44c0ad34  afe39dd4  /system/lib/libc.so
I/DEBUG   (   47):     44c0ad38  ffffffcc
I/DEBUG   (   47):     44c0ad3c  00000000
I/DEBUG   (   47):     44c0ad40  ffffffe0
I/DEBUG   (   47):     44c0ad44  afe0bd45  /system/lib/libc.so
I/ActivityManager(   73): Process com.mywrap.android.EGL_APP (pid 995)
has died.
I/WindowManager(   73): WIN DEATH: Window{4330e748
art paused=false}
I/WindowManager(   73): WIN DEATH: Window{4335e168 SurfaceView
D/Zygote  (   49): Process 995 terminated by signal (11)
W/UsageStats(   73): Unexpected resume of com.android.launcher while
already resumed in com.mywrap.android.EGL_APP

W/InputManagerService(   73): Got RemoteException sending
setActive(false) notification to pid 995 uid 10029
V/WifiMonitor(   73): Event [CTRL-EVENT-DISCONNECTED - Disconnect
event - remove keys]

Awaiting for reply


unsubscribe: android-porting+unsubscr...@googlegroups.com
website:  http://www.***.com/ 

3. Avoid cache name collisions with webkit

4. an update issue

5. Setting the text in the dialog for an EditTextPreference

6. Account authorization for Google Health on Android

7. Access a Service across multiple Applications