**** BEGIN LOGGING AT Thu Feb 02 02:59:58 2012 Feb 02 03:07:40 canadiancow, around? Feb 02 03:10:11 yea JakeWharton Feb 02 03:10:15 damn Feb 02 03:10:21 i was about to make an executive decision Feb 02 03:10:40 here's what I'm thinking: Feb 02 03:10:59 ABS v4 is just a full emulated ICS action bar for pre-4.0 that provides the full API and proxies to native Feb 02 03:11:10 however, the theming will be separate Feb 02 03:11:23 you will have to use traditional resource filtering to target the pre/post 4.0 action bar Feb 02 03:11:33 =\ Feb 02 03:11:56 you can use the same drawables and xmls and shit, but you have to have values/ and values-v14/ themes/styles Feb 02 03:12:37 the advantages to this are that we can now retain the platform default theming for the native action bar (which allows things like the DeviceDefault themes) Feb 02 03:12:46 it will also allow future changes in styles to be reflected Feb 02 03:13:16 with the old style, ICS theming would be forced on the JigglyBean and other future platforms Feb 02 03:13:17 hmm Feb 02 03:13:19 i suppose Feb 02 03:13:25 rather than their native (whatever that may be) Feb 02 03:13:57 it also allows me to emulate the styling layout exactly as the native (just without the android prefix) rather than bastardizing everything into the theme with 'am' and 'ab'-prefixed attributes Feb 02 03:14:13 so you'd actually define actionBarStyle and actionModeStyle (and actionBarSplitStyle) Feb 02 03:14:43 i mean, it sucks hugely. but I think it's the least sucky of all the solutions Feb 02 03:15:01 DAMN them for not thinking of allowing you to reference sibling style attributes 4 years ago! Feb 02 03:15:23 how could they not forsee this extremely uncommon and overly-complex use case! Feb 02 03:15:38 thoughts? Feb 02 03:16:15 i odnt understand half of what you just said Feb 02 03:16:19 but i dont want to do things twice Feb 02 03:17:01 there's no other way :( Feb 02 03:17:38 the alternative is to have every attribute that goes in an actionBarStyle, actionModeStyle, and actionBarSplitStyle in the root theme but with some prefix (e.g., abDisplayMode) Feb 02 03:17:43 or dont proxy Feb 02 03:18:07 or have some config setting Feb 02 03:18:10 booelan Feb 02 03:18:12 SHOULD_PROXY Feb 02 03:18:16 but then I run into the same problem of ICS styles appearing on JigglyBean in the future Feb 02 03:18:24 yea Feb 02 03:18:25 I can't do that Feb 02 03:18:28 too many fundamental changes Feb 02 03:18:32 but i dont want to duplicate stuff :( Feb 02 03:18:57 you're only duplicating styles.xml not any of the drawables or anything Feb 02 03:19:03 hmm Feb 02 03:19:05 oh Feb 02 03:19:08 i suppose i could live with that Feb 02 03:19:25 one in values/ without the 'android:'-prefixed attributes and on in values-v14/ with them Feb 02 03:20:16 i think it's the least bad Feb 02 03:20:28 at least until I figure out how to parse resources myself :) Feb 02 03:21:24 Can you inject dex into the classloader and replace classes from the framework.jar in the current application's VM? Feb 02 03:24:27 I still imagine the answer is no Feb 02 03:25:48 can an app's Application class show UI? Feb 02 03:26:03 via toast or dialog or something? Feb 02 03:26:16 before the activity runs? Feb 02 03:26:17 you can always show a toast regardless of where you are Feb 02 03:27:03 i need to get these ideas at times when i'm not already working on something imporant Feb 02 03:27:18 gn8 Feb 02 03:27:36 gnate to you too Feb 02 03:27:37 as for the classloader thing Feb 02 03:27:48 if you provide base activity classes Feb 02 03:27:52 then it becomes an option Feb 02 03:28:13 I've had to do it in the Application class Feb 02 03:28:30 Base activity (even the constructor) is too late I've found Feb 02 03:28:42 i read somewhere that the Toast needs the activity's context, and doesn't work with the application's context, but I've not tried this myself Feb 02 03:28:50 But I've only experimented with injecting classes in android.* that didn't exist altogether Feb 02 03:28:58 not replacing/overwriting ones that do exist Feb 02 03:30:22 ok wtf Feb 02 03:30:36 for some reason my computer is not seeing my tablet as an adb composite device anymore Feb 02 03:30:52 it's not in usb debug mode? Feb 02 03:31:08 it is Feb 02 03:31:12 it was working a few hours ago Feb 02 03:31:18 reboot everything time Feb 02 03:33:27 ./adb kill-server Feb 02 03:33:47 ./adb start-server Feb 02 03:33:47 and you win Feb 02 03:34:04 just turn it all off and on again Feb 02 03:34:20 and do a clean in eclipse, just to make sure Feb 02 03:34:21 windows? is it in device manager? Feb 02 03:34:37 adb will randomly do that crap on linux Feb 02 03:34:47 i usually just reboot the phone and the computer and go walk around a bit Feb 02 03:35:56 it shows up in device manager with some crap MS driver MTP Device Feb 02 03:36:21 fucking bullshit, it's not even letting me select the ACER Drivers Feb 02 03:36:33 says it isn't compatible Feb 02 03:37:02 hmmm...I'm hardly a mac fanboy, but it seems like mac is the most hassle-free development environment for android dev Feb 02 03:37:15 t0mless: MTP? check if you can disable "disk access" or however it's called Feb 02 03:37:26 barbs: this is an issue on the device side, IMHO Feb 02 03:37:30 my tab 10.1 only does mtp if usb debugging is off Feb 02 03:37:36 reboot the tab Feb 02 03:37:40 hey I have a bit of a question about class loading/linking/static linking Feb 02 03:37:46 briswolf: fire away Feb 02 03:37:53 in my code I can import com.android.future.usb.UsbManager Feb 02 03:37:59 and I can call the methods no worries Feb 02 03:38:11 and... ? Feb 02 03:38:22 barbs: I don't really care what environment/OS/whatever I'm using, but I found eclipse on mac to be the most frustrating to use :p Feb 02 03:38:27 but if I use reflection instead (Class.forname("com.android.future.usb.UsbManager") it says it cannot find the class Feb 02 03:38:40 is this because the class is actually bult into my app when I import and use it Feb 02 03:38:48 no Feb 02 03:38:50 i.e. is it statically linked from the SDK and how can I tell? Feb 02 03:39:16 briswolf: where are you testing it? Feb 02 03:39:19 I am trying to allow my app to run on devices which do not support USB accessory Feb 02 03:39:28 on an HTC Sensation Feb 02 03:39:49 briswolf: there's different way to do it Feb 02 03:40:06 rebooting the tablet seemed to fix the issue Feb 02 03:40:10 briswolf: instead of using reflection, use exception thrown by class loader Feb 02 03:40:17 ok Feb 02 03:40:21 t0mless: that's because the tablet wasn't presenting ADB interface Feb 02 03:40:32 weird Feb 02 03:40:35 I will do some research thanks Feb 02 03:40:38 maybe because I had it in tcpip mode Feb 02 03:40:52 still, any clues for my education why Class.forname doesn't find the class? Feb 02 03:41:06 but if I use it in code with import etc it works fine? Feb 02 03:42:16 briswolf: http://developer.android.com/resources/articles/backward-compatibility.html <--- you have two methods described there, and I'd go with the second Feb 02 03:42:28 briswolf: I suspect you're somehow doing reflection wrong Feb 02 03:42:49 I would use reflection Feb 02 03:42:56 p_l: Thanks, I've read that article but I will read it again - it is my first time with reflection so yeah could be me Feb 02 03:43:09 I would use an interface backed by a pre-whatever and post-whatever implementation Feb 02 03:43:26 this line fails with exception ClassNotFoundException: Class usbManagerClass = Class.forName("com.android.future.usb.UsbManager"); Feb 02 03:43:43 I am not sure why it fails but I will try something else for now Feb 02 03:44:45 JakeWharton: Any thoughts why I can't find the class using reflection when I can using import/static linking? Do I need to use the second form of forName and provide a reference to a ClassLoader? Feb 02 03:46:10 nope Feb 02 03:46:15 none off the top of my head Feb 02 03:46:41 wasn't there a way to iterate over namespaces? Feb 02 03:46:58 I'd try compiling a very simple app that would dump that data to file Feb 02 03:47:01 Is it possible that the UsbManager class is being statically linked into my application? (I admit that linking is very unknown for me in java, I am more of an embedded C/C++ programmer) Feb 02 03:47:24 p_l: try to list all classes on the device? sounds good Feb 02 03:48:03 briswolf: it's theoretically possible, but the classloader should dynamically load UsbManager in this case Feb 02 03:48:40 http://developer.android.com/reference/java/lang/Package.html <--- use that to iterate over classes? Feb 02 03:48:58 p_l: but if I don't use it at compile time, the class won't be present on the device - this is my thinking at least Feb 02 03:49:51 briswolf: that's why you need to write the program. Evidence-based thinking instead of guessing game :P Feb 02 03:50:24 yes I am doing it now thanks for the pointers. Feb 02 04:00:44 wabz: that's interesting. what problems did you find running eclipse on the mac out of interest? sorry, was afk before Feb 02 04:02:58 barbs: mostly that it randomly took *ages* to do certain tasks Feb 02 04:03:09 I think that's more endemic to java + mac in generally Feb 02 04:03:15 JakeWharton, so is the proxy the top priority for you? Feb 02 04:03:41 it's almost done Feb 02 04:03:46 only thing that doesn't work it tabs Feb 02 04:03:48 which i'm doing now Feb 02 04:03:50 then i just have to fix styles Feb 02 04:03:59 and fix whatever stupid bugs you users found Feb 02 04:05:15 yay! Feb 02 04:05:32 * p_l loaded up ABSv4 into his new projects, btw ;) Feb 02 04:06:22 oh, what'd you think? Feb 02 04:08:46 fuck i want my tax refund Feb 02 04:08:51 stupid people not giving me my tax forms :( Feb 02 04:09:00 well, they are my personal projects, and I wanted 4.0 stuff Feb 02 04:09:03 i should file before I move Feb 02 04:09:17 wabz: right...I did android dev on a mac for a year...it was mostly pretty good I thought. I've got eclipse set up on this pc running windows, it seemed to take a bit more effort setting up, but it seems ok Feb 02 04:09:22 canadiancow: you're getting a refund. I'm slapped with fines for being late (probably around £200...) Feb 02 04:09:30 late? Feb 02 04:09:32 whens your deadline Feb 02 04:09:39 not quite as fast as the mac i think, but I think that's more to do with my pc being old than anything else Feb 02 04:09:42 in canada, employers dont even have to give your form until end of feb Feb 02 04:09:51 and then theres another couple months to file Feb 02 04:09:55 but i want it nooowwwww Feb 02 04:10:00 im tempted to do it with "guesses" Feb 02 04:10:04 and correct it later :P Feb 02 04:10:08 canadiancow: 31st january for online, 31st october for paper (that's *earlier* than the january date) Feb 02 04:10:32 but I didn't have the activation code for online -_-; Feb 02 04:10:32 wait...so you have 13 months to file a return? Feb 02 04:10:43 um, math... Feb 02 04:10:47 canadiancow: no, that's the deadline that just passed Feb 02 04:10:54 for the 2011 tax year? Feb 02 04:11:07 for the 2010/2011 (tax year ends in april) Feb 02 04:11:13 oooo Feb 02 04:11:25 here, personal taxes are done by the calendar year Feb 02 04:15:23 what's a set impl that doesn't suck? Feb 02 04:15:30 unless my numbers are off, which is quite possible based on how complicated my 2011 tax year was (and the fact im missing two tax forms and had to guess at some stuff), i REALLY want my refund Feb 02 04:15:31 :( Feb 02 04:15:31 romainguy has me all paranoid now about wasted bytes Feb 02 04:15:36 lolol Feb 02 04:15:39 JakeWharton, depends what you need Feb 02 04:15:54 theres really only two: hash based and tree based Feb 02 04:15:56 Set set = new HashSet(); Feb 02 04:15:56 done Feb 02 04:16:03 Set set = new TreeSet(); Feb 02 04:16:05 done x2 Feb 02 04:16:08 oh man Feb 02 04:16:12 HashSet is backed by HashMap Feb 02 04:16:13 IMPLEMENT AN ARRAY FROM SCRATCH! Feb 02 04:16:14 you can tune the hashset for the expected size Feb 02 04:16:35 JakeWharton, does it just use the hashcode as the key? Feb 02 04:16:45 i presume Feb 02 04:17:00 my expected size is 1 Feb 02 04:17:11 so then who gives a fuck Feb 02 04:17:15 OH NO YOU HAVE WASTED 200 BYTES Feb 02 04:17:20 OOM Feb 02 04:17:24 canadiancow: hahaha Feb 02 04:17:35 JakeWharton, ImmutableSet.of(x) Feb 02 04:17:48 my values aren't known Feb 02 04:17:49 but wait... why do you need a "set" of 1? Feb 02 04:17:53 but only except to ever have 1 entry Feb 02 04:17:56 canadiancow: at least you wouldn't have to fight for each byte in zero page ;) Feb 02 04:17:57 but it could be 10000 Feb 02 04:18:28 canadiancow, if it requires zero effort I'd like to save every byte possible Feb 02 04:18:34 especially being a library Feb 02 04:18:40 nothing is ZERO effort Feb 02 04:18:46 but I get ya Feb 02 04:19:05 so is it fixed size or not? Feb 02 04:19:23 it's not fixed but the popular use case is to only supply a single thing Feb 02 04:19:38 http://phandroid.com/2012/02/01/steve-jobs-finally-gets-an-android-tablet-in-the-afterlife-taiwanese-ad-spot-in-extremely-poor-taste-video/ Feb 02 04:19:39 yeah then 'new HashMap(1)' Feb 02 04:19:40 holy fuck Feb 02 04:19:49 hahaha Feb 02 04:20:34 thats just awful Feb 02 04:23:16 hi all Feb 02 04:23:21 Since when can you iterate a set with the for (X x : Y) { } block? Feb 02 04:23:30 actually, I guess that uses and iterator behind the scenes anyways Feb 02 04:23:49 anything implementing Iterable Feb 02 04:23:55 since 1.6 Feb 02 04:24:02 er, 1.5 Feb 02 04:24:14 yea Feb 02 04:24:17 what do you mean "since when" Feb 02 04:24:18 :P Feb 02 04:24:21 since for always Feb 02 04:24:25 i've never done it on sets Feb 02 04:24:36 for a map, you want to iterate over the entrySet() if possible, its more efficient Feb 02 04:25:25 interface Iterable { public Iterator iterator(); } Feb 02 04:26:32 anyone use the Google Tasks API? How can Google expect apps to integrate this with a 5000/day limit on the API? Feb 02 04:26:38 5000 queries that is Feb 02 04:26:39 you cant iterate over a map on its own can you? Feb 02 04:26:46 you HAVE to do it on entryset, keys, or values Feb 02 04:27:18 right Feb 02 04:27:42 Map doesn't implement iterable, only Collection Feb 02 04:28:47 QubeZ, if you ask nicely and have an interesting app they might bump you up. See if there's a group or whatever to get in touch with the people who run it Feb 02 04:29:24 mrenouf: will do Feb 02 04:29:28 QubeZ, also, that might be per/IP if it's client side access Feb 02 04:29:54 do all variables passed to intents have to be serializable? Feb 02 04:29:58 but I think it needs OAuth2 so thats a no go Feb 02 04:30:03 im implementing OAuth via an example but its still using the API Key so tha makes me think its application limit Feb 02 04:30:43 std0s, no. not simple values. But you can pass either a Serializable OR a Parcelable value Feb 02 04:30:46 as well Feb 02 04:31:02 Parcelable is much faster and efficient in general Feb 02 04:31:32 I was having problems with Address Feb 02 04:31:55 android.location.Address? Feb 02 04:31:56 where is the Application lifecycle managed? Feb 02 04:32:32 I worked around by passing the postcode instead Feb 02 04:33:08 std0s, putParcelable("key", address) Feb 02 04:33:11 badly I expect JakeWharton _ its a clean up job... Feb 02 04:33:31 Where? or How? Feb 02 04:33:50 there is no shutdown hook, only onLowMemory() which is not guaranteed to run Feb 02 04:34:07 I think the code was written like 2 years ago and mothballed - now they want me to make it releaseable... Feb 02 04:34:07 typically the jvm process is simply killed when no longer needed. Feb 02 04:35:14 the person before me decided to implment their own "address" object - its interesting Feb 02 04:35:22 do the methods in Application.ActivityLifecycleCallbacks occur on the UI thread? Feb 02 04:35:26 I'm basically undoing it Feb 02 04:35:45 std0s, oooh, you should use android.location.Address :-) Feb 02 04:36:07 I dont have time to get my head around parcelable on this job - I'm sure its cool though Feb 02 04:36:28 actually nevermind that won't help Feb 02 04:36:31 holy crap, I had no idea that existed Feb 02 04:36:44 seems like that would be a great hook for DI Feb 02 04:36:46 mrenouf, might be my new eventbus Feb 02 04:36:52 mrenouf: what? Feb 02 04:36:59 API 14+ though Feb 02 04:37:02 dependency injection Feb 02 04:37:05 OH damnit! Feb 02 04:37:10 :) Feb 02 04:37:13 we can never have the nice things Feb 02 04:37:18 :-(~~ Feb 02 04:37:25 at least it's a step in the right direction Feb 02 04:37:35 now they need to put a compat impl in the support lib Feb 02 04:37:35 that will be awesome some day Feb 02 04:37:43 that might be.... tricky Feb 02 04:37:45 I think there's a temptation to throw around objects in android Feb 02 04:37:51 and some dont like it Feb 02 04:38:23 because thats going to be called by the ActivityManager Feb 02 04:38:39 std0s: we have java as main developement language. What did you expect? Feb 02 04:38:44 At least we are using POJOs Feb 02 04:39:28 I have a fun new book on java - lejos - java on legos Feb 02 04:39:42 maybe it will make me better ... Feb 02 04:39:59 mrenouf, yeah but everyone and their mother is going to be using the support lib anymore so even if they just dispatch those events at the end of each method somehow it'd allow multiple hooks into those lifecycle events Feb 02 04:41:14 I love the utter lack of documentation on that interface Feb 02 04:41:35 I can only assume by the past-tense naming those *are* fired after the event Feb 02 04:43:38 what is the best way for me to release a limited-time release of my app? Meaning, I want to release this full version but only for 2 weeks so I can get a small user base to test before the actual marketed release Feb 02 04:43:39 I've been playing with embedded stuff for fun at night lately, it makes for an interesting contrast... doing UI work in Java during the day, and tiddling bits in registers at night Feb 02 04:43:59 QubeZ, I seem to recall you asking this before Feb 02 04:44:07 QubeZ, Application#onCreate check the date Feb 02 04:44:15 Im setting up a wordpress site, maybe somet type of token/one-time download? But the user's would need to enable unknown sources which would be weird to ask users to do that if I'm providing the app via my website Feb 02 04:44:20 or someone else asked the exact same question Feb 02 04:44:39 JakeWharton: no i mean, i want to only have it available for 2 weeks somewhere to download Feb 02 04:44:43 good night Feb 02 04:44:45 market or website... thinking what is the best way to do this Feb 02 04:44:54 you can unpublish from market Feb 02 04:45:38 but then I can't republish with the same package name right? or should I release first with com.controlledsenility.android.myapp.limited ? then release next removing the limited string? Feb 02 04:45:53 QubeZ, yes. demo on a temp package name Feb 02 04:46:16 that might be a way to go, i'll ask in Wordpress for other options too Feb 02 04:46:26 and you use the licensing server with a free app? Feb 02 04:46:29 it would be nice to allow users to subscribe to my app via the website then provide those users with it Feb 02 04:46:48 mrenouf: licensing server? I wouldn't have any licensing in this app, just proguard Feb 02 04:47:06 well it could be used to implement the time limited-ness Feb 02 04:47:14 ahh Feb 02 04:47:15 unpublishing from the market wont uninstall it from devices Feb 02 04:47:32 mrenouf: i wouldn't want that, i just dont want any more users after a 2 week period Feb 02 04:47:35 just to get a small user base Feb 02 04:47:41 oh, then thats fine Feb 02 04:56:41 QubeZ, you can unpublish and then republish Feb 02 04:58:17 is there any way for me to block in Application#onCreate yet display a UI? Feb 02 04:59:33 i'll probably just have to experiment Feb 02 05:01:39 sup sup everyone :D Feb 02 05:10:13 hi sileni whats cracking Feb 02 05:10:26 std0s: not much , just coding away Feb 02 05:10:30 std0s: you? Feb 02 05:11:27 working on my first android app :D Feb 02 05:11:44 cool, everything working out good? Feb 02 05:12:07 its a newsreader with prefs and maps - I'm learning lots Feb 02 05:12:29 the client is happy so I guess thats mission accomplished Feb 02 05:14:00 Hey hey Feb 02 05:15:27 Hi aLearner how are you getting on? Feb 02 05:15:54 std0s: Well, thank you. How are you? Feb 02 05:16:30 I'm good - learning lots - doing java for the first time in a while.. Feb 02 05:16:55 std0s: Cool. Glad to know things are going nicely. I'm learning as well. Feb 02 05:17:22 did you make a decision about which operating system to use? Feb 02 05:18:03 dang tommorow feels like it should be friday Feb 02 05:21:24 std0s: Yes, I did. I went with Ubuntu 11.10. It took a few days to get it all setup for dev work. But here I am... Feb 02 05:21:44 std0s: I had to get it set up for Drupal dev work too - seems to be holding up nicely so far. Feb 02 05:21:59 I am also a drupal dev aLearner Feb 02 05:22:09 do you ever use drush or aegir? Feb 02 05:22:23 std0s: Oh wonderful! I just met another Drupal + Android double yesterday... Feb 02 05:22:33 haha - linux geeks Feb 02 05:22:37 std0s: Yep, I just installed drush - though I'm still not familiar with it Feb 02 05:22:52 std0s: How come your job lets you do both? Drupal is very different from Android! Feb 02 05:23:08 std0s: I'm gonna add you to my list of online buddies Feb 02 05:23:12 its v good - also if you are being a php/web dev learn svn and post commit hooks - makes life eas Feb 02 05:23:34 I do lots of jobs Feb 02 05:23:41 thanks aLearner Feb 02 05:23:45 std0s: All right. I'll keep your advice in mind. Feb 02 05:24:07 std0s: Wow! That's very cool. As a beginner on both, it's nice to meet more experienced people. :-) Feb 02 05:25:22 don't use SVN Feb 02 05:25:26 use a DVCS Feb 02 05:25:34 git/mercurial/bazaar Feb 02 05:25:49 JakeWharton: I have git already installed Feb 02 05:26:05 JakeWharton, svn is good for some things... Feb 02 05:26:13 JakeWharton: the interview go well ? Feb 02 05:26:21 sileni, resignation went in today Feb 02 05:26:27 JakeWharton: congrats! Feb 02 05:26:52 thank you :) Feb 02 05:27:03 JakeWharton: now you can tell me it was google you interviewed for ? Feb 02 05:27:08 haha it was not Google Feb 02 05:27:13 it was Square Feb 02 05:27:21 JakeWharton: dang very nice! Feb 02 05:35:03 What is the recommended way to go about setting up two-way commincation with a remote service? Feb 02 05:48:07 hello android-dev, i'm finding that diacritics are misplaced by android in my TextView, can anyone advise on this topic? Feb 02 05:48:54 Is there a website that tracks the releases of Android updates in some storable form? I am looking for EVERY 2.3.4+ device ever released. Feb 02 05:50:06 briswolf, probably because you didn't or whatever properly Feb 02 05:54:11 pfn: yes I have commented out the uses-library line in my manifest. I forgot I did this - again my goal is to get the same binary running on devices that support usb and those that don't (It can use both bluetooth and usb on capable devices, otherwise only bluetooth) Feb 02 05:54:56 pfn: I need to do some more thinking obviously. thanks for the tips though Feb 02 05:54:57 so if uses-library isn't in manifest, then you won't be able to Class.forName("...UsbManager") Feb 02 05:55:16 if uses-library is in the manifest, then I cannot install the apk Feb 02 05:55:20 is that right? Feb 02 05:55:27 (if the library is not present) Feb 02 05:55:27 I dunno Feb 02 05:55:33 what's the doc for uses-library say Feb 02 05:55:37 yeah I will confirm Feb 02 05:55:50 I have read it but I don't recall now :p Feb 02 05:56:35 "what does the doc say" = "go read it again" :p Feb 02 05:56:42 yeah I know :) Feb 02 05:56:58 yeah my bad, there is a flag "required" on the uses-library tag, it defaults to true Feb 02 05:57:13 so instead of removing uses-library, I need to set the flag to false and then use reflection Feb 02 05:57:16 dumb me Feb 02 05:57:19 thanks for that Feb 02 05:58:42 * pfn ponders installing the scala libraries on his phone Feb 02 05:58:45 to speed up development Feb 02 05:59:59 My getView() function in my Custom Adapter gets called 4 to 5 times for the element at position 0 ?? I wanted to know why does it do this.. ? For others its calling once or max twice Feb 02 06:00:04 i guess i'm looking for someone who knows the internals about how FreeType sets the positions of the characters Feb 02 06:00:19 c_nick, that's how view adapters work typically Feb 02 06:00:40 c_nick, why does it matter, use the convertview to speed things up Feb 02 06:01:12 speed things up ? Feb 02 06:02:01 yes, use the convertview so the cost of getView is next to nothing Feb 02 06:02:38 not able to get what you mean ? Feb 02 06:03:00 is convert view a method ?? I was not aware of this Feb 02 06:03:11 convertview is one of the arguments to getView Feb 02 06:05:02 if there's no one here knows the particulars about how the glyph placements are calculated, does anyone know of another place to post or ask or any particular place to look for docs? Feb 02 06:07:39 apexofservice, if ou need to I expect you can override the default glyph placement but android can load a custom font in if that would suffice.. Feb 02 06:08:42 std0s, in fact, i'm already having to use a custom font in order to get the glyphs i need Feb 02 06:09:01 i'm testing with several fonts, but i think the best on is Charis SIL. Feb 02 06:09:39 i used to think my problem was with the fonts, but in fact, i believe i've isolated the problem to android, because the same data displayed in the same font on other platforms (my laptop, for example) looks fine Feb 02 06:09:55 i've got lots of details about the problem, but i'm really just not sure who to talk to about it. Feb 02 06:09:58 vadi2: there is a remote service sample (google android remote service sample) which covers it pretty in depth - basically you have to register a callback function and call this through the AIDL interface Feb 02 06:10:31 So AIDL is the way to go? Alright Feb 02 06:11:04 apexofservice, I dunno what android has to say about fonts but I guess its scaling them badly - if you can find a native version it maybe better Feb 02 06:11:48 by 'native version' do you mean one of the native android fonts? Feb 02 06:13:00 no - some "otf" or "ttf" with the required sizes Feb 02 06:13:41 in fact, i'm testing on four different .ttf fonts that do have the required glyphs and spacing, using these fonts on other platforms displays the proper placement Feb 02 06:15:23 it sounds like you know more on this subject than me apexofservice Feb 02 06:15:53 Anyone have a good example of android java workign with binary numbers. Feb 02 06:17:00 I only have 01 example lol Feb 02 06:20:22 vadi2: if you are using remote services you pretty much should be using AIDL yeah Feb 02 06:20:47 vadi2: unless it is really trivial stuff, which you could probably use an activity/intent for Feb 02 06:21:16 vadi2: of course activity/intent invokation is pretty slow in the scheme of things Feb 02 06:21:23 Ah - yeah, was wondering on the difference there. I'll go for aidl. Right Feb 02 06:28:33 strd0s, thanks for engaging with me, anyway. like i said, i'm sorta looking for who to talk to about this. Feb 02 06:31:01 well apexofservice I have some devving experience maybe I can help - whats the trouble Feb 02 06:31:13 vadi2: also might want to keep this in mind when you are setting up your service: http://code.google.com/p/android/issues/detail?id=6426 Feb 02 06:32:31 Thanks for the tip :) Feb 02 07:23:45 Hey, is there a built-in way to transform an onTouch event to scale and transform of a Canvas? (i.e. get location on canvas rather than screen?) Feb 02 07:31:35 hi if i recieve a message via c2dm i want to start a new instance of MyActivity but if the user already openend a instance of MyActivity i want to open this particular instance is it possible to accomplish this via intent? Feb 02 07:35:13 I spose so with a static constant flag .. Feb 02 08:13:06 so, humble indie bundle for Android... 3 or 4 games, pay-what-you-want (get the 4th game if you pay more than the average) Feb 02 08:13:45 1 of the games uses a downloader on first run to grab media from their server, which is absolutely fine... except that for some reason the humble bundle guys have chosen to distribute a 150MB apk instead! Feb 02 08:14:11 the bigger problem is them not being registerable on the market Feb 02 08:14:20 vadi2: that's a problem of the market Feb 02 08:14:27 yep Feb 02 08:16:06 although I did hear a couple of months ago that the market people have been working on hosting app media themselves, separate from the apk, which would be one step towards a solution - presuming that at least part of the reason is not being willing to handle 100000 people downloading their 150MB of data in a couple of days Feb 02 08:23:39 hey all. Feb 02 08:24:48 I have Eclipse 3.7.1 running on my Macbook with the ADT installed. But the android preferences don't show up in the preferences pane. I have the android sdk too. I've ben using it on and off. But suddenly eclipse is acting weird. Feb 02 09:39:54 hey guys Feb 02 09:40:50 can anyone help me figure out some GLES2.0 blending stuff? Feb 02 09:43:10 Hi guys, my app's main screen has an ViewFlipper with several views. And I wanted a good way of showing the user that there are other "screens" to the sides and maybe even help to navigate through them. On the Android Design website, they talk about the "scrolling tabs" and it would be perfect for my problem. Anyone knows where I can find an example to implement them? I tried with a scrollview, but it doesn't look as good as the one Feb 02 09:43:44 ricardjorg: ViewPager might be what you want Feb 02 09:44:41 alankila: Thanks, i'll check it out :D Feb 02 09:49:33 hello guys. Do you know how to do unit testing of db-related models and classes? Feb 02 09:49:59 I mean, should I just let them call the db methods and it will create a testing db? Feb 02 09:50:20 I am using Robolectric, if it helps. Feb 02 10:02:15 y u no use TDD? :P Feb 02 10:13:15 alankila: Even with the ViewPager, how do I implement the scrolling tabs? Feb 02 10:13:58 I am not sure what you mean by scrolling tabs. ViewPager's tabs already scroll horizontally (you can swipe between them). Feb 02 10:14:08 The things like listview already support scrolling vertically, nothing special to it. Feb 02 10:14:23 g'day! Feb 02 10:15:05 If I want to toggle the visibility of the highest view in a horizontal linear layout, how to do that in such a way that the height of the layout doesn't change? Feb 02 10:15:15 alankila: In the Market app, when you scroll through the "screens", the tabs on top scroll too with an awesome animation. That's what I can't find out how to do Feb 02 10:15:26 (setting the highest elements visibility to GONE makes the layout smaller...) Feb 02 10:15:43 I don't want to use INVISIBLE, because of the width... Feb 02 10:15:55 Basically, I'd like to set the height to INVISIBLE and the width to GONE :) Feb 02 10:16:14 the market app is some special thingy. I know little of it. Feb 02 10:16:17 Huh, maybe instead of turning it invisible, I set the width to zero? Would this make sense? Feb 02 10:16:35 I wouldn't be surprised if it was largely independent programming effort compared to available classes like ViewPager. Feb 02 10:17:04 afaik, the viewpager's tabs do not animate, they just switch. Maybe they could be made to animate quite easily, though. Feb 02 10:17:06 Guess I'll combine INVISIBLE with width = 0 Feb 02 10:17:42 alankila: http://developer.android.com/design/patterns/app-structure.html Feb 02 10:18:45 alankila: It looks so awesome on the market app :D Feb 02 10:23:26 alankila: How goes it? Good to see you again. Feb 02 10:26:32 ah, it's doing alright. I managed to break my OS X install today so I'm rather irritated by it in truth Feb 02 10:26:37 but it seems to be working again Feb 02 10:27:30 it turns out that if you restore an os x lion time machine backup using the snow leopard install media, the resulting system is actually not a valid os x configuration, it seems to get old version of the firmware married to new version of operating system. Today, updating to 10.7.3 broke my machine, graphics went all fucked up Feb 02 10:28:05 the thing is, I would have never needed to use snow leopard install media because lion comes with a recovery partition that can do this sort of tasks Feb 02 10:28:13 but I did not know that there is a recovery mode in lion Feb 02 10:29:44 hey, is anyone here with unix/linux and tomcat? Feb 02 10:29:50 familliar* Feb 02 10:30:04 Tricknology: I use it a bit. What about it? Feb 02 10:30:39 in short, i need my servlet to be able to write a file.. Feb 02 10:30:45 right now it doesnt have the permission Feb 02 10:31:02 well not just write a file, create one Feb 02 10:31:21 Can someone help me with http://stackoverflow.com/questions/9110361/multiple-selection-in-gallery-view Feb 02 10:31:27 I suppose the permissions are those of the tomcat6 user. The permissions must be set to allow writing for that user or group in that directory. Feb 02 10:31:48 tomcat 7 but yea Feb 02 10:31:52 there might also be additional restrictions from some external access filtering technology. Feb 02 10:31:55 i set the folder's permission to 777 Feb 02 10:32:17 for instance, apparmor or selinux or java security manager might all veto some operations afaik Feb 02 10:32:27 it does create a file Feb 02 10:32:29 but it's blank Feb 02 10:32:39 hrmm Feb 02 10:32:45 sounds like your analysis of lack of permissions is incorrect then. Feb 02 10:33:03 get the value of "whoami" and see what user it runs as Feb 02 10:33:09 if you can create the file, it's virtually certain you can write to it also Feb 02 10:33:30 lack of, i would guess.. but where and how do i set them? like i said, i set them for the folder, and other files.. it can write to the other files fine Feb 02 10:33:36 i sec Feb 02 10:34:27 yea.. the file that is created only gets -rw-r--r-- Feb 02 10:35:10 I assume the user who owns that file is the tomcat7 user? Feb 02 10:35:38 how do i tell? new to unix Feb 02 10:35:42 ls -l Feb 02 10:35:45 is it the name to the right of it? Feb 02 10:35:59 it's group first user next Feb 02 10:36:11 no, it's user first and group next Feb 02 10:36:22 sorry for the copy code but Feb 02 10:36:25 -rw-r--r-- 1 Tricknology staff 0 Feb 2 02:19 personal Feb 02 10:37:10 and your tomcat is running under your user account? Feb 02 10:37:16 im guessing the answer to your question, in short is yes Feb 02 10:37:20 its running through eclipse right now Feb 02 10:37:25 Tricknology: try to run whoami as I said before, from Tomcat Feb 02 10:37:40 I see. Well, I would expect this to work and your diagnosis of insufficient permissions to be incorrect. Feb 02 10:38:01 from tomcat? the directory> Feb 02 10:38:23 if i just run whoami, it gived the username, Tricknology Feb 02 10:38:45 yeah then it's as alankila sais Feb 02 10:38:53 it's not the problem Feb 02 10:39:15 hm :( Feb 02 10:39:35 if you ran the whoami command from Tomcat Feb 02 10:39:42 and not your own shell Feb 02 10:40:24 I usually do that to find out what user a service runs as Feb 02 10:41:47 im not running tomcat from the terminal or anything, its through an eclipse plugin, so i would guess naturally since eclipse and tomcat are installed under the this account that it will be running under the user Feb 02 10:42:07 i just chmod to 777 and now it says no table has been found in the db Feb 02 10:42:19 select a database first maybe? Feb 02 10:43:07 well when the file is written it's just like touch, no data is actually written Feb 02 10:43:41 just created. so when it goes back after i changed permissions there is no table to write to and the i get sql error Feb 02 10:43:55 sqlexception Feb 02 10:44:46 well it sais it can't find the table you are trying to select from - maybe you didn't select a correct database? I'm just guessing here to give you ideas :-) Feb 02 10:44:54 I have never run tomcat myself Feb 02 10:45:05 ooh haha, thanks Feb 02 10:45:17 it works fine when i supply a premade database Feb 02 10:45:32 given that the file has the right permissions.. Feb 02 10:45:44 but i want to create these bad boys on the fly Feb 02 10:46:53 goign to try to run eclipse through sudo Feb 02 10:47:26 taking bets... Feb 02 10:53:28 nope Feb 02 10:53:59 :( Feb 02 10:57:08 hi :) Feb 02 10:57:19 yo Feb 02 10:58:20 hello, do you know how to work with AOSP sources with netbeans ? Feb 02 10:59:16 with eclipse it's quite simple, but netbeans refuses to use the android root folder for a new project with existing sources Feb 02 10:59:59 i have a question. I'm working on android 2.3, i'm using connectivityManager.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, "enableHIPRI") feature/method, but the mobile connexion does not go up after that. Does it should ? If not how i can put up the connexion (i can not use hidden api) Feb 02 11:02:30 um, i'll take a stab by saying if you dont have that much power going to your antenna a software tweak isnt going to help.. is that what you're trying to do? Feb 02 11:04:54 Tricknology, are you talking to me ? because i have enough power or everything, it's just that the connexion is not launch Feb 02 11:10:18 Clouclou, i have no clue Feb 02 11:24:50 Hey guys, I have a view that I want to keep on the bottom of the screen and then another view above it that i want to fill the rest of the screen. When I use an LinearLayout, and set the top view to fill_parent, the bottom view gets "pushed" out of the screen.. Any tips on how to do this correctly? Feb 02 11:26:32 ricardjorg: maybe wrap_content Feb 02 11:27:06 ressaca: wrap_content makes it just fill the least amount of space possible Feb 02 11:27:39 I want the contrary: fill the most amount of space that is free Feb 02 11:28:33 If i place the smaller view on top, and the bigger below on the linear layout, it fills correctly. but switching their order messes this up Feb 02 11:29:09 Hello.. i want an activity to be updated when a service gets an update... i tried this approach: http://pastebin.com/TmKBDgf8 but get a nullpointerexception @ paymentListener.onPaymentReceived(null);.... any ideas ? Feb 02 11:30:47 listener is obviously null but i dont understand why Feb 02 11:31:21 ANdi``: does the onPaymentReceived method use the argument you send? Feb 02 11:31:40 because you're sending a null on the code Feb 02 11:31:41 no Feb 02 11:31:49 i know, but that isnt the problem Feb 02 11:32:06 problem is that paymentListener is null Feb 02 11:33:14 ANdi``: when does the paymentListener get instanciated? Feb 02 11:33:20 When I type in this command ---> http://code.google.com/p/android-smspopup/source/checkout where will the sourcecode be downloaded? :-? Feb 02 11:34:10 ANdi``: probably the onCreate method is executed before the paymentListener is instanciated Feb 02 11:34:39 ricardjorg its instanciated in the LocalBinder class Feb 02 11:34:48 If it helps I'm on Linux -- will it just go to the 'Downloads' folder? Feb 02 11:34:59 so it should be instantiated before onCreate or not ? Feb 02 11:36:49 ANdi``: of course. if you're using the instance on the onCreate and it's not instanciated, it throws a NullPointerException Feb 02 11:38:32 ricardjorg but shouldnt it have been instanciated before oncreate ? Feb 02 11:39:48 does oncreate get called before onServiceConnected ? Feb 02 11:40:49 hi all Feb 02 11:41:00 MickeySoFine: Hey... Feb 02 11:41:13 is there any way to make Html.fromHtml parse style="" tags as well? Feb 02 11:41:31 has anyone been able to download vimeo videos to the sd card on an android device? Feb 02 11:41:32 -tags +attributes Feb 02 11:41:51 ANdi``: first is the onCreate and then the onServiceConnected Feb 02 11:43:03 ricardjorg oh ok then it does make sense :) Feb 02 11:43:33 hello, can someone help me with getting the android kernel source code for an nexus S (european version). When following this howto http://source.android.com/source/downloading.html i just get an git repo without the source (just a 400 MB .pack file) -- thx :) Feb 02 12:04:40 guys, is it possible to my app switch from 2g to 3g and back ? Feb 02 12:04:53 having quite a piccle to find a solution Feb 02 12:05:40 hey guys. is there any way to reach created databases in an emulator on the local fs? Feb 02 12:05:48 or do I have to go through ddms? Feb 02 12:08:48 it's stored in a .db file somewhere, i think in /data/data/ Feb 02 12:08:58 might be a subfolder of that, and you may need root access Feb 02 12:10:21 Is there something like a ViewFlipper but that can show several views, instead of only the "chosen one"? ScrollViews can't scroll to specific views.. I want to implement something like the scrollable tabs on the Market app to show on what "screen" the user is on. Feb 02 12:12:09 hello, can someone help me with getting the android kernel source code for an nexus S (european version). When following this howto http://source.android.com/source/downloading.html i just get an git repo without the source (just a 400 MB .pack file) -- thx :) Feb 02 12:15:28 is there a way to have a listview entry not respond to clicks (state_pressed)? Visually I mean, e.g. changing the background color Feb 02 12:16:18 Yeah Feb 02 12:16:29 Override isAllItemsEnabled to return false Feb 02 12:17:01 And override isEnabled to return true/false based on whether the item is selectable Feb 02 12:18:29 ah Feb 02 12:18:43 "returns true if the item at the specified position is not a separator" Feb 02 12:18:49 you read my mind :) Feb 02 12:18:52 Yep :) Feb 02 12:19:06 mindreadin android app Feb 02 12:22:18 hmm, I just installed eclipse, and I went over to Install new Software, I cannot install Developer tools because "Missing requirement: Android Development Tools" Feb 02 12:22:37 I thought telling Eclipse where the SDK was came after installing the plugin.. Feb 02 12:24:29 Hello worl Feb 02 12:24:30 d Feb 02 12:26:08 Hi people Feb 02 12:26:48 How does one solve clickable links while using a ListView? I'd like the non-linked text to still react to the click prompt my showContextMenu(view) while the links prompt for the user to select a browser Feb 02 12:27:06 Hmm Feb 02 12:27:24 That sentence turned out weird. Sorry about that. Feb 02 12:28:29 The syntax: "s.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){" .. is this example of a nested class? Trying to learn the terminology. And what do you gain from implementing the interface this way instead of doing "[..] extends Activity implements AdapterView.OnItem[...]"? Feb 02 12:31:06 It's an anonymous inner class Feb 02 12:31:34 I'll look that up, ty... do you gain anything special from doing it one or the other way? Feb 02 12:31:44 s.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() wOOO ????? Feb 02 12:31:50 I have no idea Feb 02 12:32:04 ok ty :-) Feb 02 12:32:13 that sounds like Cjava.net not android . Feb 02 12:32:14 Maybe if you have 10 views with each their onClickListener Feb 02 12:32:27 Instead of implementing and switching on the ID, you can just give them each their own Feb 02 12:32:30 is all that android trash ? Feb 02 12:32:41 Probably bigger overhead, but imo easier to read Feb 02 12:33:52 hmm ok Feb 02 12:34:06 If I have a ViewPager on my Activity, can I have a xml file for each of its views? How can I then use them programatically? Feb 02 12:34:12 ricardjorg can i only call methods of the service only in onserviceconnected or also in other methods if the activity ? Feb 02 12:35:45 ANdi``: if you have the service object, you probably can call methods anywhere on the activity Feb 02 12:35:47 ricardjorg: the viewpager as usually done will host a fragment. each fragment will have its own view tree, from xml or otherwise. Feb 02 12:36:21 ANdi``: if it's an inner class of the activity, you can call the methods in activity from the serviceconnected event handler Feb 02 12:36:36 its not an inner class Feb 02 12:36:56 well, in that case you must supply the activity instance for it to use Feb 02 12:37:06 alankila: thanks :D Feb 02 12:37:10 android is GUI no class object trash Feb 02 12:37:48 alankila you mean the service instance Feb 02 12:39:56 but i cant start a service method from an activity (for example when a button is clicked) like service.customMethod() right ? Feb 02 12:41:30 guys, how to change network type from 2g to 3g ? Feb 02 12:41:34 the code.. Feb 02 12:41:56 ah. I see I misread your question partly because you write "if" and not "of" Feb 02 12:42:41 ANdi``: if you have the service instance you can call the methods. Or more accurately, you have an IBinder although nothing prevents the IBinder implementation from having a method that just hands out the naked Service Feb 02 12:43:02 you should be careful to null any Service instance in case the disconnect hook is called, that would imply that the service went away though Feb 02 12:43:24 hm alankila but for some reason i get a nullpointer exception Feb 02 12:45:15 http://pastebin.com/pETr3u2D Feb 02 12:45:30 well you get NPE if you maybe don't have the service instance :-) Feb 02 12:45:43 service.registerListener(listener); inside onserviceConnected works, but in oncreate NULLPOINTER Feb 02 12:45:54 yes, bindService is not synchronous Feb 02 12:45:56 you can't write code this way Feb 02 12:46:13 this is the reason why I have stopped using Services myself except for some very limited cases Feb 02 12:46:27 Until local services can be synchronously bound, I consider them too painful to work with Feb 02 12:46:42 hm indeed Feb 02 12:46:54 because all code using a Service must be written in callback style Feb 02 12:47:09 imainge you wanted to do something like like Log.i(TAG, "Service says: " + service.method()); Feb 02 12:47:40 now if service is null, this must be enclosed in a Runnable, and passed to a generic queueing method that attempts to establish the service connection first, then when successful empties this queue and exexcutes all the Runnables it has Feb 02 12:47:49 yuck, no thanks. Async = pain. Feb 02 12:48:35 interesting :-) Feb 02 12:48:45 even in the best case it looks like serviceOperation(FooService.class, new Runnable() { @Override public void run(Service s) { Log.i(TAG, "Service says: " + s.method()) }); Feb 02 12:49:12 dfgdfgfgj Feb 02 12:49:28 that would be FooService s as the argument though Feb 02 12:50:07 it's not *impossible* to write, but just damn boilerplatey. And then there's all the problems with exceptions happening, you need to catch them and actually have to have an error handling hook to run instead Feb 02 12:50:33 this is the exact moment when I personally gave up, when I realized how painful handling exceptions will be Feb 02 12:52:06 and then if you already have to write code in callback style, I personally find that when I put a callback in my callback I can probably still write it at that time, but have hard time understanding the code later on Feb 02 12:52:46 i find android code often hard to read.. only callbacks Feb 02 12:53:11 perhaps asynctask is sufficient for my problem ^^ Feb 02 12:53:46 you use a service when you provide a background operation that does not have a GUI. Feb 02 12:54:32 just don't expect the bindService() stuff to work too nice, that's all. Feb 02 12:54:41 it should poll a server and show a dialog when an event occurs Feb 02 12:54:56 proximity sensor is just on/off or ranges like 1-100 Feb 02 12:55:09 it's ridiculous really... the Service is in same process, basically it's just an object. There's an enormous amount of bullshit but when you strip it all away, someone does 'new Service()' and that's it. Really. Feb 02 12:55:19 but it's just done in the worst possible way Feb 02 12:55:32 =D Feb 02 12:56:02 There's an *option* to have it in different process, but I'm personally unsure if anybody really uses it, or couldn't achieve the same in some different way Feb 02 12:56:44 last time I heard someone putting the Service in a different process just for fun it backfired becasue he couldn't use SharedPreferences to move data from activity to service anymore Feb 02 12:56:54 because each process had its own copy of that object. Yeah, right, like totally works. Feb 02 12:59:29 ANdi``: if you only want to poll when the user is looking at your activity then a service is overkill Feb 02 12:59:38 I view lack of multiple processes one of the advantages. Threads have no trouble cooperating if they want, they can literally just share the same objects and if accessors are correctly implemented, there's no issue with partial state of jvm caching old values Feb 02 13:00:03 of=or Feb 02 13:01:41 appel1 but the user should be able to browse through the activities of the app while the polling is active Feb 02 13:02:24 my english ^_^ Feb 02 13:05:03 does asynctask still run when an activity is onpause ? Feb 02 13:05:16 ive been thinking about splitting my service to a different process for bird bar Feb 02 13:09:12 ANdi``: afaik threads are not paused for you when an activity is paused Feb 02 13:13:13 ANdi``: the whole process might get killed though if none of your activities are in the foreground Feb 02 13:19:58 How can tasker change the 2g to 3g and i cant manage to change it? Feb 02 13:21:23 appel1 thx good to know Feb 02 13:34:24 Is it possible to change the updatePeriodMillis in an app widget programmatically? I would like to have the interval as a preference. Feb 02 13:36:15 I don't believe so. But you can use the alarmmanager to trigger the updates instead Feb 02 13:39:10 romainguy: Is it possible to use "selective focus" in TextViews, ie only giving links (Spannable?) focus when pressed, but letting everything else pass-through to the background/parent? Feb 02 13:46:48 fuck, are the examples in the developer docs supposed to be pseudo code Feb 02 13:47:02 the drag and drop example is so fucking horrible it probably hurts Feb 02 13:47:25 romainguy: I reckon that you're the sensei of Android GUI, so you might have an idea or two. :-) Feb 02 13:47:33 mikedg: Link! Feb 02 13:47:49 http://developer.android.com/guide/topics/ui/drag-drop.html Feb 02 13:48:13 it's nothing obvious, but class names are wrong, method signatures dont exist, braces are missing, private modifiers on method variables Feb 02 13:52:19 I prefer looking elsewhere for examples ...github and stackoverflow, me like! Feb 02 13:57:32 Anyone know of the thing I posted above? I couldn't even find an answer on StackOverflow, but my lack of Super Google Skills (tm) might be the cause of it. :-( Feb 02 13:58:08 Usually when a person's googled for too long Feb 02 13:58:13 someone else finds it within seconds. Feb 02 13:58:30 n20: whats the question ? Feb 02 13:59:36 "romainguy: Is it possible to use "selective focus" in TextViews, ie only giving links (Spannable?) focus when pressed, but letting everything else pass-through to the background/parent?" Feb 02 13:59:40 i checked in the first public release of logcat.js to my github Feb 02 13:59:49 mikedg: nice Feb 02 14:00:12 codefriar: ^ Feb 02 14:00:24 still has a handful of issues that make it largely unusable :) but it's improving Feb 02 14:00:32 n20: i remember reading somewhere that you could write text as html, and have android format it properly, so maybe you could create links this way? not sure how it was done though... Feb 02 14:00:39 i welcome patches! Feb 02 14:02:46 mikedg: such as being in JS? Feb 02 14:02:50 barbs: Well, the links are in html-form already in the actual text to be displayed, and I run an Html.fromHtml() over the String as I setText() the TextView Feb 02 14:03:08 lol Feb 02 14:03:28 ah, right... Feb 02 14:03:52 not really sure what else to suggest then, sorry :( Feb 02 14:03:58 barbs: It's just the click-part that I can't come by, as I want the non-link parts of the TextView to just let the *clickevent* pass-through to the background/parent. :-) Feb 02 14:04:12 barbs: No worries, thanks anyway! Feb 02 14:04:28 np...that's a tough one >< Feb 02 14:05:14 have you tried experimenting with putting an onClickLIstener on the whole textview? Feb 02 14:06:50 Linkify may be useful Feb 02 14:07:11 MrChyizPyiz: Tell me more! Feb 02 14:08:45 n20: or just the concept it implements. Feb 02 14:08:55 n20: spannables, and an onclick listener on it Feb 02 14:09:20 n20: look into Linkify and how it works, that and combined with the onCLickListener on the text view or the background will do mostly what you want Feb 02 14:10:02 barbs, yeah, it's stored in /data/data/ - but how do I get that sqlite database *out* of the virtual machine so I can inspect it? :( Feb 02 14:10:10 same question to anyone else Feb 02 14:10:14 MrChyizPyiz: Yeah, true. This posts (or atleast the comments on it) addresses the same thing: http://stackoverflow.com/a/2517092/860212 Feb 02 14:10:30 adb pull /data/data//.db Feb 02 14:10:33 I obviously can't open it in ddms, or copy it out of it Feb 02 14:10:35 flashingpumpkin: adb pull /data/data/com.****.****/db/database.sql Feb 02 14:10:37 ah :) Feb 02 14:10:42 thanks Feb 02 14:10:45 :) Feb 02 14:17:14 flashingpumpkin: it might be in /data/data/...../databases/foo.sql Feb 02 14:17:23 you should use adb shell and navagate into the app private storage to see what's there before you pull Feb 02 14:17:32 lov, yep, did that Feb 02 14:17:42 ok Feb 02 14:18:04 obviously need to read up a little more on the whole toolchain Feb 02 14:18:06 * iivvoo is proud of his TextEdit styling hackery Feb 02 14:18:22 make it completely transparent and put on top of a background styled searchbox image Feb 02 14:18:34 flashingpumpkin: The way that the documentation is formatted doesn't necessarily reflect how people learn how to use android Feb 02 14:18:52 you should always be learning but don't be surprised that silly things like this are shockingly hard to figure out Feb 02 14:18:53 can anybody help me out? I'm trying to make an object that holds a bitmap but I keep getting a null pointer exception, please give my code a glance and tell me what I did wrong Feb 02 14:18:55 http://pastebin.com/NYNc9Q53 Feb 02 14:19:08 package meme.ball.jerk; Feb 02 14:19:13 1) You're a jerk Feb 02 14:19:20 2) Where's the NPE Feb 02 14:19:44 lov: I guess that's the challenge Feb 02 14:19:47 ;-) Feb 02 14:19:50 does your BitmapFactory.decode....... line return something appropriate? Feb 02 14:19:52 the jerk part is the name of my future company if I get to anything Feb 02 14:20:07 what's NPE? Feb 02 14:20:13 NullPointerException Feb 02 14:20:16 and doesn't it return a bitmap? Feb 02 14:20:22 Are you asking us? Feb 02 14:20:27 :D Feb 02 14:20:37 eddi3x3: I'm not going to compile this. You need to give us complete information to diagnose this. Feb 02 14:20:39 No, but what line is your Exception originating from? Feb 02 14:20:43 "Something bad happened" is incomplete information Feb 02 14:20:52 pastebin the stacktrace or at least tell us the line it happens on. Feb 02 14:20:56 attach a debugger. Feb 02 14:21:02 does the bitmapfactory give you valid outputs? Feb 02 14:21:03 I just felt like the GC Feb 02 14:21:07 try splitting that into a couple lines Feb 02 14:21:09 I took out the trash and it was damn cold :( Feb 02 14:21:11 make sure each step succeeds Feb 02 14:21:26 n20: was there a picture next to the garbage that you just can't bear to throw out Feb 02 14:21:30 so you just kind of leave it there Feb 02 14:21:33 taking up space? Feb 02 14:21:42 it's on line 44 that I get the null pointer Feb 02 14:21:44 if so you're the dalvik GC! :D Feb 02 14:22:02 eddi3x3: split that line into several lines. Feb 02 14:22:08 lov: There were tons of pictures! Feb 02 14:22:11 I'm assuming decodeResources returns null Feb 02 14:22:14 you need to figure out why Feb 02 14:22:20 lov: A lot of different bins too O_o Feb 02 14:22:33 ha Feb 02 14:23:00 MY ears are burning Feb 02 14:23:04 ok Feb 02 14:23:09 let me get the log for you Feb 02 14:23:11 one sec Feb 02 14:23:11 no Feb 02 14:23:12 stop Feb 02 14:23:12 Stupid weather Feb 02 14:23:13 I don't care Feb 02 14:23:15 stop Feb 02 14:23:15 stop Feb 02 14:23:18 stop Feb 02 14:23:21 split that line into several lines Feb 02 14:23:26 see if decodeResource is returning null Feb 02 14:23:27 ok ok ok Feb 02 14:23:27 You forgot the endl; Feb 02 14:23:28 X-D Feb 02 14:23:31 if so, double check that you get resources correctly Feb 02 14:23:43 if so, try cleaning and rebuilding the project Feb 02 14:23:48 check that the resource you're trying to load is actually valid Feb 02 14:23:58 do you only have an hdpi icon and you're on mdpi or some other weird configuration reason why this wouldn't work Feb 02 14:24:27 try calling context.getResources.getDrawable(R.drawable.whatever) Feb 02 14:24:31 i want to send data back from an IntentService to the calling Activity. is BroadcastReceiver the only way to do that? Feb 02 14:24:36 Always look on the Drawable/ side of life Feb 02 14:24:40 see what comes back; is it null or is it valid? Feb 02 14:24:54 StrangeBrew: it's probably the simplest way to do it Feb 02 14:25:05 StrangeBrew: if you're feeling feisty you can register callbacks with your services but that's some overhead Feb 02 14:25:59 ok lov, i'll go with BroadcastReceiver:) thanks! Feb 02 14:26:32 especially if you're using intentservice so you're not binding anyway Feb 02 14:27:24 yeah..binding is too much for my needs Feb 02 14:29:48 hello, can someone help me with getting the android kernel source code for an nexus S (european version). When following this howto http://source.android.com/source/downloading.html i just get an git repo without the source (just a 400 MB .pack file) -- thx :) Feb 02 14:32:10 ye Feb 02 14:32:15 *yea the resource is there Feb 02 14:32:25 I have it in all density folders Feb 02 14:32:33 low medium and high Feb 02 14:32:58 I get the error in the ball(parcel in) Feb 02 14:33:26 I'm trying to look up why it's getting the null pointer Feb 02 14:38:22 Is it only possible to setup forms on the current contentview? Feb 02 14:39:21 oh haha Feb 02 14:39:25 eddi3x3: I misread your paste earlier Feb 02 14:39:26 context is null Feb 02 14:39:36 you don't have a context reference in that method yet Feb 02 14:41:56 eddi3x3: consider just storing the appropriate reference and lazy loading the bitmap in your draw if you haven't done it yet. Feb 02 14:42:24 actually Feb 02 14:42:27 why are you creating a bitmap here Feb 02 14:42:34 you're not actually drawing in this object Feb 02 14:42:46 just keep the drawable's id, and return that to callers, don't return a bitmap. Feb 02 14:43:18 oh Feb 02 14:43:31 otherwise, just remember that you need to do additional setup after you inflate from a parcelable and give it a context to create the drawable that way. Feb 02 14:43:37 hello - one question. Are apps somehow checked by google before they appear in the android market ?? I think that they are not checked but i am not absolutely sure Feb 02 14:43:47 WAIT! Feb 02 14:43:52 Why are you caching the context?! Feb 02 14:43:54 Pinas: no Feb 02 14:43:55 Don't cache a context!!! Feb 02 14:44:02 Pinas: yes and no. Feb 02 14:44:07 Pinas: there's no editorial approval Feb 02 14:44:14 but I think that there's some automated scanning Feb 02 14:44:28 for malware signatures and such stuff ? Feb 02 14:44:34 yeah, stuff like that Feb 02 14:44:46 I remember mikedg's app was taken down for "malware" (which wasn't actually malware I don't remember what it was) Feb 02 14:45:49 i forget, is there something in need to import to use getString? Feb 02 14:46:17 why not cache the context? Feb 02 14:46:17 intelligentfool: whatever class implements getString :> Feb 02 14:46:17 it was a g2 root app, it was published for like 2 minutes and sat dormant for almost a year Feb 02 14:46:19 no, it's a method on activity, but it needs a constant form the R files Feb 02 14:46:23 eddi3x3: because you'll probably leak an activity context Feb 02 14:46:24 intelligentfool... Feb 02 14:46:24 and one day it was removed for malware Feb 02 14:46:26 no notice Feb 02 14:46:48 i'm getting a null pointer if i use "private final string Bla = getString(R.string.bla);" Feb 02 14:47:08 ok thx lov and p_1 Feb 02 14:47:13 eddi3x3: if you absolutely must keep a Context reference, make sure to call getApplicationContext and store THAT. Feb 02 14:47:19 intelligentfool, because context is null Feb 02 14:47:19 err Feb 02 14:47:21 hi guys Feb 02 14:47:22 this is not initialized Feb 02 14:47:24 intelligentfool: yes, no using android objects before onCreate Feb 02 14:47:26 intelligentfool: that's because the context isn't set up yet :P Feb 02 14:47:37 can we discuss ndk build setup here? Feb 02 14:47:39 intelligentfool: make it a private string, and set its value in onCreate Feb 02 14:47:42 i'll admit, however, that it would be nice to make things final :( Feb 02 14:47:46 neodev: you can but there's no guarantee anyone can help :( Feb 02 14:47:52 canadiancow|work: agreed Feb 02 14:48:50 k lov... I've been trying to setup the ndk/sdk build environment on CentOS 6.2.. the docs appear to be inconsistent.. have tried a variety of different approaches, keep getting errors... am just trying to compile an arm binary of objdump :/ Feb 02 14:49:35 the prebuilt binaries dont run on my htc 2.3.5 device.. get that weird unexpected ( error Feb 02 14:50:03 would appreciate if anyone can assist :) Feb 02 14:52:47 hey, I google about the animation when new item added in List view, but no good result is found. Does anyone have such experience? Feb 02 14:52:55 neodev: good luck with THAT. Feb 02 14:53:19 neodev: the general approach is to get precompiled toolchains and just use em Feb 02 14:53:36 neodev: consider posting on the android-platform google groups, but you might not get a response there either, sorry Feb 02 14:54:06 neodev: if you're getting a syntax error on the device from a binary you compiled Feb 02 14:54:14 yeah that was my first choice.. tried a few different ones, but none work.. yeah i was hoping to get a quick response via chat rather than forums.. i'd post it on xda-dev but havent yet racked up the 10 post before u can post in the dev forum grr Feb 02 14:54:33 neodev: then it's almost definitely a binary for a different architecture confusing the linker on the phone. If you're getting an error running the ndk on the pc, that's a different problem Feb 02 14:55:45 Is it possible *find* spannables in a given text? Feb 02 14:55:45 dragorn: I think he's trying to compile the toolchain itself on centos, not build his final .so Feb 02 14:55:48 I have a simple style on a textView.... maxLines = 3, ellipsis = end --- on the layout preview (eclipse) i see 3 lines then "...", on the actual device I see 2 lines, then "...", what the f.. ? do someone know of bugs around maxLines ? Feb 02 14:55:53 lov: ok Feb 02 14:56:07 lov: I didn't totally follow what he's trying to do, tbh. Feb 02 14:56:12 dragorn: i havent been able to compile a binary from source (ie. binutils package) as of yet. ive compiled some small c programs with no probs and got them to run.. my build env is centos 6.2.. i can compile individual little projects using the source repo ..but not re-build toolchains or anything... Feb 02 14:57:09 neodev: so you're trying to compile the ndk toolchain, or you're trying to compile a toolchain native to the device, using the ndk Feb 02 14:58:44 trying to cross compile native for device... Feb 02 14:59:01 ive got both ndk & development/source repos..12G worth Feb 02 14:59:07 going in circles lol Feb 02 14:59:24 neodev: the question here is "on what stage are you stuck" Feb 02 14:59:28 are you trying to compile the toolchain itself? Feb 02 14:59:44 are you trying to compile a toolchain specific to a device? Feb 02 14:59:45 yes my first task is to either find or compile a native binary of objdump Feb 02 14:59:53 part of binutils Feb 02 14:59:58 native to CentOS or native to your device? Feb 02 15:00:04 native to arm device Feb 02 15:00:12 so i can run via adb shell Feb 02 15:00:14 as in you want to run objdump ON the device Feb 02 15:00:15 ok Feb 02 15:00:16 that's different Feb 02 15:00:17 yes Feb 02 15:00:30 * lov shrugs Feb 02 15:01:19 tbqh that's one hell of a use case; I can't imagine a scenario where you need to dump symbols ON THE DEVICE instead of pulling the bin to your local computer and using the tools there. Feb 02 15:01:44 yes though isnt the difference just a matter of the host/build/target parameters Feb 02 15:03:20 lov: that is a fair point.... and might be another way around what im trying to do in the short term... though I was to get a fully working build env.. Feb 02 15:03:36 insert "trying" to Feb 02 15:04:21 neodev: a build/development environment ON your phone is fun in a "hacker circlejerk" way but otherwise isn't productive in any meaningful sense. Feb 02 15:04:42 if you're just doing this for the hell of it, go hog wild. If you're trying to be productive, please don't do this./ Feb 02 15:04:47 yet they say that android needs to eventually become self-hosting... Feb 02 15:04:53 no not trying to build the dev environment ON my phone.. im building a binary via CentOS PC that I can just RUN on my phone Feb 02 15:05:05 but that time is not now Feb 02 15:05:18 what is self hosting? Feb 02 15:05:19 neodev: right, you want to have binutils on there. Feb 02 15:05:24 yep Feb 02 15:05:28 QubeZ: capable of building itself Feb 02 15:05:30 but do you want to have binutils etc on there because you want to use it for something productive? Feb 02 15:05:34 or do you want to just do it because you can? Feb 02 15:05:40 alankila: thanks Feb 02 15:05:55 and yes its more for learning/research/experience rather than "production" at this point.. Feb 02 15:06:03 alright, just as long as we're clear. Feb 02 15:06:22 http://actionbarsherlock.com/ anyone used this here ? Feb 02 15:06:34 I'm considering it but wonder if it's worth the effort Feb 02 15:06:37 aolin: quite a few people (but not me) Feb 02 15:06:56 lov: what's your perception of that lib ? Feb 02 15:07:35 reading the FAQ only bad thing is that I need to have targetsdk set to 3.2 Feb 02 15:07:41 I haven't really used/tried it Feb 02 15:07:50 aolin: that shouldn't be a big deal Feb 02 15:08:20 need to take care little bit better that the minSdkVersion is supported by all apis Feb 02 15:08:28 but other than that, no biggie Feb 02 15:08:33 er Feb 02 15:08:40 I think you misread his message actually Feb 02 15:08:46 Both library itself as well as your application must be built using Android 3.2 (API level 13). You may set your targetSdkVersion in the manifest to any API 11 or higher. Feb 02 15:08:58 the point of ABS is that your minSdk is lower, of course :P Feb 02 15:09:39 I don't get it :) Feb 02 15:10:04 ABS is supposed to let you use the AB for devices lower than honeycomb Feb 02 15:10:17 so if your minSdk is >= honeycomb, then there's no point of even using ABS Feb 02 15:10:20 it has to be build with level 13 but 11 is ok for target? doesn't target say which one is used to build? Feb 02 15:10:24 no Feb 02 15:10:31 targetSdk just says "I've tested at this api level" Feb 02 15:10:36 it's used for compatibility routines Feb 02 15:10:42 ah, right Feb 02 15:10:50 i.e. if the targetSdk is 1.6, don't assume that the app knows about the -large configuration Feb 02 15:11:19 lov: my minSdk is 7 Feb 02 15:11:30 aolin: ok, awesome. Feb 02 15:11:36 you should use ABS then :> Feb 02 15:11:48 so I keep that at 7 and set the target to >=11 Feb 02 15:11:51 yes. Feb 02 15:11:58 set the targetSdk to the highest API that you've actually tested on Feb 02 15:12:05 and level 13 in the project properties somewhere Feb 02 15:12:11 yes. Feb 02 15:12:15 cool, thanks :) Feb 02 15:12:22 in project properties, click the android tab, select the api level you'll use to build. Feb 02 15:12:25 that's what it's talking about Feb 02 15:12:34 targetSdk doesn't have to match what API level you use to build against Feb 02 15:12:39 actually I don't have any post 2.3 devices :) Feb 02 15:12:50 but I guess I need to test by emulator Feb 02 15:12:54 aolin: beg borrow or steal then Feb 02 15:12:59 yeah, use an ICS emu Feb 02 15:13:09 what options are the for effects/animations between activities? Feb 02 15:13:14 not really sure what to google for Feb 02 15:13:28 Looking into onUpdate for appWidgetProvider what are the appWidgetIds, I do not really understand the explanation. Can someone make me feel like a dumb ass and explain it better? Feb 02 15:13:44 you can setup your own anim then use that as your startActivity, i think there is an animation method to call for the transition Feb 02 15:13:48 I do have access to nexus at work, so I can still test luckily Feb 02 15:13:50 transition method rather Feb 02 15:14:11 should have bought one but nokia gave me a Lumia 800 so have been using that for now :) Feb 02 15:14:24 yeah it's a flag on the intent Feb 02 15:14:26 got something now Feb 02 15:14:34 iivvoo: http://lmgtfy.com/?q=android+activity+transition Feb 02 15:15:00 QubeZ, yeah found the right search terms Feb 02 15:15:08 view? activity? effect? animation? Feb 02 15:15:11 lov: I think I start with ABS 4.0 beta Feb 02 15:19:25 this was good reading btw http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html Feb 02 15:19:47 they incluted some holo icons there Feb 02 15:19:52 t/d Feb 02 15:22:57 Sup dudes. Can I release an update to my client's old application without building my update under the same package? Feb 02 15:23:10 Its a whole new app but should be released as an update Feb 02 15:23:49 no Feb 02 15:24:10 because it won't re-install with different package name Feb 02 15:24:18 even if the signature is correct Feb 02 15:24:35 I think it would install as new most probably Feb 02 15:25:02 or is the package name what you meant? Feb 02 15:25:58 explodes: I'm not quite sure what you're asking. Feb 02 15:26:12 explodes: the package name is the unique identifier android uses to determine what apps are what Feb 02 15:26:23 if you change the packagename in the app and install it, you'll have the two apps sitting side by side Feb 02 15:26:28 When you guys code, do you have a need to learn the code enough to write it without much help from looking at samples or documentation? I am thinking about my need to know pretty much everything, when in fact I could make a project a lot faster by ignoring that need and just settle with knowing that I can read and understand the code Feb 02 15:26:32 you can do this, of course, especially if you tell the end users to uninstall the old app Feb 02 15:26:38 What's a good balance.... :-D Feb 02 15:26:38 lov: Excellent, all I need to know Feb 02 15:26:42 but if this is something you want to put out on market, you have to use the same packagename and signature Feb 02 15:26:48 lov: I'm sure I can find the old package name some how Feb 02 15:27:05 explodes: o_O Feb 02 15:27:07 lov: THe old app was built with appcellerator (Ugh!) Feb 02 15:27:08 do you have the old app? Feb 02 15:27:10 aapt dump badging Feb 02 15:27:23 Mikellip: yes. Feb 02 15:27:31 lov: i have the appcelerator source code, Feb 02 15:27:46 explodes: can you build it and see what the output is? Feb 02 15:27:50 explodes: do you have the release keys for the original app ? Feb 02 15:27:58 explodes: you need them too ! Feb 02 15:28:05 aoilin: I hope SOMEBODY does Feb 02 15:28:08 package name is easy Feb 02 15:28:16 :) Feb 02 15:28:34 explodes: if you don't have the private key and the passwords for it to sign the new app with, you can't update over top of the old app Feb 02 15:28:40 it MUST be uninstalled first before the new app can be installed. Feb 02 15:28:47 and you MAY NOT push an update to market Feb 02 15:28:54 s/MAY NOT/CANNOT/ Feb 02 15:29:06 Gotcha ok Feb 02 15:29:29 Hopefully appcelerator didn't do this all for them and they forgot their password or something like that. Feb 02 15:29:40 lov: What is aapt dump binding ? Feb 02 15:29:46 explodes: badging Feb 02 15:29:52 ah Feb 02 15:29:52 aapt dump badging shows some metadata about an apk Feb 02 15:29:59 packagename, versioncode, versionname, etc Feb 02 15:30:24 what are the arguments? Feb 02 15:30:39 aapt dump badging filename.apk Feb 02 15:30:51 aapt is the bin; it lives in tools or platform-tools in your sdk Feb 02 15:31:08 Oh hella. Feb 02 15:33:03 hey mikellip.. depends on what type of coder you want to be and what type of projects you want to take on.. you can certainly 'wing it' and learn on the fly as i do pretty much all the time :)... long as you know the fundamentals & common design principles you can learn libraries fairly easily Feb 02 15:33:41 Cool! Package is renamed, now to make some layout-large changes, then I will worry about the keys! Feb 02 15:34:17 you can self sign it if you want to test it explodes... Feb 02 15:34:43 but need keys if want to release Feb 02 15:34:48 yep Feb 02 15:34:56 test it? Feb 02 15:35:03 test the install etc Feb 02 15:35:07 I've been testing it on the emulator, my phone, and my tablet Feb 02 15:35:15 Oh test the install over the market? Feb 02 15:35:19 eclipse signs with debug key automatically Feb 02 15:35:20 Mikellip: you dont really need to learn anything Feb 02 15:35:25 eclipse auto completes everything for you Feb 02 15:35:31 Sorry if it sounds noobish, this is my first release Feb 02 15:35:39 anything else you can come in here and ask Feb 02 15:35:39 Yea eclipse puts in debug keys using the keygen Feb 02 15:35:44 im a noob myself dont listen to me :p Feb 02 15:35:44 explodes: the android sdk creates a debug key automatically which you can use for testing. Feb 02 15:35:48 I'm still a noob after 12 months :) Feb 02 15:35:50 mikedg: haha Feb 02 15:35:54 explodes: you'll still need the actual release keys if you want to release on market Feb 02 15:35:56 noob at android dev anyhow Feb 02 15:35:59 Right right, ok Feb 02 15:36:01 explodes: the debug key that the sdk creates is only valid for a year Feb 02 15:36:02 aolin: sounds like your debug key should be expiring soon Feb 02 15:36:06 but market won't accept keys that expire before 2030 Feb 02 15:36:09 2038? Feb 02 15:36:11 something like that Feb 02 15:36:19 2069 Feb 02 15:36:23 really..wow Feb 02 15:36:23 1234 Feb 02 15:36:24 oh shi Feb 02 15:36:27 mikedg: It already expired and now I have 100 years debug key :) Feb 02 15:36:53 like the current android framework will last till 2030 lol Feb 02 15:36:56 I measure my awesomeness in how many debug keys ive had expire Feb 02 15:37:18 actually I cloned my release key as my debug key for this hobby project Feb 02 15:37:34 for reference, http://developer.android.com/guide/publishing/app-signing.html Feb 02 15:37:46 neodev: better too much than too little. Feb 02 15:37:57 neodev: there's plenty of software that's 30 years old but which is still used actively Feb 02 15:38:03 when the key expires, the app is no longer valid for use Feb 02 15:38:11 the assumption is that in the next 30 years we'll figure out a migration pattern. Feb 02 15:38:15 this is not an unreasonably long time. Feb 02 15:38:20 think of y2k, for example :P Feb 02 15:38:51 omg android is dead in y2k69 Feb 02 15:38:51 i never thought i'd say this Feb 02 15:38:54 but i love facebook Feb 02 15:39:01 hello hello, anyone know how to force a resize of a fragment container? :( i tried requestLayout() on the parent but didnt work Feb 02 15:39:04 canadiancow|work: got shares ? Feb 02 15:39:05 :) Feb 02 15:39:07 no Feb 02 15:39:11 neodev: I'm doing kind of the same, but have an urge to know everything by heart that I use - but am contemplating if the benefits are really worth the time it takes... next project I'll just copy the old code I can reuse and adapt it Feb 02 15:39:20 omg facebook bought zynga Feb 02 15:39:20 Still.... arf :-) Feb 02 15:39:21 shit Feb 02 15:39:26 i did not say that Feb 02 15:39:32 but have you seen ZNGA today? Feb 02 15:39:36 i can read you Feb 02 15:39:41 Symbian lived 10 years in hand phones Feb 02 15:39:54 I'll give 11 years maximum for Android Feb 02 15:40:17 so 6 years to go ! :) Feb 02 15:40:22 11 years will be fairly nice result Feb 02 15:40:26 canadiancow|work: well facebook pays your bills so w/e Feb 02 15:40:35 aolin: but you miss one thing Feb 02 15:40:45 lol Feb 02 15:40:54 apparently we pay facebook's bills :P Feb 02 15:40:56 yes I know symbian is from 92 or so :) Feb 02 15:41:05 so the platform was quite old Feb 02 15:41:10 no, not that Feb 02 15:41:12 and facebook pays your bills Feb 02 15:41:17 its the circle of life Feb 02 15:41:18 p_l: what then Feb 02 15:41:19 it's the circle of life Feb 02 15:41:19 haha Feb 02 15:41:20 o/ Feb 02 15:41:25 \o Feb 02 15:42:04 you miss the fact that if Symbian was fragmented, then there's only one API level, one screen size, one cpu type, etc. etc. on Android :P Feb 02 15:43:07 p_l: I worked on symbian for 5 years and I actually see more fragmentation on android Feb 02 15:43:28 p_l: manufacturers are working on x86 support. Feb 02 15:43:37 p_l: and there's a goddamned zillion screen sizes Feb 02 15:44:26 I see p_l was using satire Feb 02 15:44:39 satire on my internets no way Feb 02 15:44:55 aanyways :) Feb 02 15:45:33 annoying thing on Symbian was they didn't want to let go of their AVKON/EIKON/whateverKON ui framework... Feb 02 15:45:39 this is what killed symbian ultimately Feb 02 15:46:09 if they had killed that totally and had qt based UI immediately, maybe it would have survived Feb 02 15:46:44 can anyone name a few games that have different gfx settings? Feb 02 15:46:44 Regarding Facebook: http://www.ethannonsequitur.com/wp/wp-content/uploads/2011/09/facebook-and-you-pigs-450x360.jpg Feb 02 15:46:49 only after symbian was announced dead by mr. elop, it started getting the updates it needed since 2007 Feb 02 15:47:57 lov: yeah fair enough.. though long as people know WHEN the app will expire they can deal with it.. but yes given current limitations in backing up app data it could be a pain.. Feb 02 15:50:26 yeah with nokias failed linux attempts, i could see symbian die off and be overshadowed by something like android Feb 02 15:50:52 meego/maemo was pretty cool. really sad to see it go. worked on that too for two years Feb 02 15:50:57 ps. is there an easy way to check when the keys of an app will expire? Feb 02 15:51:04 on apps for it, not the OS itself Feb 02 15:51:04 on the device itself? Feb 02 15:52:46 neodev: you can probably use jarsigner or keytool or something on the apk Feb 02 15:52:55 yeah i was hoping they'd bring out the N9 on maemo/meego.. but didnt eventuate... think it was more politics than technical.. they couldnt agree on which platform to focus all their efforts on.. difficult choice to abandon legacy stuff completely Feb 02 15:53:50 neodev: well N9 is a great phone, but professionally uninteresting as no-one is working on that platform anymore Feb 02 15:54:10 yeah thats why i went android instead Feb 02 15:54:11 maemo/meego doesn't really do anything except merge with something else, change its name, and continue to be ignored, every year. Feb 02 15:54:19 loving my HTC Desire HD Feb 02 15:54:42 layout-large is the folder for LARGE screen layouts, like tablets, right? Feb 02 15:54:43 n900 was a good phone too apparently Feb 02 15:54:53 lov: no it's actually dead now Feb 02 15:55:22 the n900 was... a thing. and the n9 was dead before it launched since they went to windows Feb 02 15:55:42 ohh sorry i meant N8...not n9 Feb 02 15:55:42 yes, n900 had crap hw but the OS had lot of promise Feb 02 15:55:47 the n900 is nice because it's closer to 'real linux' if you're trying to do hacky nonsense Feb 02 15:56:03 yeah n900 os on n8 hardware would've been good Feb 02 15:56:19 neodev: well you're talking about n9 then :) Feb 02 15:56:35 guys. having a ListActivity that pulls data out of a SQLite db, and has foreign (and m2m) keys - how would you go about serving that up? Doing joins and feed the whole thing through the cursor, or fetch it one by one in the activity? Feb 02 15:57:09 how about fetching in the adapter Feb 02 15:57:44 just override getSize() and you don't need to give arrayadapter an array Feb 02 15:58:34 maybe should just get nokia to use HTC's code lol.. i like nokia's phone designs Feb 02 15:58:57 but htc phones are well built too Feb 02 15:59:16 only annoying thing about my dhd is no dedicated camera button Feb 02 15:59:41 neodev: HTC can code? :/ Feb 02 16:00:38 dont know for sure, but they are at least using a better platform :p Feb 02 16:01:03 i dont mind the htc sense UI Feb 02 16:02:17 neodev: windows phone is quite nice Feb 02 16:02:33 no point developing for it (audience) but still nice Feb 02 16:02:52 hm. or just pull the related data from another content provider and do id lookups :) Feb 02 16:03:08 simba_ ... you choose the silliest names Feb 02 16:03:12 what framework does it use? a CE variant and .net ? Feb 02 16:04:35 neodev: silverlight + c# Feb 02 16:04:47 i wasnt impressed with the windows phones i looked at though... and i dont like the idea of one company being in control of everything.. i like windows for desktop, linux for server, android for mobile.. Feb 02 16:05:35 nice.. i havent looked into silverlight much, but some of the promo vids looked cool... i like mono/c#.. have made a few apps using sharpdevelop Feb 02 16:06:07 I have reports on some phones of ContentResolver.query(Audio.Albums.EXTERNAL_CONTENT_URI , ...) returning a null cursor. This access the table of albums. Anyone have an idea why this would happen ? Feb 02 16:07:18 bubbleguuum: i have no idea, but could it be in the middle of an album refresh/update? Feb 02 16:08:21 neodev: I don't think so...I think it is a failure to open the database but this is supposition.. Feb 02 16:09:04 argh, my Nexus S is not detected anymore after installing 4.0.3 SDK?! Feb 02 16:09:15 wtf Feb 02 16:09:21 how to fix this Feb 02 16:09:38 I'm using windows 7 Feb 02 16:09:53 aolin: i had the saem problem Feb 02 16:10:02 I fixed it by switching to a legit samsung cable Feb 02 16:10:16 I tried different cables Feb 02 16:12:04 aolin: check if you have multiple drivers installed.. ive had a similar problem with nokia driver update.. got confused between old/new version Feb 02 16:12:18 multiple versions i mean Feb 02 16:12:59 and assuming you have rebooted since the install :p Feb 02 16:13:14 layout-large is for tablets, right? Feb 02 16:13:43 also, has anyone tips for a simple, good, async, high level http library? Feb 02 16:14:09 explodes: http://developer.android.com/guide/practices/screens_support.html Feb 02 16:14:11 explodes: generally Feb 02 16:14:15 no guarantee :P Feb 02 16:14:23 flashingpumpkin: async? not sure. Feb 02 16:14:24 aye Feb 02 16:14:32 flashingpumpkin: I tend to use HttpURLConnection, etc. Feb 02 16:14:39 the apache stuff is pretty interesting Feb 02 16:14:45 just note that there are existing bugs Feb 02 16:15:09 lov, aye Feb 02 16:16:06 neodev: it was the phone Feb 02 16:16:20 neodev: rebooting did not help, but removing battery yes Feb 02 16:16:35 lov, for the last little app I used https://github.com/loopj/android-async-http - which was pretty good. Only annoying thing was that it wasn't straight forward to add new headers Feb 02 16:16:36 did u have it plugged in during the install? Feb 02 16:16:43 that'd explain it.. Feb 02 16:17:06 neodev: yes, why ? tried with another computer and nothing ... only removing battery helped :) Feb 02 16:17:25 they usually recommend unplugging phone during any driver updates Feb 02 16:17:59 probably didnt unmount/disconnect cleanly Feb 02 16:18:29 probably not a big problem as the SDK installer doesn't say anything about this :) Feb 02 16:19:19 probably not well known, yet :p Feb 02 16:19:32 just a theory :) Feb 02 16:19:35 aolin: plug in the device, go to device manager, reinstall the drivers. Feb 02 16:20:57 lov: no worries got it fixed already, phone needed some hard reseting Feb 02 16:21:11 can anyone in here recommend a good android design (UX) firm? Feb 02 16:21:27 ideally located in the bay area Feb 02 16:21:45 evancharlton: my company is the best but we're in Finland :) Feb 02 16:21:56 aolin: link? Feb 02 16:22:02 not sure if this is best place to ask.. read the topic :p Feb 02 16:22:08 neodev: it's fine :) Feb 02 16:22:16 evancharlton: I'll msg you Feb 02 16:22:22 aolin: thanks Feb 02 16:23:00 i wont tell anyone :) Feb 02 16:24:35 not too worried about it, neodev ;-) Feb 02 16:24:57 argh, I need to fix irssi's tab-complete order Feb 02 16:26:06 neodev: to clarify, I'm asking if anyone's had any good experiences with various firms, not saying "hey, want android job?! come work for Joe's Idiot Development Shop!!" Feb 02 16:27:21 What's wrong with Joe's Idiot Development Shop? Feb 02 16:27:26 they do quality work Feb 02 16:27:32 the name is just a tongue in cheek joke Feb 02 16:27:37 god you need to be more open evan Feb 02 16:27:39 They're the parent company of most other development shops. Feb 02 16:27:55 evancharlton: Android has become a huge employment opportunity. A quality Android developer, with impressive apps to show on the Market, can get a job almost anywhere Feb 02 16:28:06 MrChyizPyiz: yeah Feb 02 16:28:10 hey guys Feb 02 16:28:22 almost anywhere... (that gives two shits about mobile applications) Feb 02 16:28:46 abaratican: they are giving a shit more and more and more Feb 02 16:28:47 abaratican: well, yes... you won't be able to get a job on a movie set or something Feb 02 16:28:57 huge demand now that's growing ooober quick Feb 02 16:29:20 a quality developer with experience and things to show is indispensiblw Feb 02 16:29:30 for any platform.... Feb 02 16:29:31 :p Feb 02 16:29:36 there's very few! Feb 02 16:30:01 monkeys Feb 02 16:30:45 wtf do i have to do to get an event to run on an