IRC log for #android on 20080406

00:22.56duey:\
00:23.19dueyno one will look at the readme file?
00:25.05mickrobk__i think that post on the challange group is saying that likley noone will look at any attached source
00:25.19mickrobk__not the readme
00:25.26mickrobk__but i dont know really
00:40.32*** join/#android B0jangles (n=tomadmin@c-98-226-6-195.hsd1.il.comcast.net)
01:21.29*** join/#android harls (n=gabba@c-68-55-176-19.hsd1.md.comcast.net)
01:25.26*** join/#android o3u (n=slim@modemcable095.170-70-69.mc.videotron.ca)
01:42.33*** join/#android inZane-_ (i=nemo@dslb-084-058-018-020.pools.arcor-ip.net)
01:54.39*** join/#android jtoy (n=jtoy@125.31.234.200)
02:28.25*** part/#android harls (n=gabba@c-68-55-176-19.hsd1.md.comcast.net)
03:24.13*** join/#android yakischloba (n=jake@rnkfoods.com)
03:41.55f00f-clearly, for it to be fair, they must at least look at the first few paragraphs of the documentation :)
03:42.48jerkface03whats crackin f00f-?
03:43.39f00f-trying to work hard on finishing up my app
03:43.43f00f-having some view problems now
03:43.47f00f-i think i need to learn about ViewInflate
03:44.08f00f-i will be so relieved after the 14th
03:44.17jerkface03aye
03:44.32jerkface03im just finishing up the documentation for my submission
03:44.43f00f-i'm making this wizard, with different layouts depending on which page you're on
03:44.51f00f-and it seems visibility=gone,invisible,visible
03:44.54f00f-totally mucks things up
03:45.01f00f-NPE madness ensues :)
03:46.06f00f-well, maybe it's not what i need to do
03:46.09f00f-this is what is happening
03:46.41f00f-in my layout file i have a RelativeLayout which contains 2 RadioGroups, both of which are set to 'invisible' in visibility
03:47.02f00f-only one is 'visible' at any time
03:47.08f00f-so setting the first one to visible works
03:47.23f00f-when i try to set the first one back to 'invisible' and set the 2nd one to 'visible'
03:47.30f00f-it claims it can't find the 2nd RadioGroup
03:47.34f00f-that is, it gives a NPE
03:47.35f00f-what gives?
03:48.29jerkface03*shrug*
03:48.38jerkface03i didn't even bother using android's UI stuff
03:49.09f00f-what does your app do?
03:49.20jerkface03i'll post it up after i submit it
03:49.44jerkface03which shuold be any time now
03:57.56jtoyis it possible to open a webkit view and then have access to the cookie that is generated via the browse session in my application?
04:07.15*** join/#android SR71-Blackbird (n=nirvana@unaffiliated/sr71-blackbird)
04:29.25jerkface03anyone want to proof this submission doc for me?
04:56.53*** join/#android michaelnovakjr (n=nov@96.56.111.166)
05:08.47jtoyjerkface03: sure
05:12.24*** join/#android niket (n=niket@c-76-28-174-245.hsd1.wa.comcast.net)
05:22.26raidfivedoes anyone know what I can use for writing/reading jpeg exif metadata?
05:22.30jerkface03jtoy, check your pm
05:22.43romainguyraidfive: There is a good open source Java library for this
05:23.13jastahey romain
05:23.14jtoyim downloading it now
05:23.32raidfiveromainguy, I've looked at a few ... which do you recommend?
05:23.42romainguyI don't remember the exact name unfortunately
05:23.54romainguylet me check
05:24.03romainguyI think it was this one http://www.drewnoakes.com/code/exif/
05:24.22raidfivehmm, it looks like javax.imageio even has support
05:24.26romainguyyou can also use the ImageIO library
05:24.28romainguyyes
05:24.29romainguyit does
05:24.38romainguybut it's not as nice to use
05:24.54romainguyand I don't think it shows the EXIF
05:25.01romainguyand IPTC...
05:26.47jerkface03jtoy: how's it looking?
05:26.49raidfiveI'd really prefer a solution that didn't rely on 3rd party code but that is going to require me to look into the jpeg exif specification :/
05:26.59jtoyIm reading it now
05:27.04romainguyit's proabbly not difficult to read the exif
05:28.09raidfiveyea I guess I'll look into it more
05:30.42jtoyjerkface03: that seems like a lot of work you got done
05:31.09jerkface03jtoy: yep, problem is i have almost no sample code to show for it
05:31.12jtoyare you planning on porting some games yourself?
05:31.23jerkface03jtoy: yep, thats the idea
05:31.28jerkface03jtoy: but this was written for a class
05:31.38romainguyjerkface03: what is your project?
05:32.04jerkface03romainguy: i'll submit it and post it up in a few mins
05:32.07*** join/#android shawn_ (n=shawn@114.sub-70-221-85.myvzw.com)
05:32.09jerkface03jtoy: did you notice any glaring errors?
05:32.11romainguyjerkface03: cool
05:32.31jtoyno, its a fairly long document, i wonder if other people are submitting docs as long as yours
05:32.55jerkface03aye. do you think the lead-in is descriptive enough?
05:34.21jerkface03ahhh fuck it. i don't want to work on this anymore
05:34.23jerkface03submitting
05:34.31f00f-2-3 pages tops
05:34.45jtoyyeah, it would probably help though if you showed some small snippets of your api code
05:34.52jtoyI wish they didn't extend the deadline
05:35.03jastai'm so glad they did :)
05:35.08jerkface03wait what?
05:35.11jerkface03dateline got extended?
05:35.12jastai would have never been ready if they hadn't, but i didn't realize :)
05:35.12jerkface03to when?
05:35.15f00f-the judges wont look at code. many won't even know how to read code.
05:35.36jastajerkface03: ...to Apr 14th.
05:35.41michaelnovakjrhaha
05:35.43jastafrom like Mar 34d.
05:35.44jerkface03oh, haha
05:35.44jasta3rd*
05:35.52jerkface03i didn't realize that was the extended date
05:35.53jtoycan somone help me with a service problem real quick
05:35.58jerkface03ya k submitting
05:36.22jtoyI cant et my service to run with the alarm manger
05:36.31jtoyif I run it manually like so, it runs: startService(new Intent(this,FileUploadService.class), null);
05:37.01jastayou can't run a service with an alarm manager.  you need an intermediate IntentReceiver to start the service.
05:37.20jtoybut if I run :Intent intent = new Intent(this, FileUploadService.class); long firstTime = SystemClock.elapsedRealtime(); firstTime += 15*1000; AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE); Integer interval = 15*1000;  am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP,firstTime, interval, intent);    /// it never runs
05:37.28*** join/#android yakischloba (n=jake@c-67-170-96-180.hsd1.wa.comcast.net)
05:37.36jastalike i said...
05:37.41jtoyoh...
05:38.32jtoyjasta is there some place that explains this topic clearly/ or example code!, I dont remember seeing that in the docs
05:38.53jastai'm sure it is somewhere, since i learned it somehow.
05:39.14jastaquite probably in the apidemos
05:39.28jastayup, sure enough
05:40.42jtoywhich one are you referring to? I thought I read all of them
05:40.50jastathe alarm one, of course.
05:41.31jtoyok, I'l reread that, I did reference it before, must have missed it somehow
05:43.49jtoydoh, I had been referencing the Alarm Controller one!
05:47.22*** join/#android yakischloba_ (n=jake@c-67-171-26-212.hsd1.wa.comcast.net)
06:23.09*** join/#android morrildl (n=morrildl@76-217-210-185.lightspeed.sntcca.sbcglobal.net)
06:25.19jtoyhow can I get a result from  a service I call? is there some kind of lifecycle like activity has with  onActivityResult  ?
06:36.41jtoyhmm, guess now: If the service is started with Context.startService then it is a long-running background task whose lifecycle is not related to the lifecycle of the application that started it. Beside passing a start-up parameter bundle to this kind of service, Android platform does not provide any means of communicating with the service.
06:36.45jtoythat sucks
06:42.17*** join/#android SR71-Blackbird (n=nirvana@unaffiliated/sr71-blackbird)
06:43.11jastajtoy: that's not even true
06:43.31jastaAndroid provides a very robust mechanism for communicating with the service, through the OpenBinder.
06:43.50jastalook at any of the .aidl files found in the ApiDemos.
06:44.02jastaSpecifically, RemoteService which defines the most complex example.
06:44.22jtoyright, you need Context.bindService for that though
06:44.29jastaI can tell you confidently that Android provides a very robust model for communication between activities and services, as this is central to my ADC project.
06:44.42jastajtoy: Yes, but you can use startService and bindService together.
06:44.54jtoyoh, I didnt know that
06:44.55jastathat separation makes perfect sense to me.
06:45.06jastayes, start it, check that it started, then bind to it with BIND_AUTO_CREATE
06:45.23jastathen you may unbind from it and let it continue running
06:45.38jastaremember though, if you don't want the service to run forever, you need to make sure it calls stopSelf() at some point.
06:46.09jastastopSelf() has a side-effect though.  It will sever any bound activities that did not bind with BIND_AUTO_CREATE.  Otherwise, it will wait until they unbind, then stop.
06:46.31jastaWhile that is a side-effect, it happens to be ideal behaviour.
06:47.04jastanearly every activity in my project interacts with services in very elaborate ways, so i have explored this quite a bit.
06:47.16jtoyok, I see, I hope i have enough time to learn all the aidl/OpenBinder stuff, I still have a million things to finish in my project :(
06:47.36jastaPerhaps you waited too long to participate in the challenge.
06:47.51jastaI am confident that most of the winning applications will have been started months ago.
06:48.21jastaWhy would Google be interested in paying out for projects that anybody could slap together in a short amount of time?
06:48.45jtoyjasta: I started in January, I'm just doing polishing touches
06:49.13jastaand you're just now exploring services 1 week before the challenge?  heeh, good luck.
06:49.26jtoyI don't explicitly need the binders, but i jsut want to return some status messages for some of the services I have running in the background
06:49.38jastathat will require openbinder.
06:50.28jtoyjasta: plus, a lot of the work for my project is on the website side, which is mostly done also
06:50.36jastaas an aside, if any Google folks are listening, you guys need to write up a general purpose reference on what OpenBinder is, how it is implemented in Android, and why ignoring it is a terrible idea ;)
06:50.55jastajtoy: what's the project?
06:52.15jtoyits an app that gives your communication statistics and help manages your communications with people
06:52.36jastawhat do you mean?  can you give an example?
06:52.46jtoyits very useful for me! I think other people will find it useful
06:54.05jastaalso, how have you managed the latency problem of accessing the mobile web?  most people won't want to use a productivity-based application that is noticably unresponsive.
06:54.45jtoythe current beta version has a  bunch of different reports, so for example,  I can lists of who i call most frequently, last time I called my friends,  I have alarm system that notifies me if i havent called my cousin in more than 1 month for example
06:55.04jtoyyou can use it without the web, but it much better if you use the web component
06:55.16jastainteresting.  how do you deal with privacy issues?
06:56.18jtoycurrently like other web apps, everything is encrptyed, there is a level of trust that needs to be given to the site as  the data is uploaded to the site (optionally)
06:56.36jastahmm, what reason would someone have to trust you, and your site?
06:56.53jtoyI was thinking of adding some kind of per user encryption so we couldnt see the data either, but i dont know if that is viable
06:57.12jastahow could you have a web service report on the data without knowing what the data was?
06:57.28jastaalso, why is this even web-based?  what does the web component offer that couldn't be integrated natively in Android?
06:57.50jtoyits up to the user ifthey trust us or not
06:58.09jtoybut thats the same issue with any site like facebook,gmail,etc
06:58.14jastabut you're saying that if they don't, the apps functionality is significantly reduced?
06:58.30jtoywell, not reduced on the phone, but expanded on the site
06:58.47jastayes, but Facebook, Gmail, etc have corporate backing with well-defined privacy policies.  They are legal targets should they violate their policies.
06:58.50jtoyso for example, data can be exported  to csv via a click of a button from the site
06:59.11jastawhy wouldn't the phone be able to generate CSV?
06:59.12jtoywhich wouldnt be useful to have on the phone
06:59.30jtoyyou could, but what would you do with csv on your phone?
06:59.35jastawhy not?  if you are already supposing that the user will have a data plan, why not suppose they also have e-mail on their phone?
06:59.41*** join/#android Kriyasurfer (n=Akashakr@dsl027-162-152.atl1.dsl.speakeasy.net)
07:00.12jastaMy point is, the privacy issue seems to be entirely avoidable, and I think your users would appreciate that.
07:00.27jtoyjasta: the gui on the web is also full screened, so you can do things faster on the web if you wish
07:01.20jastaHmm, well, I personally am intrigued by your idea, and think there is quite a lot of practical benefit in a sort of call pattern analysis tool.
07:01.20jtoyjasta: the way its built, the web part is optionally, but I would like to expand the web part, one reason is becuase I can write the code several times faster than in java
07:01.28jastaBut I would never submit my call pattern data to your web site.  Ever.
07:01.46jtoyjasta: right, a lot of people wont, but some will
07:02.31jastaOne application I am curious about is if you could implement a generalized algorithm to detect changes in your call patterns and automatically optimize your phones contact list accordingly.
07:02.53jtoyi cant wait for it to be done, I am going to force all my friends to try it out, haha
07:03.02jastaSo for example you get a new girlfriend, the system could detect that you call a new number very frequently, and an old one hardly ever, automatically adjusting your favorites list.
07:03.24jtoyjasta: yeah, that is one part i have, it is very crude right now though, you can view your contacts via call minutes/call freq sorted order for example
07:03.34jastaThough I suppose if I've learned anything it's that machines have no business predicting human behaviour.  It mostly frustrates the humans :)
07:04.22jastaanyway, i gotta get back to my project :)
07:04.38jastait's a music player of sorts and i haven't even finished my playlist management interface.
07:04.48jastathat is, naturally, an important component :)
07:04.48jtoyme too, I'll keep you informed on the progress, i plan to make a company from this
07:05.10jastajtoy: That sounds like it would be very tough.  Good luck anyway.
07:05.12jtoyyou seem to have a lot left laos!
07:05.16jtoyalso
07:05.28jastaI wouldn't say a lot, at least not to satisfy my requirements for the challenge.
07:05.28jtoyyou too, thanks!
07:05.38jastathe biggest and most complicated pieces of my app are done, and have been for a while now.
07:05.48jtoyone problem with mine is  that it is currently extremely ugly
07:06.03jastaMy app doesn't just play music, it actually synchronizes meta data passively and dynamically streams and caches content to your phone from your home machine.
07:06.11jastaThat part all works great :)
07:06.44jastaEliminating the need to physically connect your phone to your computer to update the music collection on the device.
07:06.46jtoyoh, you told me about this before, that seems hard with dynamic ips and such
07:07.09jastaActually, I'm hoping to utilize GTalk to facilitate communication between phone and server.
07:07.23jastathough that is not a priority for this round.
07:07.36jtoythats a huge data bill!
07:07.58*** join/#android davidw (n=davidw@chello212186016224.tirol.surfer.at)
07:08.17jastaIt is clear to me at least that Android is targeting only markets with sensible data rate plans.  So, no, it wouldn't be a huge data bill.
07:08.42jastaMost of the US enjoys a reasonably fast (about 300kbps or more) cellular data network with unlimited usage for about $20/mo.
07:09.01jtoyI pay about 75 cents US for 100 mb  per month right now
07:09.03jastaWith that speed only expanding in the coming years as a result of the 700MHz auction.
07:09.49jtoytrue
07:10.27jastaanyway, i really must work
07:11.26*** join/#android jota-_ (n=jota@190.6.0.180)
07:13.39jastajtoy: My big concern, actually, is battery life for my app.
07:14.04jtoyyeah, I would like to test some real devices out
07:14.12jastaI suspect downloading at 3G speeds simultaneously streaming high quality MP3 files will be a major drain fro the device.
07:14.36jastaThough I hope to personally use it in my car a lot, which I will be able to plug in.
07:15.45jtoyhave you written any code on the iphone?
07:15.59jastaNo, I have thus far ignored it.
07:16.17jastaI do not have any time to explore the iPhone SDK.  Also, I dislike their terms and conditions and platform restriction.
07:18.28jtoyI've written a bit, i like coding in objective c more so far, but i cant stand dealing with linking issues and all those other c errors that happen
07:18.50davidwC's definitely nicer in some ways
07:19.07davidwbut I agree with jasta... being under apple's thumb is not where I want to be
07:20.17jtoydavidw: i hope eventually they become more open
07:20.44jtoyi definetly like android's platform design better, but the iphone so polished
07:26.57*** join/#android soulreaper_ (n=soul@Zfd46.z.pppool.de)
07:29.23jastai wouldn't count google out just yet.  they aren't even done.
07:29.43jastathey have already hinted that even the redesigned UI in m5 is going to change again before launch.
07:30.33jtoyyeah, they aren't out yet, they didnt even launch!
07:38.15*** join/#android rhett (i=rhett@dialup-4.252.246.79.Dial1.Dallas1.Level3.net)
07:38.18rhetthola androiders
07:42.50jastahello
07:43.11rhettgood ole' jasta, I can always count on you being here
07:43.15rhett:)
07:43.41rhettI added some graphics to my app against the advice of this channel, and I think it makes my app look a lot better
07:43.56jastak?
07:44.17rhettoh, just commenting
07:44.27jastawhy would it be against the advice of this channel?
07:44.40rhettsome people here said not to worry about it
07:44.59jastawell, one of the judging criteria is "Polish and Appeal", so I would suggest worrying about it if you have time.
07:45.06rhettsince the default background will change with new sdk versions etc.
07:45.17rhettyeah, that's what I figured
07:45.27jastaI have been wrestling with changing the default drawables and theme a bit myself.  Ultimately, I don't have the time, but I want to.
07:45.28rhetta few extra points in that category couldn't hurt
07:45.39jastaand my app doesn't look bad with it, I just suspect it could be made to look more appropriate.
07:47.04rhettmy app never uses the menue button
07:47.18rhettsomeone on the google groups board says some devices won't even have a menue button
07:47.33jastaI don't use the menu system at all either.  I think it's kind of klunky right now.
07:47.53jastaI'm willing to adjust my app as the SDK advances, though.  I think that's essential.
07:49.26jastarhett: Honestly, I think a lot of the folks in this channel are very misguided as to the depth of the ADC.
07:49.41rhettwhat do you mean?
07:49.46rhetti read the rules
07:49.53rhettyou mean, people advising nto to worry about the looks?
07:51.12jastarhett: I mean about a lot of things regarding the scope of the challenge.  Lots of folks here are producing very incomplete, unpolished applications that barely demonstrate a poorly thought out idea.
07:51.23jastaThat, I think, is not the direction Google was hoping to take with the ADC.
07:52.46jastaMy understanding is that they are attempting to capture more conventional software projects being developed for Android, complete with a thoughtfully designed UI, efficient and stable framework, etc.
07:53.12rhettyeah, good point,  I would hope mine stands out a bit from those, but since only 3 judges will review my app, that creates quite a bit of uncertainty
07:53.30jastaAnd that the challenge is broken up into two rounds is merely a way for them to weed out the crap and focus their judging on a smaller set of appropriate projects.
07:53.50davidwsomeone uncharitable might point out that, well android is well thought out, it could also be described as incomplete and unpolished;-)
07:53.58davidwwell/while
07:54.35jastadavidw: I can't imagine that the point is relevant to the OHA, though.
07:54.36rhettOne really anoying part of my app is that I didn't figure out how to get the datepicker widget to focus if you touch it
07:54.43jastayour point*
07:54.52romainguyrhett: focus doesn't exist in touch mode
07:54.56rhettthis requestFocus() function seems to be flakey, or maybe I dont' get it
07:55.12romainguyif you touch something on the screen, focus and selection disappear
07:55.39jastarhett: As Romain said, "just create an app that rocks."  Not a proof-of-concept ;)
07:55.43rhettmy spinner widgets focus if you touch them, don't they?
07:55.50romainguyrhett: they should not
07:55.51davidwjasta, well, I don't think producing a polished and good looking app is going to hurt, for certain!
07:55.55romainguythey react to press, but they don't focus
07:56.11rhetthmm, i must not understand focus
07:56.14jastadavidw: I think that since it is even part of the official challenge rules, it matters quite a lot.
07:56.24romainguyrhett: a focused view is the view that gets the key events
07:56.26rhetti just want the datepicker to be active when it is touched
07:56.44rhettright, I want the datepicker to take key events after it is touched
07:56.54romainguyrhett: you mean to react to touch events?
07:56.54romainguywe just didn't have time to make date picker fully support touch mode
07:56.58romainguyah no
07:57.01romainguythat won't happen
07:57.09romainguyas I said, in touch mode, nothing is supposed to have focus
07:57.27romainguyyou *can* force the opposite behavior with setFocusableInTouchMode
07:57.31romainguybut I strongly advise against it
07:58.11rhettromainguy, I don't want it to select a date that you touch, but I want it to take dpad key events after it is touched
07:58.40rhettcouldn't I hack up some rule, like if a certain spot on the screen is touched, set the datepicker to be focused?
07:59.24jastai wonder if the judging will occur in the emulator or on a real device
07:59.31romainguyI just told you, you can use setFocusableInTouchMode
07:59.38romainguybut that's against the whole design of the UI toolkit
07:59.48romainguyand doing so would just make your app behave differently than any other app
08:00.06romainguygood UI design is pretty simple: keep things simple, stick with the default behaviors
08:00.07romainguy:)
08:02.04rhettI tried setFocusableInTouchMode, but it gave me some wierd behavior where the dpad didn't work any more
08:02.34romainguybecause focus doesn't exist in touch mode :)
08:02.48romainguysetFocusableInTouchMode is meant for widgets like EditText
08:03.05romainguyyou want this widget to receive key events (to type a login for instance) even when in touch mode
08:05.45rhettI needed a calendar that was scrollable, with dates color coded on them, so I extended the DatePicker to set color coded dates in a hash, and mark dates onDraw.  Also, I keep track of when the cursor is moved to update views in an activity that is passed to it
08:05.58rhettI could have made my own calendar, but mostly the DatePicker had what I wanted
08:06.20rhettit sounds like maybe I should have just made my own calendar for this purpose so people don't get confused
08:07.42rhettis there some way I could say if the actvity catches a touch screen event with a certain x,y value, to force the datepicker to be active?
08:08.03*** join/#android mickrobk (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net)
08:08.17romainguyrhett: again, don't do this
08:08.26romainguythe framework enforces the non-existence of focus in touch mode
08:08.40romainguyif you try to force it to behave differently, you can expect weird things to happen
08:09.09rhettso, what should I do if I want a calendar widget that you can touch?
08:09.16rhettand has a cursor, etc.?
08:09.44romainguyany widget you want
08:09.50romainguyjust know that focus does not exist in touch mode
08:09.56romainguythat does not mean you cannot react to touch events
08:10.09romainguyjust that after a widget is touched, it does not receive key events
08:11.33rhettthe interface that makes sense of for may app is that a user touches a box with a calendar in it, and then she can scroll around the dates with the dpad.  I don't understand how you're suggesting I accomplish that
08:11.52*** join/#android romainguy_ (n=gfx@72.14.224.1)
08:11.57rhettall I understand is that you're telling me not to make that interface
08:12.29romainguyyes, that is correct :)
08:12.49romainguywhen the user presses a key after having touched the screen, the focus is resurrected
08:13.07rhettwhat?
08:13.30rhettoh focus is not enabled until a user touches the screen and then touches a key
08:13.45romainguyfocus is enabled as soon as the user presses a key
08:13.52romainguyand disappears when the user touches the screen
08:13.55rhettso, i could fake a keypress, but you're telling me not to
08:14.01romainguyexactly
08:14.11rhettbut, it's how everyone wants to use my app
08:14.25romainguyif the user touches the screen, then you should let them scroll with a gesture
08:14.33romainguyinstead of forcing the user to use the keys
08:14.43romainguyrhett: and how would that work on a device with no keys?
08:15.09rhetthow can they scroll to the datepicker?
08:15.10jastaromainguy: What romain is saying is that once in touch mode, your entire interface should be possible through touch only.
08:15.15rhetti thought all devices would have dpad keys
08:15.15romainguyit's pretty simple really, if the user touches the screen, assume the device does not have keys anymore
08:15.20romainguyrhett: not necessarily
08:15.39romainguyAndroid supports keys and touch screens and any combination of the two
08:16.17rhettahh, let me check the datepicker demo, and see you can select a new date without using keys
08:17.16rhettok, there is no way for me to use it without using the keypad
08:17.36jastaall that tells you is that you should not be using the datepicker :)
08:17.49romainguy_because, as I said, we didn't have time to finish adding support for touch in date picker :)
08:18.19romainguy_you can use date picker, we'll fix it in a later version of the SDK
08:18.33rhettoh ok, well that would be dandy for me
08:18.52rhettit's just that when the judges see it, it would be nice if touched seemed to work for it now
08:18.55f00f-romainguy_: is it possible to get rid of the Set button in the time picker?
08:19.05romainguy_f00f-: let me check
08:19.29romainguy_rhett: I agree, but I'm sure the judges will be aware that our platform has its own bugs, quirks and limitations :)
08:20.30*** join/#android acsia (n=acsia@host86-161-119-76.range86-161.btcentralplus.com)
08:20.47jastai don't understand the notification tray thing.
08:21.04romainguy_f00f-: picker.findViewById(android.R.id.setButton).setVisibility(View.GONE)
08:21.06jastai really just dont get it.  i feel like when i touch the icon, i should be brought to the intent it launches.
08:21.32jastainstead of having to click and drag it all the way down
08:21.35rhettdoes anyone know how I get my app to schedule an SMS to be sent next friday, even if a user doesn't go back to my app by then?
08:21.43romainguy_jasta: that feature was developed late in M5 cycle (*very* late)
08:21.54romainguy_it has been vastly  improved in the next SDK
08:21.58jastathank god
08:22.26jastai'm using it now as somewhat central to my design, but it sucks so it feels weird doing that
08:22.30jastai had imagined it would be improved though
08:22.50romainguy_now the icons are stuck to the bottom of the drawer
08:23.02romainguy_but when the first icon shows up, it sticks to the status bar
08:23.15f00f-hahaha. thanks romainguy_ i'll check it out :)
08:23.43romainguy_jasta: also note that it's a lot better on an actual device since you can fling the drawer down
08:24.51jastaromainguy_: i hope i'm using it correctly.  right now, i have it so that when the user selects a track or album to play, it informs them if it's been enqueued or is actively buffering/playing right there from the selection interface
08:25.07jastabut also throws up a notification indicating that the playlist is now active, and music is either playing now, or will be playing soon
08:25.22jastaand the user can select the notification icon to be brought ot the playlist management screen, showing more info about the current song, offering pause, back, forward, etc.
08:25.35romainguy_to me this notifications drawer is meant for calendar events, mails, sms, alarms, etc.
08:25.46romainguy_if you feel like it's a good idea, sure...
08:25.51jastaalso, they are brought there if they tap the song or album twice
08:26.08romainguy_but as far as I am concerned, I'd annoyed to get a new notifications every time I play another song
08:26.13jastaromainguy_: Well, it seemed appropriate to indicate that music is playing
08:26.16jtoyhopefully, intents can see the phone number that is calling when an incoming call occurs in the next sdk
08:26.26*** join/#android n0eY (n=rennha_a@124.81.30.44)
08:26.30f00f-jasta: maybe if your player supports music downloads you could notify when a download has completed :P
08:26.32romainguy_jasta: I could see that as a status bar icon
08:26.43romainguy_but not really as a notification
08:26.50jastaromainguy_: Right, but I thought they were one in the same?
08:26.51romainguy_rah fuck you IntelliJ
08:27.17romainguy_jasta: can't you put an icon in the status bar without having a notification in the drawer?
08:27.19jastaReally what I want is just a status bar icon that if you touch it, you are brought to the player screen.  Is there are a better way to do that?
08:27.22romainguy_I haven't looked at this part in a long time
08:27.28jastaromainguy_: Not as far as I know?
08:27.29romainguy_I have no idea :(
08:27.41jastaNone of the demos seem to have that.
08:29.32romainguy_yeah, it looks like they go together
08:29.51jastaIs there some possibility that will change?  I think it makes a lot of sense to separate them.
08:31.27*** join/#android Mathiasdm (n=Mathias@78-22-5-158.access.telenet.be)
08:31.31davidwromainguy, got any advice on the right widget to use for a countdown timer?
08:33.00romainguy_TextSwitcher?
08:35.23davidwcool! thanks
08:52.33*** join/#android [jarek]\ (n=jarek@anz141.neoplus.adsl.tpnet.pl)
08:52.36*** part/#android [jarek]\ (n=jarek@anz141.neoplus.adsl.tpnet.pl)
08:57.01f00f-hmm, i can't seem to get ProgressDialog to show a percentage, it's just spinning around.
08:57.24romainguy_yeah, that's a bug
08:57.43f00f-so no workaround?
08:57.55romainguy_there's an easy one
08:57.59f00f-i like the choice of 1 to 10000 as the progress values :P
08:57.59romainguy_create your own progress dialog :)
08:58.02romainguy_it's pretty simple
09:01.02romainguy_hates running into VM bugs
09:06.41*** part/#android n0eY (n=rennha_a@124.81.30.44)
09:17.47davidwsuch as?
09:19.06f00f-is intent delivery guaranteed?
09:19.44f00f-i am calling broadcastIntent() from a Thread in a Service targeted at an Activity... is this considered good?
09:33.56*** join/#android mickrobk_ (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net)
09:43.47*** join/#android haavi (i=haavi@c83-254-98-251.bredband.comhem.se)
10:02.23*** join/#android loic-pointgphone (n=sexystif@bro67-2-82-225-7-231.fbx.proxad.net)
10:04.01*** join/#android cybereagle (n=cybereag@unaffiliated/cybereagle)
10:18.36*** join/#android raidfive (n=null@c-71-236-205-80.hsd1.wa.comcast.net)
10:20.06*** join/#android [AD]Turbo (n=turbo@host131-128-dynamic.57-82-r.retail.telecomitalia.it)
10:46.38*** join/#android Adys (n=Adys@APoitiers-257-1-68-132.w86-205.abo.wanadoo.fr)
10:57.55*** join/#android Adys (n=Adys@APoitiers-257-1-68-132.w86-205.abo.wanadoo.fr)
11:22.04inZane-_hey, does someone have an workling example for a contextmenu?
11:22.08inZane-_getListView().setOnPopulateContextMenuListener(new OnPopulateContextMenuListener() {
11:22.11inZane-_public void onPopulateContextMenu(ContextMenu pContextMenu, View pView, Object pMenuInfo) {
11:22.14inZane-_pContextMenu.add(0, 0, "test");
11:22.17inZane-_}
11:22.19inZane-_});
11:22.36inZane-_i have no clue whats wrong with this
11:44.17jtoyhow does the from array get called  on the List data in public SimpleAdapter(Context context, List data, int resource, String[] from, int[] to)    ? isnt that some kind of metaprogramming?
11:44.55jtoyi have a bunch of objects that have an instance variable named foo, but the simpleAdapter can't call it for some reason
11:55.06jtoyanyone know?
11:58.31*** join/#android soulreaper (n=soul@Zfd46.z.pppool.de)
12:00.30jtoyI see the answer, simpleadapter must use a hashmap for the data list
12:16.42chomchomI'm struggling with the decision to change the buttons or not.
12:17.30chomchomDo I replace them with something nicer or do I keep them for (the hope of increased) accessibility
12:18.26chomchomBecause I can bet I haven't done nearly as much usability testing as google will have with their buttons
12:18.35chomchomSO maybe I should just leave them?
12:27.18*** join/#android Mathiasdm (n=Mathias@78-22-5-158.access.telenet.be)
12:48.10*** join/#android inZane- (i=nemo@dslb-084-058-089-162.pools.arcor-ip.net)
13:09.19jtoyto compare objects do you really need to implement a comparator class?
13:13.29acsiawell depends what you want to do
13:14.06acsiafor String.compareTo will return different values depending on both string while the equal is boolean (true or not)
13:14.37acsiado you want to get further information about the comparison or not... if it is just same object then no
13:18.20jtoythe objects are the same, but I will be doing different comparisons based on what is clicked in the ui
13:18.33jtoysometimes it compares strings, but mostly its comparing integers
13:20.17acsiawell I would suggest to implement comparable then
13:20.26acsianot very complicated and easire to maintain
13:21.28*** join/#android foysavas (n=foysavas@pool-68-163-207-237.bos.east.verizon.net)
13:22.28jtoyacsia: from reading around, it seems comparable is only for 1 kind of sort, meaning you cant do different sorts on the same set of objects, is that correct?
13:24.47acsiathe main usage for comparable is for collections... if you have specific idea of what you want to compare, the easiest IMO would be something like public Class A { ... public int compareTo(Class A); ... }
13:25.09acsiaand return an int that can help you to know what the difference are
13:25.47acsiait will really depend on the usage
13:26.26*** join/#android foysavas (n=foysavas@pool-68-163-207-237.bos.east.verizon.net)
13:28.47*** join/#android foysavas (n=foysavas@pool-68-163-207-237.bos.east.verizon.net)
14:14.17*** join/#android Yeggstry (n=mind@cpc1-rdng14-0-0-cust946.winn.cable.ntl.com)
14:15.37*** join/#android sudoer (n=jtoy@125.31.234.200)
14:41.54chomchomBy the way, I know no one answered earlier when I was asking about the buttons, but just for others in future, it is possible to specify your own resizable buttons in android by making and specifuying "9 patch stretchable images" these are png images with black pixel lines that specify the stretchable areas.
14:45.18davidwwould be kind of irritated if every app on my phone had different buttons
14:46.41chomchomyeah that is the trade off.
14:47.16chomchomI'm leaning towards leaving it for just now
14:50.54*** join/#android muthu (n=chatzill@59.92.28.191)
15:01.12*** join/#android o3u (n=slim@modemcable095.170-70-69.mc.videotron.ca)
15:07.43*** join/#android inZane-_ (i=nemo@dslb-084-058-092-063.pools.arcor-ip.net)
15:08.27*** join/#android nemik (n=cyanact@c-67-173-76-34.hsd1.il.comcast.net)
15:12.19chomchomAnyone any ideas how I programmatically set the gravity of an image?
15:15.13muthuis there a setGravity?
15:15.29chomchomI've tried just passing in the Gravity.Right in my Layout params but that doesn't seem to take affect
15:15.45muthumost of the attrs are in R.styelable
15:16.00muthulook in android.R
15:17.09muthuif you are not getting the desired effect then  the particular view might not making use of gravity
15:17.44chomchomIts a list view, i presumed that all views had a gravity and that you could override it.
15:27.51*** join/#android _ken_ (n=user@84.92.70.37)
15:35.21*** join/#android aksyn (n=aksyn@78.86.127.226)
16:03.55*** join/#android parti (n=parti@77.163.25.244)
16:03.55*** join/#android Lede (n=lede@85.148.228.92)
16:10.13*** join/#android acsia (n=acsia@host86-161-119-76.range86-161.btcentralplus.com)
16:47.19*** join/#android muthu_ (n=chatzill@59.92.11.165)
16:47.46*** join/#android mypapit (n=mypapit@pdpc/supporter/active/mypapit)
16:58.50*** join/#android soulreaper (n=soul@Zfd46.z.pppool.de)
17:01.34*** join/#android tmcneal (n=asdf@pool-151-199-245-93.phil.east.verizon.net)
17:02.56tmcnealhey jasta, have you had any problems with nested views in the tabactivity?
17:03.44tmcneali'm having an issue where only the first nested view gets displayed, even though i am programatically adding more than one. and also data on that first view doesn't get refreshed and redisplayed like it was doing before i put it in a tabactivity
17:05.10*** join/#android BenO (n=ben@82-69-120-120.dsl.in-addr.zen.co.uk)
17:05.39*** join/#android acsia (n=acsia@host86-161-119-76.range86-161.btcentralplus.com)
17:05.55acsiaI just noticed that the emulator locks my sound device if it crashes...
17:09.16davidwacsia, yeah, there's some weirdness there
17:37.12*** join/#android davidw_ (n=davidw@chello212186016224.tirol.surfer.at)
17:48.01*** join/#android ChanServ (ChanServ@services.)
17:48.01*** mode/#android [+o ChanServ] by irc.freenode.net
17:52.29jastaacsia: the emulators sound support doesn't play nicely with Linux, at least.
17:52.40jastait should support ALSA, but seems not to.
17:52.48jastai wonder if alsaoss will work
17:53.31*** join/#android ChanServ (ChanServ@services.)
17:53.31*** mode/#android [+o ChanServ] by irc.freenode.net
18:00.31*** join/#android yakischloba (n=jake@c-67-160-78-209.hsd1.wa.comcast.net)
18:16.07*** join/#android loic-pointgphone (n=sexystif@bro67-2-82-225-7-231.fbx.proxad.net)
18:17.15*** join/#android michaelnovakjr (n=nov@ool-18ba6e83.dyn.optonline.net)
18:27.52michaelnovakjrcan the priority of an app be set on the system to prevent it from being killed?
18:28.30jastanot as such, but you can create a service which never dies and bind to it to arbitrarily keep your activity alive.
18:31.29michaelnovakjrcan a service be started on its own or does it have to be by an activity?
18:31.59jastait can be started by an intentreceiver.  under such an arrangement, it could be started without the users intervention.
18:39.38jastaHmm, why isn't List<Long> supported in AIDL?
18:39.51jastaList<long> passes the aidl compiler, but then generates invalid code of course.
18:39.56jastaList<Long> says that Long is not a valid type.
18:59.39*** join/#android The_PHP_Jedi (n=ThePHPJe@unaffiliated/thephpjedi/x-000002)
19:04.20f00f-what's an easy way to center a view horizontally?
19:04.54f00f-i guess i need a LinearLayout just to do this
19:08.24*** join/#android Mathiasdm (n=Mathias@vpnf130.ugent.be)
19:09.07romainguyf00f-: LinearLayout is the easiest thing yes
19:10.03michaelnovakjrjasta thanks
19:10.40romainguyjasta: Have you tried with a List instead? (with no generic type)
19:16.38*** join/#android dfas (n=none@10.201.216.81.static.s-o.siw.siwnet.net)
19:26.09acsiais it possible to return an Uri with several ids?
19:26.24acsialike content://.../[1,2,5,6]
19:26.30acsiasomething along those lines?
19:28.17*** join/#android mickrobk_ (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net)
19:41.49jastaromainguy: yes, and that works, i'm just curious why it would not be supported this way.  List<String> works.
19:42.00jastathe documentation specifically states taht generics are supported.
19:53.50*** join/#android morrildl (n=morrildl@76-217-210-185.lightspeed.sntcca.sbcglobal.net)
19:55.22*** join/#android dpino (n=dpino@cm217225.red91-117.mundo-r.com)
20:02.30*** join/#android mazzen (n=mortel@u30-237.dsl.vianetworks.de)
20:04.40*** join/#android Adys (n=Adys@APoitiers-257-1-84-214.w86-210.abo.wanadoo.fr)
20:13.07f00f-anyone have experience playing with DrivingDirection ?
20:20.57*** join/#android morrildl (n=morrildl@76-217-210-185.lightspeed.sntcca.sbcglobal.net)
20:23.57*** join/#android parti (n=parti@77.163.25.244)
20:28.36jastaromainguy: what is the correct way to cause a list view to repopulate?  requestLayout or invalidate?
20:36.06jastaactually maybe i'll tackle this a differently
20:43.26*** join/#android Dralspire (n=dralspir@199-96.126-70.tampabay.res.rr.com)
20:45.23*** join/#android morrildl (n=morrildl@76-217-210-185.lightspeed.sntcca.sbcglobal.net)
20:48.04romainguyjasta: requestLayout
20:48.06romainguyinvalidate just repaints
20:48.22romainguyyou can force a full list reset with invalidateViews()
20:48.24romainguy(bad name)
20:48.52jastai'm thinking it might be better for me to just dynamically adjust the view for the rows i know i will be manipulating.
20:49.19jastaand not go through the list adapter or anything
20:50.36romainguysure but the next layout might screw up your adjustments
20:51.06jastatrue, perhaps i will have to implement this both in the adapter and using the views directly
20:51.52romainguyit won't be much more costly to go through the adapter
20:57.19jastahow'd you guys implement that cool background progress bar in the title bar (as seen in the browser app)?
20:57.32jastais that just a framelayout or something?
20:59.29jastanm, i forgot i reverse engineered this stuff.  it's a relativelayout with two views aligned to parent left so they overlap each other
21:06.16*** join/#android BeanBag (n=ender@adsl-71-159-155-104.dsl.rcsntx.sbcglobal.net)
21:12.33*** join/#android soulreaper (n=soul@Zfd46.z.pppool.de)
21:15.28*** part/#android BeanBag (n=ender@adsl-71-159-155-104.dsl.rcsntx.sbcglobal.net)
21:17.14Ix-Xitani want to do vodeo streaming and audio streaming for video i used VideoView and works like magic now i want something for mp3 streaming is there something lile videoview but for audio ?
21:20.21jastamp3 streaming appears to be entirely broken in M5.
21:20.40jastathe class you'd use would be MediaPlayer, but it has numerous unavoidable problems.
21:21.14jastai stumbled across one very clumsy work-around that will definitely need to be replaced when the next SDK is released.
21:21.21jastaso if you're not trying to do this for the challenge, then I suggest waiting.
21:22.26Ix-Xitanok
21:22.32Ix-Xitani have to use it for some project
21:22.38Ix-Xitanok ill use this way than
21:22.39Ix-Xitanhttp://blog.pocketjourney.com/2008/04/04/tutorial-custom-media-streaming-for-androids-mediaplayer/
21:22.42Ix-Xitanit works
21:22.51Ix-Xitanhomebrewed streaming
21:23.13jastait really doesn't.  if you analyze the way that the code demonstrated there works you will realize it has numerous disasterous possibilities.
21:23.37Ix-Xitanyes ur right
21:23.44Ix-Xitanit assumes a lot of things
21:24.00Ix-Xitanbut its enough for demonstration
21:24.38jastai ultimately concluded that it would be better to leave my project broken and submit to the ADC judges that MediaPlayer is the cause, not my code.
21:26.19*** join/#android Azalar (n=Azalar@unaffiliated/azalar)
21:32.12chomchompeople, I'm at my wits end. Could someone spell out to me the steps I need to take in order to pass extras to an activity?
21:32.36chomchomI'm passing the intent and starting the activity
21:32.58chomchombut when I do a  getIntent().getExtras() it always seems to be null
21:33.18chomchomIt seems to work fine in the notepad example, I'm not sure what I am missing
21:38.21f00f-<PROTECTED>
21:38.21f00f-<PROTECTED>
21:38.22f00f-<PROTECTED>
21:39.39f00f-retreive with:
21:39.41f00f-category = (String) i.getExtra("category", "");
21:39.49chomchomthats what I am doing. The only difference being that instead of self I'm passing a reference to an activity
21:40.30f00f-i don't use the conglomerate getExtras() though
21:40.35f00f-so i dont know 
21:41.06chomchomhmm I'm also calling it like activity.startSubActivity(Activity, ACTION);
21:41.26f00f-well, i use 'self' in place of 'this' since it's being called out of context
21:41.34f00f-but should work similarly for you
21:41.56f00f-private MyACtivity  self = this;
21:41.57f00f-etc.
21:42.21f00f-or you can do
21:42.27f00f-MyActivity.this i think
21:42.29f00f-i dont remember if it works
21:42.33f00f-probably the same thing :)
21:44.21*** join/#android foysavas (n=foysavas@pool-68-163-207-237.bos.east.verizon.net)
21:44.55tmcnealyes, MyActivity.this will work
21:49.55romainguyjasta: how'd you guys implement that cool background progress bar in the title bar (as seen in the browser app)? << it's just a window feature
21:50.01romainguyyou just need to request it in your activity
21:50.18jastai meant how was it implemented, i am gonna use the idea elsewhere in my app
21:50.24jastabut i already figured it out from screen_progress.xml :)
21:50.34romainguyit's just a progressbar
21:50.47jastai meant the layout.
21:51.01jastabut again, already figured out its a relativelayout with two views aligned with parent left
21:51.09tmcneali found an interesting thing about using a TabActivity... if you're defining your own activities on each tab (like in jasta's tutorial), all activities must use the same ContentView.
21:51.14jastai keep forgetting that relativelayouts permit overlapping
21:51.35tmcnealIf you don't, every tab other than the first tab will only display the first View, and will not repaint properly
21:51.39jastatmcneal: that isn't true, nor is it even how my sample works.
21:52.11tmcnealsure it is, when you click on each tab, it launches it's own activity
21:52.23jastaYes, and each activity uses setContentView with a different layout XML file.
21:52.43jastathat's also how my real app works, which borrows from my sample.
21:53.10tmcnealyes in your tutorial it does, but it looks like when i try using different layout XML files for each tab "view" only the first one works
21:53.42jastathen your layouts are incorrect, because i did precisely that in the sample, and i also use that in my much larger app.
21:54.05jastamy first thought is: are you sure you are using a FrameLayout for tabcontent?
21:54.12tmcneali don't think they're incorrect, but i am adding the views programmatically so maybe that's what's causing it
21:54.45jastaunlikely
21:54.47tmcnealyeah i am. i solved the problem by using the same layout xml for each tabview, which is fine for my implementation
21:55.42jastaViewInflate.inflate() also adds views programmatically, so again, no.
21:56.45jastaI suspect you are going to encounter other unusual bugs unless you examine how your usage differs from mine.
21:56.50*** join/#android duey (n=duey@203-190-208-12.innovationwaikato.co.nz)
21:57.15tmcneali don't anticipate i'll have anymore problems, but who's to say...
21:58.50tmcnealalthough.. one thing i did notice is that when I set up menu options on the TabActivity, they display but never call onMenuItemSelected(), so I have to set the menu options in the Activities for each Tab.. have you noticed this?
21:59.10jastano, i actually don't use menus in my application.
21:59.50tmcnealromain would you happen to know if that's intended functionality for TabActivities?
22:01.32acsiawhat is the purpose of the Handler  while instantiating an ContentObserver?
22:01.45acsiais there any way to gather further info within the onChange?
22:02.06jastapresumably because the content observer is running in another thread
22:03.02jastaacsia: I doubt it.
22:03.35*** join/#android mickrobk (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net)
22:03.54acsiaarf, well I have a modified column so currently I am querying the last modified row
22:04.17acsiabut I will need to query quite a lot of tables for just one value...
22:04.44acsiais there anything I could hook into by any chance?...
22:05.11jastanot sure what it is you're trying to accomplish.
22:08.40acsiawell I have several applications that have their own Uri and 1 other that observes all Uris
22:08.53acsianow I am not sure which one is being observed within the onChange
22:09.31jastai remember this conversation vaguely.  is it that you have some unusual fear of extending classes? :)
22:09.46acsiathe registerContentObserver takes an Uri which I can not access within the onChange...
22:09.52acsiahaha
22:10.12jasta?
22:11.52acsiawell I might see it the wrong way but I would assume that you could gather the Uri for which you register the observer
22:12.09jastabut clearly, you cannot.
22:12.10acsiaand you are probably right regarding extending
22:12.53jastathe content observer was not designed with your usage in mind.  but you can easily extend it.
22:12.56acsiaI am working actually on a similar problem to what I tryed last  time but with a content observer this time
22:13.57acsiaI ll give it a try
22:14.24jastai must admit that i don't fully understand your intention.
22:15.39acsiawell I am currently working on a pluggable framework
22:15.52acsiaa super simplified version of OSGI
22:16.20acsiaso i have plugins and each time a new plugin is installed, I observe its Uri
22:16.37acsiaI want to be the less intrusif as possible within the plugins
22:17.56acsiaI must admit that before android, I had not touch java for 2 years
22:18.14acsiabeen playing with ruby and erlang... you loose a bit your way of thinking
22:18.25jastai don't agree
22:18.44jastabut regardless, i can't help you without further exploring your problem and i am too busy with my own problems :)
22:20.11acsiaunderstandable... I think we ll have a restless week ahead
22:20.39jastaare you submitting your project for the ADC?
22:21.33acsiayes, but it will be a very early look
22:21.41acsiamore of a POC
22:22.26jastaaccording to the challenge rules, it seems unlikely that any library or framework is able to win.
22:22.41*** join/#android mazzen (n=mortel@u30-237.dsl.vianetworks.de)
22:22.49jasta2 of the categories of judging relate directly to the UI.
22:23.33acsiaaaa that s not good... should have red the rules in more details :) but I am not giving up
22:24.03jastathe 4 criteria for judging are: originality of concept, effective use of the android platform, polish and appeal, and indispensibility.
22:24.18jastayour app would really only satisfy "effective use of the android platform".
22:24.20acsiaI think the UI should not be that important
22:24.34acsianot really, indispensibility as well
22:24.41jastaacsia: Yes, but what you think is not consistent with the challenge rules.
22:25.52jastaThe UI is directly applied to two of the four: polish and appeal, and indispensibility.
22:25.56jastayou really should read the rules :)
22:26.16jastaand your app certainly doesn't sound original, since you related it to me as a subset of another more robust system.
22:26.22jasta(which also was ported to Android)
22:27.00acsiathat is discussable... UI IMO should not matter that much at first.. I would only read polish and appeal for UI...
22:27.14acsiaI don t want to have a different UI for every application that I installed
22:27.33jastawell, if it "doesn't matter that much", then why it is even 1 of the 4?  That's still 25% of your grade, which I'd say is significant.
22:27.56acsiaI guess so
22:28.05jastaacsia: Every application must have a user interface or it is not usable by users.  Obviously.
22:28.16jastaSo what do you mean by a "different" UI for every app?
22:29.10acsiawell I have been dll a couple of app from helloandroid and each app has its own UI designed with different icons and buttons etc
22:30.00jastaSo too does every app that Google has published for Android.
22:30.13acsiatrue
22:30.36jastaRegardless, I would strongly advise you go back and read the challenge rules.  Hopefully it will give you some insight into a specific area you should be focusing on leading up to the deadline.
22:30.49jastaPersonally, I am working on the "polish and appeal" criteria from now until then :)
22:32.22acsiayes well I am not sure I have time for that now... :(
22:32.31acsiaI keep the spirit up thought
22:33.42acsiaand the criteria discuss a lot about developer tool which my app could be classified in as well
22:33.59jastain what way?
22:35.20chomchomOMG.
22:35.26chomchomTell me you all know this feeling
22:35.32jastawhat?
22:35.37chomchomThat feeling of dread
22:35.46jastaYeah, been there.  Why? :)
22:35.53chomchomwhere your heart drops right down into the pit of your stomach
22:36.13chomchomyour skin turns cold and you feel very sick
22:36.23jastaDid your girlfriend dump you? :)
22:36.30acsiawell jasta just achieved that upon me ;)
22:37.07chomchomThat moment where you realize that the problem you have been struggling over for hours is because you have been calling the wrong method.
22:37.30jastaacsia: I didn't mean to, it's just that the challenge rules are not terribly ambiguous.  A lot of folks have been making ridiculous claims as of late regarding the 4 simple criteria simply because they haven't read them.
22:37.50romainguychomchom: at least it's fixed :)
22:37.53jastaIn fact, the general consesus in this channel seems to be that "UI doesn't matter", when, in fact, polish and appeal is one of the four criteria.
22:37.57chomchomI HATE how down right stupid I feel right at this minute. Damn Damn Damn
22:38.15f00f-well just use the built-in UI widgets, no need for anything fancy
22:38.17acsiajasta: I am just joking, I am still very confident with my project.
22:38.28f00f-and a couple of icons from the tango desktop project, and boom, you got something sexy
22:38.29jastachomchom: That's nothing.  Try following a design for weeks only to realize that it will never, ever work :)
22:39.03jastaf00f-: I suspect that "easy to use" is harder to accomplish than slapping some icons on your app :)
22:39.24f00f-yeah, that's the other part :)
22:39.36jastaUI is very tricky, *especially* on such a small form factor.  Ignoring it is an easy way to get your application a low score.
22:40.00jastaTrust me, I've built a lot of terrible UIs in my day :)
22:40.50f00f-hehe
22:41.33f00f-what do you think about AndNav's UI, http://www.anddev.org/andnav/ ?
22:41.54jastai thought plusminus wrote this?
22:41.59f00f-yes he did
22:42.13jastawell, i like the skateboarding android.
22:42.15jasta;)
22:43.10f00f-i like http://sadko.mobi/droidstor/screen.html also
22:43.20f00f-nice large buttons for touchscreen
22:43.23jastai can't really speak to his UI though, since it is so dependant on real driving conditions.
22:43.58jastawell actually i find that UI a bit cramped.
22:44.05jastathere needs to be more padding, and less information.
22:44.43romainguyyes, it's a very busy UI
22:45.03romainguydesigning good UIs is pretty easy
22:45.08romainguykeep it simple, stick to the default
22:45.08jastaon a mobile device, less is more.
22:45.15romainguyjasta: even on a desktop
22:45.28jastaromainguy: Yes but on an entirely different scale :)
22:45.51romainguyjasta: it's harder, but if desktop apps were more often designed like cell phone's, it'd be awesome
22:46.03jastaconsistency is also extremely important, again especially on a mobile device.  the app should be predictable and should need little exploration.
22:46.07f00f-would you say http://io.karibra.com/img/2008/04/06/2008-03-28-115755_335x497_scrotKDDK.png is too simple?
22:46.42jastawell, again i would put more padding there, but i assume there is more to the interface than that?
22:46.43acsiaf00f-: that s a nice and simple IMO
22:47.25f00f-yes, certainly is :)
22:47.39romainguyI can't reach the image
22:48.34f00f-hmm
22:48.35acsiawell back to under siege (yes the one with steven seagal) for 15 minutes (my break for the night)
22:48.56acsia:)
22:49.00f00f-romainguy: how about http://img222.imageshack.us/img222/7411/20080328115755335x497sclt9.png ?
22:49.44f00f-the other site is dual ipv4-ipv6 so might have issues
22:50.59romainguyf00f-: that's the kind of UI I would expect on a phone
22:51.03romainguyexcept with more white space
22:51.06romainguyand bigger items
22:51.07jastahttp://picasaweb.google.com/jasta00/Test/photo#5186268422489938898
22:51.10michaelnovakjri like it
22:51.12jastathat's part of my ADC submission
22:51.23romainguynever hesitate to use a lot of whitespace when you design a UI
22:51.28michaelnovakjrnot sure the distince does something for me, but i like the rest of it
22:51.29romainguybe it on a mobile device or on a desktop
22:51.38f00f-hmm, ok my other screens have more of it. thx for the tip
22:51.54f00f-nice jasta! does it scroll really smoothly?
22:52.00jastaYes
22:52.25f00f-is there a GUI for 'now playing' ?
22:52.31jastathat little icon in the upper left is part of my app too
22:52.41f00f-a service :)
22:52.47jastaf00f-: Yes, although I don't want to show it yet.  I'm working on that now.
22:53.05jastaI'm polishing a lot of this stuff, although the UI I am "borrowing" is here:
22:53.15jastahttp://www.treocentral.com/images/admin_uploaded/1171394847.gif -- but please, take that with a grain of salt.
22:53.30jastaI just like the basic approach of song/artist/album at the top, with progress info below it
22:53.50jastai am replacing their cluttered playlist screen with just a simple preview of what songs are coming up next in the playlist, with buttons to open up more advanced playlist management
22:53.54f00f-cool. although this one seems a bit busy
22:54.12jastaf00f-: yeah like i said, take that with a grain of salt.  i am only inspired by the *basic* layout :)
22:55.02jastathe favorites tab in the screenshot i just posted is also being worked on.  i plan to show more of like a grid view of your favorite albums (based on last.fm listening statistics)
22:56.23jastathe track listing screen will be done today too.  i have some cool flare to toss in there when songs are being buffered and stuff :)
22:56.43jastasince my music player is OTA, it is very tricky to let the user know what's going on if their music isn't readily available
22:57.02jastathough in my tests, a typical first-time listen buffer time is usually only about 4 seconds.
22:57.21f00f-so you're using the last.fm API?
22:57.35jastayeah, their web services.  my player also scrobbles.
22:57.42f00f-sweet
22:58.01jastaso that it not only takes last.fm data, it also contributes it right back.
22:59.57jastalast.fm, though, is mostly used to provide playlist options.
23:00.32jastalike, from my playlist manager, you can set your playlist to the last 50 tracks you scrobbled, the top 50 tracks of all time, last 3 months, 6 months, etc.
23:00.55jastayou can also filter the artist and album screens by music acquired in the last 3, 6, and 12 months.
23:01.45jastathis approach is closely aligned to how i like to listen to my music.  i frequently bounce back and forth between my all-time favorites and my new favorites :)
23:01.49f00f-can you listen to last.fm radio stations?
23:02.12jastaI intend to support last.fm tag and neighbor radio, though given the streaming brokenness, i am not going to include that in the ADC submission.
23:02.20f00f-ok
23:02.23jastai'll put the UI in there, but i'll just note that it doesn't work yet
23:03.08jastamy app is going to make wireless carriers cry :)
23:03.19jastai will easily be able to push my data usage to gigs per month with this :)
23:03.35f00f-why? they love data overages :P
23:03.47michaelnovakjrreally getting all you can with the unlimited data huh
23:03.49jastai think most people in the US either don't use data, or hav eunlimited plans.
23:04.05michaelnovakjrits stupid not to get unlimited data
23:04.19michaelnovakjrthat way you don't have to worry about overages
23:04.31f00f-i have unlimited with AT&T but if you read the fine print, it says 2 GB per month
23:04.54michaelnovakjroh really?
23:04.55jastai have unlimited with AT&T as well, but have never pushed my usage beyond 2GB i don't think.
23:05.09michaelnovakjrthat is not unlimited then
23:05.19jastathough actually i don't think my app will likely use more than that.
23:05.34michaelnovakjrthat should be against the law
23:05.38jastait caches, of course, and most albums are like 60MB to download.
23:10.35jastathe download engine i wrote is pre-emptive though, so it will download your entire playlist even if you interrupt it.
23:11.32jastai should probably make it bounded though, so it won't download more than 2 songs ahead of time or something
23:12.00f00f-interesting, so it's a bandwidth hog
23:13.03f00f-yeah, ideally maybe 1-2 songs ahead
23:13.04jastaoh yeah :)
23:13.14f00f-but you still keep old songs on board?
23:13.17jastai mean, the pre-emption engine could easily be bounded, it just isn't right now
23:13.18f00f-ie. played
23:13.28f00f-ya
23:13.37jastaf00f-: Yeah, it uses your storage card for cache and automatically deletes stuff to make room for new content.
23:13.57jastaThe real challenge (not to be solved yet) will be figuring out how not to fill up the user's storage card so that every other app has no space for things hehe
23:14.13jastai might need to let the user define a %age buffer to always leave available for other apps.
23:17.49*** join/#android _ken_ (n=user@84.92.70.37)
23:17.59jastai fully expect users of my app to get a 2GB or more storage card.
23:18.50chomchomI notice the tabs are on the bottom
23:18.58chomchomof the screen shots
23:19.13jastayeah
23:19.15chomchomANyone any thoughts of bottom or top with tabs?
23:19.26jastai think they are better down there
23:19.28f00f-top is for IDE's :)
23:19.31jastamore like the iPhone :)
23:19.42chomchommine are at the top but I just had them there because of the convention
23:19.56f00f-i think more people look at the bottom, since keypad is closer to the bottom
23:20.01f00f-you want them to have high visibility
23:20.07michaelnovakjri agree f00f-
23:21.28chomchomI personally like them down the bottom as well.
23:24.55romainguyputting at the bottom makes sense for usability
23:25.09romainguybecause with a touch screen you are likely to try to use it with one hand, the one holding the phone
23:25.14romainguyand therefore with your thumb
23:25.16michaelnovakjryep
23:25.20romainguyand reaching the top of the screen is hard ^^
23:28.24jastaromainguy: can i define a viewswitcher's in and out animation in XML?
23:28.48romainguylemme check
23:28.58jastait doesnt look like it from the docs, but..
23:29.31romainguy_nope you can't
23:29.36jastalame :)
23:29.43romainguy_I'll file a RFE
23:30.44jastacool
23:31.13jastait would be useful when you have a viewswitcher as a row in a list, since the only efficient way to set the animation at that point would be to extend your own adapter and set the animation by overriding newView
23:36.38jastadamn, ran into that animation cache bug again that i reported a month ago
23:45.42f00f-i want to bundle a .zip file with my app, do i put it into res/raw ?
23:46.05jastaraw
23:46.14jastaor actually, maybe assets.
23:46.14zhobbsor assets
23:47.35f00f-thx
23:52.41Ix-Xitanhave anyone managed to use 3d api on m5 ?

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.