00:22.56 | duey | :\ |
00:23.19 | duey | no one will look at the readme file? |
00:25.05 | mickrobk__ | i think that post on the challange group is saying that likley noone will look at any attached source |
00:25.19 | mickrobk__ | not the readme |
00:25.26 | mickrobk__ | 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.55 | f00f- | clearly, for it to be fair, they must at least look at the first few paragraphs of the documentation :) |
03:42.48 | jerkface03 | whats crackin f00f-? |
03:43.39 | f00f- | trying to work hard on finishing up my app |
03:43.43 | f00f- | having some view problems now |
03:43.47 | f00f- | i think i need to learn about ViewInflate |
03:44.08 | f00f- | i will be so relieved after the 14th |
03:44.17 | jerkface03 | aye |
03:44.32 | jerkface03 | im just finishing up the documentation for my submission |
03:44.43 | f00f- | i'm making this wizard, with different layouts depending on which page you're on |
03:44.51 | f00f- | and it seems visibility=gone,invisible,visible |
03:44.54 | f00f- | totally mucks things up |
03:45.01 | f00f- | NPE madness ensues :) |
03:46.06 | f00f- | well, maybe it's not what i need to do |
03:46.09 | f00f- | this is what is happening |
03:46.41 | f00f- | in my layout file i have a RelativeLayout which contains 2 RadioGroups, both of which are set to 'invisible' in visibility |
03:47.02 | f00f- | only one is 'visible' at any time |
03:47.08 | f00f- | so setting the first one to visible works |
03:47.23 | f00f- | when i try to set the first one back to 'invisible' and set the 2nd one to 'visible' |
03:47.30 | f00f- | it claims it can't find the 2nd RadioGroup |
03:47.34 | f00f- | that is, it gives a NPE |
03:47.35 | f00f- | what gives? |
03:48.29 | jerkface03 | *shrug* |
03:48.38 | jerkface03 | i didn't even bother using android's UI stuff |
03:49.09 | f00f- | what does your app do? |
03:49.20 | jerkface03 | i'll post it up after i submit it |
03:49.44 | jerkface03 | which shuold be any time now |
03:57.56 | jtoy | is 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.25 | jerkface03 | anyone want to proof this submission doc for me? |
04:56.53 | *** join/#android michaelnovakjr (n=nov@96.56.111.166) |
05:08.47 | jtoy | jerkface03: sure |
05:12.24 | *** join/#android niket (n=niket@c-76-28-174-245.hsd1.wa.comcast.net) |
05:22.26 | raidfive | does anyone know what I can use for writing/reading jpeg exif metadata? |
05:22.30 | jerkface03 | jtoy, check your pm |
05:22.43 | romainguy | raidfive: There is a good open source Java library for this |
05:23.13 | jasta | hey romain |
05:23.14 | jtoy | im downloading it now |
05:23.32 | raidfive | romainguy, I've looked at a few ... which do you recommend? |
05:23.42 | romainguy | I don't remember the exact name unfortunately |
05:23.54 | romainguy | let me check |
05:24.03 | romainguy | I think it was this one http://www.drewnoakes.com/code/exif/ |
05:24.22 | raidfive | hmm, it looks like javax.imageio even has support |
05:24.26 | romainguy | you can also use the ImageIO library |
05:24.28 | romainguy | yes |
05:24.29 | romainguy | it does |
05:24.38 | romainguy | but it's not as nice to use |
05:24.54 | romainguy | and I don't think it shows the EXIF |
05:25.01 | romainguy | and IPTC... |
05:26.47 | jerkface03 | jtoy: how's it looking? |
05:26.49 | raidfive | I'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.59 | jtoy | Im reading it now |
05:27.04 | romainguy | it's proabbly not difficult to read the exif |
05:28.09 | raidfive | yea I guess I'll look into it more |
05:30.42 | jtoy | jerkface03: that seems like a lot of work you got done |
05:31.09 | jerkface03 | jtoy: yep, problem is i have almost no sample code to show for it |
05:31.12 | jtoy | are you planning on porting some games yourself? |
05:31.23 | jerkface03 | jtoy: yep, thats the idea |
05:31.28 | jerkface03 | jtoy: but this was written for a class |
05:31.38 | romainguy | jerkface03: what is your project? |
05:32.04 | jerkface03 | romainguy: 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.09 | jerkface03 | jtoy: did you notice any glaring errors? |
05:32.11 | romainguy | jerkface03: cool |
05:32.31 | jtoy | no, its a fairly long document, i wonder if other people are submitting docs as long as yours |
05:32.55 | jerkface03 | aye. do you think the lead-in is descriptive enough? |
05:34.21 | jerkface03 | ahhh fuck it. i don't want to work on this anymore |
05:34.23 | jerkface03 | submitting |
05:34.31 | f00f- | 2-3 pages tops |
05:34.45 | jtoy | yeah, it would probably help though if you showed some small snippets of your api code |
05:34.52 | jtoy | I wish they didn't extend the deadline |
05:35.03 | jasta | i'm so glad they did :) |
05:35.08 | jerkface03 | wait what? |
05:35.11 | jerkface03 | dateline got extended? |
05:35.12 | jasta | i would have never been ready if they hadn't, but i didn't realize :) |
05:35.12 | jerkface03 | to when? |
05:35.15 | f00f- | the judges wont look at code. many won't even know how to read code. |
05:35.36 | jasta | jerkface03: ...to Apr 14th. |
05:35.41 | michaelnovakjr | haha |
05:35.43 | jasta | from like Mar 34d. |
05:35.44 | jerkface03 | oh, haha |
05:35.44 | jasta | 3rd* |
05:35.52 | jerkface03 | i didn't realize that was the extended date |
05:35.53 | jtoy | can somone help me with a service problem real quick |
05:35.58 | jerkface03 | ya k submitting |
05:36.22 | jtoy | I cant et my service to run with the alarm manger |
05:36.31 | jtoy | if I run it manually like so, it runs: startService(new Intent(this,FileUploadService.class), null); |
05:37.01 | jasta | you can't run a service with an alarm manager. you need an intermediate IntentReceiver to start the service. |
05:37.20 | jtoy | but 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.36 | jasta | like i said... |
05:37.41 | jtoy | oh... |
05:38.32 | jtoy | jasta is there some place that explains this topic clearly/ or example code!, I dont remember seeing that in the docs |
05:38.53 | jasta | i'm sure it is somewhere, since i learned it somehow. |
05:39.14 | jasta | quite probably in the apidemos |
05:39.28 | jasta | yup, sure enough |
05:40.42 | jtoy | which one are you referring to? I thought I read all of them |
05:40.50 | jasta | the alarm one, of course. |
05:41.31 | jtoy | ok, I'l reread that, I did reference it before, must have missed it somehow |
05:43.49 | jtoy | doh, 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.19 | jtoy | how can I get a result from a service I call? is there some kind of lifecycle like activity has with onActivityResult ? |
06:36.41 | jtoy | hmm, 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.45 | jtoy | that sucks |
06:42.17 | *** join/#android SR71-Blackbird (n=nirvana@unaffiliated/sr71-blackbird) |
06:43.11 | jasta | jtoy: that's not even true |
06:43.31 | jasta | Android provides a very robust mechanism for communicating with the service, through the OpenBinder. |
06:43.50 | jasta | look at any of the .aidl files found in the ApiDemos. |
06:44.02 | jasta | Specifically, RemoteService which defines the most complex example. |
06:44.22 | jtoy | right, you need Context.bindService for that though |
06:44.29 | jasta | I 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.42 | jasta | jtoy: Yes, but you can use startService and bindService together. |
06:44.54 | jtoy | oh, I didnt know that |
06:44.55 | jasta | that separation makes perfect sense to me. |
06:45.06 | jasta | yes, start it, check that it started, then bind to it with BIND_AUTO_CREATE |
06:45.23 | jasta | then you may unbind from it and let it continue running |
06:45.38 | jasta | remember though, if you don't want the service to run forever, you need to make sure it calls stopSelf() at some point. |
06:46.09 | jasta | stopSelf() 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.31 | jasta | While that is a side-effect, it happens to be ideal behaviour. |
06:47.04 | jasta | nearly every activity in my project interacts with services in very elaborate ways, so i have explored this quite a bit. |
06:47.16 | jtoy | ok, 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.36 | jasta | Perhaps you waited too long to participate in the challenge. |
06:47.51 | jasta | I am confident that most of the winning applications will have been started months ago. |
06:48.21 | jasta | Why would Google be interested in paying out for projects that anybody could slap together in a short amount of time? |
06:48.45 | jtoy | jasta: I started in January, I'm just doing polishing touches |
06:49.13 | jasta | and you're just now exploring services 1 week before the challenge? heeh, good luck. |
06:49.26 | jtoy | I 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.38 | jasta | that will require openbinder. |
06:50.28 | jtoy | jasta: plus, a lot of the work for my project is on the website side, which is mostly done also |
06:50.36 | jasta | as 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.55 | jasta | jtoy: what's the project? |
06:52.15 | jtoy | its an app that gives your communication statistics and help manages your communications with people |
06:52.36 | jasta | what do you mean? can you give an example? |
06:52.46 | jtoy | its very useful for me! I think other people will find it useful |
06:54.05 | jasta | also, 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.45 | jtoy | the 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.04 | jtoy | you can use it without the web, but it much better if you use the web component |
06:55.16 | jasta | interesting. how do you deal with privacy issues? |
06:56.18 | jtoy | currently 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.36 | jasta | hmm, what reason would someone have to trust you, and your site? |
06:56.53 | jtoy | I 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.12 | jasta | how could you have a web service report on the data without knowing what the data was? |
06:57.28 | jasta | also, why is this even web-based? what does the web component offer that couldn't be integrated natively in Android? |
06:57.50 | jtoy | its up to the user ifthey trust us or not |
06:58.09 | jtoy | but thats the same issue with any site like facebook,gmail,etc |
06:58.14 | jasta | but you're saying that if they don't, the apps functionality is significantly reduced? |
06:58.30 | jtoy | well, not reduced on the phone, but expanded on the site |
06:58.47 | jasta | yes, but Facebook, Gmail, etc have corporate backing with well-defined privacy policies. They are legal targets should they violate their policies. |
06:58.50 | jtoy | so for example, data can be exported to csv via a click of a button from the site |
06:59.11 | jasta | why wouldn't the phone be able to generate CSV? |
06:59.12 | jtoy | which wouldnt be useful to have on the phone |
06:59.30 | jtoy | you could, but what would you do with csv on your phone? |
06:59.35 | jasta | why 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.12 | jasta | My point is, the privacy issue seems to be entirely avoidable, and I think your users would appreciate that. |
07:00.27 | jtoy | jasta: the gui on the web is also full screened, so you can do things faster on the web if you wish |
07:01.20 | jasta | Hmm, 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.20 | jtoy | jasta: 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.28 | jasta | But I would never submit my call pattern data to your web site. Ever. |
07:01.46 | jtoy | jasta: right, a lot of people wont, but some will |
07:02.31 | jasta | One 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.53 | jtoy | i cant wait for it to be done, I am going to force all my friends to try it out, haha |
07:03.02 | jasta | So 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.24 | jtoy | jasta: 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.34 | jasta | Though I suppose if I've learned anything it's that machines have no business predicting human behaviour. It mostly frustrates the humans :) |
07:04.22 | jasta | anyway, i gotta get back to my project :) |
07:04.38 | jasta | it's a music player of sorts and i haven't even finished my playlist management interface. |
07:04.48 | jasta | that is, naturally, an important component :) |
07:04.48 | jtoy | me too, I'll keep you informed on the progress, i plan to make a company from this |
07:05.10 | jasta | jtoy: That sounds like it would be very tough. Good luck anyway. |
07:05.12 | jtoy | you seem to have a lot left laos! |
07:05.16 | jtoy | also |
07:05.28 | jasta | I wouldn't say a lot, at least not to satisfy my requirements for the challenge. |
07:05.28 | jtoy | you too, thanks! |
07:05.38 | jasta | the biggest and most complicated pieces of my app are done, and have been for a while now. |
07:05.48 | jtoy | one problem with mine is that it is currently extremely ugly |
07:06.03 | jasta | My 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.11 | jasta | That part all works great :) |
07:06.44 | jasta | Eliminating the need to physically connect your phone to your computer to update the music collection on the device. |
07:06.46 | jtoy | oh, you told me about this before, that seems hard with dynamic ips and such |
07:07.09 | jasta | Actually, I'm hoping to utilize GTalk to facilitate communication between phone and server. |
07:07.23 | jasta | though that is not a priority for this round. |
07:07.36 | jtoy | thats a huge data bill! |
07:07.58 | *** join/#android davidw (n=davidw@chello212186016224.tirol.surfer.at) |
07:08.17 | jasta | It 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.42 | jasta | Most of the US enjoys a reasonably fast (about 300kbps or more) cellular data network with unlimited usage for about $20/mo. |
07:09.01 | jtoy | I pay about 75 cents US for 100 mb per month right now |
07:09.03 | jasta | With that speed only expanding in the coming years as a result of the 700MHz auction. |
07:09.49 | jtoy | true |
07:10.27 | jasta | anyway, i really must work |
07:11.26 | *** join/#android jota-_ (n=jota@190.6.0.180) |
07:13.39 | jasta | jtoy: My big concern, actually, is battery life for my app. |
07:14.04 | jtoy | yeah, I would like to test some real devices out |
07:14.12 | jasta | I suspect downloading at 3G speeds simultaneously streaming high quality MP3 files will be a major drain fro the device. |
07:14.36 | jasta | Though I hope to personally use it in my car a lot, which I will be able to plug in. |
07:15.45 | jtoy | have you written any code on the iphone? |
07:15.59 | jasta | No, I have thus far ignored it. |
07:16.17 | jasta | I do not have any time to explore the iPhone SDK. Also, I dislike their terms and conditions and platform restriction. |
07:18.28 | jtoy | I'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.50 | davidw | C's definitely nicer in some ways |
07:19.07 | davidw | but I agree with jasta... being under apple's thumb is not where I want to be |
07:20.17 | jtoy | davidw: i hope eventually they become more open |
07:20.44 | jtoy | i 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.23 | jasta | i wouldn't count google out just yet. they aren't even done. |
07:29.43 | jasta | they have already hinted that even the redesigned UI in m5 is going to change again before launch. |
07:30.33 | jtoy | yeah, 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.18 | rhett | hola androiders |
07:42.50 | jasta | hello |
07:43.11 | rhett | good ole' jasta, I can always count on you being here |
07:43.15 | rhett | :) |
07:43.41 | rhett | I 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.56 | jasta | k? |
07:44.17 | rhett | oh, just commenting |
07:44.27 | jasta | why would it be against the advice of this channel? |
07:44.40 | rhett | some people here said not to worry about it |
07:44.59 | jasta | well, one of the judging criteria is "Polish and Appeal", so I would suggest worrying about it if you have time. |
07:45.06 | rhett | since the default background will change with new sdk versions etc. |
07:45.17 | rhett | yeah, that's what I figured |
07:45.27 | jasta | I 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.28 | rhett | a few extra points in that category couldn't hurt |
07:45.39 | jasta | and my app doesn't look bad with it, I just suspect it could be made to look more appropriate. |
07:47.04 | rhett | my app never uses the menue button |
07:47.18 | rhett | someone on the google groups board says some devices won't even have a menue button |
07:47.33 | jasta | I don't use the menu system at all either. I think it's kind of klunky right now. |
07:47.53 | jasta | I'm willing to adjust my app as the SDK advances, though. I think that's essential. |
07:49.26 | jasta | rhett: Honestly, I think a lot of the folks in this channel are very misguided as to the depth of the ADC. |
07:49.41 | rhett | what do you mean? |
07:49.46 | rhett | i read the rules |
07:49.53 | rhett | you mean, people advising nto to worry about the looks? |
07:51.12 | jasta | rhett: 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.23 | jasta | That, I think, is not the direction Google was hoping to take with the ADC. |
07:52.46 | jasta | My 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.12 | rhett | yeah, 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.30 | jasta | And 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.50 | davidw | someone uncharitable might point out that, well android is well thought out, it could also be described as incomplete and unpolished;-) |
07:53.58 | davidw | well/while |
07:54.35 | jasta | davidw: I can't imagine that the point is relevant to the OHA, though. |
07:54.36 | rhett | One 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.43 | jasta | your point* |
07:54.52 | romainguy | rhett: focus doesn't exist in touch mode |
07:54.56 | rhett | this requestFocus() function seems to be flakey, or maybe I dont' get it |
07:55.12 | romainguy | if you touch something on the screen, focus and selection disappear |
07:55.39 | jasta | rhett: As Romain said, "just create an app that rocks." Not a proof-of-concept ;) |
07:55.43 | rhett | my spinner widgets focus if you touch them, don't they? |
07:55.50 | romainguy | rhett: they should not |
07:55.51 | davidw | jasta, well, I don't think producing a polished and good looking app is going to hurt, for certain! |
07:55.55 | romainguy | they react to press, but they don't focus |
07:56.11 | rhett | hmm, i must not understand focus |
07:56.14 | jasta | davidw: I think that since it is even part of the official challenge rules, it matters quite a lot. |
07:56.24 | romainguy | rhett: a focused view is the view that gets the key events |
07:56.26 | rhett | i just want the datepicker to be active when it is touched |
07:56.44 | rhett | right, I want the datepicker to take key events after it is touched |
07:56.54 | romainguy | rhett: you mean to react to touch events? |
07:56.54 | romainguy | we just didn't have time to make date picker fully support touch mode |
07:56.58 | romainguy | ah no |
07:57.01 | romainguy | that won't happen |
07:57.09 | romainguy | as I said, in touch mode, nothing is supposed to have focus |
07:57.27 | romainguy | you *can* force the opposite behavior with setFocusableInTouchMode |
07:57.31 | romainguy | but I strongly advise against it |
07:58.11 | rhett | romainguy, 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.40 | rhett | couldn't I hack up some rule, like if a certain spot on the screen is touched, set the datepicker to be focused? |
07:59.24 | jasta | i wonder if the judging will occur in the emulator or on a real device |
07:59.31 | romainguy | I just told you, you can use setFocusableInTouchMode |
07:59.38 | romainguy | but that's against the whole design of the UI toolkit |
07:59.48 | romainguy | and doing so would just make your app behave differently than any other app |
08:00.06 | romainguy | good UI design is pretty simple: keep things simple, stick with the default behaviors |
08:00.07 | romainguy | :) |
08:02.04 | rhett | I tried setFocusableInTouchMode, but it gave me some wierd behavior where the dpad didn't work any more |
08:02.34 | romainguy | because focus doesn't exist in touch mode :) |
08:02.48 | romainguy | setFocusableInTouchMode is meant for widgets like EditText |
08:03.05 | romainguy | you want this widget to receive key events (to type a login for instance) even when in touch mode |
08:05.45 | rhett | I 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.58 | rhett | I could have made my own calendar, but mostly the DatePicker had what I wanted |
08:06.20 | rhett | it sounds like maybe I should have just made my own calendar for this purpose so people don't get confused |
08:07.42 | rhett | is 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.17 | romainguy | rhett: again, don't do this |
08:08.26 | romainguy | the framework enforces the non-existence of focus in touch mode |
08:08.40 | romainguy | if you try to force it to behave differently, you can expect weird things to happen |
08:09.09 | rhett | so, what should I do if I want a calendar widget that you can touch? |
08:09.16 | rhett | and has a cursor, etc.? |
08:09.44 | romainguy | any widget you want |
08:09.50 | romainguy | just know that focus does not exist in touch mode |
08:09.56 | romainguy | that does not mean you cannot react to touch events |
08:10.09 | romainguy | just that after a widget is touched, it does not receive key events |
08:11.33 | rhett | the 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.57 | rhett | all I understand is that you're telling me not to make that interface |
08:12.29 | romainguy | yes, that is correct :) |
08:12.49 | romainguy | when the user presses a key after having touched the screen, the focus is resurrected |
08:13.07 | rhett | what? |
08:13.30 | rhett | oh focus is not enabled until a user touches the screen and then touches a key |
08:13.45 | romainguy | focus is enabled as soon as the user presses a key |
08:13.52 | romainguy | and disappears when the user touches the screen |
08:13.55 | rhett | so, i could fake a keypress, but you're telling me not to |
08:14.01 | romainguy | exactly |
08:14.11 | rhett | but, it's how everyone wants to use my app |
08:14.25 | romainguy | if the user touches the screen, then you should let them scroll with a gesture |
08:14.33 | romainguy | instead of forcing the user to use the keys |
08:14.43 | romainguy | rhett: and how would that work on a device with no keys? |
08:15.09 | rhett | how can they scroll to the datepicker? |
08:15.10 | jasta | romainguy: What romain is saying is that once in touch mode, your entire interface should be possible through touch only. |
08:15.15 | rhett | i thought all devices would have dpad keys |
08:15.15 | romainguy | it's pretty simple really, if the user touches the screen, assume the device does not have keys anymore |
08:15.20 | romainguy | rhett: not necessarily |
08:15.39 | romainguy | Android supports keys and touch screens and any combination of the two |
08:16.17 | rhett | ahh, let me check the datepicker demo, and see you can select a new date without using keys |
08:17.16 | rhett | ok, there is no way for me to use it without using the keypad |
08:17.36 | jasta | all that tells you is that you should not be using the datepicker :) |
08:17.49 | romainguy_ | because, as I said, we didn't have time to finish adding support for touch in date picker :) |
08:18.19 | romainguy_ | you can use date picker, we'll fix it in a later version of the SDK |
08:18.33 | rhett | oh ok, well that would be dandy for me |
08:18.52 | rhett | it's just that when the judges see it, it would be nice if touched seemed to work for it now |
08:18.55 | f00f- | romainguy_: is it possible to get rid of the Set button in the time picker? |
08:19.05 | romainguy_ | f00f-: let me check |
08:19.29 | romainguy_ | 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.47 | jasta | i don't understand the notification tray thing. |
08:21.04 | romainguy_ | f00f-: picker.findViewById(android.R.id.setButton).setVisibility(View.GONE) |
08:21.06 | jasta | i really just dont get it. i feel like when i touch the icon, i should be brought to the intent it launches. |
08:21.32 | jasta | instead of having to click and drag it all the way down |
08:21.35 | rhett | does 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.43 | romainguy_ | jasta: that feature was developed late in M5 cycle (*very* late) |
08:21.54 | romainguy_ | it has been vastly improved in the next SDK |
08:21.58 | jasta | thank god |
08:22.26 | jasta | i'm using it now as somewhat central to my design, but it sucks so it feels weird doing that |
08:22.30 | jasta | i had imagined it would be improved though |
08:22.50 | romainguy_ | now the icons are stuck to the bottom of the drawer |
08:23.02 | romainguy_ | but when the first icon shows up, it sticks to the status bar |
08:23.15 | f00f- | hahaha. thanks romainguy_ i'll check it out :) |
08:23.43 | romainguy_ | jasta: also note that it's a lot better on an actual device since you can fling the drawer down |
08:24.51 | jasta | romainguy_: 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.07 | jasta | but 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.22 | jasta | and 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.35 | romainguy_ | to me this notifications drawer is meant for calendar events, mails, sms, alarms, etc. |
08:25.46 | romainguy_ | if you feel like it's a good idea, sure... |
08:25.51 | jasta | also, they are brought there if they tap the song or album twice |
08:26.08 | romainguy_ | but as far as I am concerned, I'd annoyed to get a new notifications every time I play another song |
08:26.13 | jasta | romainguy_: Well, it seemed appropriate to indicate that music is playing |
08:26.16 | jtoy | hopefully, 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.30 | f00f- | jasta: maybe if your player supports music downloads you could notify when a download has completed :P |
08:26.32 | romainguy_ | jasta: I could see that as a status bar icon |
08:26.43 | romainguy_ | but not really as a notification |
08:26.50 | jasta | romainguy_: Right, but I thought they were one in the same? |
08:26.51 | romainguy_ | rah fuck you IntelliJ |
08:27.17 | romainguy_ | jasta: can't you put an icon in the status bar without having a notification in the drawer? |
08:27.19 | jasta | Really 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.22 | romainguy_ | I haven't looked at this part in a long time |
08:27.28 | jasta | romainguy_: Not as far as I know? |
08:27.29 | romainguy_ | I have no idea :( |
08:27.41 | jasta | None of the demos seem to have that. |
08:29.32 | romainguy_ | yeah, it looks like they go together |
08:29.51 | jasta | Is 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.31 | davidw | romainguy, got any advice on the right widget to use for a countdown timer? |
08:33.00 | romainguy_ | TextSwitcher? |
08:35.23 | davidw | cool! 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.01 | f00f- | hmm, i can't seem to get ProgressDialog to show a percentage, it's just spinning around. |
08:57.24 | romainguy_ | yeah, that's a bug |
08:57.43 | f00f- | so no workaround? |
08:57.55 | romainguy_ | there's an easy one |
08:57.59 | f00f- | i like the choice of 1 to 10000 as the progress values :P |
08:57.59 | romainguy_ | create your own progress dialog :) |
08:58.02 | romainguy_ | it's pretty simple |
09:01.02 | romainguy_ | hates running into VM bugs |
09:06.41 | *** part/#android n0eY (n=rennha_a@124.81.30.44) |
09:17.47 | davidw | such as? |
09:19.06 | f00f- | is intent delivery guaranteed? |
09:19.44 | f00f- | 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.04 | inZane-_ | hey, does someone have an workling example for a contextmenu? |
11:22.08 | inZane-_ | getListView().setOnPopulateContextMenuListener(new OnPopulateContextMenuListener() { |
11:22.11 | inZane-_ | public void onPopulateContextMenu(ContextMenu pContextMenu, View pView, Object pMenuInfo) { |
11:22.14 | inZane-_ | pContextMenu.add(0, 0, "test"); |
11:22.17 | inZane-_ | } |
11:22.19 | inZane-_ | }); |
11:22.36 | inZane-_ | i have no clue whats wrong with this |
11:44.17 | jtoy | how 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.55 | jtoy | i have a bunch of objects that have an instance variable named foo, but the simpleAdapter can't call it for some reason |
11:55.06 | jtoy | anyone know? |
11:58.31 | *** join/#android soulreaper (n=soul@Zfd46.z.pppool.de) |
12:00.30 | jtoy | I see the answer, simpleadapter must use a hashmap for the data list |
12:16.42 | chomchom | I'm struggling with the decision to change the buttons or not. |
12:17.30 | chomchom | Do I replace them with something nicer or do I keep them for (the hope of increased) accessibility |
12:18.26 | chomchom | Because I can bet I haven't done nearly as much usability testing as google will have with their buttons |
12:18.35 | chomchom | SO 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.19 | jtoy | to compare objects do you really need to implement a comparator class? |
13:13.29 | acsia | well depends what you want to do |
13:14.06 | acsia | for String.compareTo will return different values depending on both string while the equal is boolean (true or not) |
13:14.37 | acsia | do you want to get further information about the comparison or not... if it is just same object then no |
13:18.20 | jtoy | the objects are the same, but I will be doing different comparisons based on what is clicked in the ui |
13:18.33 | jtoy | sometimes it compares strings, but mostly its comparing integers |
13:20.17 | acsia | well I would suggest to implement comparable then |
13:20.26 | acsia | not 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.28 | jtoy | acsia: 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.47 | acsia | the 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.09 | acsia | and return an int that can help you to know what the difference are |
13:25.47 | acsia | it 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.54 | chomchom | By 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.18 | davidw | would be kind of irritated if every app on my phone had different buttons |
14:46.41 | chomchom | yeah that is the trade off. |
14:47.16 | chomchom | I'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.19 | chomchom | Anyone any ideas how I programmatically set the gravity of an image? |
15:15.13 | muthu | is there a setGravity? |
15:15.29 | chomchom | I've tried just passing in the Gravity.Right in my Layout params but that doesn't seem to take affect |
15:15.45 | muthu | most of the attrs are in R.styelable |
15:16.00 | muthu | look in android.R |
15:17.09 | muthu | if you are not getting the desired effect then the particular view might not making use of gravity |
15:17.44 | chomchom | Its 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.56 | tmcneal | hey jasta, have you had any problems with nested views in the tabactivity? |
17:03.44 | tmcneal | i'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.55 | acsia | I just noticed that the emulator locks my sound device if it crashes... |
17:09.16 | davidw | acsia, 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.29 | jasta | acsia: the emulators sound support doesn't play nicely with Linux, at least. |
17:52.40 | jasta | it should support ALSA, but seems not to. |
17:52.48 | jasta | i 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.52 | michaelnovakjr | can the priority of an app be set on the system to prevent it from being killed? |
18:28.30 | jasta | not as such, but you can create a service which never dies and bind to it to arbitrarily keep your activity alive. |
18:31.29 | michaelnovakjr | can a service be started on its own or does it have to be by an activity? |
18:31.59 | jasta | it can be started by an intentreceiver. under such an arrangement, it could be started without the users intervention. |
18:39.38 | jasta | Hmm, why isn't List<Long> supported in AIDL? |
18:39.51 | jasta | List<long> passes the aidl compiler, but then generates invalid code of course. |
18:39.56 | jasta | List<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.20 | f00f- | what's an easy way to center a view horizontally? |
19:04.54 | f00f- | i guess i need a LinearLayout just to do this |
19:08.24 | *** join/#android Mathiasdm (n=Mathias@vpnf130.ugent.be) |
19:09.07 | romainguy | f00f-: LinearLayout is the easiest thing yes |
19:10.03 | michaelnovakjr | jasta thanks |
19:10.40 | romainguy | jasta: 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.09 | acsia | is it possible to return an Uri with several ids? |
19:26.24 | acsia | like content://.../[1,2,5,6] |
19:26.30 | acsia | something along those lines? |
19:28.17 | *** join/#android mickrobk_ (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net) |
19:41.49 | jasta | romainguy: yes, and that works, i'm just curious why it would not be supported this way. List<String> works. |
19:42.00 | jasta | the 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.07 | f00f- | 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.36 | jasta | romainguy: what is the correct way to cause a list view to repopulate? requestLayout or invalidate? |
20:36.06 | jasta | actually 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.04 | romainguy | jasta: requestLayout |
20:48.06 | romainguy | invalidate just repaints |
20:48.22 | romainguy | you can force a full list reset with invalidateViews() |
20:48.24 | romainguy | (bad name) |
20:48.52 | jasta | i'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.19 | jasta | and not go through the list adapter or anything |
20:50.36 | romainguy | sure but the next layout might screw up your adjustments |
20:51.06 | jasta | true, perhaps i will have to implement this both in the adapter and using the views directly |
20:51.52 | romainguy | it won't be much more costly to go through the adapter |
20:57.19 | jasta | how'd you guys implement that cool background progress bar in the title bar (as seen in the browser app)? |
20:57.32 | jasta | is that just a framelayout or something? |
20:59.29 | jasta | nm, 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.14 | Ix-Xitan | i 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.21 | jasta | mp3 streaming appears to be entirely broken in M5. |
21:20.40 | jasta | the class you'd use would be MediaPlayer, but it has numerous unavoidable problems. |
21:21.14 | jasta | i stumbled across one very clumsy work-around that will definitely need to be replaced when the next SDK is released. |
21:21.21 | jasta | so if you're not trying to do this for the challenge, then I suggest waiting. |
21:22.26 | Ix-Xitan | ok |
21:22.32 | Ix-Xitan | i have to use it for some project |
21:22.38 | Ix-Xitan | ok ill use this way than |
21:22.39 | Ix-Xitan | http://blog.pocketjourney.com/2008/04/04/tutorial-custom-media-streaming-for-androids-mediaplayer/ |
21:22.42 | Ix-Xitan | it works |
21:22.51 | Ix-Xitan | homebrewed streaming |
21:23.13 | jasta | it really doesn't. if you analyze the way that the code demonstrated there works you will realize it has numerous disasterous possibilities. |
21:23.37 | Ix-Xitan | yes ur right |
21:23.44 | Ix-Xitan | it assumes a lot of things |
21:24.00 | Ix-Xitan | but its enough for demonstration |
21:24.38 | jasta | i 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.12 | chomchom | people, 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.36 | chomchom | I'm passing the intent and starting the activity |
21:32.58 | chomchom | but when I do a getIntent().getExtras() it always seems to be null |
21:33.18 | chomchom | It seems to work fine in the notepad example, I'm not sure what I am missing |
21:38.21 | f00f- | <PROTECTED> |
21:38.21 | f00f- | <PROTECTED> |
21:38.22 | f00f- | <PROTECTED> |
21:39.39 | f00f- | retreive with: |
21:39.41 | f00f- | category = (String) i.getExtra("category", ""); |
21:39.49 | chomchom | thats what I am doing. The only difference being that instead of self I'm passing a reference to an activity |
21:40.30 | f00f- | i don't use the conglomerate getExtras() though |
21:40.35 | f00f- | so i dont know |
21:41.06 | chomchom | hmm I'm also calling it like activity.startSubActivity(Activity, ACTION); |
21:41.26 | f00f- | well, i use 'self' in place of 'this' since it's being called out of context |
21:41.34 | f00f- | but should work similarly for you |
21:41.56 | f00f- | private MyACtivity self = this; |
21:41.57 | f00f- | etc. |
21:42.21 | f00f- | or you can do |
21:42.27 | f00f- | MyActivity.this i think |
21:42.29 | f00f- | i dont remember if it works |
21:42.33 | f00f- | probably the same thing :) |
21:44.21 | *** join/#android foysavas (n=foysavas@pool-68-163-207-237.bos.east.verizon.net) |
21:44.55 | tmcneal | yes, MyActivity.this will work |
21:49.55 | romainguy | jasta: 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.01 | romainguy | you just need to request it in your activity |
21:50.18 | jasta | i meant how was it implemented, i am gonna use the idea elsewhere in my app |
21:50.24 | jasta | but i already figured it out from screen_progress.xml :) |
21:50.34 | romainguy | it's just a progressbar |
21:50.47 | jasta | i meant the layout. |
21:51.01 | jasta | but again, already figured out its a relativelayout with two views aligned with parent left |
21:51.09 | tmcneal | i 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.14 | jasta | i keep forgetting that relativelayouts permit overlapping |
21:51.35 | tmcneal | If you don't, every tab other than the first tab will only display the first View, and will not repaint properly |
21:51.39 | jasta | tmcneal: that isn't true, nor is it even how my sample works. |
21:52.11 | tmcneal | sure it is, when you click on each tab, it launches it's own activity |
21:52.23 | jasta | Yes, and each activity uses setContentView with a different layout XML file. |
21:52.43 | jasta | that's also how my real app works, which borrows from my sample. |
21:53.10 | tmcneal | yes 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.42 | jasta | then your layouts are incorrect, because i did precisely that in the sample, and i also use that in my much larger app. |
21:54.05 | jasta | my first thought is: are you sure you are using a FrameLayout for tabcontent? |
21:54.12 | tmcneal | i don't think they're incorrect, but i am adding the views programmatically so maybe that's what's causing it |
21:54.45 | jasta | unlikely |
21:54.47 | tmcneal | yeah i am. i solved the problem by using the same layout xml for each tabview, which is fine for my implementation |
21:55.42 | jasta | ViewInflate.inflate() also adds views programmatically, so again, no. |
21:56.45 | jasta | I 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.15 | tmcneal | i don't anticipate i'll have anymore problems, but who's to say... |
21:58.50 | tmcneal | although.. 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.10 | jasta | no, i actually don't use menus in my application. |
21:59.50 | tmcneal | romain would you happen to know if that's intended functionality for TabActivities? |
22:01.32 | acsia | what is the purpose of the Handler while instantiating an ContentObserver? |
22:01.45 | acsia | is there any way to gather further info within the onChange? |
22:02.06 | jasta | presumably because the content observer is running in another thread |
22:03.02 | jasta | acsia: I doubt it. |
22:03.35 | *** join/#android mickrobk (n=mickrobk@c-67-173-250-134.hsd1.co.comcast.net) |
22:03.54 | acsia | arf, well I have a modified column so currently I am querying the last modified row |
22:04.17 | acsia | but I will need to query quite a lot of tables for just one value... |
22:04.44 | acsia | is there anything I could hook into by any chance?... |
22:05.11 | jasta | not sure what it is you're trying to accomplish. |
22:08.40 | acsia | well I have several applications that have their own Uri and 1 other that observes all Uris |
22:08.53 | acsia | now I am not sure which one is being observed within the onChange |
22:09.31 | jasta | i remember this conversation vaguely. is it that you have some unusual fear of extending classes? :) |
22:09.46 | acsia | the registerContentObserver takes an Uri which I can not access within the onChange... |
22:09.52 | acsia | haha |
22:10.12 | jasta | ? |
22:11.52 | acsia | well 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.09 | jasta | but clearly, you cannot. |
22:12.10 | acsia | and you are probably right regarding extending |
22:12.53 | jasta | the content observer was not designed with your usage in mind. but you can easily extend it. |
22:12.56 | acsia | I am working actually on a similar problem to what I tryed last time but with a content observer this time |
22:13.57 | acsia | I ll give it a try |
22:14.24 | jasta | i must admit that i don't fully understand your intention. |
22:15.39 | acsia | well I am currently working on a pluggable framework |
22:15.52 | acsia | a super simplified version of OSGI |
22:16.20 | acsia | so i have plugins and each time a new plugin is installed, I observe its Uri |
22:16.37 | acsia | I want to be the less intrusif as possible within the plugins |
22:17.56 | acsia | I must admit that before android, I had not touch java for 2 years |
22:18.14 | acsia | been playing with ruby and erlang... you loose a bit your way of thinking |
22:18.25 | jasta | i don't agree |
22:18.44 | jasta | but regardless, i can't help you without further exploring your problem and i am too busy with my own problems :) |
22:20.11 | acsia | understandable... I think we ll have a restless week ahead |
22:20.39 | jasta | are you submitting your project for the ADC? |
22:21.33 | acsia | yes, but it will be a very early look |
22:21.41 | acsia | more of a POC |
22:22.26 | jasta | according 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.49 | jasta | 2 of the categories of judging relate directly to the UI. |
22:23.33 | acsia | aaa that s not good... should have red the rules in more details :) but I am not giving up |
22:24.03 | jasta | the 4 criteria for judging are: originality of concept, effective use of the android platform, polish and appeal, and indispensibility. |
22:24.18 | jasta | your app would really only satisfy "effective use of the android platform". |
22:24.20 | acsia | I think the UI should not be that important |
22:24.34 | acsia | not really, indispensibility as well |
22:24.41 | jasta | acsia: Yes, but what you think is not consistent with the challenge rules. |
22:25.52 | jasta | The UI is directly applied to two of the four: polish and appeal, and indispensibility. |
22:25.56 | jasta | you really should read the rules :) |
22:26.16 | jasta | and your app certainly doesn't sound original, since you related it to me as a subset of another more robust system. |
22:26.22 | jasta | (which also was ported to Android) |
22:27.00 | acsia | that is discussable... UI IMO should not matter that much at first.. I would only read polish and appeal for UI... |
22:27.14 | acsia | I don t want to have a different UI for every application that I installed |
22:27.33 | jasta | well, 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.56 | acsia | I guess so |
22:28.05 | jasta | acsia: Every application must have a user interface or it is not usable by users. Obviously. |
22:28.16 | jasta | So what do you mean by a "different" UI for every app? |
22:29.10 | acsia | well 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.00 | jasta | So too does every app that Google has published for Android. |
22:30.13 | acsia | true |
22:30.36 | jasta | Regardless, 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.49 | jasta | Personally, I am working on the "polish and appeal" criteria from now until then :) |
22:32.22 | acsia | yes well I am not sure I have time for that now... :( |
22:32.31 | acsia | I keep the spirit up thought |
22:33.42 | acsia | and the criteria discuss a lot about developer tool which my app could be classified in as well |
22:33.59 | jasta | in what way? |
22:35.20 | chomchom | OMG. |
22:35.26 | chomchom | Tell me you all know this feeling |
22:35.32 | jasta | what? |
22:35.37 | chomchom | That feeling of dread |
22:35.46 | jasta | Yeah, been there. Why? :) |
22:35.53 | chomchom | where your heart drops right down into the pit of your stomach |
22:36.13 | chomchom | your skin turns cold and you feel very sick |
22:36.23 | jasta | Did your girlfriend dump you? :) |
22:36.30 | acsia | well jasta just achieved that upon me ;) |
22:37.07 | chomchom | That 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.30 | jasta | acsia: 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.50 | romainguy | chomchom: at least it's fixed :) |
22:37.53 | jasta | In 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.57 | chomchom | I HATE how down right stupid I feel right at this minute. Damn Damn Damn |
22:38.15 | f00f- | well just use the built-in UI widgets, no need for anything fancy |
22:38.17 | acsia | jasta: I am just joking, I am still very confident with my project. |
22:38.28 | f00f- | and a couple of icons from the tango desktop project, and boom, you got something sexy |
22:38.29 | jasta | chomchom: That's nothing. Try following a design for weeks only to realize that it will never, ever work :) |
22:39.03 | jasta | f00f-: I suspect that "easy to use" is harder to accomplish than slapping some icons on your app :) |
22:39.24 | f00f- | yeah, that's the other part :) |
22:39.36 | jasta | UI 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.00 | jasta | Trust me, I've built a lot of terrible UIs in my day :) |
22:40.50 | f00f- | hehe |
22:41.33 | f00f- | what do you think about AndNav's UI, http://www.anddev.org/andnav/ ? |
22:41.54 | jasta | i thought plusminus wrote this? |
22:41.59 | f00f- | yes he did |
22:42.13 | jasta | well, i like the skateboarding android. |
22:42.15 | jasta | ;) |
22:43.10 | f00f- | i like http://sadko.mobi/droidstor/screen.html also |
22:43.20 | f00f- | nice large buttons for touchscreen |
22:43.23 | jasta | i can't really speak to his UI though, since it is so dependant on real driving conditions. |
22:43.58 | jasta | well actually i find that UI a bit cramped. |
22:44.05 | jasta | there needs to be more padding, and less information. |
22:44.43 | romainguy | yes, it's a very busy UI |
22:45.03 | romainguy | designing good UIs is pretty easy |
22:45.08 | romainguy | keep it simple, stick to the default |
22:45.08 | jasta | on a mobile device, less is more. |
22:45.15 | romainguy | jasta: even on a desktop |
22:45.28 | jasta | romainguy: Yes but on an entirely different scale :) |
22:45.51 | romainguy | jasta: it's harder, but if desktop apps were more often designed like cell phone's, it'd be awesome |
22:46.03 | jasta | consistency is also extremely important, again especially on a mobile device. the app should be predictable and should need little exploration. |
22:46.07 | f00f- | would you say http://io.karibra.com/img/2008/04/06/2008-03-28-115755_335x497_scrotKDDK.png is too simple? |
22:46.42 | jasta | well, again i would put more padding there, but i assume there is more to the interface than that? |
22:46.43 | acsia | f00f-: that s a nice and simple IMO |
22:47.25 | f00f- | yes, certainly is :) |
22:47.39 | romainguy | I can't reach the image |
22:48.34 | f00f- | hmm |
22:48.35 | acsia | well back to under siege (yes the one with steven seagal) for 15 minutes (my break for the night) |
22:48.56 | acsia | :) |
22:49.00 | f00f- | romainguy: how about http://img222.imageshack.us/img222/7411/20080328115755335x497sclt9.png ? |
22:49.44 | f00f- | the other site is dual ipv4-ipv6 so might have issues |
22:50.59 | romainguy | f00f-: that's the kind of UI I would expect on a phone |
22:51.03 | romainguy | except with more white space |
22:51.06 | romainguy | and bigger items |
22:51.07 | jasta | http://picasaweb.google.com/jasta00/Test/photo#5186268422489938898 |
22:51.10 | michaelnovakjr | i like it |
22:51.12 | jasta | that's part of my ADC submission |
22:51.23 | romainguy | never hesitate to use a lot of whitespace when you design a UI |
22:51.28 | michaelnovakjr | not sure the distince does something for me, but i like the rest of it |
22:51.29 | romainguy | be it on a mobile device or on a desktop |
22:51.38 | f00f- | hmm, ok my other screens have more of it. thx for the tip |
22:51.54 | f00f- | nice jasta! does it scroll really smoothly? |
22:52.00 | jasta | Yes |
22:52.25 | f00f- | is there a GUI for 'now playing' ? |
22:52.31 | jasta | that little icon in the upper left is part of my app too |
22:52.41 | f00f- | a service :) |
22:52.47 | jasta | f00f-: Yes, although I don't want to show it yet. I'm working on that now. |
22:53.05 | jasta | I'm polishing a lot of this stuff, although the UI I am "borrowing" is here: |
22:53.15 | jasta | http://www.treocentral.com/images/admin_uploaded/1171394847.gif -- but please, take that with a grain of salt. |
22:53.30 | jasta | I just like the basic approach of song/artist/album at the top, with progress info below it |
22:53.50 | jasta | i 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.54 | f00f- | cool. although this one seems a bit busy |
22:54.12 | jasta | f00f-: yeah like i said, take that with a grain of salt. i am only inspired by the *basic* layout :) |
22:55.02 | jasta | the 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.23 | jasta | the 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.43 | jasta | since 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.02 | jasta | though in my tests, a typical first-time listen buffer time is usually only about 4 seconds. |
22:57.21 | f00f- | so you're using the last.fm API? |
22:57.35 | jasta | yeah, their web services. my player also scrobbles. |
22:57.42 | f00f- | sweet |
22:58.01 | jasta | so that it not only takes last.fm data, it also contributes it right back. |
22:59.57 | jasta | last.fm, though, is mostly used to provide playlist options. |
23:00.32 | jasta | like, 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.55 | jasta | you can also filter the artist and album screens by music acquired in the last 3, 6, and 12 months. |
23:01.45 | jasta | this 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.49 | f00f- | can you listen to last.fm radio stations? |
23:02.12 | jasta | I 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.20 | f00f- | ok |
23:02.23 | jasta | i'll put the UI in there, but i'll just note that it doesn't work yet |
23:03.08 | jasta | my app is going to make wireless carriers cry :) |
23:03.19 | jasta | i will easily be able to push my data usage to gigs per month with this :) |
23:03.35 | f00f- | why? they love data overages :P |
23:03.47 | michaelnovakjr | really getting all you can with the unlimited data huh |
23:03.49 | jasta | i think most people in the US either don't use data, or hav eunlimited plans. |
23:04.05 | michaelnovakjr | its stupid not to get unlimited data |
23:04.19 | michaelnovakjr | that way you don't have to worry about overages |
23:04.31 | f00f- | i have unlimited with AT&T but if you read the fine print, it says 2 GB per month |
23:04.54 | michaelnovakjr | oh really? |
23:04.55 | jasta | i have unlimited with AT&T as well, but have never pushed my usage beyond 2GB i don't think. |
23:05.09 | michaelnovakjr | that is not unlimited then |
23:05.19 | jasta | though actually i don't think my app will likely use more than that. |
23:05.34 | michaelnovakjr | that should be against the law |
23:05.38 | jasta | it caches, of course, and most albums are like 60MB to download. |
23:10.35 | jasta | the download engine i wrote is pre-emptive though, so it will download your entire playlist even if you interrupt it. |
23:11.32 | jasta | i should probably make it bounded though, so it won't download more than 2 songs ahead of time or something |
23:12.00 | f00f- | interesting, so it's a bandwidth hog |
23:13.03 | f00f- | yeah, ideally maybe 1-2 songs ahead |
23:13.04 | jasta | oh yeah :) |
23:13.14 | f00f- | but you still keep old songs on board? |
23:13.17 | jasta | i mean, the pre-emption engine could easily be bounded, it just isn't right now |
23:13.18 | f00f- | ie. played |
23:13.28 | f00f- | ya |
23:13.37 | jasta | f00f-: Yeah, it uses your storage card for cache and automatically deletes stuff to make room for new content. |
23:13.57 | jasta | The 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.13 | jasta | i 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.59 | jasta | i fully expect users of my app to get a 2GB or more storage card. |
23:18.50 | chomchom | I notice the tabs are on the bottom |
23:18.58 | chomchom | of the screen shots |
23:19.13 | jasta | yeah |
23:19.15 | chomchom | ANyone any thoughts of bottom or top with tabs? |
23:19.26 | jasta | i think they are better down there |
23:19.28 | f00f- | top is for IDE's :) |
23:19.31 | jasta | more like the iPhone :) |
23:19.42 | chomchom | mine are at the top but I just had them there because of the convention |
23:19.56 | f00f- | i think more people look at the bottom, since keypad is closer to the bottom |
23:20.01 | f00f- | you want them to have high visibility |
23:20.07 | michaelnovakjr | i agree f00f- |
23:21.28 | chomchom | I personally like them down the bottom as well. |
23:24.55 | romainguy | putting at the bottom makes sense for usability |
23:25.09 | romainguy | because with a touch screen you are likely to try to use it with one hand, the one holding the phone |
23:25.14 | romainguy | and therefore with your thumb |
23:25.16 | michaelnovakjr | yep |
23:25.20 | romainguy | and reaching the top of the screen is hard ^^ |
23:28.24 | jasta | romainguy: can i define a viewswitcher's in and out animation in XML? |
23:28.48 | romainguy | lemme check |
23:28.58 | jasta | it doesnt look like it from the docs, but.. |
23:29.31 | romainguy_ | nope you can't |
23:29.36 | jasta | lame :) |
23:29.43 | romainguy_ | I'll file a RFE |
23:30.44 | jasta | cool |
23:31.13 | jasta | it 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.38 | jasta | damn, ran into that animation cache bug again that i reported a month ago |
23:45.42 | f00f- | i want to bundle a .zip file with my app, do i put it into res/raw ? |
23:46.05 | jasta | raw |
23:46.14 | jasta | or actually, maybe assets. |
23:46.14 | zhobbs | or assets |
23:47.35 | f00f- | thx |
23:52.41 | Ix-Xitan | have anyone managed to use 3d api on m5 ? |