**** BEGIN LOGGING AT Wed Dec 10 02:59:59 2014 Dec 10 03:00:18 also i love how full screen video controls in chrome sometimes fail to appear or are positioned a bit off the screen Dec 10 03:01:11 lol Dec 10 03:01:21 LiveLeak doesn't seem to play well with Chrome. Dec 10 03:02:12 The Play button appears, but clicking it doesn't achieve anything (most of the time). Dec 10 03:02:18 ugh. those video controls Dec 10 03:02:21 Not clicking it also doesn't achieve anything. Dec 10 03:02:30 chrome seems a bit better about random-font-sizes than Firefox though :\ Dec 10 03:02:36 otherwise I actually prefer firefox for mobile Dec 10 03:02:36 chrome on android? works fine for me Dec 10 03:02:47 I find Chrome a lot faster. Dec 10 03:02:50 Though this didn't use to be the case. Dec 10 03:03:14 TacticalJoke: tried it recently? it has improved quite a bit. and I tend to run nightly, which is always a few steps ahead. Dec 10 03:04:01 also i love how the “Service * has leaked ServiceConnection” exceptions never fail to appear in logcat for many many services, including android's own stuff Dec 10 03:04:32 Nah. I should try it agian. Dec 10 03:04:33 again* Dec 10 03:05:17 TacticalJoke: main reason I like it is that I can install add-ons. cell phone + adblock = <3 Dec 10 03:05:21 Ya. Dec 10 03:05:47 I hate when I'm watching YouTube videos on TV and I see ads. Dec 10 03:05:49 oh, if you were running adblock on it before: don't. try e.g. BluHell. adblock is terrifyingly inefficient. Dec 10 03:05:53 I'm like "Wait, YouTube has ads?". Dec 10 03:06:04 the web is scary without an adblocker Dec 10 03:06:07 Yeah. Dec 10 03:06:30 Even reputable websites have served malicious ads by mistake before. Dec 10 03:06:33 (by terrifyingly inefficient, I mean "1-5 second delays for every page loads") Dec 10 03:07:04 Yeah, it's even a waste of bandwidth. Dec 10 03:07:06 It's a waste of everything. Dec 10 03:07:56 ever browsed with javascript off? Dec 10 03:08:16 Yeah. lol Dec 10 03:08:17 I used to do that. Dec 10 03:08:23 But it gets so tedious after a while. Dec 10 03:08:26 it's frickin' amazing how much faster pages load. Dec 10 03:08:38 I used NoScript or whatever it was called. Dec 10 03:08:57 yeah, and NoScript is an awful addon. nice service, terrible-beyond-belief implementation Dec 10 03:09:22 IIRC, it was a whitelist (not a blacklist). A blacklist would've been very nice. Dec 10 03:09:52 this one is pretty good Dec 10 03:09:54 http://someonewhocares.org/hosts/ Dec 10 03:10:09 it was. also it's a PITA to modify into even slightly-working ways Dec 10 03:10:34 ah yes, hosts files. I never really got into that approach, but they do work. Dec 10 03:10:51 partly because I keep needing to turn off adblocking for something, monthly or so Dec 10 03:11:29 Yeah, hosts files are a nice solution. Dec 10 03:13:28 God, Reddit comment listings are so verbose. Look how big this is: http://pastebin.com/hv9B9su3 Dec 10 03:13:47 That's for 104 comments. Dec 10 03:14:37 heh Dec 10 03:14:46 you're doing stream parsing, I hope? Dec 10 03:15:08 I'm doing tree-parsing with Gson. Dec 10 03:15:21 Stream parsing is really painful. :/ Dec 10 03:15:26 I did consider it, though. Dec 10 03:15:33 it seems like something that should be generate-able, but I don't know of any generators Dec 10 03:15:51 I measured the speed difference. Stream parsing was quite a bit faster, but tree parsing was very fast, too. Dec 10 03:15:57 it's very very boilerplatey though, yeah. I just start out that way with everything now. Dec 10 03:16:53 I take as little of that data as I can, throwing the JSON tree away as quickly as possible. Dec 10 03:16:58 jeez Dec 10 03:19:02 I would guess that basically every client uses tree parsing or object mapping. Every open-source one I saw used tree parsing, IIRC. Dec 10 03:19:14 Maybe I could use stream parsing later. Not sure, though. Dec 10 03:19:22 It's more of a maintenance pain than anything, I guess. Dec 10 03:19:28 Or an adding-new-features pain. Dec 10 03:19:58 yeah, hence my desire to automate it. Dec 10 03:20:12 Yeah, that's an interesting idea. Kinda like loop unrolling. lol Dec 10 03:21:03 TacticalJoke: I found your mission in life Dec 10 03:21:33 create a tutorial website that compares all the ways to do these things Dec 10 03:22:11 you can measure the speeds of things and document them Dec 10 03:22:16 Some kind of blog seems like a nice idea. Dec 10 03:22:23 But it takes so long to maintain a blog. lol Dec 10 03:22:45 programmers don't need maintainance ;) Dec 10 03:22:49 also measure the amount of time people spend on your site, and when they leave, tell them how many lines of code they _could_ have produced if they just wrote the damn thing in the first place Dec 10 03:23:20 lol Dec 10 03:23:47 I think another key point here is that, in many cases, the bottleneck will be the network speed (I think). Dec 10 03:23:54 Because Gson is so fast here. Dec 10 03:24:16 There is some GC overhead, but it doesn't seem huge. Dec 10 03:24:32 And of course everything is happening in a background thread. Dec 10 03:24:43 depends on memory pressure, small devices get bit hardest. but yeah, network is often the bottleneck. Dec 10 03:24:56 less so for XML D: Dec 10 03:25:00 lol Dec 10 03:25:07 Imagine all that in XML. My goodness. Dec 10 03:26:12 I've parsed it. it was bad enough on an _iphone_ that we switched to a pull-parser. Dec 10 03:26:25 well, something roughly as big. maybe a couple times larger in some cases. Dec 10 03:29:16 Is there a way for me to see how cpu/battery intensive my app is? Dec 10 03:29:33 helichopter: kinda sorta. Dec 10 03:30:03 helichopter: battery: use your app normally, watch the battery stats after a day. doesn't appear = you may not have to worry about it any further. Dec 10 03:31:01 there's also `adb shell dumpsys batterystats` on the other end of the spectrum, and there's a python project out there to interpret it. it's a lot of info and not a lot of interpretation though Dec 10 03:31:46 Groxx: would my app's battery usage get lumped into Android OS? I've noticed that taking up a larger percentage of the battery power. My app does use an hourly alarm that wakes the cpu, so could that be it? Dec 10 03:31:56 for cpu, there's a CPU chart overlay in the developer options on the device. off-hand I'm not sure what else you can do. there's also a CPU dumpsys thing, but I don't know how useful it is for this. Dec 10 03:32:25 heh. battery usage is both complex in general, and fairly poorly handled in android. Dec 10 03:33:01 hourly alarm is unlikely to do anything noticeable, tbh. your device wakes up every minute or 5 most of the time anyway, to e.g. check for push notifications, run sync adapters, etc. Dec 10 03:33:22 Groxx: okay cool, thanks for the help Dec 10 03:33:48 on the complexity side: because your alarm went off, the CPU wakes up, and other apps are also probably taking the opportunity to run. you'll pretty much only be "blamed" for battery you exclusively use. Dec 10 03:34:08 like high CPU / GPU use that's directly attributable to you Dec 10 03:35:42 helichopter: also, commonsware did a presentation on this. slides: http://commonsware.com/presos/droidconUK2014-Volta.pdf and the video is viewable on https://skillsmatter.com/legacy_profile/mark-murphy#skillscasts iirc Dec 10 03:36:04 (bugmenot works on skillsmatter.com if you, like me, despise required-logins) Dec 10 03:37:03 how “heavy” the alarms are, though? i've been running my irc app (with 20+ buffers open), and cpu is awakening on every message (isn't it?), yet battery depletion overnigt was only 4% Dec 10 03:37:30 squirrel: impressive battery life. I'd expect more than that just for wifi. Dec 10 03:37:32 so i assume one shouldn't care about alarms that happen less often than once 5 minutes Dec 10 03:37:49 regular moto g 1st generation here Dec 10 03:38:01 about 8 months old, off ebay :p Dec 10 03:38:04 or, I assume wifi? cell will pull a LOT more power, fwiw Dec 10 03:38:11 wifi, yes Dec 10 03:38:19 so if you have every-5-minutes + people walking around all day, it'll drain more. Dec 10 03:38:50 it probably still won't compete with your average game though Dec 10 03:38:52 that's why i'm making a partial sync mode in which updates only happen once 5 minutes Dec 10 03:39:05 thanks for that link, that'll definitely be helpful once 5.0 starts becoming market majority. Dec 10 03:39:15 yeah, a game can eat a full battery in a couple of hours Dec 10 03:43:20 How can I ensure, beyond all doubt, that a MediaPlayer can play stuff when I hit .start()? I keep getting errors -38 and -1001. Dec 10 03:43:28 These, of course, have no documentation. Dec 10 03:43:43 of course. Dec 10 03:44:14 freeone3000: afaik you can't. you can be reasonably sure it'll work if it has worked on that file before, but other apps can leave it in a bad state (which shouldn't be possible, but it happens) Dec 10 03:44:25 Groxx: Wait, other *apps*? Dec 10 03:44:34 How are you supposed to debug a dang streaming application, then? Dec 10 03:44:59 yeah. the hardware-accelerated player is a single system-service-process that you hook into. Dec 10 03:45:37 which is also why some devices can play 4 videos at once just fine, and others lock up once you start a second. Dec 10 03:45:53 freeone3000 you may also want to look at exoplayer Dec 10 03:46:14 g00s: Not an option. I get a MediaPlayer from a third-party library, rdio. Dec 10 03:46:33 ah, bummer. mediaplayer is the worst Dec 10 03:46:40 fwiw it's usually reliable as long as you're not misusing it + the device can read the file properly Dec 10 03:46:52 but "beyond all doubt" + "mediaplayer" = impossible Dec 10 03:47:22 Okay. I can't even close to guarentee the second, given that it's a streaming file and network connectivity on a mobile device is far from constant, but how can I make sure of the first? Dec 10 03:47:32 Or at least prevent -38 and -1001 errors? Dec 10 03:48:01 do those pop up consistently, e.g. 100% of the time with the same stream, or are they intermittent? Dec 10 03:48:22 Groxx: It's completely random whether it'll give a -38 or a -1001 or not give any error but also not play the stream. Dec 10 03:49:08 Groxx: Also, this code *has* worked, but only in an entirely separate project, and it's only mostly the same code, but I can't tell what effect my changes are having. Also, it works on android L, except that on android L rdio's media player has a bizarre delay. Dec 10 03:49:58 things to do first then: 1) make certain you're setting it up and calling it correctly. since it's not 100%, you either have a threading / async problem, or you're doing it correctly. 2) try just re-opening after it fails ¯\_(ツ)_/¯ sometimes it works. Dec 10 03:50:19 L has a new player, iirc Dec 10 03:50:59 developer options -> disable "Use NuPlayer (experimental)" -> see if you get different behavior Dec 10 03:51:47 also, not play the stream: does the onPreparedListener get called? Dec 10 03:52:08 Groxx: I'm using synchronous .prepare(). Dec 10 03:52:16 ah. background thread, I assume? Dec 10 03:52:23 Groxx: Probably should be. Dec 10 03:52:27 haha Dec 10 03:52:28 Groxx: But no, the application is single-threaded. Dec 10 03:52:47 well, it does make it more likely that you don't have _actual_ thread problems Dec 10 03:53:07 async behavior is still rampant in android though, it's worth being careful. Dec 10 03:54:14 it does generally seem reliable about throwing illegal state exceptions when you call it incorrectly, though Dec 10 03:55:22 I got those on what I assumed was a precondition, until I put a synchronized on the singleton accessor. Dec 10 03:55:34 But now it just prints numeric error codes to console. -38, and -1001. Dec 10 03:55:55 :\ if synchronized fixed it, you might not be single-threaded Dec 10 04:02:56 freeone3000: I'm assuming those error numbers are part of the error callback, as the 'what' or 'extra'? Dec 10 04:03:43 Groxx: No, they're just... printed to logcat Dec 10 04:03:50 what's the full message? Dec 10 04:04:29 Grr. The Reddit API documentation is about as good as Android's documentation. Dec 10 04:04:32 Groxx: 12-09 23:04:03.072 29103-29103/com.maluuba.maluuba D/MediaPlayer: MediaPlayer(-38, 0) Dec 10 04:04:48 wonderfully descriptive error :| Dec 10 04:04:52 Groxx: Or, 12-09 23:04:02.022 29103-29103/com.maluuba.maluuba D/MediaPlayer: MediaPlayer(0, -1001) Dec 10 04:05:07 fwiw -1001 appears like it might be "ERROR_NOT_CONNECTED" from here: https://android.googlesource.com/platform/frameworks/av/+/master/include/media/stagefright/MediaErrors.h Dec 10 04:06:14 whatever that means Dec 10 04:06:53 though ultimately this all depends on the device's mediaplayer implementation :( and that seems to vary pretty heavily, given the widely-varying codec support I've seen Dec 10 04:07:09 It's a Note 3. Dec 10 04:07:31 Though an LG G2 also can't play the files, all of which is... not great. Dec 10 04:08:29 Disabling NuPlayer on the Nexus 7 slightly reduced the delay, but it still seems to buffer the entire file before starting playback, which isn't what happens on 4.4.2. Dec 10 04:08:50 (And sort of ruins the point of a streaming app.) Dec 10 04:09:31 freeone3000: funny you should mention the buffering problem… I just closed this tab: http://androidstreamingtut.blogspot.nl/2012/08/custom-progressive-audio-streaming-with.html Dec 10 04:09:34 did you try googling MediaPlayer (-38,0) android, it has links to the error and the why Dec 10 04:09:51 whatitis: Closest I get is "you didn't call .prepare()" but I did call .prepare(). Dec 10 04:10:15 freeone3000: might not be useful, but it at least has "streaming" in the name, so I figured you might be interested anyway :) Dec 10 04:10:28 Groxx: I'm not allowed to see the source URL, I'm only allowed the MediaPlayer. Dec 10 04:10:35 alas. Dec 10 04:10:37 are you playing/starting after its prepared callback, or immediately after preparing Dec 10 04:10:47 whatitis: Isn't prepare() synchronous? Dec 10 04:11:09 and whatitis: unfortunately, in my experience, media player error codes are rarely googleable (unless they're part of the Android-defined set) Dec 10 04:11:13 whatitis: Immediately after prepare() returns on the same thread. But, again, fairly sure that it's synchronous. Dec 10 04:11:20 doesnt look like it from the stackoverflow Dec 10 04:12:33 they are using prepareAsync and saying not to use prepare Dec 10 04:13:41 have a representative link? I don't think I've seen that, or I don't remember or something Dec 10 04:14:06 http://stackoverflow.com/questions/9008770/media-player-called-in-state-0-error-38-0 Dec 10 04:14:49 here's what I have so far. https://gist.github.com/freeone3000/34fe3ed79467a721a694 . Code is executed in methods, methods are arranged bottom-to-top. Dec 10 04:14:59 something bout high end devices may work with prepare,as others may not so they use async prepare and listener Dec 10 04:16:42 probably concurrency issue Dec 10 04:17:07 did someone say rx? Dec 10 04:17:09 doInBackground is calling setupPlayerForNextSong Dec 10 04:18:08 freeone3000: one odd comment in SO mentions using the provided MediaPlayer in the callback, not the reference used to configure it. maybe try that? see if rdioMediaPlayer and onPreparedListener's "mp" are the same object. Dec 10 04:20:12 Is anyone here able to help me troubleshoot Eclipse + ADT? Dec 10 04:20:38 g00s: Well, yes. Otherwise, how would the song get played? Dec 10 04:20:44 my new projects are instantly generating errors on build, before i touch anything Dec 10 04:21:18 Which errors? Dec 10 04:21:23 freeone3000: g00s might be right in pointing out that setupPlayerForNextSong is on a background thread. that's probably unnecessary with prepareAsync. I _suspect_ it's fine, because ultimately it's crossing process boundaries, but try getting rid of the async task for that? Dec 10 04:22:31 TacticalJoke No resource found that matches the given name (at 'theme' with value '@style/AppTheme'). Dec 10 04:22:47 i have no main activity or styles.xml Dec 10 04:22:47 freeone3000: ah, the docs do have this in the "callbacks" section: In order to receive the respective callback associated with these listeners, applications are required to create MediaPlayer objects on a thread with its own Looper running (main UI thread by default has a Looper running). Dec 10 04:22:58 Groxx: Aha. Dec 10 04:23:02 freeone3000: so yeah, try setting all that on the main thread. Dec 10 04:23:11 Okay, removing the asynctask. Dec 10 04:23:22 * Groxx hadn't noticed that before Dec 10 04:23:36 but i would expect stuff to really blow up there, 100% , if there wasn't a looper Dec 10 04:23:43 yeah Dec 10 04:23:45 so i wonder if some things are running on the main thread Dec 10 04:24:01 mellow0324: What code do you have? Dec 10 04:24:31 bankai_au i looked at the sources for rxjava merge operator, and i was very sad Dec 10 04:24:33 g00s: Well, things are blowing up... somewhere, it's really ahrd to tell where. Dec 10 04:24:40 g00s: no black magic ? Dec 10 04:24:42 g00s: So it could be there. Dec 10 04:24:53 bankai_au i can't understand any of it :( Dec 10 04:24:55 TacticalJoke None yet. I'm just trying to make the standard template project before i edit anything Dec 10 04:25:01 oh i thought you meant the code was shit haha Dec 10 04:25:10 TacticalJoke that template wont even build Dec 10 04:25:15 it does look like shit actually Dec 10 04:25:27 but it has a lot of fastpath optimizations Dec 10 04:25:38 do they actually work? Dec 10 04:26:18 or wait, rxjava. that seems reasonably well-constructed overall, so maybe they do actually improve performance, and aren't just obfuscation :) Dec 10 04:26:21 TacticalJoke my old projects still build without errors. but i can't make a new one without errors. some of the files don't get generated Dec 10 04:26:39 mellow0324: Did you just move from Eclipse to Android Studio? Dec 10 04:27:29 TacticalJoke I did just install Android Studio 1.0 today, but I didn't use it much Dec 10 04:27:35 did that break anything? Dec 10 04:28:40 You're giving me way too little info to answer any question. Dec 10 04:28:52 What exactly have you done to cause these errors? Dec 10 04:29:17 and what exactly are the errors Dec 10 04:29:33 I just created a new Android project. and as soon as it finishes generating Dec 10 04:29:44 A new Android project in which IDE? Dec 10 04:29:46 it says No resource found that matches the given name (at 'theme' with value '@style/AppTheme'). Dec 10 04:29:59 new project in Eclipse + ADT Dec 10 04:31:03 g00s: https://github.com/ReactiveX/RxJava/blob/155860eceb1a7a3e8f7d255f821056039fbce505/src/main/java/rx/internal/operators/OperatorMerge.java read the block commnt. first sentence Dec 10 04:31:30 mellow switch to android studio Dec 10 04:31:31 g00s: Awesome, that fixed it! Dec 10 04:31:58 Now MediaPlayer grabs random chunks of content at seemingly random locations, and then gives up and plays the file sequentially. Any way I can just get it to ... do the latter? Dec 10 04:32:49 mellow0324: if you are going to cotninue using eclipse you might as well install windows 95 while you are at it Dec 10 04:33:05 bankai_au yeah, i was going to write an operator ... something like merge, and then when i saw that realized I'm not going to be lucky Dec 10 04:34:44 mellow0324: I don't know. I suspect it relates to options you selected in the wizard. Dec 10 04:34:53 Also, double-click the error thing. See where it takes you. Dec 10 04:35:15 Okay. well thanks for attempting to help TacticalJoke Dec 10 04:35:38 I think you should be able to double-click items in the Error pane. Dec 10 04:35:59 Oh, man, this is so disappointing. Reddit has this nice API and everything, but there's no real API for loading "more comments". :/ Dec 10 04:36:06 Gotta drop back to something akin to screen-scraping. Dec 10 04:53:13 God, programming is painful at times. Dec 10 04:53:23 bankai_au any idea how i would take one observable, collect its items, and then subtract them from another observable ? Dec 10 04:53:29 I bet, if brain studies were carried out, they'd see serious pain going on. Dec 10 04:53:47 bankai_au basically just set difference Dec 10 04:54:09 TacticalJoke: probably masochistic streaks too. Dec 10 04:54:13 oh i actually just did this ... but i won't tell you how coz it wasn't pretty :) Dec 10 04:54:37 i did too, it wasn't pretty so i erased it. it was so horrid i couldn't repeat it Dec 10 04:54:57 Nyarlathotep is strong tonight, it seems. Dec 10 04:55:29 i hope santa brings lambdas Dec 10 04:57:15 The thing about programming is that one tiny change in situation X can create or avoid enormous pain in situation Y. Dec 10 04:57:17 It's a serious power game. Dec 10 04:57:44 that means you didn't loose couple it Dec 10 04:58:39 One example is adding a method to an API. That could save countless misery. Dec 10 04:58:45 so true TacticalJoke Dec 10 04:58:52 An alternative way of stating that is that not adding this method could cause huge misery. Dec 10 04:59:07 API creators have too much power. :) Dec 10 04:59:19 but conversely, changing the functional of a method can sreak havoc too Dec 10 04:59:32 and then you throw in "and I need to maintain backwards compatibility" and you just squared your ability to screw everything with each method. Dec 10 04:59:38 :) Dec 10 05:00:42 Hmm, I think I've found a way around the cause of my misery. Dec 10 05:00:52 I can simply ask Reddit for N comments and avoid the whole issue. Dec 10 05:01:01 But it's still not nice not to be able to ask for more comments. Dec 10 05:01:16 just grab all Dec 10 05:01:35 The alternative is to implement functionality to load more comments, but this is horrible. Dec 10 05:01:59 why not just grab all of them? Dec 10 05:02:10 It involves parsing undocumented jQuery stuff. Dec 10 05:02:15 just grab it Dec 10 05:02:16 I could. Hmm. Dec 10 05:02:18 but don'tparse it Dec 10 05:02:25 grab ALL the things Dec 10 05:02:29 I mean "load more" involves the weird parsing. Dec 10 05:02:30 lol Dec 10 05:02:31 grab it all lazy parse it Dec 10 05:02:37 do it Dec 10 05:02:39 DO IT Dec 10 05:02:40 keep count of Dec 10 05:02:41 you know you want to Dec 10 05:02:43 parsed Dec 10 05:02:46 What if there are 10,000 comments? Dec 10 05:02:50 download them all Dec 10 05:02:53 every. Dec 10 05:02:54 last. Dec 10 05:02:55 download them all Dec 10 05:02:55 one. Dec 10 05:03:01 how much data can that be? Dec 10 05:03:05 200 k? Dec 10 05:03:09 a few kilos Dec 10 05:03:13 I guess I could just decide upon a limit. Dec 10 05:03:19 Yeah, but you've seen Reddit's JSON. :p Dec 10 05:03:21 xD Dec 10 05:03:21 that's like the size of a one jpg Dec 10 05:03:23 It's probably more like 1GB. Dec 10 05:03:39 Whoa. Dec 10 05:03:49 The top-rated AskReddit post of all time has 45,333 comments. Dec 10 05:03:58 http://www.reddit.com/r/AskReddit/comments/t0ynr/throwaway_time_whats_your_secret_that_could/ Dec 10 05:03:59 download it all Dec 10 05:04:03 Okay, I have an idea. Dec 10 05:04:23 Download N comments by default (where N is a great number). If users don't like that, they can choose to download O comments. Dec 10 05:04:27 Via a menu or something. Dec 10 05:04:31 yeah Dec 10 05:04:38 or download n Dec 10 05:04:44 which is like 200 Dec 10 05:04:47 Which means downloading everything with a limit of O rather than a limit of N. Dec 10 05:04:49 if more, adda button Dec 10 05:04:52 for seriousness: since 200kb over a stuttery network (or, God save us, Edge) can be pretty slow: limit to a couple hundred, I'd be surprised if anyone goes further :) the difference between download-and-parse-and-display will be visible, so reduce it. Dec 10 05:05:05 not huge, but definitely visible Dec 10 05:05:23 Why do APIs always let us down? Dec 10 05:05:31 They can be 99% awesome and just fail for the 1%. Dec 10 05:05:40 even if it's a couple hundred millis faster, consider doing that hundreds or thousands of times. it adds up heavily to how fast an app feels. Dec 10 05:05:43 It would be so easy for them to not fail here. Dec 10 05:05:49 Yeah. Dec 10 05:06:02 thow does the other reddit clients do it? Dec 10 05:06:06 Maybe a better idea is to allow the user to decide how many comments are downloaded by default. Dec 10 05:06:16 lasserix_: As far as I can see, some do, but not all. Dec 10 05:06:37 I could just do the parsing. It's not the end of the world, but I hate undocumented stuff. Dec 10 05:08:56 Oh. The maximum number of comments you can download is 500. Dec 10 05:09:10 then there must be a way to page comments Dec 10 05:09:33 Yeah, although it involves the horrible parsing. Dec 10 05:09:54 are you webscraping or is there an api you use? Dec 10 05:10:02 I'm using Reddit's JSON API. Dec 10 05:10:18 Unfortunately, "load more comments" falls outside of that. lol Dec 10 05:10:20 entirely unrelated to anything in here (except maybe the mediaserver problems), but I heart xiph so much. great video: https://www.xiph.org/video/vid2.shtml Dec 10 05:10:21 Totally arbitrary. Dec 10 05:11:06 just load a few hundred and add a "view comments in browser" to load the other 50 bazillion Dec 10 05:11:24 Dat chinstrap doe. Dec 10 05:11:32 bankai_au: Yeah, I guess I could. Dec 10 05:11:36 90% of the comments are teens bitching about trash anyway Dec 10 05:12:01 hey g00s did you implement a ble scan? Dec 10 05:12:20 if so what type of activity did you use for it? Dec 10 05:12:27 jareddlc a while back ... activity ? Dec 10 05:12:34 UI element Dec 10 05:12:40 there's so many reddit clients out there. Look at a few of them, see what they do/don't do. Copy/add/remove. Reddit isn't all that complex Dec 10 05:12:47 jareddlc oh it was in a service Dec 10 05:12:49 Yah. Dec 10 05:12:50 did you make it like a setting or an UI button then at some point return a list Dec 10 05:13:09 just make it easy for me to left/right swipe through r/wtf and r/funny and i'll use your app :) Dec 10 05:13:21 Im about to write my BLE scan finally, and my default view is setting fragments, i just wanted some opinion on what other people have done Dec 10 05:13:45 i was thinking a list view, that would trigger a scan, and then populate the entries, but im not sure if thats possible yet Dec 10 05:13:46 jareddlc to show devices ? like a device picker ? Dec 10 05:14:09 yep, usually you get a new view, for scanning devices Dec 10 05:14:17 but im not sure if i can consolidate into 1 Dec 10 05:14:25 oh heh, actually i'm working on that right now but BT classic Dec 10 05:14:36 i haven't touched the ble part in a few weeks Dec 10 05:15:18 yeah, you can do it as a listview. i put mine in a fragment, with setRetainInstance = true, so if you do a scan and rotate, the scan isn't broken Dec 10 05:15:49 where do i put setRetainInstance? in the XML or once i instanciate it? Dec 10 05:16:18 ah nvm i think i prevent my app from going into landscape mode xD Dec 10 05:18:43 the reason im going to implement the BLE scan is from a odd bug im experiencing.. The way my app works is that it expects you to pair to device using android settings, then once in app it grabs them by using getPairedDevices Dec 10 05:19:06 Hmm, doesn't Google Chrome let me edit an HTTP request and resend it? Dec 10 05:19:12 If not, is there something that does? Dec 10 05:19:15 however, sometimes calling getPiaredDevices doesnt return the device that has been paired, so I'll need to exit app and repair Dec 10 05:19:34 TacticalJoke: there an google addon Dec 10 05:20:12 Okay. Dec 10 05:20:34 TacticalJoke: look into Application DHC - REST/HTTP API Client Dec 10 05:20:47 Thanks. Dec 10 05:20:53 but what do you mean edit request? Dec 10 05:21:01 you can create a request Dec 10 05:21:23 any where in web around. need to know all available phone number formats worldwide. Dec 10 05:21:58 jareddlc: Edit a request I've just sent (and logged in the developer tools). Dec 10 05:22:26 meaning you want to mock up a server? Dec 10 05:22:42 once a request is sent, there no purpose of editing, as it stateless Dec 10 05:22:46 res 200, 404 etc Dec 10 05:24:13 TacticalJoke: you should be able to use the paginate command TacticalJoke Dec 10 05:25:17 Which paginate command? Dec 10 05:25:30 or listing? Dec 10 05:26:14 any predefined way in android to know, if a number is a valid phone number and not a ussd code? Dec 10 05:26:34 lasserix_: Unfortunately, this function falls outside of their (pretty neat) API. Dec 10 05:26:49 I'm just gonna parse it all. Dec 10 05:26:51 Get down and dirty. Dec 10 05:27:08 The only real difficulty is that I have to scrape some HTML to figure out the comment time. Dec 10 05:27:12 Though it's not hard (just annoying). Dec 10 05:27:37 is it a java api? Dec 10 05:27:37 \ Dec 10 05:28:02 oh TacticalJoke sorry, i was giving you tools for browser, not for android Dec 10 05:28:25 jareddlc: I know. haha Dec 10 05:28:30 lasserix_ was talking about something else. Dec 10 05:28:42 lasserix_: Nah. It's JSON over HTTP. Dec 10 05:28:58 JSON is awesome! Dec 10 05:28:59 oh you just do restful gets? Dec 10 05:29:06 Yeah, basically. Dec 10 05:29:16 I'm using OkHttp. Dec 10 05:29:22 but TacticalJoke once you send a http get Dec 10 05:29:28 you cannot modify it, to my understanding Dec 10 05:29:47 jareddlc: Yeah. I'm sending modified ones later. Dec 10 05:29:53 New ones. Dec 10 05:30:14 meaning, looking into the response, and building another request based of that? Dec 10 05:30:20 like header info? Dec 10 05:30:39 Yeah. Dec 10 05:30:42 Like adding headers. Dec 10 05:30:45 gotcha yup Dec 10 05:31:17 should be fairly easy, not sure what language you using Dec 10 05:31:55 i do exact same thing, but using websockets Dec 10 05:33:43 is there any free wpa2 cracker available for android? Dec 10 05:34:29 your mom Dec 10 05:35:05 lasserix_: Lol. I'm in #reddit-dev! Dec 10 05:35:22 It's dead in there. :) Dec 10 05:35:23 hehe Dec 10 05:35:26 yeah Dec 10 05:35:28 seriousily Dec 10 05:35:44 Some guy was answering my questions and then he just left. Dec 10 05:35:53 A+ assistance. Dec 10 05:36:53 Thanks for asking that for me, but I think I have it figured out now. :) Dec 10 05:37:16 doing it the wrong way though! Dec 10 05:37:19 It's just "implement some slightly annoying and messy stuff" and "hope they don't break the API". Dec 10 05:37:38 lasserix_: The open-source Reddit clients do the above. Dec 10 05:37:44 Well, the ones that actually do anything. Dec 10 05:41:17 Why the hell is Android Studio spell checking what I name variables? Dec 10 05:41:37 lol Dec 10 05:42:28 I hate when Eclipse's XML parser goes wrong and starts spell-checking XML tags. Dec 10 05:42:32 to some degree I like that. fixes "autocorectImpl" misspellings that become yet-another-minor-git-commit-that-appears-in-blame-and-hides-the-source-of-bugs. Dec 10 05:42:41 I mean attribute names. Dec 10 05:43:25 I hate those commits. :) Dec 10 05:43:30 Clean repository history FTW. Dec 10 05:43:42 exactly. so spellcheck FTW Dec 10 05:43:52 and then I guess 'lint' is 'grammar check Dec 10 05:43:54 ' Dec 10 05:44:00 I love when a repository's changesets are so simple and easy to read. Dec 10 05:44:08 Just one building upon another. Dec 10 05:44:35 i remember first time i uploaded my project to work i had to spend the entire night going through the entire history of my revision to remove all the explecitives i had left in my log messages ;p Dec 10 05:44:37 TacticalJoke you'd like gerrit repos Dec 10 05:44:55 Is that what the Android Studio people are using? Dec 10 05:45:00 TacticalJoke: ah, a unicorn? that only happens when you rewrite history. Dec 10 05:45:07 Oh, the actual Gerrit repos. I see. Dec 10 05:45:17 Groxx: Yeah, I <3 rebasing. Dec 10 05:45:26 TacticalJoke: not that history shouldn't be rewritten. we need more unicorns. Dec 10 05:45:59 I amend the date of a changeset before rebasing it. Makes my history look amazing. Dec 10 05:46:11 I sometimes implement huge features in about 10 minutes. Dec 10 05:46:11 I didn't do it. Dec 10 05:46:34 TacticalJoke: gotta earn that ÜberCoder badge somehow Dec 10 05:46:55 TacticalJoke yeah actual Gerrit repos heh. very little merging, very clean commits Dec 10 05:47:24 Joking aside, the reason I do it is that I can't stand seeing stuff like this: 01/02/2015, 02/02/2015, 03/02/2015, 01/01/2014(!) Dec 10 05:47:40 lol mergecommit Dec 10 05:47:59 rebases do have that problem Dec 10 05:48:00 Yeah, I neer merge until release. Dec 10 05:48:06 Just a single line. :) Dec 10 05:48:13 If it can be rebased, it will. lol Dec 10 05:48:28 * Groxx pictures "I never merge. but when I do, I release." Dec 10 05:48:35 lol Dec 10 05:48:48 it sounds dirty now that I've spelled it out Dec 10 05:49:48 It's possible to become too perfectionistic about repositories, though. Dec 10 05:49:54 ugh. worst part about MITMing your own traffic: you are required to set a passcode :( Dec 10 05:49:59 Where you're scared to commit in case stuff needs to be reverted. Dec 10 05:50:08 TacticalJoke: git push -f Dec 10 05:50:20 screw the historians Dec 10 05:50:21 Yeah, I do that stuff. (Though in Mercurial.) Dec 10 05:50:26 thats what local / branches are for Dec 10 05:50:30 I strip the remote changesets and amend locally. Dec 10 05:50:42 Mercurial will have Evolve soon(ish). It'll automate (and make safe) all of this. Dec 10 05:50:53 lasserix: by that logic you should never push to master until you've released _and_ made sure it's 100% bug free Dec 10 05:50:54 Safe, simple mutable *published* history. Dec 10 05:51:13 no but you can always backtrack more easily Dec 10 05:52:00 yeah. personally I'd like a way to "pseudo-collapse" history when merging branches. it's nice to keep the real history, but there's no need to actually _read_ it in 99.9% of scenarios Dec 10 05:52:07 With Mercurial Evolve, that scenario is simply amend & push. Then the server has both versions (the old and the new). Dec 10 05:52:09 Zero data loss. Dec 10 05:52:11 granted, git has reflog, but that's not preserved Dec 10 05:52:17 wait did you just say "safe simple mutable published history" Dec 10 05:52:21 Yeah. Dec 10 05:52:24 did you mean "immutable"? Dec 10 05:52:27 Nope. Dec 10 05:52:36 Evolve is about being able to mutate published history. Dec 10 05:52:39 how is that remotely safe/simple? Dec 10 05:52:44 It introduces the concept of obsolete changesets. Dec 10 05:52:52 Nothing is ever deleted; it's append-only. Dec 10 05:53:00 makes sense. Dec 10 05:53:09 so... it's not really mutated then. Dec 10 05:53:11 It's meta-history, basically. Another dimension. Dec 10 05:53:16 it's just hiding commits from you. Dec 10 05:53:19 plus all your fffuuuuuuu's are preserved forever in the metaverse Dec 10 05:53:22 Well, it's conceptual mutation. Dec 10 05:53:36 gotcha. Dec 10 05:53:38 Even if the actual changesets are just appended and marked as successors to now-obsolete changesets. Dec 10 05:53:51 Groxx: Though it's still possible to delete changesets (manually). Dec 10 05:54:04 it's just no longer safe once pushed? Dec 10 05:54:11 You can delete all the obsolete ones with this command: hg strip --hidden -r "obsolete()" Dec 10 05:54:14 That'll nuke all the old ones. Dec 10 05:54:18 not a fan, i'd rather see commits X and ~X, but to each their own Dec 10 05:54:25 sarbs: It will show that. Dec 10 05:54:33 But by default the old one will be hidden. Dec 10 05:54:41 hg log --hidden #shows everything Dec 10 05:54:54 gotcha Dec 10 05:55:06 It works already. Just not released yet. Dec 10 05:55:25 In case you wanna know more: http://evolution.experimentalworks.net/doc/user-guide.html Dec 10 05:56:10 I used mercurial a fair bit for almost a year… then I switched to git. I do like git's internal purity (once you understand it), but hg has some awfully fancy scripts. Dec 10 05:56:43 I don't see myself getting back into it though :| Dec 10 05:56:47 I think Mercurial has a few advantages over Git. Dec 10 05:56:49 For example, phases. Dec 10 05:57:01 When you push a changeset, it acquires the "public" phase. Then it's immutable. Dec 10 05:57:14 You have to manually downgrade it to the "draft" (or "secret") phase before you can mutate it. Dec 10 05:57:18 Helps avoid so many issues. Dec 10 05:57:41 I don't think I've ever made that mistake, tbh Dec 10 05:57:44 Another example is branches. Mercurial branches don't need to be named (and they'll never be garbage-collected). Dec 10 05:57:53 Which gives way more flexibility. Dec 10 05:57:58 You can name them later. Dec 10 05:58:03 though I'm extremely branch-happy. risky rebase? branch & try it out. Dec 10 05:58:45 Groxx: Haven't you ever accidentally amended a published changeset? :) Dec 10 05:58:46 not named and not gc'd - so your "show all history" is littered with crap you would have deleted? Dec 10 05:59:02 I've almost done it so many times, but Mercurial stopped me ("abort: changeset is public" or whatever). Dec 10 05:59:03 TacticalJoke: no. honestly. first thing I do is branch. Dec 10 05:59:22 and even if you do (my coworkers do by accident occasionally), you get a failure when you push. Dec 10 05:59:28 Groxx: "hg log" shows every single changeset (of every branch) by default. Dec 10 05:59:37 But you can just show the current branch (e.g., "hg log ."). Dec 10 05:59:46 then you just `git reset origin/master && git checkout -b oops` and viola, you have a branch with your changes. Dec 10 06:00:11 Ah, okay. Dec 10 06:00:28 i don't understand the "Haven't you ever accidentally amended a published changeset?" question. with git it's impossible to do so unless you force push, which is just like downgrading Dec 10 06:00:38 and for some reason I'm forgetting - does hg have a "staging area" like git? that is by FAR my favorite feature coming from cvs/svn/etc Dec 10 06:00:51 well. local branches too. Dec 10 06:01:07 but those two alone would make me happy Dec 10 06:01:10 No, it doesn't have a staging area. Dec 10 06:01:35 The staging area seems to be a serious love/hate thing. lol Dec 10 06:01:38 ach. `git add -p` to add just parts of a diff is wonderful in the same way rebasing is, but without the rebasing part. Dec 10 06:02:09 cleanup + bugfix? literally trivial to split it into two commits. Dec 10 06:02:15 MQ is like a staging area but way more powerful. Dec 10 06:02:22 But I think Evolve is simply a better solution for all this. Dec 10 06:02:23 yeah, I do remember mq. Dec 10 06:02:52 I don't like MQ much, though, personally. Dec 10 06:02:55 It's overly complicated. Dec 10 06:02:59 It's basically quilt. Dec 10 06:03:33 mq / quilt had some issues with moving between branches, iirc, because it didn't keep all the change information in between. git doesn't have that problem. Dec 10 06:04:15 (this is ~2-3 year old experience though, it's possible they've fixed that in the meantime) Dec 10 06:04:36 hm. or maybe 3-4. D: Dec 10 06:04:36 Hmm, I've not heard of that issue, as far as I can remember. Dec 10 06:04:59 Is a staging area nicer than just committing, folding, etc.? Dec 10 06:05:22 iirc it was basically that mq/quilt was essentially just a plain diff-patch. with git the "patch" is never divorced from the history, so you can 'rewind' it and move it to a new branch with fewer risks Dec 10 06:06:10 staging: it's nicer because you can work iteratively. Dec 10 06:06:23 I'm not familiar with folding though Dec 10 06:06:31 I think the Git term is 'squash'. Dec 10 06:06:42 It's been a while since I've seriously used Git. :) Dec 10 06:07:05 ah. if you're disciplined enough to make a bajillion commits, literally every time you mentally context-switch, it's no different functionally from a selective squash / rebase. Dec 10 06:07:39 but generally I get coding, and make changes + cleanups that are just based on proximity, and then go deal with committing my changes when it actually builds Dec 10 06:07:41 I'd be curious of Git fans' opinions on this: http://evolution.experimentalworks.net/doc/user-guide.html Dec 10 06:07:57 IMO, it'll push Mercurial so far ahead of Git (but I'm biased :D). Dec 10 06:08:03 TacticalJoke maybe ask in #git Dec 10 06:08:05 I see. Dec 10 06:08:14 g00s: Yeah, I did that once. lol Dec 10 06:08:19 To my surprised, they all loved the idea. Dec 10 06:08:24 Well, a few did. Dec 10 06:08:38 once you add mercurial's plugins: possibly. they get pretty sophisticated. you can technically do pretty much all of it in Git, but it _doesn't happen_, so community-wise it has an advantage there. Dec 10 06:09:41 The issue with Mercurial is that GitHub doesn't support it. :/ Dec 10 06:09:53 and thus git rules the world Dec 10 06:09:56 Ya. Dec 10 06:10:07 does bitbucket? Dec 10 06:10:16 Yeah, Bitbucket supports both. Dec 10 06:10:37 They kinda sold their soul, really. After adding Git support, they made Git the default. Dec 10 06:10:38 well, they're fairly competitive (though not in the community sense), maybe it'll bounce back. Dec 10 06:10:41 People hated them for it. Dec 10 06:10:53 Bitbucket is fantastic for private repos, though. Dec 10 06:10:59 Git or Mercurial ones. Dec 10 06:10:59 definitely Dec 10 06:12:22 fantastic = free Dec 10 06:12:32 as in beer Dec 10 06:13:05 mellow0324: Did you ever figure out the issue, BTW? Dec 10 06:13:17 No Dec 10 06:13:21 I hate you mentally tagged as "Holding an unanswered question". Dec 10 06:13:23 have* Dec 10 06:13:32 Not a Freudian slip. lol Dec 10 06:13:43 I switched to AS, had the same issue Dec 10 06:13:47 Damn. Dec 10 06:14:00 but i tinkered with settings and it went away Dec 10 06:14:01 What are you choosing for minSdkVersion in the wizard? Dec 10 06:14:04 Okay. Dec 10 06:14:29 Min ver was API 16, Target was 21 Dec 10 06:14:44 didn't change anything else Dec 10 06:15:01 If you see it again, I guess I'd suggest looking in /res/values/styles.xml. Dec 10 06:15:16 And /AndroidManifest.xml. Dec 10 06:15:24 that's the thing Dec 10 06:15:33 nothing was in the res folder Dec 10 06:15:37 Ah. Dec 10 06:15:50 like half of the assets weren't generating Dec 10 06:15:55 I guess /AndroidManifest.xml was trying to apply AppTheme or whatever. Dec 10 06:16:02 half might be a hyperbole Dec 10 06:16:22 yes AppTheme was set Dec 10 06:16:33 but i had AppCompat Dec 10 06:17:01 idk... I'm relatively new to this Dec 10 06:17:48 I guess removing the [android:theme="AppTheme"] thing would fix it. Dec 10 06:18:00 @style/AppTheme * Dec 10 06:18:12 i understood lol Dec 10 06:18:40 does that break the "Holo light with Drak bar" setting Dec 10 06:19:13 Hmm. I think it'll just use the default theme in that case. So: yes, I think. Dec 10 06:22:53 Okay. It's not important for now, I'm just trying simple apps anyway Dec 10 06:22:57 Thanks Dec 10 06:23:04 seriously though, does anyone know how to disable spell check on field names. http://i.imgur.com/HTDXTfc.png Dec 10 06:23:07 o/ g'night @all, I'm off for the night Dec 10 06:23:41 surf2b1: I resolve those by maintaining a custom dictionary file (in dropbox, so I don't have to redo it all over) Dec 10 06:23:45 \o Dec 10 07:07:13 This guy also found Eclipse way faster than AS: http://www.reddit.com/r/programming/comments/2oo4iy/android_studio_10_released/cmpar3j Dec 10 07:07:21 Plenty of upvotes for that. Just saying. : Dec 10 07:07:23 :p * Dec 10 07:07:36 Though he hasn't tried AS recently. Dec 10 07:08:27 I rebase my commits a lot Dec 10 07:08:32 I fuck up a lot too Dec 10 07:08:54 I lost one of my branches due to a bad rebase Dec 10 07:09:04 and I couldn't find it in the reflog Dec 10 07:09:07 Mercurial backs everything up when you rebase. :D Dec 10 07:09:37 I've now abandoned support for an old version of a tool because of that Dec 10 07:09:40 Recording is "hg pull ". Then the old changeset is back in the directory. Dec 10 07:09:45 Recovering* Dec 10 07:09:53 repository* Dec 10 07:09:57 God, my brain is dead tonight. Dec 10 07:10:15 i know, and you killed my brain too Dec 10 07:11:26 anyone who finds eclipse faster than idea is a drunken glue sniffer Dec 10 07:16:36 "I just don't get it. Eclipse builds project immediately, Android Studio build takes min. 30 seconds, it's unusable. Am I doing something wrong?" Dec 10 07:16:37 :/ Dec 10 07:16:48 http://www.reddit.com/r/programming/comments/2oo4iy/android_studio_10_released/cmp9hww Dec 10 07:17:08 I was hoping that wasn't still the case (I haven't used Android Studio in two or months). Dec 10 07:17:19 or so * Dec 10 07:18:39 Haha: "Downvote me all you want, I simply prefer Eclipse as an IDE": http://www.reddit.com/r/programming/comments/2oo4iy/android_studio_10_released/cmp47yq Dec 10 07:33:30 when I call invalidate with Rect parameters, does it do the clipping automatically or do I have to check that somehow in onDraw? Dec 10 07:47:35 hey g00s do you remeber how to implement scanLe callback? Dec 10 07:47:44 im not finding the docs very helpful Dec 10 07:51:20 if you complain gradle is slow to build you are deluding yourself, whether or not it is slow i highly doubt any is skilled enough that the woooo 30 seconds it takes is holding your ability to produce up Dec 10 07:53:06 anyone else here that has done BLE scan? need some quick help Dec 10 07:53:21 jareddlc http://www.doubleencore.com/2013/12/bluetooth-smart-for-android/ Dec 10 07:54:10 lasserix 30 seconds per build * hundreds builds per day * team size = productivity loss for sure Dec 10 07:54:12 yep g00s , issue is onLeScan never gets calledf for me Dec 10 08:03:22 g00s: RIght. Dec 10 08:03:25 Right* Dec 10 08:03:36 It's also a psychological thing. If programming isn't fun, it's much more painful. Dec 10 08:05:07 got discharged from the army reserves last night Dec 10 08:06:20 yay, i guess? Dec 10 08:07:03 From /r/showerthoughts: "I should ask my barber where he gets his hair cut, then go there and slowly make my way up the chain until I find THE GREATEST BARBER IN THE WORLD...or perhaps just a bald dude." Dec 10 08:07:09 poosh no longer an android dev ? :P Dec 10 08:07:59 lol Dec 10 08:08:11 no longer serving in the Israeli army reserves Dec 10 08:08:40 poosh when discharged, do you guys keep any arms ? Dec 10 08:08:50 nope Dec 10 08:08:58 I am a pacifist wannabe Dec 10 08:09:03 I don't want anything Dec 10 08:09:12 thats cool Dec 10 08:09:41 well, yes and no Dec 10 08:09:50 middle east is kinda war zone Dec 10 08:10:05 poosh oil has a way of fucking everything up Dec 10 08:10:21 it's not oil here, ot's worse Dec 10 08:10:24 *it's Dec 10 08:10:27 religion Dec 10 08:10:42 poosh question : is your high paying android dude still working with you guys ? Dec 10 08:11:02 lol g00s i think my problem was that there are no BLE devices near me LOLOLOL Dec 10 08:11:11 yeah Dec 10 08:11:25 i thought paired devices would show up on the list but i guess they dont Dec 10 08:11:36 poosh so let me ask, has he said anything about +/- of content providers ... do you guys use a provider, something else, etc Dec 10 08:12:06 we use the contacts content provider Dec 10 08:12:16 what about your own sqlite storage ? Dec 10 08:12:30 we use GreenDao Dec 10 08:12:39 ahh Dec 10 08:12:43 but started thinking about going full native Dec 10 08:12:51 whats that ? Dec 10 08:12:57 it was a noob decision of mine 2 years ago Dec 10 08:13:07 oh heh Dec 10 08:13:37 yeah, that sucked Dec 10 08:14:48 poosh so what do you think you will replace it with ? Dec 10 08:15:07 if we have the time, we'll go with SqliteOpenHelper Dec 10 08:15:09 probably Dec 10 08:15:20 contentProvider is for allowing other apps to use your db Dec 10 08:15:25 and we won't do that Dec 10 08:15:31 sure Dec 10 08:18:25 i think myself and cyril mottier are the last ones that still like that component (providers) Dec 10 08:41:41 hm, looks like dianne hackborn stopped answering questions on android-dev google groups sometime in 2012 Dec 10 08:41:56 i used ot just read her replies to learn Dec 10 08:42:05 (whatever the topic) Dec 10 08:42:49 same goes to Romain Guy Dec 10 08:43:01 but he went to do robots Dec 10 08:46:03 lasserix_: hi Dec 10 08:49:35 hello Dec 10 08:53:07 thepoosh who circumsized you syntactically? Dec 10 08:54:16 romain guy going to robots was the most natural thing in the world :) Dec 10 08:55:07 does romain still do android presentations ? Dec 10 08:55:15 at i/o he did material stuff at least Dec 10 09:06:40 with a share intent can i get info in what the app was opened in? Dec 10 09:07:56 ok that hurt my brain. let me try again. with a share intent, can i get info back on which app was launched? Dec 10 09:09:55 i dont think so. i remember wanting to do something if ACTION_SEND went to twitter (make sure the data was short) Dec 10 09:10:59 blah bummer Dec 10 09:12:19 Guys, what Android version you guys' are supporting as minimum in your apps? Dec 10 09:12:29 Is anyone supporting anything below 4.0 anymore? Dec 10 09:12:41 i do 16 Dec 10 09:12:46 thats a good question Dec 10 09:12:57 i support 2.0 =) Dec 10 09:13:07 api 14 =( Dec 10 09:13:23 I have been trying to get a combination of ActionBar and FragmentStatePagerAdaper work along with ActionBarSherlock and it's been making me pull my hair out Dec 10 09:13:24 the product was sold to provide support for it Dec 10 09:13:51 on top of that, the project has been using Eclipse! Dec 10 09:14:10 SheikhAman: migrate. Dec 10 09:14:12 I used to be of the opinion that I'd support 2.3 unless it comes below 5% of total installs Dec 10 09:14:24 But I think I'll now stop supporting anything below 4.0 Dec 10 09:14:46 and yes, migrate my projects to Studio. May take a full day for each project, but will be smooth in longer run Dec 10 09:16:33 if fragment layouts are defined in seperate xml files, how do i animate transitions between them like the material design examples? Do I just throw all my UI components into one xml then call and use them as needed? Dec 10 09:29:41 How can I insert or replace a row in SQLite if a certain column value exists? I tried insertWithOnConflict(TABLE_NAME, COLUMN_NAME, values, SQLiteDatabase.CONFLICT_REPLACE); but the row is never replaced, always newly inserted. Dec 10 09:31:30 do you have a primary key in your insert statement barq? thats the only way an insert will get a conflict Dec 10 09:32:35 asfdd: Nope, good point. Dec 10 09:32:36 is there a way to override the bottom back button on an android screen? Dec 10 09:32:40 or a unique column i suppose if sqlite supports that Dec 10 09:33:09 So I don't need to specify the second parameter, can just leave it null? Dec 10 09:36:09 Oooooo clap clap clap Dec 10 09:40:38 Please guyz, how can i add J2EE support for android studio Dec 10 09:45:07 hackable: use intellij Dec 10 09:47:05 Thepoosh, i think im already using intellij Dec 10 09:47:16 AS != IntelliJ Dec 10 09:47:19 or i thought android studio was develop on intellij Dec 10 09:47:45 nope Dec 10 09:47:54 it's taken from it but is not a subset of it Dec 10 09:48:24 oh, i've app already developed with android studio, so i want to build a chat forum with it Dec 10 09:48:29 How can I hold all this blood Dec 10 09:48:49 hackable: http://www.reddit.com/r/programming/comments/1eeoqu/android_studio/c9zvt73 Dec 10 09:49:12 thinking on how to solve this, i don't want the app to be separated Dec 10 09:49:41 use jetbrains Dec 10 09:49:53 Unique column as PK works. Dec 10 09:51:06 thepoosh, thanks so much but is like you're not getting me here... Dec 10 09:51:41 already have any application developed using android studio... Dec 10 09:53:12 the link you sent is all about eclipse! Dec 10 09:54:36 hackable: https://plugins.jetbrains.com/?androidstudio Dec 10 09:54:48 these are the accepted plugins for android studio Dec 10 10:00:37 thepoosh, thanks, i'm checking... Dec 10 10:00:44 good luck Dec 10 10:02:35 hey guys Dec 10 10:03:05 in running through an issue where my listviews getChildCount doesnt count for all the visible views when some of them have a small height Dec 10 10:04:04 does anyone have a clue to what may be happening? Dec 10 10:05:36 SuperDude : use Fragment Transactions and apply animation to them? Dec 10 10:18:26 thepoosh: find this --> https://plugins.jetbrains.com/plugin/7505?pr=androidstudio Dec 10 10:18:41 hoping it will serve the purpose ? Dec 10 10:18:57 j2ee support for android studio Dec 10 10:21:18 why Dec 10 10:22:42 need j2ee support for android studio 0.8 Dec 10 10:24:54 what's the best/common way to display an animation on a view. I have a set of frames drawn in PNG. could create a gif or video from them. or any other way that you could recommend? Dec 10 10:29:11 i wish to draw a Drawable over my custom ImageView in onDraw. How can i clip it to a certain width? setBounds scales the image, i just want to chop parts off Dec 10 10:30:19 hackable: just use intellij then Dec 10 10:31:36 want to create chat app on exisiting app and im using android studio Dec 10 10:32:14 pleroma: use XML and create anim in your anims folder Dec 10 10:35:54 hackable: Thanks, (I'm pleroma, btw). Dec 10 10:36:38 hackable: Is it also possible to play a video (with sound synced with animation) without media player HUD (no play/stop/pause buttons). Dec 10 10:37:04 I'd like to embed a video in the view. Dec 10 10:44:19 hackable: the project format is the same Dec 10 11:01:25 is it important to call recycle on bitmap and bitmapregiondecoders when you have finished with them? Dec 10 11:02:17 http://android-developers.blogspot.jp/2014/12/google-play-services-and-dex-method.html Dec 10 11:02:20 finally Dec 10 11:44:51 Great read, gordon. Dec 10 11:49:59 How can I change the debug key? Dec 10 11:52:20 pleroma: you still here? Dec 10 11:55:09 What am I doing wrong? Why does the Galaxy S3/4 get out of memory crashes so much easier than anything else? :'( Dec 10 11:55:55 lots of bloatware? Dec 10 11:56:28 http://www.droidviews.com/list-of-bloatssystem-apps-on-samsung-galaxy-devices-that-can-be-safely-removed/ Dec 10 11:56:46 that is one hell of a list Dec 10 11:57:23 Shouldn't affect the heap size toooo much Dec 10 11:57:32 fuck touchwiz. and fuck samsung. Dec 10 11:57:57 I’d rather use MIUI or EMUI all day than even touch anymore of that overpriced bloatphones. Dec 10 11:58:04 *those Dec 10 11:58:31 Yes, but for some strange reason clients aren't entirely happy with "we won't support samsung" Dec 10 11:59:02 then you need to handle low memory situations more gracefully, what's your app do? Dec 10 12:00:25 Nothing exciting. But the heap size just increases with every bitmap load and doesn't seem to go down nearly as much. Dec 10 12:00:41 how do you use the bitmaps? Dec 10 12:01:01 do you make sure to release them when they are no longer needed? Dec 10 12:06:09 I think so, but it's mostly in Picasso's hands Dec 10 12:09:03 how big the images? Dec 10 12:09:37 So you can use ecclipse to generate an hprof file in wich you can inspect memory allocations (and leaks) with MAT Dec 10 12:10:04 You are not caching the images yourself are you? Dec 10 12:10:09 Yeah I've been doing that. But I'm i) awful ii) it's all the LRU cache and the bitmap byte arrays[] Dec 10 12:10:34 No, just Picasso. The big culprit (I think) is the rotating cross-fading full screen background image Dec 10 12:10:47 you dont need to cache yourself Dec 10 12:10:53 check it out Dec 10 12:10:54 <_genuser_> hey guys Dec 10 12:11:11 Yeah, I'm not caching, it's all Picasso's LRU cache Dec 10 12:11:15 Estel, heap size or heap allocated size? Dec 10 12:11:16 <_genuser_> reading some values on startup, then need to pass them to a different activity. Should I just make it a static var in the first activity? Dec 10 12:11:19 oh Dec 10 12:11:25 Estel, Dalvik usually won't return memory to OS Dec 10 12:11:47 Estel ahh yeah that would probably be it Dec 10 12:11:58 err are they png or jpg? Dec 10 12:12:11 well in any case the phone make look small but the density makes the bitmaps huge Dec 10 12:12:37 Estel: one trick reduce cache size if the phone is s3/s4? Dec 10 12:12:37 They're jpgs. And yeah, the bitmaps do get huge, though I've reduced the scaling a lot Dec 10 12:13:00 genuser probably not Dec 10 12:13:18 _genuser_: if they are primitives just stick them in the intent Dec 10 12:13:19 I'm not sure if it's heap or allocated heap. I guess Heap because it does when trying to go beyond 128MB Dec 10 12:13:52 Estel: does your app primaryl display images? Dec 10 12:14:12 No, they're all background or cms driven images Dec 10 12:14:13 <_genuser_> lasserix_: it's a class. :( Dec 10 12:14:19 Estel: http://stackoverflow.com/questions/23740307/load-large-images-with-picasso-and-custom-transform-object Dec 10 12:14:47 <_genuser_> lasserix_: in the past I have put stuff like ID's in the intent and then let the second activity read the stuff itself. Dec 10 12:15:07 <_genuser_> lasserix_: this one, it's a time consuming read and I have to do it at startup and would rather not do it again in the second activity. Dec 10 12:15:09 _genuser_: http://www.devahead.com/blog/2011/06/extending-the-android-application-class-and-dealing-with-singleton/ Dec 10 12:15:27 <_genuser_> lasserix_: thx let me read. Dec 10 12:19:55 lasserix_: thanks Dec 10 12:21:07 Oh god, the horrible moment where a contractor comes in (for another project) and doesn't know how to check the repository out of source control Dec 10 12:21:30 dun dun dun Dec 10 12:21:34 dont panic Dec 10 12:21:42 just grep grep grep it up Dec 10 12:23:03 google removed com.google.android.gms.location.LocationClient class from last Google play Service o_O Dec 10 12:24:58 Estel: Tried to teach my non-programming friend about version control but it was too late. They didn't git it. Dec 10 12:25:49 Android Studio ftw.. "Failed to complete Gradle execution. Cause:" yay for blank causes. Dec 10 12:26:19 The LocationClient class has been replaced with the new FusedLocationProviderApi and the GeofencingApi WAT Dec 10 12:26:53 VnM: In 0.8.something I got a Internal error: true==true; and had to restart studio. When it started again, Internal error false==false;. Like wtf. Dec 10 12:26:58 Yeah but, was he contracting for much money on tight deadlines? :P Dec 10 12:27:12 VnM: pssh, it has nothing on the half life error: no error (http://forums.anandtech.com/showthread.php?t=641624) Dec 10 12:27:51 lol, thought I'd try out 1.0, I normally use Eclipse, but seems AS is still a pile of garbage, not to mention the time it takes to clean and build it's a lifetime compared to how long it took in Eclipse Dec 10 12:28:25 Estel: oh god, you’ll have fun times working with someone like that :) Dec 10 12:28:42 VnM: I find AS much better than eclipse, since like 0.4 or something like that Dec 10 12:29:04 <_genuser_> lasserix_: so before I add an application extended class and turn the other class into a singleton, is declaring the var a public static in one activity for other activities a really bad idea? Is there a reason it won't work due to lifecycles, etc.? Dec 10 12:29:05 would you suggest to use always the last version of google play services or what? Dec 10 12:31:15 lasserix_: yes I'm still here (pleroma) Dec 10 12:31:29 look at animationdrawable, provides frames Dec 10 12:31:40 frame duration order etc Dec 10 12:31:54 _genuser_: http://stackoverflow.com/questions/11908039/android-static-fields-and-memory-leaks Dec 10 12:32:02 oh lasserix_, I just learnt that the video should be synced with sound, so I asked them to get me videos (mp4). Dec 10 12:32:08 <_genuser_> lasserix_: ah, nice. thanks again. Dec 10 12:32:12 animation the frames manually would be an overkill in that case Dec 10 12:32:17 due to audio synchronization. Dec 10 12:32:21 eh Dec 10 12:32:22 maybe Dec 10 12:32:34 you only have to synchronize critical moments Dec 10 12:32:48 usually Dec 10 12:32:57 the brain tricks you into believing its synched the rest of the time Dec 10 12:33:09 (say if its like a soundtrack av visualization) Dec 10 12:33:25 right, could do that too Dec 10 12:33:33 but if it's like people's lips moving yeah then that might be al ittle tricky Dec 10 12:33:36 but if they provide the videos Dec 10 12:33:40 all I need to do is to play the videos with no visible player UI (play/stop/pause), and overlay a button or two on the video. Dec 10 12:33:45 I think it should be much easier that way Dec 10 12:33:51 oh yeah Dec 10 12:33:58 if the raw source is just video sure Dec 10 12:34:00 ;p Dec 10 12:34:03 right Dec 10 12:35:02 _genuser_: is it a complicated class? Dec 10 12:35:11 eg can you just serialize it or parcel it? Dec 10 12:36:08 <_genuser_> lasserix_: it's a class with Camera.Parameters as members. And few other things I was going to stuff in it. Dec 10 12:36:30 What about Android Studio randomly shutting down, anyone having that with the latest build? Dec 10 12:36:45 <_genuser_> lasserix_: I see statics in general doesn't like a good idea. I guess, I don't mind moving it to a singleton and creating an Application extended class to do the read just once. Dec 10 12:39:35 <_genuser_> lasserix_: basically I'm trying to send teh values to a PreferenceActivity so I can generate ListPreference objects. I think I'll just read the values in again inside PreferenceActivity instead of passing around tons of objects. :) Dec 10 12:47:13 _genuser_: have you thought about using serializable? Dec 10 12:49:33 <_genuser_> bluecup: and serialize it into an intent? Dec 10 12:49:49 yeah, just put serializable into the intent Dec 10 12:49:54 or parcelable if you really want Dec 10 12:52:06 <_genuser_> hmm, trying to check if Camera.Parameters implements serializable or parcelable. Dec 10 12:52:29 _genuser_: you can just pass it to a class that does Dec 10 12:53:01 (use reflection) Dec 10 12:53:11 ohh Dec 10 12:53:13 here you go Dec 10 12:53:14 flatten Dec 10 12:53:16 unflatten Dec 10 12:53:29 derp Dec 10 12:53:42 <_genuser_> hmm, use reflection to flatten/unflatten an object? Dec 10 12:54:03 http://developer.android.com/reference/android/hardware/Camera.Parameters.html#flatten() http://developer.android.com/reference/android/hardware/Camera.Parameters.html#unflatten(java.lang.String) Dec 10 12:54:04 no no Dec 10 12:54:04 <_genuser_> only if code just wrote itself while you sat back and thought it out. Dec 10 12:54:15 i said that only because that class has like 100 getters Dec 10 12:54:25 would be a neat way to handle it with refelction Dec 10 12:54:26 but look Dec 10 12:54:28 http://developer.android.com/reference/android/hardware/Camera.Parameters.html#flatten() http://developer.android.com/reference/android/hardware/Camera.Parameters.html#unflatten(java.lang.String) Dec 10 12:54:29 <_genuser_> nice, I see. Dec 10 12:54:36 serialization is handled for you Dec 10 12:54:44 all you have to do is get that string and pass it Dec 10 12:54:48 and then load it agian Dec 10 12:54:52 <_genuser_> awesome, I can just stuff it into the intent. Dec 10 12:55:29 i do not understand why they don't just teach kids how to google and rtfm in elementary school these days Dec 10 12:55:31 ;p Dec 10 12:55:54 <_genuser_> lasserix_: I do understand your frustration with people asking basic questions here. Dec 10 12:56:25 <_genuser_> I really wanted to hear from a developer who knows. If I google "how to pass an object to an activity" it will tell me. Dec 10 12:56:40 well Dec 10 12:56:41 <_genuser_> but it that a good thing to do. sometimes those things aren't easy to find out until after you've spent time implementing. Dec 10 12:56:45 i kept coming up with answers Dec 10 12:56:52 then i just looked at the api Dec 10 12:56:55 and the answer is the first method Dec 10 12:57:00 (never used the class before btw) Dec 10 12:57:16 and btw im not frustrated but if you take a look at the channel topic http://imgur.com/jacoj Dec 10 12:57:27 i like helping because i learn something too Dec 10 12:57:42 oops used to be rtfm Dec 10 12:58:02 <_genuser_> and I realy appreciate the help. I have written up the whole thing just off of documentation. I did mess up on not reading it this time around. Dec 10 12:58:17 <_genuser_> I guess as a new android dev, I like the idea of hearing from others about do's and don't's. Dec 10 12:58:20 this is anice article http://www.kdgregory.com/index.php?page=java.refobj Dec 10 12:58:48 <_genuser_> heh, my major concern now is that this whole thing is deprecated before I even get this app completed. Dec 10 12:59:33 whats the app if you've not under self imposed nda? Dec 10 13:00:37 <_genuser_> playing with the camera. just writing a simple camera app to snap and store pictures just on my sd card. hopefully mark them "no scan" so media scanner doesn't scan it. Dec 10 13:01:03 ahh cool Dec 10 13:01:05 <_genuser_> and google picasa (or it's replacement) doesn't auto upload it anywhere if some setting is flipped to sync to cloud (by mistake). Dec 10 13:01:18 <_genuser_> more for learning android framework and the mindset. Dec 10 13:01:26 Family Jewel Protector? Dec 10 13:01:49 <_genuser_> lol!! Dec 10 13:01:50 Safe Selfie ? Dec 10 13:02:46 you could call it Glomar Dec 10 13:02:46 <_genuser_> no, camera sounds intimidating. as opposed to doing todo lists. And pushing myself into writing a camera app, flipping to front/back cameras, saving my shared preferences... all that seemed just big enough of a project to teach me useful stuff. Dec 10 13:02:49 https://nsarchive.wordpress.com/2014/02/11/neither-confirm-nor-deny-the-history-of-the-glomar-response-and-the-glomar-explorer/ Dec 10 13:02:59 yeah Dec 10 13:03:02 good intro project Dec 10 13:03:16 <_genuser_> and I've already done a "todo list" project, heh. Dec 10 13:03:31 <_genuser_> got to play with sqlite3, list adapters, etc. Dec 10 13:03:51 what are you working on at the moment lasserix_? Dec 10 13:03:52 <_genuser_> intents, activities. and then I thought it would be either gps related or camera related. Dec 10 13:04:28 Keyboard and lottery app, Dec 10 13:04:53 is that a combined thing? Dec 10 13:04:57 hehe no Dec 10 13:05:12 keyboard, like swift? Dec 10 13:05:12 lottery for a client, keyboard for whatever comes my way out of it Dec 10 13:05:14 <_genuser_> wait so you're writing a lottery app? Dec 10 13:05:15 um Dec 10 13:05:24 <_genuser_> does it help you win the lottery by tracking wins/losses? Dec 10 13:05:30 it was originally designed for smartwatches Dec 10 13:05:43 _genuser_: umm i have no idea how the client intends to use it Dec 10 13:05:51 but it does not do that, tho that's a good idea Dec 10 13:06:31 <_genuser_> I heard of a few systems such as playing poorer neighborhoods, buying in multiples instead of singles from the same bungle, etc. Dec 10 13:06:33 are your chances of winning this lottery dependant on your previous winnings/losses? Dec 10 13:06:49 c03 no dont think so Dec 10 13:06:53 <_genuser_> but I have never really played the lotto. and the scratch offs were years ago and maybe one or two. Dec 10 13:06:54 really i dont understand it Dec 10 13:07:07 i would say more but ... not mine to do so you know? Dec 10 13:08:23 <_genuser_> yeah, but I did have an "app" idea ... but you know how those go. Dec 10 13:08:41 <_genuser_> they require lot of work and tend to be a team thing instead of a single dev thing. Dec 10 13:09:09 you mean for this camera thing you're doing? Dec 10 13:09:32 <_genuser_> oh, not for this. it was a social circle thing. Dec 10 13:09:44 <_genuser_> local circle where you can discuss gossip/rumors. Dec 10 13:10:13 <_genuser_> it's absolutely useless and would attract 13yo girls like flies. So you know it will constant supply of mindless drones, I mean users. Dec 10 13:10:35 <_genuser_> just the kind of crap that sells for billions of dollars. Dec 10 13:11:35 <_genuser_> lol, he's off to start a new project for this app.... Dec 10 13:13:52 no i just realzied i hadn't searched the app i have been paid to make Dec 10 13:13:58 and there are already like 3 of them out there Dec 10 13:14:10 which are more ore less exactly what the spec asked me to do Dec 10 13:14:10 hehe Dec 10 13:14:23 _genuser_: I think I've heard of that before Dec 10 13:14:56 lasserix_: brilliant, then you have a reference app Dec 10 13:15:55 <_genuser_> yeah reference apps are great to use. you can avoid the problems and add a few new features to yours. Dec 10 13:16:15 ah the reference apps kind of blow Dec 10 13:16:23 <_genuser_> c03: you may have heard of that before. It's the same idea being re-used. myspace, facebook, snapchat, whatsapp. Dec 10 13:16:53 err i should say they literally look they were designed by children Dec 10 13:17:09 not that i am a great designer myself, but what's awesome is just the fact the functionality is identical Dec 10 13:17:25 <_genuser_> the thing is the entire society is going down the drain. watching Kim K's a$5 shots. your choice is to make money off the idiocy of this generation of idly sit by. Dec 10 13:18:03 <_genuser_> *or idly sit by. Dec 10 13:18:12 while it appears society is going down the drain, i believe you are underestimating the undercurrent Dec 10 13:19:03 <_genuser_> heh, every generation thinks the new one is going to heck. so might be over reaction. I just meant people are doing dumbs things. if you can write an app and profit off it, go for it. Dec 10 13:20:05 yeah Dec 10 13:20:07 angry birds Dec 10 13:20:17 <_genuser_> dang, they really did good with that one. Dec 10 13:20:26 fucking theme parks and all Dec 10 13:21:01 <_genuser_> yeah, and tons of games every week. And you can get stuck and buy your way out using in app purchases. Dec 10 13:21:15 <_genuser_> plush toys, etc. that's super profitable. Dec 10 13:22:51 http://www.kdgregory.com/index.php?page=java.refobj Dec 10 13:22:56 this is _really_ good to read Dec 10 13:23:54 <_genuser_> heh, let me give it a read. Dec 10 13:25:35 yeah, but Rovio got fucked Dec 10 13:25:38 how can I open a file in android? Dec 10 13:25:40 they hired hundreds of devs Dec 10 13:25:58 to just build addons for simple game that lost it’s hype Dec 10 13:27:21 I am looking for any alternative solution like "https://github.com/markeeftb/FileOpener" Dec 10 13:28:18 mortezajavan: have you tried checking the docs? Dec 10 13:28:43 FileInputStream ftw Dec 10 13:29:00 while (bytes exist) read bytes Dec 10 13:29:27 i know this had been discussed last week, but i don't remember the conclusion: bluetooth in 4.4.2 losing connection Dec 10 13:29:38 bluecup, lasserix_ I dont mean that, I want to force the file to be oppenned using installed aps. Dec 10 13:29:52 ? Dec 10 13:29:54 for example default applications Dec 10 13:29:57 like pdf reader Dec 10 13:30:01 image viewer Dec 10 13:30:04 etc Dec 10 13:30:04 someone in stackoverflow said he solved it by using a keep-alive, as the framework was dropping the connection every 6s Dec 10 13:30:10 use intents and set the mime content Dec 10 13:30:35 intent.setDataAndType(uri, "application/type”); Dec 10 13:30:37 magic Dec 10 13:30:49 and use Intent.ACTION_VIEW flag Dec 10 13:31:27 channel op needs to add the rtfm comic equivalnet to the subject line Dec 10 13:31:35 tanx, bluecup: what you mean "magic" ? Dec 10 13:31:51 i have a problem ive been dealing with all day Dec 10 13:31:54 android magic of using Intent system :) Dec 10 13:32:02 you didn't see but he was waving his hands which actually imparted the knowledge into your brain Dec 10 13:32:24 lasserix_ : psssst, don’t tell them my secrets. now they’ll know about the roofies! Dec 10 13:32:42 go forth and develop! if you code the angel investors will come. Dec 10 13:33:44 <_genuser_> angel investors.... or you could go the route my friend is taking with his app. Dec 10 13:34:00 <_genuser_> he's got coders all working for a percentage ownership of the app. Dec 10 13:34:20 in my getView() of an arrayadapter for a listview I am calling a method that passes the position and the value from the list based on that positon... Dec 10 13:34:33 this is the if statement: if (msgMm(ChatMessage.timeStamp(chatMessageList.get(i).message)) < msgMm(ChatMessage.timeStamp(chatMessageList.get(i - 1).message))) { Dec 10 13:34:40 this is my error message... java.lang.ArrayIndexOutOfBoundsException: length=12; index=-1 Dec 10 13:35:00 lasserix_ : And then, YO hath descended from servers upon the phones. And VC’s made it rain. http://i.imgur.com/8zUJX.gif Dec 10 13:35:13 hahaha Dec 10 13:35:49 <_genuser_> is the yo app still around? Dec 10 13:36:03 MartialLaw: what happens if i=0? :) Dec 10 13:36:11 its a platform now Dec 10 13:36:15 _genuser_ i think it is now used as some kind of a platform Dec 10 13:36:28 like you can subscribe to hackernews Dec 10 13:36:47 and whenever some haskell.js or node-in-go-in-scala-in-haskell is published you get a YO Dec 10 13:36:59 <_genuser_> bluecup: gotta keep track of these things, I guess. so hard to stay up to date on all the latest trends. Dec 10 13:37:08 bluecup: figured it out..stupid problem. i had if (position > 0) and i=0... so i=1 all good Dec 10 13:37:45 bluecup ... ;p Dec 10 13:38:07 _genuser_: yeah I know, here people didn’t even discover snapchat yet Dec 10 13:38:35 i have another major problem though... what I am doing is switching around indexes of an arraylist based on what is being added to it. when i switch the positions around it, it does not update my listview until i scroll through it Dec 10 13:39:13 MartialLaw: adapter.notifyDataSetChanged/invalidated? Dec 10 13:39:21 so if i have an item in position 5 that needs to be moved to position 1 then positions 5-1 will change to whatever is in position 5 until i scroll up and down Dec 10 13:39:34 i do notifydatasetchanged within my adapter Dec 10 13:39:46 <_genuser_> bluecup: I think anyone with a girlfriend younger than 25 has probably heard of snapchat, lol. Dec 10 13:40:10 do it after you change the positions anywhere in code Dec 10 13:40:19 <_genuser_> bluecup: and my friend developing his big android app hadn't heard of it either. but he's married so probably didn't have a girlfriend sending him boob shots Dec 10 13:41:44 _genuser_: oh man, trust me, here in Croatia, viberr and instagram is where it all stopped, snapchat and tinder and stuff like that is unknown Dec 10 13:46:03 <_genuser_> oh, I didn't even nkow about viberr. Dec 10 13:47:02 How can I run the "release" version of my app from android studio so that it is installed on my connected device Dec 10 13:47:13 grad Dec 10 13:49:55 run gradle assembleRelease Dec 10 13:50:09 vedu: or open build variants and select release, and then just run the app Dec 10 13:51:58 bluecup: you mean run the command `gradle assembleRelease` in terminal in studio? Dec 10 13:52:04 yeah Dec 10 13:52:11 ./gradlew Dec 10 13:52:23 but you don’t even have to, just open the gradle window on the sid Dec 10 13:52:24 *side Dec 10 13:52:33 notifyDataSetChanged() doesn't work at all Dec 10 13:52:50 vedu: https://www.dropbox.com/s/fpa53qjuh9f53qz/Screenshot%202014-12-10%2014.52.31.png?dl=0 Dec 10 13:53:25 bluecup: right I got what you meant. i liked the console one also ;-) Dec 10 13:53:51 im using Collections.swap method to swap items from position 5 down to 2. the Listview updates the items once.. mean if say string="5" is in position 5 and i swap it down to position 1... position 5-1 will read "5" instead of the data that is in the list Dec 10 13:54:23 then when i scroll up and down it shows the correct data Dec 10 13:54:32 the listview needs to be "refreshed" or rerendered Dec 10 13:54:50 you could try calling invalidate() on the listView but it should be working with just notify... Dec 10 13:54:59 MartialLaw: listView.invalidateViews(); Dec 10 13:55:02 try that Dec 10 13:55:23 ok Dec 10 13:55:25 1 sec Dec 10 13:55:48 bluecup: I double clicked on assembleRelease but it just buit it and did not install anything on my phone Dec 10 13:56:51 then go to View>Tool windows>Build Variants Dec 10 13:57:02 select release, and run as usually Dec 10 13:57:09 bluecup: still not working Dec 10 13:58:20 i am calling the method to swap the indexes in getView() of my adapter Dec 10 13:58:23 MartialLaw what if you replace the adapter with setAdapter Dec 10 13:59:01 Levite: i don't follow. of course i am using setAdapter on my listview if that's what you mean Dec 10 13:59:21 I mean call setAdapter in place of notifyDatasetChanged Dec 10 14:00:12 yes i figured it out... it was because i was calling the method that swaps them out in getView().. Dec 10 14:00:14 thnx dude Dec 10 14:00:15 s Dec 10 14:03:21 Is there an option in Android Studio that sets xml values like "@string/abcd_string" as default instead of showing the string defined in strings.xml ? Dec 10 14:03:58 huh? Dec 10 14:04:06 I find it highly disturbing it looks like I have hardcoded my strings in layout files Dec 10 14:04:39 Isn't that why it uses a different background colour when it's been preview replaced? Dec 10 14:05:05 yeah, it gets a greyish appearance Dec 10 14:05:16 Yes, but I'm asking if I can change the default to show android:title="@string/action_settings" instead of android:title="Settings" Dec 10 14:05:21 VnM, Editor -> Code Folding -> XML Dec 10 14:05:35 uncheck "Android String References" Dec 10 14:06:39 Thanks Mavrik Dec 10 14:08:04 can I update an app in the App Store that i have deactivated for download? Dec 10 14:08:04 on friday the cloud service my app relies on is probably gonna turn off for a while (yay). i want to update the app for those who have it installed (to inform them) and don't allow other new users to download it Dec 10 14:19:35 fancy42: well, you can try Dec 10 14:30:33 fuck fuck fuck Dec 10 14:30:42 is there any way to bypass undo cap? Dec 10 14:34:12 fuck fuck Dec 10 14:34:52 yes Dec 10 14:35:43 right mouse click -> local history Dec 10 14:36:03 and you will find your changes Dec 10 14:39:54 lollipop, on genymotion, lollipop, on genymotion, *does a dance* Dec 10 14:40:34 diabetes extra Dec 10 14:41:40 mattblang: there was preview before Dec 10 14:41:56 at least on linux Dec 10 14:42:41 lollipoppp, final version on genymotion, lollipoppp, final version on genymotion, *does a dance* Dec 10 14:42:44 doesn't have same ring to it Dec 10 14:47:22 no they are gone Dec 10 14:48:28 oh phew Dec 10 14:48:29 thanks Dec 10 14:51:05 ok~ Dec 10 14:53:51 can someone here try running the "touch" command in adb with the -t option. Mine keeps returning 255 Dec 10 14:54:27 touch -t 19990101.050505 foo Dec 10 14:54:50 that returns 255 for me with or without the optionial hour/minute/second Dec 10 14:55:14 adb touch -t? Dec 10 14:55:57 255 as well Dec 10 14:57:05 tricknology: this is annoying. I'm restoring some pictures I backed up and I want their modification times on the filesystem to match the timestamp on the filename Dec 10 14:57:14 ... so that they'll show up in chronological order in different galleries Dec 10 14:57:27 haha Dec 10 14:57:28 well Dec 10 14:57:35 that data is in the exif Dec 10 14:57:54 I mean from what I’ve seen Dec 10 14:58:01 tricknology: yeah... but some galleries use the actual filesystem time. Like the old Google Gallery for example Dec 10 14:58:11 in TIFF files there is a tag, 010E that contains date and time Dec 10 14:58:13 just because the data is there doesn't mean they use it ;-) Dec 10 14:58:16 ah i see Dec 10 14:58:32 It would take a bit to open every image and get the tiemstamp Dec 10 14:59:06 tricknology: I'm just using a regex on my computer to generate a bunch of touch commands that I can send over adb Dec 10 14:59:45 just getting it from the filename Dec 10 15:00:39 yo Dec 10 15:00:43 http://en.wikipedia.org/wiki/Touch_%28Unix%29 Dec 10 15:02:47 FunkyElf: The creation date of links are unchanged. For example, on the following system, the date is the 20th Feb 2012, but a link was created on 25th Jan 2012. Despite touching the link, the date of this remains at 22nd Jan 2012 - it not changed to the 20th Feb 2012. Dec 10 15:03:57 Viewholder supposed to be static or non static inner class? Dec 10 15:04:06 tricknology: these aren't symlinks, they're actual files Dec 10 15:04:24 oh. Dec 10 15:04:47 does someone know how to change width of the "up" button in the actionbar? Dec 10 15:08:27 lasserix: idk I just usually don’t put it static, sometimes it is useful to have it, but performance wise i don’t think ther eis much diff Dec 10 15:09:18 i thought ir ead somewhere you dont want it to be static, that was part of the whole point Dec 10 15:10:38 yo when I use a customview in AS in my XML it NEVER shows me the layout preview..it's just a blank white screen. what's the deal-i-o? Dec 10 15:10:45 it's rather annoying Dec 10 15:11:02 nah, many examples show it static Dec 10 15:11:20 MartialLaw: most of the times you just have to build first Dec 10 15:11:38 I see it when I build (unless I fucked up somewhere) Dec 10 15:11:41 (which I do a lot) Dec 10 15:11:47 (so I don’t see it a lot) Dec 10 15:11:50 (but then I fix it) Dec 10 15:11:54 (at least I think so) Dec 10 15:12:17 what? Dec 10 15:12:57 just try to build the project and then check if it is showing, it usually does :) Dec 10 15:13:10 I’m just talking to myself because this MapView is driving me crazy Dec 10 15:15:18 awseome. awesome to tmax. Dec 10 15:15:44 my phone a fashion killa, he be busy scanning tags. Dec 10 15:26:13 So, kind of a big and loaded question here. Android. Testing. I don't do it. I know I should. If I just had two activities and a button on ActivityA that took me to Activity B. What kind of test would I even write for that? Do I test the classes themselves... or do I run an emulator and try to click the button programatically? I know I probably won't get a clcear answer. I'm just trying to see what is industry standard for testin Dec 10 15:27:06 eghdk: industry standard for testing :D haha Dec 10 15:27:12 its called not testing Dec 10 15:28:28 badass website tool http://webcolourdata.com/profile/105897 Dec 10 15:28:38 =( Dec 10 15:28:57 eghdk the automated unit testing runs everything after you click run Dec 10 15:28:57 eghdk: You can use robolectric, most people use it for testing stuff like that Dec 10 15:29:18 you'd test for stuff like lets say you also parcelled a class to send from A to B via intent activity Dec 10 15:29:26 assertThat(mActivity, new StartedMatcher(ActivityB.class)); for example Dec 10 15:29:30 you'd test that it marshelled correctly Dec 10 15:29:41 we usually test our presenters with mockito Dec 10 15:29:45 I've head of some things from square but I think I've heard JakeWharton not like robolectric? I think. And if he doesn't like it... then.. hahaha Dec 10 15:29:53 mock an API and then test what did the presenter send to the view Dec 10 15:30:05 there is also a cmd line tool called JMonkey that will randomly perform clicks (and stuff like that) at some rate you set to do robustness testing Dec 10 15:30:18 bluecup: "assertThat(mActivity, new StartedMatcher(ActivityB.class)); for example" ? Dec 10 15:30:44 lasserix: Yeah I've used monkeyrunner or monkey before. whichever one does the random clicks Dec 10 15:30:47 bluecup: mockito is like roboelectric? Dec 10 15:30:49 eghdk: that is how you test with roboelectric that clicking a button started activity b Dec 10 15:31:10 bluecup: Oh. Do I write that in my actual activity class? Dec 10 15:31:39 bluecup: Oh. So robolectric has it's own api for certain things it CAN test? Dec 10 15:31:48 i have a websocket that i need opened for the entirety of the application life and when i opened a certain fragment the websocket will recieve messages and alter the view.. how can i keep this socket open? Dec 10 15:32:08 lasserix: not really, mockito helps you build mock objects and then checks if methods were run on them Dec 10 15:32:11 MartialLaw: put it in a service Dec 10 15:32:17 use a background thread Dec 10 15:32:24 k thats what i thought... but can i change the UI from that? Dec 10 15:32:26 pass the thread a handler that was created on the mainthread to post Dec 10 15:32:32 ok cool Dec 10 15:32:38 runnables to touch ui Dec 10 15:32:39 eghdk: nono, check out a robolectric testing tutorial, you’ll see :) Dec 10 15:33:29 okay. so bluecup I will try robolectric. Dec 10 15:33:37 anything else I should really look into? Dec 10 15:33:40 mockito? Dec 10 15:33:43 eghdk: yeah, mockito Dec 10 15:33:59 I'm fine learning something new... I just don't want to start learning something thats not right. Dec 10 15:34:20 Is there any kind of testing that i should stay AWAY from? Dec 10 15:34:35 I've heard of junit. I don't know what it is though. Dec 10 15:37:43 Also, bluecup I'm a little worried by what JakeWharton said about Robolectric "The first-party Robolectric plugin is super, super, SUPER gross." What is the first party plugin... should I be using a third party plugin or something? Dec 10 15:42:15 eghdk: he’s talking about this https://github.com/robolectric/robolectric-gradle-plugin Dec 10 15:42:21 let’s summon him Dec 10 15:42:24 JakeWharton: Dec 10 15:42:39 JakeWharton: opinion? Dec 10 15:44:31 So bluecup do I use that plugin or not? I'm guessing thats the first party one so I should use something else? Dec 10 15:45:13 And yeah JakeWharton said about a month ago on reddit that he's writing a blog post about testing. I would feakin love to see it now. But I shall wait... unless he forgot about it. lol Dec 10 15:48:22 idk I’m not really sure what he meant since I’m not using robolectric anymore, I’m on mockito right now, but he knows much more than I do Dec 10 15:48:25 much much more Dec 10 15:48:36 I know there’s also a video tutorial coming up soon from another dev company Dec 10 15:59:44 anyone know how to use app compat and actionbaractivity but hide the actionbar via xml? Dec 10 16:00:28 nm Dec 10 16:01:14 does Otto differentiate when using Java generics? Dec 10 16:02:08 mattblang: no, because of type erasure Dec 10 16:06:07 guys , do you all know some good discuss about hybrid/html5/native apps? Dec 10 16:08:23 nettoweb probably #phonegap Dec 10 16:08:28 jaynewstrom Replace all type parameters in generic types with their bounds or Object if the type parameters are unbounded. The produced bytecode, therefore, contains only ordinary classes, interfaces, and methods. Dec 10 16:08:50 jaynewstrom so really every event with a generic is just Event then right? Dec 10 16:09:00 (unless I bounded it with an extend) Dec 10 16:09:01 mattblang you beleave that hybrid will be as fast as native app? Dec 10 16:09:21 nettoweb no Dec 10 16:09:31 http://2.bp.blogspot.com/-E2_XUQHMBIw/VIg_1gYrYJI/AAAAAAAAHBA/bNnOXJLEdqA/s1600/pfO2Kbj.jpg Dec 10 16:09:34 :D Dec 10 16:09:49 nettoweb http://techcrunch.com/2012/09/11/mark-zuckerberg-our-biggest-mistake-with-mobile-was-betting-too-much-on-html5/ Dec 10 16:10:07 nettoweb but the hybrid approach is still decent if you don't have the resources to do native dev Dec 10 16:10:31 mattblang Im thinking about learn Java to build android app but Im already a web developer, so for me it's very convenient to build in open technologies. Dec 10 16:10:42 But seems that I must learn Java Dec 10 16:11:14 nettoweb are you trying to build an app for someone or an idea, or just wanting to do it in general? Dec 10 16:11:16 mattblang yes, I was looking for something more recent, because this is growing very fast. Dec 10 16:11:17 java is an open technology Dec 10 16:11:24 bluecup: So start with Robo or mockito? Dec 10 16:11:41 mattblang first for me, my ideas... Dec 10 16:11:59 I programming a little bit in ruby, not Java Dec 10 16:12:19 but I'd like to create good app, so maybe I have to learn Java Dec 10 16:12:47 nettoweb it is all about compromise. phonegap is an acceptable solution, but just know you will be sacrificing some quality. Dec 10 16:12:52 start with cordova Dec 10 16:13:01 well, if you're completely new to java Dec 10 16:13:07 you're gonna create garbage anyway Dec 10 16:13:17 even java pros write garbage... Dec 10 16:13:31 might as well try cordova first Dec 10 16:13:35 nettoweb, pfn yeah cordova. I think it was called phonegap at some point. started with Adobe then moved to Apache Dec 10 16:13:44 that's right Dec 10 16:13:59 mattblang the problem is that I have already create very simple app (html5) and try in android and was very slow even with nothing heavy Dec 10 16:14:10 html5 sucks on mobile Dec 10 16:14:57 pfn ;/ Dec 10 16:15:04 hehhe Dec 10 16:15:11 but it's the truth Dec 10 16:15:17 unfortunately Dec 10 16:15:31 nettoweb very unfortunately Dec 10 16:16:10 nettoweb not sure if Cordova would help any with performance Dec 10 16:16:22 Is there a built in animation to make the toolbar expand in height? Dec 10 16:16:43 lasserix, I've been wondering that Dec 10 16:16:52 I really need to really learn java well to create not so advanced apps? or I can built some good things with Android Studio? Im worried about learn curve of Java Dec 10 16:17:02 i mean i can just do it with a propertyanimator Dec 10 16:17:29 nettoweb what languages have you used before Dec 10 16:18:06 Im a front-end developer so (html, js, css) and I used t use Ruby on rails for web application recently Dec 10 16:19:39 nettoweb you will need to hit some Java lessons, and probably some object oriented programming lessons then Dec 10 16:20:19 mattblang ok Dec 10 16:20:24 mattblang tahnk you Dec 10 16:20:36 since upgrading to android studio 1.0 it seems we've hit the dex limit during the switch for some reason. (without actually changing anything in our app, except updating the gradle files) Dec 10 16:21:21 we did use exclude support library, but apperently that's no longer supported, so we're using transitive = true now Dec 10 16:21:49 jumboMode = true doesn't really seem to increase the dex limit either Dec 10 16:22:00 jumbo mode isn't for dex limit Dec 10 16:22:02 it's for string tables Dec 10 16:22:29 ah... well Dec 10 16:22:45 android studio wouldn't change why your app hit the dex limit Dec 10 16:22:45 I wasn't really able to look up a definition for it, but even the error message mentioned it Dec 10 16:22:46 I opened Andorid Studio to get a clue about android dev... but seems I cant do aalmost anythigng without hack the code Dec 10 16:22:49 you probably updated libraries Dec 10 16:22:57 you must write code Dec 10 16:23:02 there is no drag and drop development Dec 10 16:23:36 (there probably is) Dec 10 16:25:00 pfn exactly Dec 10 16:25:01 Syzygy__ : probably updated play services or something? Dec 10 16:25:15 pfn that's whats I discovered hehe Dec 10 16:25:17 possibly Dec 10 16:25:19 pfn, use toolbar methos to set action icons? Dec 10 16:25:27 and how to inflate menu with appcompat toolbar? Dec 10 16:25:48 it's automatic, if it's set as your action bar Dec 10 16:25:58 otherwise there are methods on toolbar Dec 10 16:26:08 ahh ok Dec 10 16:26:19 and then it uses getSupportActionBar to set home as up enabled Dec 10 16:26:24 but then also there is toolbar object Dec 10 16:26:32 which do i use or does it not matter if set as action bar? Dec 10 16:26:41 nettoweb yeah, your going to need some understanding of object oriented programming and static typing if you are coming from a JS / Ruby background. Dec 10 16:27:02 nettoweb go do some beginner Java tutorials before even loading Android Studio up Dec 10 16:28:13 Syzygy__: just play services + flurry get at around 26-27k methods, so I’d check one of those Dec 10 16:28:15 mattblang exatcly... can you suggest some good resource to learn? I was thinking about android docs but maybe I need to know a little about Java first Dec 10 16:28:47 bluecup, yeah, it's very likely that, we only updated a single library in the process Dec 10 16:29:18 nettoweb definitely put Android out of your mind, and just make your first goal to get an understanding of Java, particularly, like I mentioned, OOP principles like inheritence, and differences between statically typed languages and dynamically typed languages Dec 10 16:29:29 nettoweb #java can probably give you some good starting places for that Dec 10 16:30:04 usually #java only gives good starting points of how to be an elitist jerk though Dec 10 16:30:13 mattblang thank you again Dec 10 16:30:14 Syzygy__ dude, I was just about to say that Dec 10 16:30:21 :> Dec 10 16:30:23 Syzygy__ they are friggin aholes everytime I go there Dec 10 16:30:31 nettoweb: here is an article that was recently on reddit https://www.infinum.co/the-capsized-eight/articles/becoming-an-android-developer Dec 10 16:30:36 Remember that play services has been split up into multiple modules, you don't have to include everything Dec 10 16:30:47 "If set, the text view will include its current complete text inside of its frozen icicle" Dec 10 16:31:16 i don't even want to google that Dec 10 16:31:21 nettoweb yw! good luck! Dec 10 16:31:49 is there a set of ?appear for title bar/action bar title height? Dec 10 16:32:03 is there a way to get google maps support without the play library? Dec 10 16:32:15 no Dec 10 16:32:54 well, kind of sucks that half my dex count is swallowed up just for me being able to use maps Dec 10 16:32:59 nm Dec 10 16:33:11 lasserix: ="?attr/actionBarSize Dec 10 16:33:18 *="?attr/actionBarSize” Dec 10 16:33:22 Syzygy__: http://android-developers.blogspot.dk/2014/12/google-play-services-and-dex-method.html Dec 10 16:33:23 that's the height Dec 10 16:33:25 You need to keep up Dec 10 16:33:26 i mean the title text Dec 10 16:33:39 how to set height of title text in action bar? Dec 10 16:34:08 oooh man oh man, you can’t access the title as a field, you need to use reflection Dec 10 16:34:09 SimonVT, I do need to keep up indeed. thanks Dec 10 16:34:26 blue you are fucking kidding me right? Dec 10 16:34:27 Syzygy__ how much are you doing with maps? I recently removed our embedded map and just launch an intent with geo:lat,lon Dec 10 16:34:39 basically nothing Dec 10 16:34:45 lasserix: http://pastebin.com/xpTAgVHR Dec 10 16:34:59 oh ffs Dec 10 16:35:16 just realised that this project seems to have an ongoing service that doesn't die correctly :( Dec 10 16:35:25 and they expect us to use the app compat library? fuck! Dec 10 16:35:30 well, if you create it as a custom view, just put a textview inside, but if you use it as a normal actionbar, you’re fucked Dec 10 16:35:48 well i created everything as a custom view because what the hell its easy enough to emulate now Dec 10 16:35:48 lasserix: watch your language Dec 10 16:35:57 Syzygy__ yeah, so two things. like SimonVT mentioned, they split up Play services. Jake did a big blog post about how stupid it was to be one big dependency. honestly though, I just stopped maintaining the Map code myself and just launch an Intent for Google Maps, or whatever map app the user has installed Dec 10 16:36:06 you can use the then Dec 10 16:37:37 ah Dec 10 16:37:38 thanks Dec 10 16:38:04 blue does that method ever throw those exceptions? it works, thank you. Dec 10 16:38:20 mattblang, with the current functionality i guess I can't just launch an intent for a map app Dec 10 16:38:48 lasserix: to me it does if I’m dumb when I forget to tell proguard to keep toolbar Dec 10 16:39:41 ahh wont be using proguard for this, thanks for that Dec 10 16:39:54 but the splitting up should really help me get going Dec 10 16:40:23 it is really incomphrensible you can't change the textsize or the appearance at all in xml Dec 10 16:41:29 Wish I had the time to build a color matcher where you could throw a color scheme at the google material pallets and it's spit out closest (relational) matches Dec 10 16:45:33 you mean something like http://paletton.com/ just as a lib? that would be cool Dec 10 16:45:44 Hello, I have a text edit, I haven't specified any color and it shows with a black background, white font, the cursor is light blue and it has a light blue border, if I include android:background="#FFFFFF" and android:textColor="#000000" (to switch the background/text color) I lose the border :( why? Dec 10 16:47:20 bluecup: can you set the title text size by applying via a style? Dec 10 16:47:25 bluecup: yeah Dec 10 16:47:53 i have some colors i extracted from a webpage that the app is "based" on (not the idea but from which the app is born) so it'd be nice to just to mix Dec 10 16:48:05 lasserix: I’m not sure, since I mostly just used it to set the typeface Dec 10 16:51:47 is there a way to tell a textview to match parent, but don't shrink below your content's size? Dec 10 16:53:26 something like maxLines="1", but enforcing a min-width as well Dec 10 16:54:13 minHeight? Dec 10 16:54:27 well, more concerned with width Dec 10 16:54:36 minWidth="content" Dec 10 16:54:39 something along those lines Dec 10 16:57:28 onPrepareOptionsMenu is used if I wanted to alter the action menu items? Dec 10 16:58:49 lasserix its for modifying the menus content before its shown Dec 10 16:58:55 cool Dec 10 16:58:57 its called every time the user opens the menu Dec 10 16:59:27 or you mean when invalidateOptionsMenu is called? Dec 10 16:59:39 what's the menu that a user opens? the actionbar overflow? Dec 10 17:01:14 Anyone know if using an image as a background for a textview disables the textshadow from working? Dec 10 17:01:46 I believe it doesn't Dec 10 17:01:47 are the new overflow and nav drawer icons anywhere? I want to use a bigger one than the default Dec 10 17:02:00 mattblang: sorry, had to leave for a bit. did you get everything figured out? Dec 10 17:02:04 yeah the overflow Dec 10 17:02:25 bluecup yeah, looks like it is more vert on the github material site, cool Dec 10 17:02:59 bluecup looks like the menu on the github package is skinnier though Dec 10 17:03:29 jaynewstrom I did! Just wrapping them all, thanks for the reference to Type erasure. So in bytecode they all just look like Response due to the type erasure right? Dec 10 17:04:37 mattblang i was looking for them too. couldnt find them anywhere in the library as png or xml.. Dec 10 17:04:47 Yeah. seems like you got it figured out. but you basically need an object type for every otto event type Dec 10 17:05:25 jaynewstrom yeah, sweet. had originally not done that thinking my parameterized Response model would be enough. good to know about type erasure, thanks! Dec 10 17:05:44 glad i could help Dec 10 17:05:46 jaynewstrom in the next job interview I have they are going to ask, can you tell us what type erasure is, and I'm going to be like, why yes I can Dec 10 17:05:59 haha Dec 10 17:06:21 danijoo the overflow looks like more vert on the material icon package http://google.github.io/material-design-icons/ Dec 10 17:06:45 does AS have anything for automatically setting up exception catches? like eclipse did? Dec 10 17:06:49 what's the default background attribute for a EditText? Dec 10 17:06:54 (TextEdit) Dec 10 17:07:00 alt + enter -> surround with try catch Dec 10 17:07:02 danijoo the nav drawer icon it is using seems fatter in the bars though than the menu icon there, interesting Dec 10 17:07:47 bluecup, thanks Dec 10 17:08:54 fun fact: play-services-maps:6.5.87 is broken Dec 10 17:09:17 Syzygy__ bleh.. is there a google code ticket? Dec 10 17:09:24 there is Dec 10 17:09:34 Syzygy__ shoot it to me if you can Dec 10 17:09:39 https://code.google.com/p/android/issues/detail?id=82195 Dec 10 17:09:55 here some hacky workarounds: Dec 10 17:09:56 http://stackoverflow.com/questions/27377853/nosuchfielderror-no-static-field-mapattrs-of-type-when-using-mapfragment-with-p Dec 10 17:11:21 can all of those icons morph into each other? Dec 10 17:11:44 Syzygy__ man that is frustrating. Just had to do a hacky workaround for the SwipeRefresh. https://code.google.com/p/android/issues/detail?id=77712 Dec 10 17:12:01 Syzygy__ so you are sure you can't offload to a Map app? haha Dec 10 17:12:10 Syzygy__ which icons? Dec 10 17:12:13 HackyWorkaround 5.0 Lollipop Dec 10 17:12:17 LOL Dec 10 17:12:30 those on the github repo you just linked Dec 10 17:12:35 http://google.github.io/material-design-icons/ Dec 10 17:12:45 the repo has renders of them all Dec 10 17:13:02 Syzygy__ https://github.com/google/material-design-icons Dec 10 17:13:59 wanting to use larger icons for actions, so going to try and replace the overflow and nav drawer in Theme to follow suit Dec 10 17:14:33 just wondering if they can morph into each other Dec 10 17:14:40 what do you mean by morph Dec 10 17:15:16 change shape into Dec 10 17:16:07 http://www.google.com/design/spec/animation/delightful-details.html Dec 10 17:16:10 I mean this Dec 10 17:16:40 so sad they didn't add a drop shadow to the toolbar for compat just to simulate Dec 10 17:16:57 Can somebody help me with this issue I am having with Android studio? (java.lang.ClassNotFoundException: Didn't find class) I have accessed 1000 stack overflow answers I can't figure it out Dec 10 17:17:20 Syzygy__ Got ya. That is an animation right? So yeah Dec 10 17:17:25 which class? Dec 10 17:17:48 It's my default class, and splash screen Dec 10 17:18:04 It's the only class I have on the project Dec 10 17:18:57 you sure you are spelling it correctly, package name and all? Dec 10 17:19:26 my gradle deamon has just fallen into a gradle hole Dec 10 17:19:31 <_Auron_> anyone in here use HockeyApp? Dec 10 17:20:43 Yes, one of the things is when I imported as non-android studio project and it complained that it couldn't find the AndroidManifest file, so I copied the manifest I had on the old project Dec 10 17:20:59 is it just one class? Dec 10 17:21:10 Can I remove the AndroidManifest and let the android studio create a new one? Dec 10 17:21:12 try cleaning the project Dec 10 17:21:42 if that doesn't work you can just copy the contents of the class to notepad, delete the class, create a new class of the same name and paste it back in (make sure package space name is correct) Dec 10 17:22:00 dunno that AS will auto gen you a new manifest less you make a new project Dec 10 17:22:03 I did, I remove all other classes from my project, removed them from Manifest as well, cleaned the project, restarted android studio Dec 10 17:22:29 danijoo yeah, sweet. using the larger render and this SO question changed it http://stackoverflow.com/a/9733538/1747491 Dec 10 17:23:16 lasserix, ok, let me try that Dec 10 17:24:10 bluecup: can you see primary and accent color (one of the blues, one of the golds) from here? http://webcolourdata.com/profile/105897 Dec 10 17:24:47 yeah, I can Dec 10 17:25:27 which would you pick? Dec 10 17:25:32 (under breakdown) Dec 10 17:25:50 so there's not a way to force a textview to have a width that will not truncate its text or force it onto a new line, aside from wrap_content? Dec 10 17:25:57 sorry heh that was an ambigious question Dec 10 17:26:10 shekibobo: if you google someone made a library for doing that Dec 10 17:26:31 lasserix: I’d pick #227BC2 and #F9B030 Dec 10 17:26:52 okay cool that's a confirmation :) Dec 10 17:26:53 that blue is like the middle of all the blues imho Dec 10 17:26:55 thanks Dec 10 17:26:58 np :) Dec 10 17:27:08 so close! Dec 10 17:27:27 that’s the lottery client? Dec 10 17:27:36 yea Dec 10 17:27:38 lasserix: any idea what it's called? it's a difficult search to find exactly what I'm looking for Dec 10 17:27:47 is there somewhere were I can see what @drawable/edit_text is? Dec 10 17:28:04 very very close, just got to import the FAB icon library, make one more icon and add something to a listview Dec 10 17:28:56 lasserix: and collect the money and spend it on strippers :D Dec 10 17:29:01 hehe Dec 10 17:29:13 the client is a woman, i have yet to meet her but she sounds like she could be cute Dec 10 17:30:44 lasserix: if she owns the lottery, get me her number :D Dec 10 17:30:52 im very curious to understand her logic behind this app Dec 10 17:30:54 heh Dec 10 17:31:33 Anyone here use crashlytics? Dec 10 17:31:42 How long did it take to get an invite or something? Dec 10 17:31:44 what will the app do? Dec 10 17:31:52 or should I be registering for "Fabric" or whatever? Dec 10 17:31:57 eghdk: I use it, but idk we have a company account Dec 10 17:32:09 Where can I set up a company account? Dec 10 17:32:42 I don’t know, haven’t been here when they set it up :/ Dec 10 17:34:20 I have a linear layout, and inside i have a button and a text view. Id like the button to take up the whole width of the layout, but if the text is too short it cuts off my button. I want the minimum size to be the button width (text is defined at runtime) and default width to be match_parent Dec 10 17:34:51 bluecup: essentially: https://play.google.com/store/apps/details?id=com.bigdogapk.pick3lotterywheeler&hl=en Dec 10 17:36:23 haha ok i don’t get it also Dec 10 17:37:06 there is like a belief it is not random i guess Dec 10 17:42:49 Hello everyone! In android documentation there's info about PendingIntent.getBroadcast, it says one should pass "context" in which intent will be executed. If I want to fire it straight away, I just use current activity or something alike. But I want to schedule it via alarm manager, so there will be no current activity when intent will be dispatched. Is it valid and safe to pass null? Dec 10 17:43:59 himiku: broadcast receiver recevies a context Dec 10 17:46:18 squirrel: so it's just passed through system layer? I mean, android system itself will not use the context I use in this method call? because if that's the case, null seems the most viable option (I don't use context parameter in receiver anyway) Dec 10 17:48:02 himiku: not sure i understand the qustion, but alarms run essentially “inside” your app, so they get the context (as well as access to static objects) Dec 10 17:49:29 Anyone know if its possible to install crashlytics only for debug{} and not release{} builds? Dec 10 17:50:22 eghdk: yes, in your Application file: if(BuildConfig.DEBUG) { Dec 10 17:50:23 Crashlytics.start(this); Dec 10 17:50:23 } Dec 10 17:50:59 squirrel: ok, I'll try to explain what i mean. my app is working and it creates an alarm. when creating alarm i should pass context; let's say i pass current instance of my application. then application dies (is closed / finishes / crashes / whatever). then my alarm is fired, but context i passed when creating this alarm is long gone. i can't guarantee that at the time alarm fires the context is still alive. Dec 10 17:51:00 Suhweet! Thanks bluecup you have been very helpful. I appreciate it! Saving me a lot of time! Dec 10 17:51:30 np man Dec 10 17:51:33 oh. one more things. so it won't be built into the app right on release? I mean the crashlytics library? Dec 10 17:51:51 oh it will be built but it won’t be activated Dec 10 17:51:53 himiku: if the context is gone, it's created again and your alarm will receive a new and updated context Dec 10 17:52:03 for that I think you should set debugCompile in gradle Dec 10 17:53:15 ? Dec 10 17:53:34 himiku: if your app's serice was killed because OOM an alarm will trigger that service's restart ahead of system, in fact Dec 10 17:53:35 eghdk: debugCompile 'com.crashlytics.android:crashlytics:1.+' Dec 10 17:54:08 squirrel: created again? well, then i'll just use current activity as always. i wasn't aware that this subsystem is so clever, that it will recreate lost objects. thank you very much! Dec 10 17:54:59 bluecup: Under dependencies? Dec 10 17:55:03 yea Dec 10 17:55:52 himiku: you can test all that by killing your app in AS's DDMS Dec 10 17:55:59 Thanks Dec 10 17:59:24 bluecup: It only requests for Crashlytics.start() in one of my activities? Or do I put it in every activity? Dec 10 18:00:05 you can put it in application class to monitor all of the activities, or you can put it in a specific activity Dec 10 18:00:14 Actually I just saw that you said to put it in my application class... but the crashlytics instructions say an activity Dec 10 18:00:16 Oh okay! Dec 10 18:00:20 Cool. Thanks! Dec 10 18:04:30 Okay. Last last thing bluecup . I wanted to sign up for crashlytics but it seems like I got roped into "Fabric" should I still try to do Crashlytics.start() or Fabric.with(this, new Crashlytics()); like it says in the instructions? I know you probably don't know. I just want to make sure I don't include this whole Fabric shebang if all I need is crashlytics. Dec 10 18:06:00 eghdk: I never used fabric :/ Dec 10 18:06:19 but if you got crashlytics as a dependency, you can just do crashlytics.start Dec 10 18:10:18 good people of Androidevia, see ya, I’m out Dec 10 18:10:30 any idea how i can get these tabs to be full width? http://imgur.com/oxly63w my code is here, but its basically just pulled directly from the sample source https://github.com/drinfernoo/Cuber Dec 10 18:31:49 updated support library Dec 10 18:33:16 does someone know how to change width of the "up" button in the actionbar? I can't find a way to get a reference to this object, findViewById(android.R.id.home) returns null Dec 10 18:37:58 Hey. Is it possible to pass data to a widget from an activity? Dec 10 18:41:03 aceus broadcast, most likely Dec 10 18:46:18 Hm Dec 10 18:46:50 hi Dec 10 18:50:39 pfn also updated android sdk build-tools Dec 10 18:53:57 sweet, geny support lollipop Dec 10 18:55:21 When is onreceive() triggered? Dec 10 18:55:26 in the widget Dec 10 19:02:44 aceus: http://developer.android.com/reference/android/content/BroadcastReceiver.html#onReceive(android.content.Context, android.content.Intent) Dec 10 19:02:53 "This method is called when the BroadcastReceiver is receiving an Intent broadcast." Dec 10 19:10:19 anyone know why Android Studio might frequently "forget" how to resolve static imports from assertj-android? Dec 10 19:10:41 syncing will usually remind it Dec 10 19:12:01 no idea, but even at 1.0 the ide occasionally gets into a state where it fails to resolve all my imports Dec 10 19:12:36 OMG 1.0 finally!!! Dec 10 19:13:44 shekibobo: It's the gradle plugin. Once Andriod Studio gets the IDEA 14.0.2 fix, that'll improve greatly. Dec 10 19:14:04 cool, good at least to have a reason Dec 10 19:15:53 the launcher icon resource should be 48px x 48px? Dec 10 19:20:31 ChrisUK: you seriously want an answer to that Dec 10 19:20:57 Quick question: Dec 10 19:21:10 after calling ListView.scrollBy, the listview jumps after I touch it to scroll Dec 10 19:21:19 as if it was in its previous position Dec 10 19:33:30 maybe not so quick Dec 10 19:34:29 ChrisUK take this: http://romannurik.github.io/AndroidAssetStudio/icons-launcher.html#foreground.space.trim=1&foreground.space.pad=0&foreColor=33b5e5%2C0&crop=0&backgroundShape=bevel&backColor=ffffff%2C100 Dec 10 19:37:30 i use a bash script that produces all icons from inscape's svg files Dec 10 19:37:36 nifty Dec 10 19:42:32 hey so i have a textview with a background. i need the top of it and bottom of it to be the same height and width as a view beside it, HOWEVER, i need the textview to be able to change height if the text in it covers many lines. I am using a relativelayout, is this possible? Dec 10 19:50:02 Anyone have a decent understanding of the Facebook review process? I'm getting confused by whether I need to have the Android platform listed under App Settings. Dec 10 19:53:08 https://gist.github.com/px-amaac/a50aa1b6fdd359e347c9 Dec 10 19:53:18 I am trying te implement a webview in a header Dec 10 19:53:41 of a list view. I feel like this is a no no... thoughts? Dec 10 19:54:27 I do not want/need my webview to scroll. It will be a simple image that gets resized to fit server side.i Dec 10 19:55:12 Hmm. "Update ADT to version 24.0.1": https://android-review.googlesource.com/#/c/118735/ Dec 10 19:56:27 Why not simply retrieve the image using a normal web call? Dec 10 19:56:38 Using something like Picasso? Dec 10 19:56:50 actually the original implementation did that. with picasso Dec 10 19:57:02 But this new implementation they want to be a webview Dec 10 19:57:16 why do they want it to be a webview? Dec 10 19:57:56 i dont know. Not my idea. I believe it is going to be swapping out images Dec 10 19:58:16 I think the main reason is time to implement Dec 10 19:58:23 on the server side Dec 10 19:58:51 they already have the site up so all i need to do s display it. Dec 10 19:59:17 vs them implementing an API call and hooking it up to what they already have Dec 10 19:59:45 so how are yall feeling about back button meaning "back in nav hiearchy" vs "last screen"? I'm noticing more apps doing back in nav hiearchy, even Google. though I think the guidelines, before Lollipop anyway, said last screen. Dec 10 20:00:11 ya they keep changing things Dec 10 20:00:31 really i think it matters per use case Dec 10 20:01:39 things like notifications that launch a view need to have the back button act as an up button Dec 10 20:02:10 otherwise the back button leads to homescreen? or whatever else was there before they clicked on notification Dec 10 20:05:17 shadynastys say for example, you are on a top level view accessed via nav drawer. Does back take you to the previous top level view you were on, or exit the app? Dec 10 20:06:41 Top level means that should be the only thing there. Nothing left behind it. therefore you should exit Dec 10 20:07:14 shadynastys I think I am going to implement it that way. But the guidelines do say otherwise Dec 10 20:08:07 which is why I wanted to get some opinions. it definitly makes things easier Dec 10 20:08:23 mattblang: explain with examples. Like what 2 top level views would you haveon top of eachother? Dec 10 20:08:40 "last screen" stopped being the guidelines with 4.0 Dec 10 20:08:44 like i said I would base it on use case Dec 10 20:08:57 Thorbear have they actually edited the guidelines? Dec 10 20:10:14 So no webview in a list header...? Dec 10 20:10:16 I think so, although I must admit I just glanced at them for ICS to get the idea, then didn't look at them again until L Dec 10 20:10:39 Thorbear well, the IO 2014 does it, it would be simpler for me, going to go ahead with it Dec 10 20:11:48 Good. It will be what newer users, and users of newer apps, will expect. Dec 10 20:12:32 do it. Google has periodically not followed their own guidelines multiple times. I have gotten in arguments trying to tell designers to stick to guidelines and they show me Google examples of them doing the exact opposite. Dec 10 20:16:58 @shadynastys I saw this yesterday with the back button above the nav drawer and beyond :-D (mail vs play) Dec 10 20:17:41 anyone on windows 7? could someone do an md5sum of perfmon.exe for me? Dec 10 20:17:45 I think mine may have been compromised Dec 10 20:17:47 wth; just tried installing an app from web Play - and it listed my genymotion device as an option O.o Dec 10 20:18:03 where is it located? Dec 10 20:18:10 \windows\system32 Dec 10 20:18:38 http://www.shouldiblockit.com/perfmon.exe-3eb98cff1c242167df5fdbc6441ce3c5.aspx Dec 10 20:18:43 according to that, my md5sum is wrong Dec 10 20:18:52 [pfnguyen@GALACTICA system32] $ md5sum perfmon.exe Dec 10 20:18:52 dc661cf87f2501a8b8d9628c006aa3bd *perfmon.exe Dec 10 20:18:52 :( Dec 10 20:19:02 would perfmon really install into system32 ? Dec 10 20:19:41 oh i'm thinking of something else Dec 10 20:19:46 oh, no Dec 10 20:19:47 http://www.shouldiblockit.com/perfmon.exe-dc661cf87f2501a8b8d9628c006aa3bd.aspx Dec 10 20:19:47 that one says it's right Dec 10 20:19:48 weird that it's doing uac prompts when I run it now Dec 10 20:19:56 never done that before... Dec 10 20:20:12 I got my right eye lasered today Dec 10 20:20:17 can barely see out of it now Dec 10 20:20:51 DC661CF87F2501A8B8D9628C006AA3BD Dec 10 20:21:49 as a kid they teached me to never look inside a laser... Dec 10 20:22:02 i looked twice Dec 10 20:22:12 now everything is dark Dec 10 20:23:02 Ashiren the world is dark anyhow Dec 10 20:23:21 I always feel slightly evil when I use Log.e for debugging. Not sure why. Dec 10 20:23:35 Ashiren so were you tring to do a shine job like Riddick but failed ? Dec 10 20:23:39 Even though that Log.e will never make it into the release. Dec 10 20:24:03 system.out.println ftw Dec 10 20:24:20 @TacticalJoke how do you avoid it? Dec 10 20:25:21 Oh, I mean Log.e calls that I'm using just for a moment. Dec 10 20:25:26 I remove them after about 10 minutes. :) Dec 10 20:27:33 Hmm, I have a good idea for the Reddit reader: the ability to collapse just the current comment (without also collapsing its children). Dec 10 20:27:45 Though collapsing the whole sub-tree will be the default. Dec 10 20:28:10 Basically, collapsing just the body. Dec 10 20:31:33 is it important to call recycle on bitmap and bitmap decoders? Dec 10 20:33:13 * capella-s3 wakes up and spots 3 feet of snow Dec 10 20:33:30 * capella-s3 goes back to bed Dec 10 20:33:36 good night Dec 10 20:33:40 capella-s3 where ? Dec 10 20:34:12 got a noreaster last night upstate ny Dec 10 20:34:37 meh... more coming Dec 10 20:36:54 g00s google t minus 2 days Dec 10 20:37:09 capella-s3 good luck, get good sleep :) Dec 10 20:37:35 yah... stopped cramming... brain is full Dec 10 20:37:55 when the permissions manifast says that a permission is not for use by third party applications, does that mean only system/root applications can use it? Dec 10 20:38:50 such as SEND_RESPOND_VIA_MESSAGE? Dec 10 20:39:27 storm inbound here, supposedly Dec 10 20:40:21 * capella-s3 lived in atlanta for may years... time to move back Dec 10 20:40:57 atlanta O.o Dec 10 20:41:07 I like NYC Dec 10 20:41:11 capella-s3 what did you like about it? i was there for oopsla once Dec 10 20:42:26 Large metropolitan city ... bleeding edge tech ... financial center of the south ... my area of town was still pretty rural but we were only 15 mins from the airport Dec 10 20:42:57 atlanta bleeding edge tech? really ? Dec 10 20:43:39 Oh ya, Wireless telecom , big area called Alpharetta Dec 10 20:43:46 all i remember was bad traffic :) oh, and that funeral home that was burying corpses in the pond instead of cremating them a bit north Dec 10 20:44:19 Well yah traffic sucked, I400, spaghetti junction, etc I75/85 >( Dec 10 20:49:10 How to tell your highway sucks: It starts with "I-" and is followed by three numbers. Dec 10 20:50:13 capella looks like Georgia is one of the most pollitically corrupt http://www.washingtonpost.com/blogs/govbeat/wp/2014/12/08/a-state-guide-to-political-corruption-according-to-the-reporters-who-cover-it/ Dec 10 20:51:13 Never heard of Niraj Chokshi and not familiar with his cites Dec 10 20:51:29 Opinions are wonderful Dec 10 21:04:53 damn, I'm trying to email someone my source code and gmail keeps telling my the files are insecure, even if I zip or tar them. Anyone encountered this? Dec 10 21:04:59 You should be able to put a webview in a header. It’s just a view Dec 10 21:05:28 hello anyone here have problem with open gl es 2.0 and android 5.0 Dec 10 21:05:47 my app is getting out of memory Dec 10 21:05:57 oddalot: change extension to .pdf, and tell them to change it back when they receive it. Dec 10 21:06:22 s73v3r haha, thanks I'll try that. Dec 10 21:07:56 * somaweb says gn8 Dec 10 21:08:00 oddalot: its simple - dont send them insecure files Dec 10 21:08:12 you probably hid some virus, you sneaky sneak Dec 10 21:09:06 im insecure about my source code... you should see it :| Dec 10 21:09:07 Reddit is so clunky. It gives you, not a post, but a post *listing* for each top-level comment listing it gives you. Dec 10 21:09:12 Why not just give a post? Dec 10 21:09:20 In fact, why not have a different API method for the post. Dec 10 21:11:29 yesterday you said it was an awesome api Dec 10 21:12:16 It's somewhat awesome. :D Dec 10 21:12:41 It's just clunky. Dec 10 21:13:23 tacticaljoke: do you call recycle on bitmaps? Dec 10 21:14:14 I have no idea; sorry. Never done bitmap stuff. Dec 10 21:15:17 What is the context, ChrisUK? The documentation says "On Android 2.3.3 (API level 10) and lower, using recycle() is recommended". Dec 10 21:15:33 Strangely. Dec 10 21:15:55 http://stackoverflow.com/questions/18452192/is-it-needed-to-call-bitmap-recycle-after-used-in-android Dec 10 21:16:36 ok thanks alot Dec 10 21:16:47 This is better, I guess: https://developer.android.com/training/displaying-bitmaps/manage-memory.html Dec 10 21:16:55 Note that I'm just a clueless googler. Dec 10 21:17:22 recycle still seems useful Dec 10 21:17:34 I'm attempting to download an xml file from the web, parse it through a SAX parser, and then display it to the main app window, but I'm running into all sorts of problems. The biggest one is that the file download can't be done in the main thread. How can I spin this off into an Async thread and have the app wait until it's downloaded and then display it? Dec 10 21:17:37 since you can efficiently call delete on the bitmap data if you need to Dec 10 21:18:46 eeyup Dec 10 21:19:15 does anyone know of a PagerSlidingTabStrip fork that actually solves all the issues with the original? Dec 10 21:19:16 and given androids memory issues Dec 10 21:19:21 or is actively maintained? Dec 10 21:19:41 or a decent alternative? Dec 10 21:24:00 Anyone know how to get rid of the dialog that says an app isn’t responding when you’re in debug mode? Dec 10 21:24:29 I know the app isn’t responding; it’s because I’m at a breakpoint and I’m looking at something Dec 10 21:26:01 Also, does anyone know if Otto tries to optimize messages? Dec 10 21:26:11 what does that even mean? Dec 10 21:27:03 i'm sure the answer is 'no', though, since Otto is designed to be dumb and unsurprising in behavior Dec 10 21:27:56 I have a fragment which fires an event to an Activity. This activity then fires an event to a controller. However, in the stack trace when the controller receives the event, it skips over the activity altogether Dec 10 21:28:21 I want to show an ordered list in Javadoc. Using
  1. [...]
is harder to read in code but easier to read in intelisense. Do you folks favour intellisense in such situations? Dec 10 21:28:30 intellisense* Dec 10 21:30:42 Otto is not re-entrant Dec 10 21:30:50 an event is fully dispatched before the next one is processed Dec 10 21:31:00 so if you post and event from within an event handler it's appended to a queue Dec 10 21:53:52 JakeWharton is there anything funky i need to do/keep in mind with Intents, extras and Robolectric? I'm getting "java.lang.UnsatisfiedLinkError: android.os.Parcel.nativeCreate" on a line that boils down to intent.putExtra("data", "{command: password_reset}") Dec 10 21:54:20 the UnsatisfiedLinkError and the fact that it looks like it's trying to call native parcel code makes me wonder if it's calling into *actual* android code, instead of robolectric code Dec 10 21:58:17 i have no idea Dec 10 21:59:29 RE: AS, the hotkey to open the menu for adding try/catch for exceptions, anyone know what that is called in the keymap, so i can make it something more sane Dec 10 22:00:03 i just alt+enter that Dec 10 22:00:07 alt+enter all the things Dec 10 22:00:41 if you press alt+enter it'll probably change the keymap for you Dec 10 22:00:48 alt+enter just made me a sandwich Dec 10 22:00:53 no sudo required Dec 10 22:01:11 right, im looking for the name of that in keymap, i cant see it Dec 10 22:01:14 name of shortcut Dec 10 22:02:30 "Show intention actions and quick-fixes" Dec 10 22:02:38 thanks Dec 10 22:03:05 looks like "Show intention actions" is the actual name Dec 10 22:03:51 http://www.jsoneditoronline.org/ is really good. Dec 10 22:03:56 If you're into the whole JSON-editing thing. Dec 10 22:03:57 appreciate that, moving to AS is driving me nuts Dec 10 22:04:16 http://i.4cdn.org/g/1418233673994.png Dec 10 22:04:23 <_Auron_> getting this stupid settings menu to have subitems is today's pain Dec 10 22:05:31 <_Auron_> nm Dec 10 22:05:48 I can't really tell, but it looks kinda like they might've done a lot (all?) of the JVM-unit-test stuff: https://android-review.googlesource.com/#/q/branch:studio-1.1-dev Dec 10 22:06:14 TacticalJoke: not even close Dec 10 22:06:38 Oh. I had assumed it'd be simple. Dec 10 22:10:50 Hi - Does anyone know why messages received in onRealTimeMessageReceived, sent with Games.RealTimeMultiplayer.sendReliableMessage, would be arriving out of order? Shouldn't the order they are sent in be guaranteed? Dec 10 22:14:39 I keep seeing the nexus ads with a lollipop leaning up against a nexus phone and think 'man that phone is going te be sticky EEEWWWW' Dec 10 22:18:42 freeone3000 was there a fix for AS going weird with static imports? i just ran into that Dec 10 22:18:52 g00s: IDEA 14.0.2 Dec 10 22:18:58 lol Dec 10 22:19:50 gogorobot: It's still UDP. Dec 10 22:22:18 What .sendReliableMessage() does is send a message, and waits for a response within a given amount of time. If it doesn't get one, it sends it again, until it's recieved. Messages will still be out of order and can still be fragmented (hence MAX_RELIABLE_MESSAGE_LEN) Dec 10 22:22:21 freeone3000: but the documentation says that reliable messages are sent in order Dec 10 22:22:29 gogorobot: No it doesn't. Dec 10 22:23:05 gogorobot: https://developer.android.com/reference/com/google/android/gms/games/multiplayer/realtime/RealTimeMultiplayer.html#sendReliableMessage(com.google.android.gms.common.api.GoogleApiClient, com.google.android.gms.games.multiplayer.realtime.RealTimeMultiplayer.ReliableMessageSentCallback, byte[], java.lang.String, java.lang.String) says "reliably". Says "in the same room". Says a bit about the restrictions. Says a bit about the Dec 10 22:23:07 callback. Says nothing about "in order". Dec 10 22:23:55 freeone3000 https://developers.google.com/games/services/common/concepts/realtimeMultiplayer "Reliable messaging. With reliable messaging, data delivery, integrity, and ordering are guaranteed." Dec 10 22:26:59 anyone know how i can create in java the gradients used in this png chart (which i think came from power point ) http://blogs.vmware.com/performance/files/2014/10/linpack.png Dec 10 22:27:19 they look stunning Dec 10 22:28:30 http://angrytools.com/gradient/ Dec 10 22:28:51 Will generate XML Drawable code for a gradiant Dec 10 22:29:26 s73v3r: is power point gradients ducumented anywhere ? Dec 10 22:29:37 not a clue Dec 10 22:29:55 freeone3000: i think every networking library i've used which has the concept of reliable and ureliable ensures that reliable packets are sent in order, and the concepts document seems to back that up here Dec 10 22:30:00 thanks for the link Dec 10 22:30:30 ..except radial gradients. radial gradients just don't work in any meaningful way in android. Dec 10 22:31:23 squirrel: i can write the java code if i figured what the source was doing .. or how they did it Dec 10 22:32:19 dos000: what's so special about these gradients. they are just ordinary linear 2 color gradients Dec 10 22:33:12 squirrel: i cant reproduce them ... Dec 10 22:33:47 dos000: use a color picker tool or something.. Dec 10 22:34:22 create a gradient as an XML drawable, and use that. Dec 10 22:34:26 squirrel: i am not a graphic head per say Dec 10 22:35:02 open image in paint.exe, pick color on the bottom, pick color on the top Dec 10 22:35:05 done.. Dec 10 22:36:03 Paint is the most underrated tool of all time. Dec 10 22:36:11 MSPaint? Dec 10 22:36:17 paint is the best Dec 10 22:36:20 Ya. Dec 10 22:36:25 I used to be a gun at MSPaint Dec 10 22:37:33 I hate documenting thrown exceptions. Becomes so boilerplate after a while. :/ Dec 10 22:37:33 that's one of the few things I miss about using windows as my primary OS... Dec 10 22:38:03 But the alternative is worse. Dec 10 22:38:11 oh here we go... Dec 10 22:38:21 I disagree! Dec 10 22:38:32 oh wait, you were talking about exceptions, not OSes? Dec 10 22:38:44 No. lol Dec 10 22:39:34 JakeWharton following up - apparently it's necessary to Intent i = new Intent(); Bundle b = new Bundle(); b.putString(...); i.putExtras(b); .. not sure why. i would imagine that'd be a bug on robolectric, no? also forgive me if you're not very active/interested anymore in the project, don't need to be buggin you with it if not Dec 10 22:39:35 I went from Microsoft Paint to documenting exceptions thrown from methods. :) Dec 10 22:40:12 sarbs: i just merge PRs that don't look dumb. not a big contributor anymore. file a bug though. there's definitely people interested in making sure things like this work. Dec 10 22:40:22 Oops, I mean "yes". I totally misread everything. Dec 10 22:40:24 gotcha, kk Dec 10 22:40:38 lol Dec 10 22:40:40 squirrel: Do you think this http://angrytools.com/gradient/ can do two gradients ? Dec 10 22:41:27 dos000: well it looks like it can......... Dec 10 22:41:47 what could cause "menu_search" is not defined in R.id.menu_search? this is from the doc, android.R.layout.menu_search doesn't work either Dec 10 22:41:51 I don't know about OSes anymore. It's been so long since I've used something other than Windows, Android, and (I guess) BlackBerry OS. Dec 10 22:42:00 or* Dec 10 22:42:22 slmb: What are you trying? Dec 10 22:42:36 TacticalJoke, just to set a listener to my SearchView Dec 10 22:42:44 squirrel: how do i add the second color ? Dec 10 22:43:06 doc says to get the SearchView object with "SearchView searchView = (SearchView) menu.findItem(R.id.menu_search).getActionView();" Dec 10 22:43:21 but android-studio can't resolve R.id.menu_search Dec 10 22:44:14 dos000: uhhh idk just click under that color stripe or sth..... Dec 10 22:44:33 slmb: Which pages says that? Dec 10 22:44:42 page* Dec 10 22:44:58 TacticalJoke, http://developer.android.com/guide/topics/search/search-dialog.html Dec 10 22:45:22 TacticalJoke, http://developer.android.com/guide/topics/search/search-dialog.html#ConfiguringWidget actually Dec 10 22:45:23 slmb: did you put anything with id menu_search in your menu? Dec 10 22:46:37 squirrel, no, I just grep-ed the whole project to make sure Dec 10 22:47:48 I think you have to define that menu item yourself. Dec 10 22:47:56 slmb: well you can't find an item because it is not there. and as i understand it, you have to use special objects that support it with android.R.* stuff Dec 10 22:54:13 squirrel, TacticalJoke, you were right, thanks Dec 10 22:54:21 conceptual misunderstanding Dec 10 22:54:38 ^_^ Dec 10 22:55:08 I thought it was meant to be a constant that was linked to the searchview since it's usually referred as being unique but obviously it was not Dec 10 22:55:13 <_Auron_> ugh I have an annoying problem with fragments and the actionbar Dec 10 22:56:23 <_Auron_> I have an activity with a viewpager and two fragments; the first fragment doesn't show the action bar, the second one does. it works fine as intended since I have the second fragment use setHasOptionsMenu(true);, but if I use an intent to start the same activity and pass in which fragment I want to focus on, I no longer have an actionbar on any fragments. Any thoughts? Dec 10 22:56:58 you are awfully nonspecific Dec 10 22:57:04 actionbar? actionbar isn't tied to fragments Dec 10 22:57:09 perhaps you mean toolbar? Dec 10 22:57:13 in that case, you fucked up Dec 10 22:57:38 Can anyone figure out how to get the apk or source code to this app - seems like google is preventing people pulling from servers? Dec 10 22:57:39 https://play.google.com/store/apps/details?id=com.google.android.tv Dec 10 22:57:55 Haxxa, install app to your device and then pull Dec 10 22:57:57 In any case will not even install on Nexus Player Dec 10 22:58:03 if you can install it, you can pull it Dec 10 22:58:09 pfn I can't though Dec 10 22:58:14 then so what? Dec 10 22:58:15 :p Dec 10 22:58:20 it will aloow any device to install it Dec 10 22:58:24 *will not Dec 10 22:58:38 IP based tuner Dec 10 22:58:40 nteresting Dec 10 22:58:43 does that include hdhomerun? Dec 10 22:58:50 I've been looking for a good solution to watching my hdhomerun Dec 10 22:58:54 I don't have one Dec 10 22:58:56 http://apk-downloader.org/?id=com.google.android.tv Dec 10 22:59:03 That was hard Dec 10 22:59:19 and it didn't even give me the right one! Crazy Dec 10 22:59:37 hwrdprkns nope tried that Dec 10 22:59:39 wrong app Dec 10 23:00:09 pfn yes I have been developing an android tv based on some source from xbmc that is specifically designed for iptv Dec 10 23:00:12 I haven't found any reliable apk downloaders, fwiw. every single one has given me the wrong app, or an app that has been recompiled with garbage ads added to it, or other crap. Dec 10 23:00:21 <_Auron_> pfn: what do you mean I fucked up? Dec 10 23:00:23 http://thomascannon.net/blog/2011/06/downloading-apks-from-android-market/ glhf Dec 10 23:00:28 this will cover this base I want to see wwhat is been immplemented and what isn't Dec 10 23:01:04 hwrdprkns: I assume the note at the top of that link is still accurate? Dec 10 23:01:50 hwrdprkns thats not to helpful in this case given it states at the top it will likley not work :( Dec 10 23:02:05 Yah but the link to the library has a link to this: https://github.com/splitfeed/android-market-api-php Dec 10 23:02:10 updated 4 months ago seems reasonable? Dec 10 23:02:35 ok Dec 10 23:03:14 ok will try then Dec 10 23:04:01 actually still don't think it will work if it needs my ANDROID_DEVICEID Dec 10 23:04:16 hmm, I want a good solution for casting my hdhomerun :( Dec 10 23:04:34 http://instatv.org/about.html Dec 10 23:04:36 interesting Dec 10 23:04:50 I think it is not possible to obtain Dec 10 23:07:45 too bad hdhomerun is so niche, otherwise I'd write something to transcode mpeg2-ts to something chromecast could understand Dec 10 23:08:50 pfn every single actually useful product ever made was invented because the inventor wanted it themselves.. just do it ;) Dec 10 23:09:13 sarbs, sure, but I don't watch enough live tv that it's worth my time Dec 10 23:09:18 I just want it for the occasional sporting event Dec 10 23:09:38 yeah, ditto. i'd have offered to join the project otherwise lol Dec 10 23:09:56 I only still maintain qicr because I use it regularly Dec 10 23:10:33 This stuff is scary: http://www.reddit.com/r/androiddev/comments/2ouqqn/why_did_a_robot_suspend_my_developer_account/ Dec 10 23:11:04 what's a good color for cash in hex? Dec 10 23:11:32 I love TVHeadEnd it's an awesome linux app that runs on my NAS and pushes TV Tuner to Plex, XBMC, Phone etc. When I get a new TV etc. rather than finding a anntenna point, I simply connect it to TVHeadend Dec 10 23:11:32 0xca5h? :D Dec 10 23:11:41 Doesn't quite fit. Dec 10 23:11:51 doesn't reach Dec 10 23:11:51 remove the 0x and it does Dec 10 23:11:53 CA5h Dec 10 23:11:55 h is out of range Dec 10 23:12:00 http://www.colourlovers.com/palette/860881/the_color_of_money Dec 10 23:12:00 not bad Dec 10 23:12:05 * pfn colors his tvm application Dec 10 23:12:08 True, sarbs. lol Dec 10 23:12:17 so no one have any idea on how to download an android app Dec 10 23:12:31 from the play store as apk Dec 10 23:13:06 Haxxa i don't think you can, that's the whole point of Play app Dec 10 23:13:46 Yer I guess google never intended for people to download apps from the play store Dec 10 23:14:06 ./r/nocontext Dec 10 23:14:10 ... outside of Play app? yeah. why would they? that kinda bypasses....... everything. Dec 10 23:15:25 Haxxa, no shit Dec 10 23:15:28 Haxxa, not the place to ask Dec 10 23:16:23 reading back it looks like you want to get an apk that Play is disallowing you to have, and then you want to decompile it. that couldn't be any squarely more obvious why they wouldn't want you to have it. Dec 10 23:17:20 "hey anyone know how I can get a copy of MS Office? without going through a store i mean. i only want to reverse engineer it." Dec 10 23:17:24 TacticalJoke: app killed by robot: same thing happened to us. we "wtf"d a bit, then resubmitted. a month later we got featured. it's complete bullshit, but at least it's a bit less common than in the iOS app store. Dec 10 23:17:47 It was a joke by the way - sacasam Dec 10 23:17:54 Weird. Did you figure out exactly what it was? Dec 10 23:18:03 anyway I'll wait until it's out Dec 10 23:18:12 I read that people can contact a human in the Apple case, though. Dec 10 23:18:34 TacticalJoke: nope. apparently we were uploading some private user data data (we weren't, we didn't even have that permission) Dec 10 23:19:17 it was trivially factually wrong, but it still happened Dec 10 23:19:36 That's bad. :/ Dec 10 23:20:09 we've had robo-warnings about _logging_ private data too. we got in contact with someone, it turns out the tester who reported it had a different app installed that was doing the logging. Dec 10 23:20:38 unclear if it was a human tester or a robo tester. speed implied robo. Dec 10 23:21:22 squirrel: i found this tool http://gradientfinder.com/ which makes figuring gradient much easier .. Dec 10 23:21:36 squirrel: thanks a lot for your help ))) Dec 10 23:21:58 dos000: not at all.... Dec 10 23:22:36 now i can dream to have stunning graphics like a graphic head Dec 10 23:26:41 I, too, can dream to have my android application look like it was made in powerpoint. Dec 10 23:27:26 freeone3000: hehe Dec 10 23:28:08 if i do not copy pp .. my charts will suck ... so the choice is easy Dec 11 00:00:27 hey Dec 11 00:00:37 where can I find a bitmap for the android menu drawer icon? Dec 11 00:00:51 it's the 3 lines, can be seen in gmail, etc Dec 11 00:00:55 it's bundled with the app compat stuff Dec 11 00:01:27 the drawable itself? Dec 11 00:04:16 mmmmm... hamburgers... Dec 11 00:12:02 How do i do findviewbyid() inside a class that extends AppWidgetProvider? Dec 11 00:17:23 you don't Dec 11 00:32:20 * shadynastys smacks head on table Dec 11 00:35:05 shadynastys: I doubt the table deserved that Dec 11 00:42:47 Comments are so ugly. Dec 11 00:43:03 All of them: documentation comments, plain comments, whatever. Dec 11 00:43:20 oh i thought you were speaking of reddit Dec 11 00:43:25 :D Dec 11 00:43:39 hello, im looking for library for table [that user can edit and view (atleast numbers)]. https://github.com/InQBarna/TableFixHeaders seems to be close enough but Readonly. Dec 11 00:43:46 can someone try this and tell me if it's good https://www.jetbrains.com/upsource/ Dec 11 00:44:24 well, it looks pretty bankai_au Dec 11 00:45:01 TacticalJoke: I want to write javadoc in markdown, personally. Dec 11 00:45:15 and it bothers me that nothing supports this Dec 11 00:45:21 Nice idea. Dec 11 00:45:25 +1 for markdown Dec 11 00:46:11 plus then you could conceivably switch your editor between "source" and "styled" comments Dec 11 00:46:29 The main reasons I hate comments are: 1. They get in the way of code. 2. They go out of date very quickly. Dec 11 00:46:59 The perfect example of 1 is code full of Javadoc/whatever. Dec 11 00:47:13 Reading that feels like running through deep water. Dec 11 00:47:55 the first time you need javadoc, you will be so, so, so grateful for it Dec 11 00:48:04 I'm trying to acces an api that uses TCP connection but I can't get any response from the server -> https://gist.github.com/anonymous/cf31830218307bd220fa <- if I try to use domain name I get resolving errors on my emulator. What am I doing wrong? Dec 11 00:48:24 TacticalJoke: I have some methods you'd love, then. some of the nastier "dance around insane behavior" has more documentation than code. (good news is the code then follows trivially from the description, and does not deviate at all) Dec 11 00:48:29 It's important for public APIs. But, even then, should it be *in* the code? I don't know. Dec 11 00:48:57 Groxx: Yeah, I support comments that docuement crazy behaviour and stuff. :) Dec 11 00:49:00 document* Dec 11 00:49:39 TacticalJoke: have you seen "web"? Knuth's "literate" documentation style Dec 11 00:50:00 style / code structuring tool / whatever. it's at least thought-provoking because it's so different. Dec 11 00:50:32 is ListView supposed to be inflating every row even if the view types are all the same? Dec 11 00:51:10 Hmm, interesting idea. Dec 11 00:51:28 http://en.wikipedia.org/wiki/Literate_programming#Example is a decent intro, if you hadn't found that one already Dec 11 00:51:31 Levite: I think it has to inflate at least N views (where N is the number visible at one time). Dec 11 00:51:51 TacticalJoke ok, thanks. I'm using ViewHolder but I wasn't sure if that was the correct behavior Dec 11 00:52:19 I'm still having problems refreshing rows in-place. Seems it insists on reinflating every time Dec 11 00:52:42 Levite: If you wanna post your adapter, I'll look. :) Dec 11 00:53:10 Levite: refreshing rows in-place? Dec 11 00:54:15 Yes, it's a timing app and the rows need to be refreshed every second. I'm was trying to use this code to refresh them https://gist.github.com/sanfranciscotx/75ee7be8a5da221bd9df Dec 11 00:54:42 Which according to multiple SO posts should work, but it's like after I modify the textviews in the rows, the ListView invalidates itself and reinflates everything Dec 11 00:54:57 You're calling Adapter.getView manually? Dec 11 00:55:12 yes, because notifyDataSetChanged causes the entire listview to be redrawn Dec 11 00:55:23 but only the underlying numbers have changed Dec 11 00:55:25 Levite: well, that's basically what you're doing Dec 11 00:56:03 I just need to update one TextView in each row, not redraw the whole frickin thing Dec 11 00:56:34 i'm returning unique item ids, view types, have told it to use stable ids, etc so it shoudl be working Dec 11 00:57:21 listview is just kind of a mess all around i'm noticing Dec 11 00:57:59 I don't understand how that code works. Doesn't getView simply *return* a view? Dec 11 00:58:05 You're not doing anything with the return value. Dec 11 00:58:09 the values are set in getView Dec 11 00:58:18 on my ViewHolder Dec 11 00:58:23 I despise listview's implementation, so I'm a bit biased there. but this does sound like it's behaving different than I've seen, I suspect you're doing something wrong somewhere. Dec 11 00:58:26 Levite: listvie aint no mess Dec 11 00:58:27 hey guys, I have a kind of complicated question Dec 11 00:58:28 I see. Dec 11 00:58:33 so getting it should be updating it, which it does, but afterwards the listview redraws itself anyway Dec 11 00:58:51 i'm not sure why the listview redraws itself after i call getView manually Dec 11 00:58:58 let's say a WebView is showing a website Dec 11 00:59:11 Levite: mind gisting your getView code? Dec 11 00:59:16 and possibly holder. Dec 11 00:59:28 Levite: Are you sure that what you're doing is faster than calling notifyDataSetChanged()? Dec 11 00:59:35 Levite: you never call getView manually Dec 11 00:59:41 TacticalJoke: it is. marginally. Dec 11 00:59:52 Groxx https://gist.github.com/sanfranciscotx/28a3b864b0d9da56e56d Dec 11 01:00:01 how can the website identify on the server side if an app that is loading it on a WebView? Dec 11 01:00:11 Levite: you never call getView manually,that'd be like calling onCreate of an activity manually Dec 11 01:00:20 rburgosnavas by checking the user agent perhaps? Dec 11 01:00:36 but stack overflow! http://stackoverflow.com/questions/2123083/android-listview-refresh-single-row Dec 11 01:00:41 I'm wondering if there is something more unique Dec 11 01:00:56 they say one of the guys at Google I/O recommended that methhod Dec 11 01:01:06 Levite: getChildAt not getView Dec 11 01:01:34 lasserix_ do you mean i should use the return value of getChildAt and update that? Dec 11 01:01:40 and never call getView? Dec 11 01:01:48 Levite: you do not call getview manually. simply you do not ever do this. Dec 11 01:01:53 you can use getChildAt Dec 11 01:02:04 ok, well I wasn't using that code since it ended up drawing twice Dec 11 01:02:08 lasserix_: it's a semi-officially-recommended way to update just one view. it works. Dec 11 01:02:09 i'll give that a shot, thanks Dec 11 01:02:20 Groxx no you don't do it. you can use getChildAt Dec 11 01:02:37 Levite: but also yougetView uses a lot of branching Dec 11 01:03:04 He says "use getChildAt" in the video. Dec 11 01:03:07 That SO seems wrong. Dec 11 01:03:10 answer* Dec 11 01:03:12 that's fine Dec 11 01:03:12 ahhhhh Dec 11 01:03:30 Funny how a comment can be +56 with a blatant factual error. Dec 11 01:03:33 an answer* Dec 11 01:03:39 Levite, sorry i missed your original question what is it you are trying to do? Dec 11 01:03:57 I have an app and a website both successfully authenticating with google+. Now I need to use the website as an API while using the credentials used in the app. How would I pull this off? Dec 11 01:04:03 Wait, I take that back. He is doing something more there. Dec 11 01:04:17 lasserix_ I have a listView with a textview that needs to be updated once per second. calling notifyDataSetChanged redraws the whole view which isn't necessary, since only a single TextVIew in each row needs updating Dec 11 01:04:34 Ideally I would use the google+ creds to get a phpsession and then just use the session Dec 11 01:04:39 Levite what i'd do is make a custom view, ie extend textview Dec 11 01:04:45 i'm just trying to get references to the EXISTING view holders and update them myself Dec 11 01:04:48 then use getViewItemTypeCoutn return 2 Dec 11 01:05:07 Levite: the way to do what you want is to subclass textview and do the 1 per second update in that textview Dec 11 01:05:20 you can use your existing adapter implementation in this case Dec 11 01:05:25 but how would i pass data to the textview? Dec 11 01:05:27 without calling notifydatasetchanged/getchildat Dec 11 01:05:33 same way you noramlly do Dec 11 01:05:36 To the people who still use Eclipse because its faster... do you use Kepler or Luna? The last time i downloaded the ADT it came with Juno Dec 11 01:05:39 just set it inGetview Dec 11 01:05:44 use an interface Dec 11 01:05:50 mellow0324: Luna. Dec 11 01:06:05 The ADT bundle comes with an ancient version of Eclipse. Not recommended. Dec 11 01:06:33 Thanks TacticalJoke just wanted to make sure I could do it like that Dec 11 01:06:33 thanks guys Dec 11 01:06:33 Levite: where's teh data come from? Dec 11 01:06:33 lasserix_: why is getView bad? it doesn't delegate to a super-method, so it's just getting the holder and doing stuff with it. Dec 11 01:06:39 code reuse. Dec 11 01:06:44 Groxx it's like calling onCreate manually, why would you ever do that? Dec 11 01:06:52 mellow0324: Luna is pretty neat (and fast). :) Dec 11 01:06:57 you can do getChildAt but don't callg etView manually Dec 11 01:07:18 lasserix_: sans the need to call super.onCreate, yeah. and onCreate isn't really equivalent. Dec 11 01:07:21 Levite: subclass textview, in getView pass the source data or pass the source data the textview as an observer of the changing data Dec 11 01:07:31 yeah i'm going to give using just getChildAt a shot Dec 11 01:07:36 Levite, the way to do this is subclass textview Dec 11 01:07:39 TacticalJoke I hope so mate Dec 11 01:07:43 where's your data come from? Dec 11 01:07:54 lasserix_ when you say observer, is that a java class thing? Dec 11 01:07:56 you have like a handler you post to or somethign? Dec 11 01:08:00 data is in memory Dec 11 01:08:03 yeah an interface Dec 11 01:08:09 how do you set the data every second? Dec 11 01:08:21 I decided to Reinstall Eclipse and Android Studio to see if I can trump my problems once and for all Dec 11 01:08:33 Groxx you don't call super.onCreate manually, it's part of implementing onCreate Dec 11 01:08:37 I should probably deleted my SDK tools too though Dec 11 01:08:53 i pass the object from the activity to the adapter Dec 11 01:09:03 what's the object? can i see the code? Dec 11 01:09:21 lasserix_: you're required to in fragments. does that count? Dec 11 01:09:26 lasserix_ I mean, the data itself is just a long Dec 11 01:09:33 Groxx you're missing my point ;p Dec 11 01:09:39 Levite one second ill show you what i mean Dec 11 01:09:46 If I wanna use @Nullable in AS, is it best to add a dependency to "com.android.support:support-annotations:+"? Dec 11 01:09:52 (I'm not using AS yet; just planning ahead.) Dec 11 01:10:07 Levite, how does the data get updated everysecond, are you using a handler postDelayed or somethign? Dec 11 01:10:15 lasserix_ yes, exactly Dec 11 01:10:23 so you pass the handler to the adapter? Dec 11 01:10:40 no Dec 11 01:10:41 TacticalJoke: i use that, works just fine Dec 11 01:10:44 lasserix_: and you're conflating "dubious code organization" with "does not work". getView is just a method that finds views and sets their state based on data. if it were in a different method, but did exactly the same thing (minus inflation - since view is not null those branches aren't used anyway), would it be more acceptable? Dec 11 01:10:44 K. Dec 11 01:10:59 I'm just using it like NSTimer Dec 11 01:11:17 TacticalJoke: http://stackoverflow.com/questions/16690914/importing-notnull-or-nullable-and-android-studio-wont-compile/25788250#25788250 Dec 11 01:11:19 Wow, Luna IS pretty fast Dec 11 01:11:45 the whole implementation seems flawed because the adapter shouldn't be concerned with the details of the view itself Dec 11 01:11:49 squirrel: Thanks. Dec 11 01:11:52 Groxx i am conflating nothing: you don't call getView manually. it's that simple. if you want to encapsulate the functionality within that's fine, but don't call getView manually. you could call the encaspulated method by using getChildAt Dec 11 01:11:54 that's what adapters _are_ though Dec 11 01:11:58 :3 Dec 11 01:12:01 Levite: true one second Dec 11 01:12:07 mellow0324: Yeah, it's the fastest Eclipse I've ever used (as far as I can tell). Dec 11 01:12:37 lasserix_: getChildAt does not set state on the view, it gets the view in the hierarchy. getView is _updating_ the view. Dec 11 01:13:02 they're for entirely different purposes Dec 11 01:13:12 Eclipse's Java compiler is actually pretty awesome. Compiles stuff even if there are syntax errors. lol Dec 11 01:13:24 If that code is touched at runtime, a syntax-error-related exception is thrown. Dec 11 01:13:38 Also supports @Nullable by default, I think. Dec 11 01:13:41 not only that, getView is updating the view _exactly the same way_ as ListView would if you had just scrolled the view out of view and scrolled back. Dec 11 01:13:50 And @NonNull and so on. Dec 11 01:13:57 Groxx you simple do not call getView manually, you call notifyDataSetChanged Dec 11 01:14:19 Levite: position 0 is the special textview Dec 11 01:14:20 ? Dec 11 01:14:27 lasserix_: then you ignore a common optimization trick recommended by romain guy? https://www.youtube.com/watch?v=wDBM6wVEO70&t=45m46s Dec 11 01:14:42 lasserix_ oh no, position 0 is a header row. same row layout, just with a few tweaks Dec 11 01:14:55 Levite where is the textview that needs to be updated? Dec 11 01:15:19 Groxx you on drugs? he mentions getChildAt Dec 11 01:15:25 not getView Dec 11 01:15:27 ;p Dec 11 01:15:28 lasserix well, this is the xml https://gist.github.com/sanfranciscotx/08d20d34c1c10f1a8f9a Dec 11 01:15:45 ok i tried using just getCHildAt but the LIstView still seems to insist on reinflating everything Dec 11 01:15:47 Levite you said only one row does this? Dec 11 01:15:48 lasserix_: yeah, getChildAt to find the view. then you update it. getView already does that - code reuse. Dec 11 01:16:04 lasserix_: I found a way around that issue yesterday. But it's undocumented. Dec 11 01:16:16 Using a slightly different URL results in a somewhat-normal API response. Dec 11 01:16:21 if it were called "updateViewToMatchData" it would be less weird feeling Dec 11 01:16:30 (Using /api/morechildren.json rather than /api/morechildren.) Dec 11 01:16:34 lasserix they all have to be updated every second, but all the rows get reinflated when i update anything in the viewholder Dec 11 01:16:37 Groxx once you do getChildAt you can directly do findViewById and update whatever, you don't need to call getView Dec 11 01:16:46 Levite ahh I see Dec 11 01:17:05 I tried this as an experiment but it's still doing the same thing https://gist.github.com/sanfranciscotx/c39ffdbde1022c46c26d Dec 11 01:17:06 Levite which is the textview that needs updating? Dec 11 01:17:07 you can, yes. but you already have the holder, and the values to update it to are already part of getView. Dec 11 01:17:16 holder.duration Dec 11 01:17:31 arguably that should be a different method. sure. doesn't mean it doesn't work. it's harmless, just very-slightly wasteful. Dec 11 01:17:37 then encapsulate the functionality of getView in another method call it from getView and getChildAt but don't call getView directly Dec 11 01:17:37 i'm just updating it with nonsense values there Dec 11 01:17:52 groxx you wouldn't reset an activity by calling onCreate manually Dec 11 01:17:57 totally different Dec 11 01:18:02 Levite : one second Dec 11 01:18:10 Anybody here able to speak on the Big Nerd Ranch Android book? Is it any good? Dec 11 01:18:13 I just don't understand why me getting a refrerence to the viewholder, and then updating a textview in it, causes the whole view to be redrawn Dec 11 01:18:18 for one: that doesn't work. if it did, and worked 100% of the time: why not? Dec 11 01:18:19 how does listview even know what i'm doing Dec 11 01:18:29 or refer any must have books Dec 11 01:19:13 Levite: How do you know the view is being redrawin? Dec 11 01:19:18 redrawn* Dec 11 01:19:31 TacticalJoke I put a logging statement in getView when convertView is null Dec 11 01:19:43 because it's the constant reinflating that's slowing my app down Dec 11 01:19:56 You're returning 2 from getViewItemType, right? Dec 11 01:20:00 getItemViewType* Dec 11 01:20:01 i just want to update a textview without inflating anything Dec 11 01:20:05 TacticalJoke yessir Dec 11 01:20:38 Oops, getViewTypeCount. Okay. Dec 11 01:21:18 getItemId, getItemViewType, getViewTypeCount, hasStableIds are all taken care of Dec 11 01:21:43 Levite, what's the object you pass the adapter ? Dec 11 01:22:08 lasserix_ just a custom object that doesn't extend anything Dec 11 01:22:30 the seconds are stored as a long in there Dec 11 01:23:00 Would you consider posting the entire adapter code? Dec 11 01:23:14 Levite post the entire adapter code i almost have a working example for you Dec 11 01:23:20 just need to see how you propogate the data values Dec 11 01:23:33 lasserix i'll PM you Dec 11 01:23:39 each duration has its own seconds? Dec 11 01:23:53 do you maintain a map of long -> duration textview or something? Dec 11 01:25:15 no, that sounds crazy Dec 11 01:28:24 ok, i'm going to try keeping references in the adapter to the textviews in question and just updating them myself Dec 11 01:28:57 yeah that'll work Dec 11 01:29:03 i've found that a lot of android dev involves just reimplementing everythign yourself Dec 11 01:29:06 just put them in a hashamp or whatever Dec 11 01:29:21 ohh Dec 11 01:29:24 you can also use Dec 11 01:29:25 Does RecyclerView solve this problem? Dec 11 01:29:33 setTag(R.id.tagId, object) Dec 11 01:29:34 recycleview is MUCH better Dec 11 01:29:46 but i need listviews for a certain reason Dec 11 01:30:22 Levite do all the textviews get updated at the same time? Dec 11 01:30:27 yes Dec 11 01:30:31 ahh Dec 11 01:30:34 so here's a neat trick Dec 11 01:32:09 for each textview you have one custom object updater? Dec 11 01:33:31 do you mean is there a custom object that maps to each textview? yes Dec 11 01:33:36 on a scale of 1-10 how practical is the following frankenstein ive been working on the last 6 months: An app that is 95% web based (UI included!) that is quite slow sometimes due to server load. So now they want to host the web page assets locally, pull "plug in" data from remote json objects on the web, and edit the now local html files before displaying. Dec 11 01:33:38 ahh cool Dec 11 01:33:40 one second Dec 11 01:33:45 what's the name of that objec? Dec 11 01:33:51 Session Dec 11 01:37:15 Jesperhead: depends heavily on why the servers are slow, I'd say. in general I'd say it's probably better to just download it fresh each time, since it's kinda tricky to be 100% safe with what are essentially local patches. Dec 11 01:38:01 Jesperhead: server is slow because… HTML generation is slow? database is overloaded? no bandwidth? Dec 11 01:38:08 Groxx: I mean the app design in general. Was just ranting for a moment. From the start I'd been wanting something very similar to this, the only difference being a native UI. now i feel weve reached full circle Dec 11 01:38:22 heh, sure :) Dec 11 01:38:24 well... an in-android ui Dec 11 01:38:31 Kevute http://pastebin.com/JrwTpX3L Dec 11 01:38:34 local html is still "native" i guess Dec 11 01:38:38 oops Levite Dec 11 01:38:39 http://pastebin.com/JrwTpX3L Dec 11 01:38:45 what about DataSetObserver? Dec 11 01:38:58 all you need to do is call getChildAt i -> getChildCount find the textview and update the value Dec 11 01:39:14 in that link i just stuff them into the tags Dec 11 01:39:31 so you don't have to do findViewById each time Dec 11 01:39:35 which is slow Dec 11 01:39:36 right Dec 11 01:39:49 if you look at that link all you have to do is call update Dec 11 01:39:59 multiple tags is kinda interesting. I don't think I've done that before. Dec 11 01:40:00 switch SpecificUpder to the proper session object obviousily Dec 11 01:40:34 (that's what getSpecificUpdater does) Dec 11 01:40:49 which i am assuming is part of the dataset Dec 11 01:41:02 you can even call this code from anywhere Dec 11 01:41:08 as long as you set the tags in getview Dec 11 01:41:20 and you don't need to call notifydataset/invalidate or whatever Dec 11 01:41:46 Jesperhead: tbh it sounds overly fancy. it's more likely to be easier to e.g. add a caching layer on the server, and then you don't have to make multiple-version-aware plugins (because inevitably someone will go on vacation and get a week or two out of date. what happens then?) Dec 11 01:42:36 eh most of the data im pulling to automatically generated actually, its a basically a monitoring and reporting app Dec 11 01:42:37 it turns a "download and display this thing" problem into a "synchronize this data" problem. synchronizing is really hard. Dec 11 01:43:04 though yes that might at some point become an issue Dec 11 01:43:21 aaah. the monstrosity makes a bit more sense in that realm :) Dec 11 01:43:39 kinda sorta client-side caching of data? Dec 11 01:44:05 tabular data. so you mostly just need to replace-or-append Dec 11 01:44:33 yeah. it calls for checks every time it loads, im hoping to simply edit the html file and replace a few of the tag values Dec 11 01:44:54 still trying to find out how im going to do that though Dec 11 01:45:36 I'm not actually sure what you'd have to do for that. have the page's JS modify itself, then pull the page as a string and write it to a file? Dec 11 01:46:26 hrm curious. Im no web developer and know nothing about JS. Dec 11 01:46:45 But I can pull JSON strings like a bos.. lol.. Dec 11 01:47:13 do you have web devs? ultimately I lean towards having the page modify itself, only because it's already parsed by the webview. otherwise you have to parse it again separately in order to safely modify it Dec 11 01:47:25 If I say "/** @throws ParseException */", Eclipse shows "ParseException -" in the intellisense. I have to say "/** @throws ParseException*/" to see "ParseException". #mildlyirritating Dec 11 01:47:44 Also #firstworldproblems. Dec 11 01:47:50 Groxx: oh i see, like read from the stream of the file, modify, then save? Dec 11 01:47:51 though you could probably come up with ways to make a search-and-replace safe. ish. Dec 11 01:48:03 does the Unsafe class exist with dalvik? Dec 11 01:48:06 Does Android Studio have the same behaviour? Dec 11 01:48:12 I guess so; just curious though. Dec 11 01:48:18 TacticalJoke: that does sound annoying D: Dec 11 01:48:26 I hate the hyphen. :/ Dec 11 01:48:31 Hyphenhating. Dec 11 01:48:36 especially a pointless trailing one. ew Dec 11 01:49:33 Levite having any luck? Dec 11 01:49:42 I made a JS interface once... I think lasserix_ actually helped me out with that one a few months back. Didn't do anything too flashy with it though. Dec 11 01:50:17 lasserix_ yeah, I think it's working now Dec 11 01:50:22 I wish they'd hurry up and add JVM unit testing to AS. I'm getting anxious waiting. Dec 11 01:50:23 cool! Dec 11 01:50:25 and yeah, we have a webdev i keep in contact with but he doesnt seem to be available. want to try for a working model by tomorrow Dec 11 01:50:28 it was just that call to getView that was mucking things up Dec 11 01:50:31 Anxious because I know I'm gonna switch, and it's gonna be painful. Dec 11 01:50:43 Would rather get the pain over and done with. Dec 11 01:50:51 hehe yeah you aren't supposed to call getview manually Dec 11 01:51:02 TacticalJoke: why don't you ? Dec 11 01:51:15 Because I need JVM unit testing. Dec 11 01:53:33 need or want? Dec 11 01:54:20 Need, I'd say. I can run thousands of unit tests in milliseconds. Dec 11 01:54:31 I love regression tests. Can refactor all day long with confidence. Dec 11 01:55:33 Sounds like you need an intervention. Dec 11 01:56:12 My unit tests also serve as documentation in many cases. Dec 11 01:56:21 AH nice Dec 11 01:56:30 Hello Dec 11 01:56:32 Jesperhead: well, since you can probably trust yourself to only ship valid html, I'd imagine parsing it would be reliable. parse + replace seems like an OK place to start, maybe even final version. hard to say without trying it :) I wish you luck though Dec 11 01:56:54 TacticalJoke i'm running jvm unit tests inside intellij with robotium, right now Dec 11 01:57:05 So I made a change to my code to move things past the opening code in 2.5 seconds Dec 11 01:57:11 Not Robolectric? Dec 11 01:57:12 Groxx: ok, please tell me if this sounds ok: I edit my HTML to interact with a JSInterface and pull a string from the app when needed. When the activity loads, I first pull the JSON, then load the html which will request the new strings. Yes? Dec 11 01:57:14 actually in the process of converting all my on-device Mockito tests over to robolectric Dec 11 01:57:17 (not robotium) Dec 11 01:57:34 But still, the last 7 users never played a single game Dec 11 01:57:36 Nice. I think AS is adding JVM unit testing soon(ish). Dec 11 01:57:51 just use full IntelliJ. nicer anyway. Dec 11 01:58:01 Are you using Maven or Gradle? Dec 11 01:58:03 gradle Dec 11 01:58:16 Damn. Didn't think you could do that with IntelliJ + Gradle. Dec 11 01:58:30 I'm afraid that my latest version may be broken on some devices.. can anyone do a quick test for me and let me know if it opens? https://play.google.com/store/apps/details?id=com.flyingsoft.safari.jigsaw.free Dec 11 01:58:39 Did you have to do anything complicated to set that up? Dec 11 01:58:57 not "when needed" but when the pages loads. Dec 11 01:59:44 1k downloads nice Dec 11 01:59:45 https://github.com/InQBarna/TableFixHeaders is powerful. it can be used for edit tables (but afaik need some work) [i just changed allocated an EditText instead of TextView in MatrixTableAdapter.java -- first sample app sub-demo) Dec 11 02:00:00 lasserix_ can you let me know if the game opens? Dec 11 02:00:03 TacticalJoke i did because of the project specifics i work on (kind of a bitch when you have your own framework jar) but for a normal use case, no Dec 11 02:00:07 my friend has trouble on his experia Dec 11 02:00:14 their deckard-gradle project works great, right out of the box Dec 11 02:00:16 and on his.... nexus I think Dec 11 02:00:23 *sample project Dec 11 02:00:29 Jesperhead: basically. it means you'd show something other than the webview while it loads (presumably quick, but that's not a guarantee, especially on old devices - writing could lock the filesystem). in some ways that's probably better than assuming the webview loads quickly and having it wait on the json load. Dec 11 02:00:32 but he can't get adb devices to detect his phones. Dec 11 02:00:35 Agamemnus: on my n5 it just is a green screen and says swipe down from the top Dec 11 02:01:06 swipe down from the top? Dec 11 02:01:15 Groxx: Yeah onPreExecute pDialog will be fine. Most strings are small and SHOULD dl quite quick. Dec 11 02:01:18 which is terrible ui Dec 11 02:01:19 Jesperhead: or just yolo and leave it blank while it loads. tbh it seems like most apps do that :) Dec 11 02:01:25 cause it pulls my notification bar down instead Dec 11 02:01:26 hahahaha I hate that Dec 11 02:01:33 I don't understand what that means Dec 11 02:01:39 title bar Dec 11 02:01:41 Jesperhead: me too, though it _is_ easier :) Dec 11 02:01:51 if you swipe down from the top it opens the title bar/ notification bar Dec 11 02:02:01 also i dont know which way is up because its all a green screen Dec 11 02:02:04 You mean your phone's title bar? Dec 11 02:02:05 Groxx: thank you very much for this little pow wow. I feel a bit better about this now. Dec 11 02:02:07 but it does nothing but open my title bar Dec 11 02:02:07 yeah Dec 11 02:02:11 Shit. Dec 11 02:02:23 obviousily you didn't think that one thru? Dec 11 02:02:36 It works on my device and others'. Dec 11 02:02:44 swipign down from the top? Dec 11 02:02:52 you are using fullscreen, it will always open the title bar Dec 11 02:02:57 Weird. I thought IntelliJ, like Android Studio, couldn't do JVM unit testing with Gradle. Dec 11 02:03:05 I might as well wait for AS now, anyway. Dec 11 02:03:06 It's not supposed to be a green screen. Dec 11 02:03:17 It's supposed to you know, start the game. Dec 11 02:03:41 Jesperhead: heh, glad I could chat then :) good luck. fwiw "plain" pages + js interface + giving the web-app data that way seems like a reasonably simple + reliable way to do it. Dec 11 02:03:43 Can you do a little bit more debugging for me? I have a signed debug version. Dec 11 02:03:56 I just need to see if you have any errors in Chrome.. Dec 11 02:04:10 ? Dec 11 02:04:18 Groxx: Encouragement helps a lot. I feel overwhelmed quite frequently. Dec 11 02:04:36 lasserix_: it's a Javascript game, so any Javascript errors will pop up in chrome://inspect Dec 11 02:04:43 but only if it's a debug-release version Dec 11 02:04:49 TacticalJoke IntelliJ 13 and 14 definitely can. definitely nicer in 14 tho Dec 11 02:04:54 umm Dec 11 02:04:57 haven't tried it in AS so i dunno what the issue there is Dec 11 02:05:01 Jesperhead: heh, I know the feeling :) it's a bit of a tower of things to do, but yeah. I've written so much worse. Dec 11 02:05:02 imight be down to do that later Dec 11 02:05:21 sarbs: Nice. Dec 11 02:05:32 JakeWharton: If you had to guess, when do you think JVM unit testing will be ready in Android Studio? Dec 11 02:05:42 It'll only take 2 minutes Dec 11 02:05:44 Plz Dec 11 02:05:44 Are we there yet? Dec 11 02:05:46 If you guess, I won't quote you on it. :D Dec 11 02:05:53 I will pm you with a link. Dec 11 02:08:30 TacticalJoke: 4 months Dec 11 02:09:09 Whoa, okay. Dec 11 02:09:11 by that time, Eclipse integration will be a rotting corpse D: Dec 11 02:09:13 I was thinking days/weeks. ;o Dec 11 02:09:20 lol Groxx Dec 11 02:09:36 TacticalJoke: don't use waiting for AS as an excuse, now get to making that reddit app! Dec 11 02:09:42 I'm making it. lol Dec 11 02:09:47 In fact, switching IDE right now would be annoying anyway. Dec 11 02:09:59 16 weeks Dec 11 02:10:02 Eclipse isn't quite rotten yet. Dec 11 02:10:03 112 days Dec 11 02:10:09 Thanks. lol Dec 11 02:10:09 Eclipse never ripened Dec 11 02:10:38 well I was able to throw the album art scanning to the background so hurraay! Dec 11 02:10:42 JakeWharton: Is there really that much work for them to do? I thought it was largely flipping a switch. Dec 11 02:10:50 why would you think that? Dec 11 02:10:52 Like, I thought their IntelliJ base already had the functionality. Dec 11 02:10:59 More or less. Dec 11 02:11:02 and they use that functionality for instrumentation tests Dec 11 02:11:12 IntelliJ has no concept of multiple, independent test source sets Dec 11 02:11:13 not from what i've seen digging around in the code it doesn't Dec 11 02:11:16 I see. Dec 11 02:11:35 IntelliJ knows one source set for main code and one source set for test code per module Dec 11 02:11:35 to scan album art from mp3's take about 2.5 seconds Dec 11 02:11:41 Well, by the time it's ready, my project will probably be somewhat settled. Dec 11 02:11:48 Okay, that makes sense. Dec 11 02:12:09 My project is currently at the "Implement all the things" stage, so I'm kinda happy not to have to immediately switch. Dec 11 02:13:02 yes we are the advanced noobs, we don't need no stinkin AS Dec 11 02:13:19 I might try what sarbs said, though. It'd be interesting to see IntelliJ + Gradle running JVM unit tests for Android code. Dec 11 02:13:24 I'll wait till I'm pro enough to whine about eclipse Dec 11 02:15:46 I wonder why IntelliJ can do this but Android Studio can't? I guess the latter has had the functionality ripped out? Dec 11 02:16:26 because google knows how to take a good thing and mess it up? Dec 11 02:17:34 it's weird to mow how AS is such a crappy mac app, considering all the screenshots from google are of the mac version Dec 11 02:17:45 it doesn't even use the native mac controls Dec 11 02:18:22 eclipse is nasty but at least it doesn't pretend to be native Dec 11 02:18:37 I'm not a fan of the look of the widgets in IntelliJ on Windows. Dec 11 02:18:59 they need to write the IDE in C++ and QT Dec 11 02:19:12 i'm sure Jetbrains will get right on that... Dec 11 02:19:33 Microsoft should Dec 11 02:19:43 they already have Visual Studio Dec 11 02:19:58 now that's a snappy IDE compared to AS or Eclipse Dec 11 02:20:22 again, i don't use AS, but IntelliJ seems pretty comparably snappy to VS Dec 11 02:20:25 and i use both Dec 11 02:20:41 sarbs: you must have 8 GB ram or more Dec 11 02:20:44 but i don't wanna get into an ide religion war yet again, gotta split Dec 11 02:20:48 16 Dec 11 02:20:54 Hmm, this plugin claims to support IntelliJ 14: https://github.com/evant/android-studio-unit-test-plugin Dec 11 02:21:03 yeah I got 4 GB ram on my laptop and AS is slower than Eclipse Dec 11 02:21:11 But why would it be needed if IntelliJ 14 with Gradle supported JVM unit tests? Dec 11 02:21:29 There's also discussion of IntelliJ 14 users using this plugin. Dec 11 02:22:35 I hate not understanding stuff. Dec 11 02:22:39 It's painful. Dec 11 02:22:58 Problem is, sometimes the means of understanding it is even more painful. Dec 11 02:24:17 don't you love it when you are debugging and AS displays wrong lines. Dec 11 02:28:00 I'll switch to AS eventually but I have to ship this app first Dec 11 02:29:39 huh? the whole goal of eclipse and swt is to pretend to be native Dec 11 02:30:18 well it fails miserably Dec 11 02:30:25 there are at least 4 things wrong with this window https://dl.dropboxusercontent.com/u/24899691/m/Screen%20Shot%202014-12-10%20at%208.24.17%20PM.png Dec 11 02:30:44 ok Tactical Joke. I need help again, If you don't mind Dec 11 02:31:23 pfn: they might as well bastardize it, since android itself is a bastard of java ;) Dec 11 02:31:26 I can try but I can't guarantee. Dec 11 02:31:56 shmooz, not so much a bastard, but an generally compliant fork Dec 11 02:32:22 weird, these eye drops I'm using are leaving an aftertaste in my mouth Dec 11 02:32:46 I suppose a bastard on the basis of illegitimacy Dec 11 02:33:10 shit! Dec 11 02:33:33 has anyone used https://developer.android.com/training/system-ui/immersive.html ? Dec 11 02:37:14 I installed Eclipse Luna, Downloaded the adt from the HTTPS link, downloaded the tools with Android SDK Mananger and restarted eclipse Dec 11 02:37:32 but I dont havr the option to create a new Android project Dec 11 02:37:48 Downloaded ADT? Dec 11 02:37:57 Did you download ADT via Help > Install New Software? Dec 11 02:38:01 yes Dec 11 02:38:59 Do you see "Android Development Tools" if you go to Help > Installation Details? Dec 11 02:40:29 I do Dec 11 02:42:57 File > New > Android Application Project should be there. Dec 11 02:43:06 What if you go File > New > Other? Is there an Android category. Dec 11 02:45:03 Yes there is an android group under the second option Dec 11 02:45:41 Does it contain "Android Application Project"? Dec 11 02:46:15 Yes. Is there a way i get it to show up when I go to File > New > ? Dec 11 02:46:26 Or at least set up a keyboard shortcut Dec 11 02:46:40 Not sure. Dec 11 02:47:28 Ok but Thank you so much for helping me find it. Dec 11 02:47:38 Perhaps try this: Type Ctrl+3 and then type [Preferences (Android)] and then hit Enter. Dec 11 02:47:46 See whether the SDK directory is set up correctly. Dec 11 02:47:55 I was about to go nuts. I need to finish an app by the end of the week Dec 11 02:48:10 (Of course, don't type the square brackets. :) Dec 11 02:48:12 No worries. Dec 11 02:49:15 Lol. Ofc I typed them Dec 11 02:49:39 Sorry, I have a habit of using them. lol Dec 11 02:52:40 SDK was already set up correctly Dec 11 02:52:46 still no dice Dec 11 02:53:06 but at least its there, its just not where I'd like it to be Dec 11 02:53:20 Does it work? Dec 11 02:53:21 I'm working on getting oauth tokens passing from an android app to a webserver. I can get a correct token using audience:server:client_id: but I need offline access so I tried oauth2:server:client_id: but that gives Wrong number of segments in token when I try to validate it. Any ideas? Dec 11 02:53:22 The menu item. Dec 11 02:53:41 It might be a good idea to check whether you can build and run an Android app. Dec 11 02:54:07 waterfoul: I tried that myself but didn't work right... JacobTabak should know as he did that. Dec 11 02:56:40 nope. dpesn't wprk Dec 11 02:57:31 actually it does i just get the same error from yesterday Dec 11 02:57:41 About AppTheme? Dec 11 02:57:52 mixing apklib and aar has been such a nightmare Dec 11 02:58:29 YEs Dec 11 02:58:32 No resource found that matches the given name 'Theme.AppCompat.Light'. **** ENDING LOGGING AT Thu Dec 11 02:59:58 2014