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
|
Evan |
i have a more general question this time...
|
Evan |
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
|
Evan |
is there anywhere you might point me that discusses implementing this kind of feature?
|
Evan |
like things to watch out for, recommendations for how to approach, etc
|
Mark M. |
um
|
Mark M. |
well, the basic technical details (doing downloads, playing videos) is covered in the books
|
Evan |
hmm... i did see some stuff in the books
|
Evan |
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
|
Oct 19 | 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
|
Mark M. |
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...
|
Evan |
it's really more the downloading files and saving them to disk thing
|
Evan |
and things like resuming interrupted downloads?
|
Evan |
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
|
Evan |
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
|
Mark M. |
no problem -- sorry about Google's annoying OpenID setup
|
Adrian R. |
No worries, I get that ALL the time.
|
Adrian R. |
No worries.
|
Mark M. |
yeah, I can imagine
|
Mark M. |
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
|
Mark M. |
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.
|
Oct 19 | 8:05 PM |
Mark M. |
:: shrug ::
|
Mark M. |
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.
|
Adrian R. |
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...
|
Mark M. |
You could try careers.stackoverflow.com
|
Mark M. |
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
|
Mark M. |
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
|
Mark M. |
yes
|
Mark M. |
I'd avoid 3.6 for Android for now
|
Adrian R. |
Heard LOTS of good things about IntelliJ over the years.
|
Adrian R. |
Almost every project I'm on has someone using it and talking it up good.
|
Oct 19 | 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 |
Oct 19 | 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
|
David O. |
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...
|
David O. |
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)
|
Oct 19 | 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.
|
David O. |
so.. I went off into the android source and looked at launcher2...
|
David O. |
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
|
David O. |
;component=com.android.contacts/.ContactsLaunchActivity
|
David O. |
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...
|
David O. |
ok.. how about "they have severe disdain for us"?
|
Mark M. |
you appear to be conflating two issues
|
Mark M. |
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
|
Mark M. |
on devices that have it
|
David O. |
but the browser button does fire an intent.
|
David O. |
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.
|
David O. |
which intent would you see it fire?
|
Mark M. |
ACTION_DIAL with a null Uri, perhaps
|
Mark M. |
frankly, I haven't thought about that much
|
Oct 19 | 8:45 PM |
Mark M. |
but the other _BUTTON actions are for hardware buttons (CAMERA_BUTTON, MEDIA_BUTTON)
|
David O. |
fair enough
|
David O. |
I see your point.
|
Mark M. |
hence, I would not expect an icon to fire a _BUTTON Intent
|
Mark M. |
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
|
Mark M. |
and third-party home screens are free to ignore it entirely
|
Mark M. |
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
|
Mark M. |
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
|
Mark M. |
your dialer could still be launched by a desktop shortcut
|
David O. |
yea.. but I rather like launcher2 overall...
|
David O. |
yea I know.. but what fun is that if there's already space for a shortcut right there.. :-)
|
David O. |
but I see your points completely
|
Mark M. |
replacement dialers have been a long-standing area of contention
|
Mark M. |
you're not the first to gripe, and you probably won't be the last, unless they magically change things in Gingerbread
|
Oct 19 | 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
|
Mark M. |
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
|
Mark M. |
BTW, what is FreshFace?
|
David O. |
oh it's a Homescreen replacement on the market..
|
David O. |
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
|
Mark M. |
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.
|
David O. |
does anyone ever try to 'refactor out' the dialer in AOSP into another app? just curious more from an academic perspective.
|
David O. |
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
|
Oct 19 | 8:55 PM |
David O. |
I'd almost bet the latter.
|
David O. |
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
|
Mark M. |
hey, no problem
|
Mark M. |
it's been an unusual chat overall :-)
|
David O. |
heh.. well I like to come to the table with unique topics.. :)
|
David O. |
otherwise I figure I'm probably wasting people's time.
|
David O. |
have a good evening sir... and thank you.
|
Mark M. |
happy to help!
|
David O. | has left the room |
Oct 19 | 9:00 PM |
Mark M. | turned off guest access |