Office Hours — Today, October 19

Thursday, October 14

Oct 19
7:55 PM
Mark M.
has entered the room
Mark M.
turned on guest access
Evan
has entered the room
Mark M.
howdy, Evan!
Evan
hey Mark! great to be back
i have a more general question this time...
I'm going to be implementing (in the somewhat near future) a feature for our app (a video consumption app) that allows users to download our content to their device and play it from there
is there anywhere you might point me that discusses implementing this kind of feature?
like things to watch out for, recommendations for how to approach, etc
Mark M.
um
well, the basic technical details (doing downloads, playing videos) is covered in the books
Evan
hmm... i did see some stuff in the books
particularly the reading & writing files section of the first book...
Mark M.
"things to watch out for" would be dropped connections due to connectivity changes (e.g., moved away from WiFi and fell over to 3G) and device falling asleep mid-download
8:00 PM
Mark M.
downloads would be in the Internet chapter, which is more focused on the Web service scenario rather than download-the-file
however, HttpClient has plenty of examples online
Evan
aha
Mark M.
video playback is in the Advanced Android book's Media chapter
Evan
yup i have that implemented already...
it's really more the downloading files and saving them to disk thing
and things like resuming interrupted downloads?
i've never tried anything like that... is that even possible (or does it require some special server-side configuration?)
Mark M.
again, that would be an HttpClient thing, if anything
Evan
okay
fair enough
Mark M.
Adrian R.
has entered the room
Evan
awesome... thanks!
Mark M.
yo, Adrian!
Evan
has left the room
Evan
has entered the room
Adrian R.
lol! Hey! :)
Evan
has left the room
Adrian R.
Thanks again for the help Mark earlier.
Mark M.
I live a bit north of Philly, so I get to trot out the occasional Rocky reference
no problem -- sorry about Google's annoying OpenID setup
Adrian R.
No worries, I get that ALL the time.
No worries.
Mark M.
yeah, I can imagine
how can I help you this evening?
Adrian R.
I just was dropping by, lurking mostly. I usually read the transscripts via email, but wanted to see how this was.
Mark M.
ah
well, the traffic definitely varies
Adrian R.
Actually, I did want to ask you for some advice, but its about Android work. vs. Android programming. NOt sure if this is the right venue for that or not.
8:05 PM
Mark M.
:: shrug ::
go ahead
Adrian R.
Mind if I ask then?
Mark M.
go ahead
Adrian R.
I'm a freelance programmer, incorporated over ten years. I've been doing Java Swing work, RIA stuff mostly. Now I'm switching over to Android. I wanted to ask you for advice on the best avenues in getting work. Right now I just monstly go via dice.com and monster.com, etc.
Also any advice on beating the chicken vs. the egg situation (employers wanting 1+ years android work). I was going to try and create a few simple Android apps that show my knowledge off, and upload them on Git, and put that on my resume.
Mark M.
Hmmm...
You could try careers.stackoverflow.com
publishing some Android code is a good move
Adrian R.
Ah, ok. Didn't realize they had a careers section.
Mark M.
yeah, they added it several months ago
Adrian R.
Good to know.
Mark M.
it's the CV/resume counterpart to jobs.stackoverflow.com
Adrian R.
How do you see the Android job market these days?
Mark M.
better than average
my primary metric is how many people are begging for help on LinkedIn and Craigslist
Adrian R.
Good to know. Oh! Eclipse question. Which version do you use for day to day production work?
Mark M.
None of the above -- I'm not an Eclipse user
Adrian R.
command line?
Mark M.
Komodo Edit and the command line do fine by me
Adrian R.
Never heard of Komodo Edit. I'll have to take a look at it.
Mark M.
though I might look at IntelliJ IDEA CE edition when it reaches version 10 and has the Android plugin
Adrian R.
View paste
I've heard that Eclipse 3.6 is having 'problems' with the Android SDK.  Have you heard the same?
Mark M.
yes
I'd avoid 3.6 for Android for now
Adrian R.
Heard LOTS of good things about IntelliJ over the years.
Almost every project I'm on has someone using it and talking it up good.
8:10 PM
Adrian R.
Well, I'm going to get back to the fine Commonsware books. Thanks again for your help, and great product/service!
Mark M.
you are very welcome!
Adrian R.
/waves
Adrian R.
has left the room
8:35 PM
David O.
has entered the room
Mark M.
howdy, David!
David O.
hey there... looks like I'm egregiously early for your office hours.. I apologize
I thought the time was EDT and not PDT
Mark M.
no, it's been open for 35 minutes
David O.
ah I have to adjust my calendar then..
Mark M.
had two people earlier, asked questions and left
David O.
so I have a very in-depth question for you.. well.. more a vent about android.. you look at the AOSP very much?
Mark M.
bits and proverbial pieces
David O.
well.. I'll skip background and get to details.. as much as I can...
the samsung vibrant has a lovely bit of functionaltiy in it's dialer where you can assign speed-dial numbers to the dialpad of the phone.. I thought it was part of 2.1/2 and found that not to be the case.. so I thought I'd 'simply' roll a new dialer based on the AOSP (simply being relative of course)... (cont)
8:40 PM
David O.
when I was playing with trapping the android.intent.action.CALL_BUTTON action on the G2 I noticed something.. that the "call" button in the launcher didn't, in fact, fire that intent off.
so.. I went off into the android source and looked at launcher2...
and I found that in the Launcher.java activity they refer to a config file that actually - for lack of any other way to describe it - 'hard configures' the 'call' button on the home screen to fire off contacts
;component=com.android.contacts/.ContactsLaunchActivity
do you have any idea why Google would do this to developers... other than that they hate us?
Mark M.
"hate" is such a strong word
David O.
perhaps...
ok.. how about "they have severe disdain for us"?
Mark M.
you appear to be conflating two issues
first, I would not expect that icon to fire android.intent.action.CALL_BUTTON
David O.
really? ok ...
Mark M.
that would be for a hardware button
on devices that have it
David O.
but the browser button does fire an intent.
so I see that as an inconsistency
Mark M.
oh, I'm not questioning whether the dialer icon should fire an Intent, just not that one
David O.
ah.
which intent would you see it fire?
Mark M.
ACTION_DIAL with a null Uri, perhaps
frankly, I haven't thought about that much
8:45 PM
Mark M.
but the other _BUTTON actions are for hardware buttons (CAMERA_BUTTON, MEDIA_BUTTON)
David O.
fair enough
I see your point.
Mark M.
hence, I would not expect an icon to fire a _BUTTON Intent
now, I would agree with you that there should be a standard for "implement this and become a replacement dialer"
David O.
yea the browser button actually fires ACTION_VIEW with a category of CATEGORY.BROWSABLE and a default URI
Mark M.
tactically, though, even if Launcher2 did use that, without it being in the CDD/CTS, other devices might not honor it
and third-party home screens are free to ignore it entirely
hence, fixing the Launcher2 component-tied Intent would be a necessary but not sufficient condition for you to be able to implement what you want widely
OTOH, if you implement your own home screen, you can do whatever you want
David O.
so.. I'll make a new dialer where I can assign speedial entries.. and then I'll make a launcher with less lameness in it too.. ;)
Mark M.
or, create the new dialer and work to integrate it with popular third-party home screens
your dialer could still be launched by a desktop shortcut
David O.
yea.. but I rather like launcher2 overall...
yea I know.. but what fun is that if there's already space for a shortcut right there.. :-)
but I see your points completely
Mark M.
replacement dialers have been a long-standing area of contention
you're not the first to gripe, and you probably won't be the last, unless they magically change things in Gingerbread
8:50 PM
David O.
I would have thought after all this time they would have at LEAST added speed-dial entires like the Vibrant did.
Mark M.
I suspect they're thinking the OEMs will be replacing the dialer more often than not
the rumored UI improvements in Gingerbread *might* cover this sort of thing
David O.
probably.. the Vibrant was very much turned into an "iPhone-like" experience with Touchwiz, etc
Mark M.
after all, the claims were they wanted to eliminate the need for MOTOBLUR, Sense, Rachael, TouchWiz, etc.
David O.
their claims USED to be they encouraged FreshFace, BLUR, Sense, etc.. ;) I guess that came back to bite them..?
Mark M.
it fuels the fragmentation fears
BTW, what is FreshFace?
David O.
oh it's a Homescreen replacement on the market..
for 1.6
Mark M.
ah
David O.
very slick but a resource pig
Mark M.
I don't think they have problems with Market home screen apps
those will be niche products
David O.
and indeed (on the fragmentation fears)... Motorola still hasn't released a 2.1 for the Cliq...
Mark M.
compared to a million handsets here and a million handsets there
David O.
right.
does anyone ever try to 'refactor out' the dialer in AOSP into another app? just curious more from an academic perspective.
seems like an enormous undertaking to simply build one from scratch
Mark M.
well, most of those apps rely on non-SDK classes
David O.
right. internal APIs that could change with the next release..
Mark M.
I'm not sure which is more enormous: writing one from scratch or trying to rip out all the non-SDK references
David O.
oh what fun
8:55 PM
David O.
I'd almost bet the latter.
anyway.. it's coming up on the end of office hours for you.. I appreciate your time talking about this.
Mark M.
wouldn't surprise me
hey, no problem
it's been an unusual chat overall :-)
David O.
heh.. well I like to come to the table with unique topics.. :)
otherwise I figure I'm probably wasting people's time.
have a good evening sir... and thank you.
Mark M.
happy to help!
David O.
has left the room
9:00 PM
Mark M.
turned off guest access

Thursday, October 14

 

Office Hours

People in this transcript

  • Adrian Romanelli
  • David Orriss Jr
  • Evan
  • Mark Murphy