Tip:
Highlight text to annotate it
X
>> MATT: I’m Matt and this is John. We work from Larva Labs, and we have written several
applications for Android. We have about three games and a photo twisting application. And
we wrote them because, mainly because we’re fans of the genres there in, the strategy
games, [INDISTINCT] game, and word kind of finding games. So that was really the motivation,
and just because we like the platform as well. >> MALE: So you chose the Android platform.
Tell us a bit about how you came to that decision in technical standards.
>> JOHN: Yeah. I think, well, we’re Java developers from sort of way back. So we chose
the Android platform, you know, because we really like the SDK, and we kind of like where
they're going with it, like that it was open-sourced, and that it was so sort of pluggable and,
you know, open in its access, so it really makes sense for us. And we wanted to target
the, you know, the market. We wanted to try that out and see if there was a business there
and, you know, in targeting the Android market. >> MALE: So as developers we really value
being able to share war stories. Tell us about one particularly difficult period of development
and how you dealt with that. >> JOHN: What’s a good example of that?
>> MATT: Let me think here. Well, I would say we have a little bit of trouble on our
tower defense game, Retro Defense. We had some trouble kind of getting--there’s a
lot of graphics on that game and there's a lot of animation and a lot of stuff. And you
know, we spent a lot of time kind of just getting it to the level of performance that
we wanted to get it to. So it wasn’t necessarily there was any one particular stumbling block
per se, but it was just kind of a process of optimization that, you know, kind of led
to some unexpected things we did, you know, that weren’t necessarily obvious. So, I
would say it again, like I think everyone knows the advice but the profile: “You should
know what you're doing before you start doing it?” Because we definitely wasted a lot
of time fixing some things. >> JOHN: We also had a real struggle on the
app where you're warping photos. We wanted to be able to get photos from the gallery
and put the photos back into the gallery or they'll email them out. And, you know, we
knew about the intense and we thought it was going to be a kind of a straightforward thing,
but we really struggled to do that. We really kind of, we searched every possible forum
posts and tried all of these different things, and we eventually got it to go but that was
a real battle, too, you know. I think now we know it, you know, we know it forever.
And the next time we do even similar to that, it will go a little better, but that was the
struggle, yeah, just, just sort of working between the gallery app and our app, and between
the email apps and our app. >> MATT: And it seemed almost like the things
that we thought were going to be hard weren’t hard, and the things that we had thought were
going to be easy turned out to be a little more difficult. It was not in every case but
a few of those things, that’s what happened, so.
>> JOHN: Yeah. >> MALE: So what new features in cupcake have
you been able to use in your applications? >> MATT: What new features? Well, one of the
new features we were able to use is not crashing, because we had a bit of a problem. So we fixed
that now, that’s good. But, yeah, not too much, I mean, what was kind of cool about
that was that a lot of our interface just kind of took advantage of it automatically,
like, we have a bunch of cool transitions now where we did before, which kind of just
worked without us doing anything. So the whole interface of our games like the way the settings
come up and the way, when you pop open menu, the level chooser and stuff, it’s all like
smooth, like, cool kind of choosing transition and stuff. So that was really, really nice
to run that for the first time once you fix the crash and see all those new transitions.
>> JOHN: We don’t have anything like this in an app that’s out yet. But we’re interested
in getting involved in the new sound APIs, too, and the more direct access to audio.
That’s something that’s interesting to us for sure, and we hope to use that more.
>> MALE: Okay. Were there any tips or tricks that you're able to use?
>> JOHN: Tips or tricks that we heard, that we learned from someone that we made use of?
I mean, there are... >> MATT: There's a few, yeah. There's a couple.
One was this gesture detector class is awesome. >> JOHN: Yeah.
>> MATT: Where we were running a bunch of stuff to try to figure out when you're long
pressing, we just didn’t really realized there was something already in there for flings,
for all of the kind of stuff that you would do with your, with the touch interface. This
thing handles it all, and just kind of gives you the super nice interface into like, the
user just flung in its direction, you know, if the user long presses this thing. So that
thing was--we spent some time trying to do it ourselves, and then we realized that was
there, and it replaced everything we did with that. So that was really a good fun.
>> JOHN: Yeah. And with the existing audio tip, the sound pool stuff, you know, how to
use that, we struggled for a while in that. >> MATT: Yeah, that’s true.
>> JOHN: There was limited documentation, but some sort of, some forum posts and stuff
that straightened us out. >> MATT: Oh, yeah, the audio tip is used Ogg
Vorbis. It’s the only one. >> JOHN: That’s right. Yeah.
>> MATT: I mean pre-cupcake. I don’t know what the deal was in cupcake yet. But...
>> JOHN: Yeah, we just had, we just had, you know, the wave files, just un-encoded audio,
and it was really, it had a lot of latency. And we just sort of--someone just mentioned
almost in passing like, “Oh, is Ogg Vorbis the only format that has no latency?” And
we said, “What?” And so we switched over to that, and everything has been real sharp
and working great. >> MATT: Yeah. So that was a good tip.
>> JOHN: Yeah, that was a tip that came out of nowhere for us. Yeah.
>> MATT: Yeah. >> MALE: So what's your favorite aspect of
the Android development process? >> MATT: I would say, well, what do...? The
SDK is great. The emulator is really good. And I would say like having the source is
amazing. We haven’t worked on a phone before where we've had access to the source. So there’s
a lot of times where you have a very simple question about what something is going to
do. And the way we did it before was the black box, you know, like test every possible things
until we did something right. Now you just take a look, you know, and it’s very quick.
It's--to see what going on. It saves a lot of time. So...
>> JOHN: Yeah, that’s really handy. That’s a big factor.
>> MATT: Yeah. And we’re getting more into like the kind of the replaceable aspect of
the components, you know, and [INDISTINCT] and stuff like that, and access to all the
different information on the phone. And so that whole content provider system is really
cool, too. So, the, you know, the kind of open nature of all the components in the phone
is really I think going to provide some concrete benefits, you know. It’s not just going
to be a talking point. It’s going to start to produce some real, real cool results.
>> MALE: So what are the features that you could do in your app that you can't do on
other platforms? >> JOHN: Well, like Matt just said, there
is the things that we can't do are the, you know, in another platforms is that sort of
real integration without the components and you have to pull data out from other apps,
you know, from your contacts or from SMS or phone calls--all that sort of stuff. You can
build an app that truly is like a first class member of that phone, and not just some add-on,
that is of, you know, that’s completely sound boxed and unable to participate. That’s
a big thing. >> MALE: Thank you for your time.
>> JOHN: Yeah. >> MATT: All right, perfect.