**** BEGIN LOGGING AT Wed Apr 29 02:59:59 2015 Apr 29 03:00:02 i don't much care why it didn't work, i just give it a chance and a retry button Apr 29 03:00:14 So can someone explain to me how retry works in okhttp then? Apr 29 03:00:40 Because if it fails from no data connection, will it retry automatically from that? Apr 29 03:01:54 I don't think OkHttp retries at the application level. Apr 29 03:05:17 eghdk: I'm guessing this is the limit of OkHttp's retrying: http://square.github.io/okhttp/javadoc/com/squareup/okhttp/OkHttpClient.html#setRetryOnConnectionFailure-boolean- Apr 29 03:05:36 (Which is true by default.) Apr 29 03:06:44 Aha. Thanks. I guess I'll start my implementation. Thanks all. dragorn CedricBeust TacticalJoke and JakeWharton and anyone else I missed Apr 29 03:13:14 eghdk: In case another data point helps, I'm working on an app that talks to a server I don't own. The best my app can do is make the request and hope for the best, notifying the user if the request didn't succeed (and giving them the opportunity to retry or whatever). Apr 29 03:16:11 And, not wanting to annoy the user, toasts are not involved at any stage. :D Apr 29 03:17:37 pfft toasts ... snacks ! Apr 29 03:21:03 BlindWiz: the activity's onGenericMotionEvent will only be called if _nothing_ else captures the event. it's not usually what you want. Apr 29 03:24:38 might be different for glass though. but the same rule applies - it's the very last place that's tried, and only if nothing else displays interest. probably something else is capturing the events first. Apr 29 03:25:42 groxx this might be the case. How can I make my app only listen to my gestures when in my app? Apr 29 03:26:20 if you can't answer this for glass, thats ok, I've seen most all things are simaler to glass from the android sdk for phones/tablets Apr 29 03:27:27 BlindWiz: dunno. if you've got a scrollable text view or a button or something they may be interfering. Apr 29 03:28:17 I believe it's also focus related on glass, but that's just from skimming the docs. I've never done glass dev. Apr 29 03:28:51 I have an OkHttp question. Apr 29 03:29:06 It seems that I shouldn't call Dispatcher.cancel on the main thread, because it might block, but one thing I notice is that Dispatcher.cancel and Dispatcher.enqueue are both synchronized methods. So, if I'm right about Dispatcher.cancel blocking, it seems that Dispatcher.enqueue could also block. Apr 29 03:29:36 I guess the question is "How can I solve this riddle?". :) Apr 29 03:30:05 by never calling cancel :D Apr 29 03:30:18 groxx thanks for that. I thinkyou've been a big help. I think you are right about the focus. Apr 29 03:30:36 I will focus my research on the app's focus Apr 29 03:30:46 Thanks. Apr 29 03:31:18 Another possibility is that Dispatch.cancel doesn't block, but if I try to call it on the main thread then I get a NetworkOnMainThreadException (possibly because it calls Socket.close). Apr 29 03:31:21 Dispatcher* Apr 29 03:33:13 then don't call on the main thread Apr 29 03:35:27 <[1]Tricknology> ay ideas? Apr 29 03:35:31 <[1]Tricknology> sry got disconnected.. Apr 29 03:37:46 <[1]Tricknology> ha.. I had to set the background of the textview to the same color.. Apr 29 03:37:46 <[1]Tricknology> lulz Apr 29 03:41:05 One solution to my problem would be to say "okHttpClient.newCall(request).enqueue(callback);" on a background thread, but that seems crazy (especially since the OkHttp documentation doesn't suggest this is needed) and it'd complicate my code significantly. Apr 29 03:42:58 Another solution is to avoid calling OkHttpClient.cancel, and keep track of the calls myself and cancel them manually, but again that creates a lot of added complexity (as well as duplicating OkHttp code). Apr 29 03:43:07 what are you trying to solve? Apr 29 03:43:15 question: i have some *.so files I'm trying to link into an android project (in android studio) what is the proper way to add native code into android linker step? Apr 29 03:44:03 JakeWharton: I'm assuming that Dispatcher.cancel is blocking. I see that Dispatcher.cancel is synchronized and Dispatcher.enqueue is synchronized. I'm calling Dispatcher.enqueue on the main thread and I'm concerned that it might block while Dispatcher.cancel is running. Apr 29 03:44:34 s/blocking/potentially slow/ Apr 29 03:46:29 Sorry, got disconnected. Didn't see any reply. Apr 29 03:46:48 My message, in case it didn't go through: I'm assuming that Dispatcher.cancel is blocking. I see that Dispatcher.cancel is synchronized and Dispatcher.enqueue is synchronized. I'm calling Dispatcher.enqueue on the main thread and I'm concerned that it might block while Dispatcher.cancel is running. Apr 29 03:57:32 Hmm, this is relevant: https://github.com/square/okhttp/issues/869 Apr 29 03:57:42 Jesse Wilson says "this particular close call is fast and non-blocking". Apr 29 04:01:45 I wonder what "mostly a false alarm" (as opposed to "a false alarm") means, though. Apr 29 04:01:51 are you experiencing problems? Apr 29 04:02:32 If you introduce the concept of "falsiness", I guess he means it's a "falsy alarm" Apr 29 04:02:35 Nah, although I haven't yet put this particular code under heavy use yet. I guess I'll just have to try it. Apr 29 04:03:08 <_genuser_> lol gradle is like sabotaging my eclipse builds too. now eclipse is getting slower. Apr 29 04:21:15 _genuser_ maybe daemon eating yur ramz Apr 29 04:27:39 what's a good way to implement group chat under a certain ID? (i.e. no adding people, just join group ID 123). I have my whole app working in IRC (it just joins the room #room-123) but I want to get it right before releasing and I fear IRC won't scale well. Apr 29 04:29:36 duncannz well, set up your own irc server :) Apr 29 04:29:55 g00s: I have Apr 29 04:30:15 then in that case, time for some load testing Apr 29 04:30:18 It connects to my own IRC server, and joins the room #room-ID. I'm just not sure if it's the best choice. Apr 29 04:30:24 to use IRC Apr 29 04:30:29 irc scales fine Apr 29 04:30:56 Maybe not. the best choice Apr 29 04:31:19 don't use hipchat that's for sure Apr 29 04:32:02 HipChat sucks, why don't use though Apr 29 04:32:03 so in freenode, there are a number of irc servers - is there some master in the cluster - how are they arranged topography wise ? Apr 29 04:32:10 their client so shitty Apr 29 04:32:24 g00s, irc is a star network Apr 29 04:32:42 for example, is it possible to let users choose a nickname that isn't taken in the channel they are joining, but is taken somewhere else on the server? Apr 29 04:32:44 interesting Apr 29 04:33:09 duncannz, no Apr 29 04:33:29 short of prefixing a random number to the username anyway haha Apr 29 04:33:30 read this http://www.irc.org/history_docs/TheGreatSplit.html Apr 29 04:33:46 pfnQ: doesn't scale Apr 29 04:34:23 https://www.atlassian.com/purchase/product/com.atlassian.hipchat.server note the maximum is 5000 users Apr 29 04:35:02 I'm using ngircd on my server Apr 29 04:35:09 at the moment anyway, I might change away from irc altogether Apr 29 04:35:20 wabz, given that pricing wouldn't use it either Apr 29 04:35:26 irc is time-proven :) Apr 29 04:35:48 doesn't matter if it doesn't scale or not Apr 29 04:49:44 huh, i thought AS autocompleted custom attrs Apr 29 04:55:19 In which context? I think it does when you type "?attr/" but not when you type "app:". Apr 29 04:55:43 Though I could be misremembering. :) Apr 29 04:55:48 Hmm, yeah, that's not working here either. Can't remember whether that worked before. Apr 29 05:07:17 TacticalJoke i'm still very confused by this. so i have 2 themes, light and dark. is this right for my light theme: inherits from Theme.AppCompat.Light.NoActionBar , and toolbar's android:theme=ThemeOverlay.AppCompat.Light ? Apr 29 05:10:13 <_genuser_> g00s: I see you're around. having fun? Apr 29 05:10:22 no Apr 29 05:11:15 <_genuser_> :(. all work and no play makes g00s grouchy? Apr 29 05:11:29 man i hate this themeing shit Apr 29 05:11:45 if you saw ThemeOverlay.AppCompat.Dark.ActionBar wouldn't you expect ThemeOverlay.AppCompat.Light.ActionBar ? Apr 29 05:11:52 <_genuser_> oh, theming an app? Apr 29 05:12:11 <_genuser_> yeah, I see what you mean. I have seen mismatched dark/light theme stuff before. Apr 29 05:12:14 <_genuser_> quite frustrating. Apr 29 05:13:07 "Theme overlay that replaces colors with their dark versions and replaces the normal control color, which by default is the same as the secondary text color, with the primary text color." Apr 29 05:13:14 this doesn't mean crap to me Apr 29 05:13:46 <_genuser_> heh Apr 29 05:14:03 we need to go deeper Apr 29 05:14:37 <_genuser_> I saved the hassle in one of my apps by going custom UI. not themes used. bare minimum black activities with mostly transparent UI elements and all custom icons. Apr 29 05:15:19 g00s, how complex are your themes that you have so much trouble? Apr 29 05:15:46 i have light and dark, but a tester told me they were fucked up on 5.+ (i'm using 4.4) Apr 29 05:16:50 Themes for what? Apr 29 05:17:08 my app :) Apr 29 05:17:22 Is it released? Apr 29 05:17:27 no Apr 29 05:17:40 Will it be? Apr 29 05:17:43 yes Apr 29 05:17:46 Nice Apr 29 05:17:48 Is it useful? Apr 29 05:17:49 I've had little problems with themes across most of the apps I've worked on... Apr 29 05:18:04 and customizations vary pretty wildly Apr 29 05:18:04 andreyonadam not really Apr 29 05:18:06 pfnQ: Same, I don't care about theme. Until recently, people started uninstalling. Apr 29 05:18:21 g00s: Ohh. keep us updated regardless lol. Apr 29 05:18:29 I theme all of my apps Apr 29 05:18:41 <_genuser_> g00s: wait, it won't be useful and you're losing sleep over it? Apr 29 05:18:43 <_genuser_> what's the deal? Apr 29 05:18:45 :P Apr 29 05:18:51 lightly at least Apr 29 05:19:11 my dark theme is supposed to be just red tints, to preserve night vision Apr 29 05:19:16 I have bigger problems to focus on than style. Apr 29 05:19:41 mostly, nowadays, I just theme the action bar, status and nav bar colors Apr 29 05:20:20 I had a huge margin. Looks ugly. Going to remove it in the next version. Apr 29 05:20:30 First I have to improve the background feature of the app. Apr 29 05:20:55 Not sure if I should switch to RX from using a simple Thread. Apr 29 05:21:00 pfnQ ok, so i guess you should know this then: are you settinh android:theme on the Toolbar ? Apr 29 05:22:18 g00s: Hmm, I'm not sure. I haven't done a light theme yet. But I kinda came to the conclusion that ThemeOverlay.AppCompat.ActionBar and ThemeOverlay.AppCompat.Dark.ActionBar are for the Toolbar, while ThemeOverlay.AppCompat.Light and ThemeOverlay.AppCompat.Dark are for the overflow menu. Apr 29 05:22:29 But I could be totally wrong. Especially since this is almost entirely undocumented. :D Apr 29 05:23:11 I think the default is to use ThemeOverlay.AppCompat.ActionBar for everything. Apr 29 05:23:19 I mean for Toolbars in any theme. Apr 29 05:24:16 As far as I know, the only reason ThemeOverlay.AppCompat.Dark.ActionBar exists is to have the "dark ActionBar" look, but I can't remember the result of my trying this. Apr 29 05:24:24 TacticalJoke OK, so your main app / activity theme is Theme.AppCompat.Light.NoActionBar or Theme.AppCompat.NoActionBar, right ? Apr 29 05:24:50 Yeah. Apr 29 05:24:55 and then you android:theme the toolbar with one of those ThemeOverlay* ones Apr 29 05:26:05 Right. Apr 29 05:26:14 https://lh3.googleusercontent.com/U-PmdPv-NANSRhxj9CnHDOvu7zOpjbOlU8fbFQ3L__D6DzvGBEUx-Hwx3J14Q8AJc_8=h310-rw Apr 29 05:26:20 simple stuff Apr 29 05:26:36 It's funny how we can use android:theme but not android:popupTheme. Apr 29 05:26:57 when i switched to 21.1.0 my light theme toolbar dissapeared :| lol Apr 29 05:27:03 Damn. lol Apr 29 05:27:11 Did you switch to using android:theme? Apr 29 05:27:31 Man, this stuff ought to be so simple. Apr 29 05:27:35 pfnQ that looks like hell Apr 29 05:27:35 It should be pure simplicity. Apr 29 05:27:39 Why is it so freaking complicated? Apr 29 05:28:25 pfnQ the nav bar at the bottom has white icons, and your toolbar has black Apr 29 05:28:26 Okay, I think I get it. Apr 29 05:28:36 ThemeOverlay.AppCompat.ActionBar will give you black text and ThemeOverlay.AppCompat.Dark.ActionBar will give you white text. Apr 29 05:28:40 I think that's about it. Apr 29 05:29:08 IS RX persistant? Apr 29 05:30:08 g00s: Which part of your toolbar theme disappeared? Apr 29 05:30:12 g00s, neither I nor users care Apr 29 05:30:13 Do you mean the background colour of the toolbar? Apr 29 05:30:20 TacticalJoke yeah Apr 29 05:30:25 g00s, anyone that does is free to submit a pull request Apr 29 05:30:26 You have to set that manually. Apr 29 05:30:38 android:background="?attr/colorPrimary" Apr 29 05:30:39 i just used the default light grey before Apr 29 05:30:47 Ah, did it change from light grey to white? Apr 29 05:31:06 yeah Apr 29 05:33:02 * g00s isn't going to bed until toolbars are right damn it Apr 29 05:33:41 Hmm, trying to figure this out. Apr 29 05:33:54 #ffefefef Apr 29 05:34:03 That's almost white. Apr 29 05:34:39 TacticalJoke so the android:theme's i should be using for toolbar all follow the pattern ThemeOverlay.AppCompat***ActionBar ? Apr 29 05:34:51 Yeah, I think so. Apr 29 05:35:24 huh, i used @style/ThemeOverlay.AppCompat.Light and @style/ThemeOverlay.AppCompat.Dark Apr 29 05:35:33 wtf are those for then :P Apr 29 05:35:42 I think those are for the overflow menu. Apr 29 05:35:49 d'oh Apr 29 05:35:52 I could be wrong, though. I just came to this conclusion weeks ago and forget why. Apr 29 05:36:51 g00s, unless your app is completely done, minor. theme issues are irrelevant Apr 29 05:37:26 the dark theme has to be only blacks and shades of red, or its a failure Apr 29 05:37:34 the goal is to preserve night vision Apr 29 05:37:58 there can't be any grey / white things going peak-a-boo Apr 29 05:38:29 the light theme is for sun, bright conditions so its more lenient Apr 29 05:38:42 If you want black text, I think the solution is to use ThemeOverlay.AppCompat.Dark.ActionBar. Apr 29 05:38:45 if something is dark grey when it should be black, doesn't matter ... yet Apr 29 05:38:46 <_genuser_> so what is preserving night vision? stuff that's easy on the eyes in the dark? No strain on teh eyes in low light environment? Apr 29 05:39:12 _genuser_ yeah Apr 29 05:42:27 Actually, that seems wrong. That gives you black text only with a light app theme. Apr 29 05:43:48 Does anybody have a navigationdrawer example in material style without a big picture as header on top? Apr 29 05:45:46 _genuser_, mostly red hues, no blues Apr 29 05:46:41 TacticalJoke what happened ? Apr 29 05:47:22 <_genuser_> intersting stuff. Apr 29 05:47:46 i was reading us military was switching over to NV green, but the people I discussed said definitely red, lol Apr 29 05:49:06 g00s: I think ActionBar gives you black text in a light theme and white text in a dark theme, while Dark.ActionBar gives you white text always. Apr 29 05:49:16 But I kinda lost hope and switched to something else. Apr 29 05:50:35 red is good for night Apr 29 05:51:16 your eye will quickly re-adapt to night vision after looking some red, but not so quickly after looking green or other "brighter" colors Apr 29 05:51:26 order of minutes at least Apr 29 05:52:09 <_genuser_> I take it the military doesn't want to use the "flash" app on their phones to light the path!! Apr 29 05:52:16 lol _genuser_ Apr 29 05:52:23 <_genuser_> you can almost imagine the horror Apr 29 05:52:36 <_genuser_> some n00b soldier turns on his flash app during a stakeout or something. Apr 29 05:52:42 On the plus side, I think I found a nice solution to that OkHttp thing. I can keep a list of calls myself and mutate it only on the main thread (and clone it to give to the background thread). Memory safety + no race conditions + simple code = win. Apr 29 05:53:03 simple is just calling cancel Apr 29 05:53:06 and worrying about other things Apr 29 05:54:20 i don't think that complexity gives you any value Apr 29 05:57:42 <_genuser_> JakeWharton: when doing .fit().centerInside() on an image that's fullscreen I start seeing out of memory errors. with just one image. Apr 29 05:57:55 <_genuser_> doing .fit().centerCrop in a gridview with 20+ images, I don't see that. Apr 29 05:58:09 <_genuser_> is there's a difference in how .centerInside and .centerCrop handle image resizing? Apr 29 05:59:17 <_genuser_> my current fix was to .fit().centerInside().resize() where the biggest side is reduced to 500 and the other side scaled proportionally. that seems to work just fine. no OOM errors even on 20 pictures sliding in a full screen viewpager Apr 29 06:01:39 In theory center inside should save more memory Apr 29 06:01:59 Can't really be sure, all that stuff happens deep in Android's native code Apr 29 06:02:16 We just give it a matrix to transform with. Apr 29 06:02:48 <_genuser_> well, I can't render the image full size anyway. that would be crazy. So resize (500,400) seems fine. Apr 29 06:03:53 <_genuser_> I'm gonna be using BitmapRegionDecoder for zoom ins and pans anyway, so it shoudln't lose too much on user experience. Apr 29 06:09:03 hey guys, does AS start "flashing" for anyone all of a sudden? Apr 29 06:09:19 hey guys, does AS start "flashing" for anyone all of a sudden? Apr 29 06:09:27 shipit: Yes. Yes. Apr 29 06:09:56 <_genuser_> it does, when you switch to it, it's nothing. Apr 29 06:10:41 any work around? Apr 29 06:11:03 it was working fine all day and now it's just started acting up Apr 29 06:11:19 doesn't go away even after restart - wtf Apr 29 06:11:20 "I've been sitting here waiting for two hours for your attention and you call it nothing. Fine. Okay." Apr 29 06:16:15 <_genuser_> two hours. how cute. you're making it look sweet. Apr 29 06:16:18 <_genuser_> it's more like 30min. Apr 29 06:36:43 is compile 'com.netflix.rxjava:rxjava-core:1.0.9' missing from gradle repo? Apr 29 06:37:23 hi all, any ever work with glass apps? Apr 29 06:39:09 cool http://www.gizmag.com/smartphone-app-diagnosis-sleep-apnea/37232/ Apr 29 06:39:43 secret sauce, signal analysis - so much more fun than messing with themes :D Apr 29 06:42:41 g00s: pft, just play a didgeridoo Apr 29 06:42:43 (http://www.sleepapnea.org/treat/treatment-options/digeridoo.html) Apr 29 06:42:44 :p Apr 29 06:42:52 lolwut Apr 29 06:42:55 I'm glad I'm working on an app whose themes are intended to be uber-simple. Apr 29 06:43:22 JesusFreke interesting ! Apr 29 06:43:44 Digeridoo all the things. (Or digeridon't. :D) Apr 29 06:43:57 Didgeridoo* Apr 29 06:44:16 Seriously, though, it's amazing how much didgeridoo-related stuff there is out there. Apr 29 06:45:17 Or maybe just that there's someone who's somewhat of a didgeridoo fanatic in here that tends to share didgeridoo related stuff :p Apr 29 06:47:56 I wish we had super-lightweight objects. Apr 29 06:48:09 like tuples ? Apr 29 06:48:17 Yeah. Apr 29 06:48:33 Why doesn't android support changing languages in app? Makes no sense Apr 29 06:48:40 just make them out of aerogel Apr 29 06:48:50 they'll be nice and lightweight Apr 29 06:49:13 * g00s wonders what happens with blue laser + aerogel Apr 29 06:49:20 g00s: damn you. Apr 29 06:49:24 JesusFreke for science ! Apr 29 06:49:32 it does. its just hard to do it :) Apr 29 06:50:02 danijoo hi, sorry freenode DC'd yesterday, did that guy ever solve his video issue? Apr 29 06:50:22 no idea Apr 29 06:50:49 ok Apr 29 06:51:02 so anyways i followed your guide, but languages are still not switching Apr 29 06:52:56 maybe because of your custom language thing. dunno. its working for me Apr 29 06:54:57 I love tiny changesets. Single-character changes are the best. Apr 29 06:55:10 "Replace hyphen with dash" Apr 29 06:55:22 remove whitespace from file Apr 29 06:55:49 danijoo I'm using norwegian and english, both quite supported, in addition to the "custom" language Apr 29 07:00:53 no idea what you are doing wrong Apr 29 07:05:09 are the devs/people in #googleglass ever active? Apr 29 07:06:24 i thought glass is dead Apr 29 07:07:26 danijoo i think i found the source of my issue.. the buttons aren't responding to their actionlisteners Apr 29 07:08:40 lol. dont you have a visual feedback? Apr 29 07:08:49 ah well listeners Apr 29 07:08:53 logging is everything ;) Apr 29 07:09:23 I have a Timber.d("xzy clicked") everywhere Apr 29 07:10:34 well i do have visual feedback, but log cat isn't giving me any prints from inside the events Apr 29 07:10:46 glass isn't dead. Apr 29 07:10:48 what kind of listener is it> Apr 29 07:10:49 and logcat is working, i tried putting one in the oncreate section of the main act. Apr 29 07:10:58 onclick for imgbutton Apr 29 07:11:06 show the code Apr 29 07:11:43 http://pastebin.com/YNuKJ2Er Apr 29 07:12:01 i strongly suspect the fault lies at the lines where i define the buttons Apr 29 07:13:17 i might be blind today but it does not look wrong for me Apr 29 07:14:21 danijoo i think i figured it out, just need to test, i was using getActivity() to get a ref. to the buttons, when i should've been using the rootView thats inflated Apr 29 07:14:37 oh yeah. Apr 29 07:14:40 thats right Apr 29 07:14:44 ok cancel that, not working Apr 29 07:14:55 i dont see those bugs in pastebin when its that early in the morning ^^' Apr 29 07:15:05 wow waity Apr 29 07:15:20 you cant use getView() where you use it right now Apr 29 07:15:33 getView() returns null in onCreateView() Apr 29 07:15:53 yeah i was tired yesterday Apr 29 07:16:09 take line 43 to 85 and move it to onActivityCreated Apr 29 07:16:35 or move it after kube 87 and use rootView.findview... instead of getView().findView.. Apr 29 07:18:17 http://pastebin.com/fyqYKFtZ I did that, and it's still not working.. strange thing is that not even the log call on the onCreateView shows up Apr 29 07:27:27 danijoo new guess, im not creating the fragments properly and im only inflating their views Apr 29 07:28:39 jutsi, use the debugger Apr 29 07:29:01 you cant just inflate views without their fragments Apr 29 07:29:06 danijoo thats exactly my problem, the log won't show anything.. I guess i could try break points Apr 29 07:29:13 You don't need that empty constructor, jutsi. The Java compiler provides one by default. Apr 29 07:30:38 yeah i was right.. i put a breakpoint inside the event and it doesn't break Apr 29 07:42:29 jutsi, whats your current code? Apr 29 07:42:35 did you fix the getView()? Apr 29 07:42:42 yeah Apr 29 07:42:56 show it. also show the corresponding xml Apr 29 07:43:06 and how you add that fragment to its activity Apr 29 07:43:17 problem is im using a circular viewpager, which works by creating duplicates to create the illusion of being circular.. I tried making the buttons static, but to no avail Apr 29 07:43:32 wow.. Apr 29 07:43:43 dont make anything that has a context static Apr 29 07:43:46 never Apr 29 07:44:16 yeah this whole thing is badly designed.. I don't understand why you need to be hacky to achieve a circular viewpager.. and multiple languages for that matter Apr 29 07:46:04 Interesting: http://www.reddit.com/r/androiddev/comments/3477yf/psa_devs_google_told_me_it_is_ok_to_use_an_alias/ Apr 29 07:46:24 Claims that Google said he/she can use a PO box. Apr 29 07:46:50 could be fake Apr 29 07:47:52 didnt they explicitly say you cant in the past? Apr 29 07:49:09 No email adress, and I doubt a google employee would send mails without that typical stuff at the bottom of mail. Apr 29 07:49:31 TacticalJoke: why should that be an issue? Apr 29 07:49:36 Aka sincerily, Name, Telephone, department Apr 29 07:50:55 Use a precise, accurate address to describe your business location. PO Boxes or mailboxes located at remote locations are not acceptable. Apr 29 07:50:55 Learn more Apr 29 07:50:59 https://support.google.com/business/answer/3038177?hl=en Apr 29 07:51:18 adq, thx Apr 29 07:51:32 not sure it applies explicitly to google dev with paid app though Apr 29 07:51:42 Jeez, is everyone making a reddit app now? Apr 29 07:51:44 http://www.reddit.com/r/slideforreddit Apr 29 07:51:51 you'd better hurry TacticalJoke Apr 29 07:51:55 i'm still waiting yours ;) Apr 29 07:51:58 lol Apr 29 07:52:06 (still using reddit for fun) Apr 29 07:52:10 Afaik the reason for this is that POs are not considered a physical address in some european countries Apr 29 07:52:18 yup danijoo Apr 29 07:52:27 related to some new european law iirc Apr 29 07:52:27 germany as an example Apr 29 07:52:54 https://support.google.com/wallet/business/answer/3092801?hl=en also here: Apr 29 07:52:55 Invalid P.O. Box number address: Currently, we do not allow merchants to register their account using a P.O. Box. Please attempt registration again using a physical address rather than a P.O. Box. Apr 29 07:53:08 i think that is sufficient to discard the reddit post above Apr 29 07:53:43 trolls be everywhere? Apr 29 07:53:59 <_genuser_> anybody use preferences? Apr 29 07:54:03 A lot of reddit apps focus on stuff just looking material, though. Apr 29 07:54:14 _genuser_, nobody Apr 29 07:54:16 TacticalJoke when i set the navigation listener for the toolbar to { finish() } the parent activity still flickered. weird when i press back it doesn't though Apr 29 07:54:17 It's material first and functionality second. Apr 29 07:54:37 I see them as making something entirely different. Apr 29 07:54:42 <_genuser_> I'm trying to setup a simple preference item (not a listpreference, CheckBoxPreference, etc.) Just a and capture the click on it. and it's just not firing. but it doesn't gneerate any exceptions while setting it up either. Apr 29 07:54:48 g00s: Hmm. Apr 29 07:54:49 <_genuser_> danijoo: what do you mean nobody? Apr 29 07:55:02 g00s: You did remove parentActivityName, right? Apr 29 07:55:11 _genuser_, dumb and unnecessary intro question, you should avoid such intro questions in the future Apr 29 07:55:14 _genuser_, I mean I want to troll you because you askes such an obvious question Apr 29 07:55:16 just fyi Apr 29 07:55:19 oh maybe i put that back, ffs Apr 29 07:55:38 <_genuser_> danijoo: pfft, too used to yapping in here. :) I see whatyou mean. Apr 29 07:55:52 _genuser_, im pretty sure g00s can tell you the answer. he had the same issue yesterday :) Apr 29 07:56:36 doesn't seem like my problem ... Apr 29 07:56:45 * ravilov has successfully used basic s with click/tap capture in the past Apr 29 07:57:03 it is probably dowm to your code somehow Apr 29 07:57:13 _genuser_, are you doing something like setOnPreferenceChangeListener(new PreferenceChangeListener() {...}) ? Apr 29 07:57:23 oh that Apr 29 07:57:25 ha! Apr 29 07:57:28 :) Apr 29 07:57:56 finally rung a bell :p Apr 29 07:58:06 you want http://developer.android.com/reference/android/preference/Preference.html#setOnPreferenceClickListener(android.preference.Preference.OnPreferenceClickListener) Apr 29 07:58:32 * ravilov thought that would be obvious Apr 29 07:59:11 ravioli for dinner is obvious choice Apr 29 07:59:28 if you want the click, set up the click listener, why set up a change listener on a preference that has no concept of change? Apr 29 07:59:34 <_genuser_> danijoo: http://pastebin.com/raw.php?i=dirtMdEP Apr 29 07:59:39 does anybody know a fix to this issue? https://code.google.com/p/android/issues/detail?id=20791&can=5&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars Apr 29 07:59:40 <_genuser_> that's what I'm doing to set it up. Apr 29 07:59:44 or at least a workarround Apr 29 07:59:54 danijoo so for google analytics, do we have to check the version of play services on the phone ? Apr 29 08:00:16 g00s, no. It says somewhere that analytics work independent of gps Apr 29 08:00:32 <_genuser_> g00s: yeah, that's exactly what I am using. Apr 29 08:00:34 yeah but ,,, as GAv4 it uses play services for dispatching Apr 29 08:00:35 https://developers.google.com/analytics/devguides/collection/android/v4/ Apr 29 08:00:44 <_genuser_> g00s: http://pastebin.com/raw.php?i=dirtMdEP Apr 29 08:00:47 "Note: Google Analytics can be used and will work on devices that do not have Google Play Services. In this case you still download and use the Google Play Services SDK and Google Analytics will automatically fall back to local dispatching." Apr 29 08:01:14 right but what if they /do/ have play services - just some crufty old version ? Apr 29 08:01:35 i'm dounting its so smart that it will fall back to local dispatching if there is a version mismatch Apr 29 08:01:50 I hope so Apr 29 08:01:58 but its google. hm :P Apr 29 08:02:04 :) Apr 29 08:02:20 google apps have been known to ask for gps update in the past Apr 29 08:02:39 but not for analytics Apr 29 08:02:45 yeah .. GA is kinda special though Apr 29 08:02:50 true Apr 29 08:03:00 and that "ask for gps update" is not done by the gps sdk itself Apr 29 08:03:06 you have to trigger that yourself Apr 29 08:03:41 yeah I know, that's why I said google apps and not gps itself ;) Apr 29 08:04:02 * g00s wonders what version gms ravilov has .. 1.0 maybe ? Apr 29 08:04:08 Here's a bit of an odd question: Are there any downsides to using the appcompat libraries (other than slightly bigger APKs)? Basically, would best practise be to always use appcompat functionality when available? Apr 29 08:04:40 Chamooze, pretty much everyone is using it right now Apr 29 08:04:59 Fragments of compat are more stable than base fragments Apr 29 08:05:11 also its the only way if you want to go material pre lollipop Apr 29 08:05:30 When you create a new blank-activity project in AS it uses AppCompat now. Apr 29 08:05:36 AppCompat is definitely being pushed by Google. Apr 29 08:05:51 I guess one downside is more complexity and therefore more potential bugs. Apr 29 08:06:03 google shmoogle Apr 29 08:06:14 shmoozle Apr 29 08:06:24 That new reddit app uses a card-view kinda thing. Apr 29 08:06:39 its always funny to fix wrong import of Fragment to SupportFragment, or looking for a bug when its actually that you called getFragmentManager() instead of getSupportFragmentManager() Apr 29 08:06:45 g00s: I just got the themes working on my app, I got a light and dark too, but I'm not using any of that google pushed crap Apr 29 08:06:45 those will drive you crazy Apr 29 08:07:06 AppCompat looks neat, though, shmooz. Apr 29 08:07:16 g00s, 0.5 pre-alpha Apr 29 08:07:21 it seemed easier just using layouts instead of toolbars and whatnotbars Apr 29 08:07:35 with NotificationCompat.Builder, do I have specify an icon for each action? Apr 29 08:07:45 (this making fun of a GB guy is getting kinda old though) Apr 29 08:07:56 danijoo, Fragments are in support-v4 not AppCompat :) Apr 29 08:08:10 But yeah, they're more stable since you don't have to deal with bugs on some Android versions. Apr 29 08:08:40 Chamooze, basically you take an app size hit and get nice cross-device consistent design for that... I call that a good tradeoff :) Apr 29 08:08:52 Mavrik, doesnt v7 depend on v4? Apr 29 08:09:03 Yes, but v4 doesn't on v7 :) Apr 29 08:09:04 I remember something depended on something. ^^ Apr 29 08:09:08 ah Apr 29 08:09:09 g00s, danijoo, can't you guys set up a test case for this? an avd with an older version of gps (gps apks are all over the net) Apr 29 08:09:10 good point Apr 29 08:09:36 You can use new fragments without AppCompat material theme, but then again, Holo looks terribly dated these days Apr 29 08:09:38 Yeah.. I've been trying to create a "pure API" app now, but find myself adding more and more version-specific code. Apr 29 08:09:56 ravilov, I personally just dont care. If there is a small percentage where analytics doesnt fire, its still enough for what I want to know about users Apr 29 08:09:57 Chamooze, whats your minsdk? Apr 29 08:10:00 I think Material looks dated too :D Apr 29 08:10:12 Mavrik: 14 Apr 29 08:10:14 I like the material buttons. So simple and neat. Apr 29 08:10:25 I don't pay attention to the fashion that google pushes on us Apr 29 08:10:30 danijoo, but then you won't ever know just how many of your users have such a situation ;) Apr 29 08:10:36 g00s, back to Symbian with you! Apr 29 08:10:46 things look new one day, dated the next, if you follow that stuff Apr 29 08:11:25 ravilov, its definitly not crashing if its outdated. All it does is not fireing then. Also Im pretty sure google is smart enough to check version before dispatching Apr 29 08:11:39 that loader manager drives me crazy -_- Apr 29 08:11:43 :p Apr 29 08:11:57 I think google should come up with a fresh new design ui and philosophy every other day Apr 29 08:12:06 or at least every tuesday Apr 29 08:14:07 danijoo so u think its worth it then https://developer.android.com/reference/com/google/android/gms/analytics/GoogleAnalytics.html Apr 29 08:14:18 Apr 29 08:14:26 g00s, no I dont think so Apr 29 08:14:27 fallback if gms is too old? Apr 29 08:14:42 People can't use google maps / hangouts / gmail if gms is too old Apr 29 08:14:47 So I wouldn't worry about that too much Apr 29 08:14:53 I think its enough to fall back to local dispatching instead of adding more services and stuff like that to my app Apr 29 08:15:04 g00s, that's mostly if you want to support Kindles :P Apr 29 08:15:13 people might not even care about google services Apr 29 08:15:20 Chamooze: I can understand the motivation. I do think AppCompat is definitely worth being an exception to that rule. Apr 29 08:15:27 just because you happen to use an android device doesn't mean you are devoted to google Apr 29 08:15:32 ravilov, beside those who one-star-rate you if you ask for it ^^ Apr 29 08:15:52 lol Apr 29 08:16:17 but if you distribute only over google play, I think its save to assume that most users have a pretty much up-to-date version of play services Apr 29 08:16:30 I know some people who use android but have cleansed their devices of all the evil google stuff :) Apr 29 08:16:46 and just sideload a trusted handful of apks Apr 29 08:17:14 And those people certanly don't want you sending analytics in the background ;) Apr 29 08:17:16 terrorists you mean Apr 29 08:17:22 More practical question: I want a layout that fills up a percentage of the screen, containing a "grid" of buttons (with a couple of the buttons spanning 2 rows). From what I've read, GridLayout doesn't support weights until API 21 so I fell back to using nested LinearLayouts but getting horrible performance. Any ideas other than using appcompat's GridLayout? Apr 29 08:17:24 :p Apr 29 08:17:24 danijoo, good point, if you are bound to play store anyway then no point in further discussion Apr 29 08:17:33 danijoo, no, more like professional paranoids :p Apr 29 08:17:40 Chamooze, first of all Apr 29 08:17:44 Chamooze, don't use percentage of screen Apr 29 08:18:01 it's practically never necessary and WILL cause you issues with layout performance and design Apr 29 08:18:11 if you MUST... then the only solution is linearlayout or custom viewgroup Apr 29 08:18:22 but... really... you almost certanly don't need a percentage. Apr 29 08:18:43 and that is 99% reliable Apr 29 08:18:46 :p Apr 29 08:18:47 Chamooze, are you nesting layout_weigts? Apr 29 08:19:21 Chamooze: are you nesting two linear layouts ? or linear layout inside gridlayout ? Apr 29 08:19:49 two linear layouts nested shouldn't be a performance problem Apr 29 08:19:50 <_genuser_> g00s: ok, eclipse froze for like 10 minutes. now it's building again. I see I was referencing an incorrect item on screen. Apr 29 08:20:08 ha Apr 29 08:20:17 * ravilov knew it's down to _genuser_'s code Apr 29 08:21:04 <_genuser_> ravioli !! Apr 29 08:21:09 <_genuser_> you dare insult my codez? Apr 29 08:21:46 Mavrik: Hmm, guess I'm missing something fundamental here. What's the best way then to get a popup-menu type thing that has a decent size for all screen sizes? Whole bunch of layouts with various static dp-sizes? Apr 29 08:21:48 <_genuser_> but otherwise, yeah, all the tons of typing and copying and pasting... somebody bound to be unchanged. :) Apr 29 08:22:03 Hi guys, I asked this last night but it got lost in the middle of an intense conversation :) So I'll throw it up this morning. So, I have a broadcast receiver that launches an activity when the user unlocks the device. sometimes there is a substantial delay (5-10 seconds) for the activity to launch. Is there any way to speed this up, as it is fundamental to the app that this happens quickly Apr 29 08:22:05 <_genuser_> popup menu? Apr 29 08:22:10 _genuser_, always Apr 29 08:22:24 Chamooze, dp is defined in a way that will make a layout the same physical size in all screens Apr 29 08:22:25 _genuser_: dialog type thing :) Apr 29 08:22:38 <_genuser_> ravilov: yeah, when doing android dev, you can't just type in the whole thing would take forever. So cut/paste. Apr 29 08:22:39 the_fog, I think thats managed by the system and you cant do much here Apr 29 08:22:40 so in most cases you just do "layout_height=200dp" and are done with it Apr 29 08:22:50 <_genuser_> but changing the code is the main place for error introduction. Apr 29 08:23:01 if you have 2 lines of buttons, you do 2*48dp + margins and that will look ok pretty much everywhere Apr 29 08:23:11 with perhaps exception of tablets which usually have a bit larger sizes Apr 29 08:23:28 danijoo: Yeah, I'm thinking that alright, but was hoping someone might have some knowledge... anyway, thanks Apr 29 08:23:33 <_genuser_> Chamooze: why not just creating a dialog, inflate from UI, set layout to match_parent or fill_parent. it should auto size it on a device using rendering sizes, etc. Apr 29 08:24:57 Mavrik: Yeah, tablets vs phones is where I'm running into problems. Apr 29 08:25:26 Chamooze, make a layout and a layout-sw600dp-land then Apr 29 08:25:53 <_genuser_> hmm, interesing I haven't developed anything for a tablet yet. Apr 29 08:26:03 Hi Apr 29 08:28:04 danijoo: Hmm, out of curiosity, why 600dp specifically? :) Apr 29 08:28:31 Chamooze, thats the 10" tablet landscape size Apr 29 08:28:39 Aah Apr 29 08:28:55 if you go below that, you might be targeting some phablets too Apr 29 08:29:09 "phablets". lol Apr 29 08:29:45 a perfectly valid term Apr 29 08:29:48 hey, thats a real word here in germany Apr 29 08:29:53 :) Apr 29 08:30:02 it's been a real word everywhere for a long while now Apr 29 08:30:07 ok :) Apr 29 08:30:53 Hmmm, guess my thinking is just too infected with all the CSS stuff I've been doing lately for another project. Apr 29 08:31:15 probably Apr 29 08:34:03 I have a ViewPager with lists made with RecyclerViews. Those views are "endless", I use a OnScrollListener to load more items when the bottom is hit. When I click one of their items, I open an activity with a detail, so far so good. If I close the activity, the OnScrollListener method is called in both the current ViewPager fragment and the next one. Is that normal? Besides, the lists load further items as if they were comp Apr 29 08:34:03 letely scrolled to the bottom, but they are not. Apr 29 08:35:58 the word phablet is almost as dumb as the word podcast Apr 29 08:36:25 Papipo, when you go back, the viewpager might recreate more than the visible fragment, so yes Apr 29 08:37:14 shmooz, maybe so but describes the device pretty well Apr 29 08:37:26 One of the most unfortunate recent terms is "selfie stick". Apr 29 08:37:38 actually, I don't think phablet is as dumb as podcast Apr 29 08:37:42 ravilov: it's just a large phone Apr 29 08:38:04 ravilov: I said 'almost' Apr 29 08:38:19 shmooz, many tablets have SIM cards and can easily be used as phones - the line between the two is extremely blurry Apr 29 08:38:23 yes podcast is dumber :) Apr 29 08:38:44 Leo Laporte tried to popularise the alternative 'netcast' - partly, I think, because someone was talking at one point about Apple trying to enforce a trademark claim on 'podcast' Apr 29 08:38:55 so we have large phones and small tablets that have phone capability Apr 29 08:38:57 there's a mouthful Apr 29 08:39:24 so disregarding the "phone" capabilities (calls, texts) as they are irrelevant, it makes sense to name a cross between phones and tablets some word that is indeed a cross between the two ;) Apr 29 08:39:32 How can I set my deploy timeout from the shell? Apr 29 08:39:41 huh? Apr 29 08:39:54 I get a timeout when I do mvn android:deploy. Apr 29 08:39:57 How about 'tablette'. Apr 29 08:40:16 how about 'pill'? Apr 29 08:40:52 tabphone Apr 29 08:41:01 ravilov: I know what's next, wablet Apr 29 08:41:12 a combination of a smart watch and a tablet Apr 29 08:41:21 or a smart wone Apr 29 08:41:27 there you go Apr 29 08:41:29 there's no end to combining words Apr 29 08:41:33 A tablet on your wrist? Apr 29 08:41:51 ok danijoo i fixed my issues and now that i click the button i get the error "Application cannot be cast to com.something.turapp.TurApp Apr 29 08:41:56 phabtch Apr 29 08:41:57 google tabGlass Apr 29 08:42:04 jutsi: :D Apr 29 08:42:24 jutsi, it tells you what the problem is :) Apr 29 08:42:33 My exception messages are way more boring. Apr 29 08:43:00 android.adb.connectionTimeout, where can I set this? Apr 29 08:43:36 barq, maybe the solution is not to increase timeout? why do you have a situation that requires that much time anyway? Apr 29 08:43:38 danijoo i've never extended Application before, so im kind of uncertain as to what the standard is Apr 29 08:44:06 jutsi, the "standard" is exactly the same as when extending any kind of java class Apr 29 08:44:08 I can deploy from Eclipse if I increase the timeout, but my cli timeout is still 5000, which is not enough. Apr 29 08:44:09 If you want me to guess: You didnt specify it in your manifest Apr 29 08:44:15 or not properly Apr 29 08:44:28 that sounds about right Apr 29 08:44:33 how do i go about doing thaT? Apr 29 08:44:47 how about read the documentation about doing thaT? :) Apr 29 08:44:54 ravilov: here's a smart wone http://www.news.com.au/technology/gadgets/first-australian-review-whats-it-like-to-wear-the-worlds-biggest-smartwatch-samsung-gear-s/story-fnpjxpz3-1227150349520 Apr 29 08:46:05 shmooz, http://cdn.instructables.com/FZV/0FLT/HIGFIW3Z/FZV0FLTHIGFIW3Z.LARGE.jpg Apr 29 08:46:15 thats a real smart wone :p Apr 29 08:46:23 danijoo, looks comfy :p Apr 29 08:46:24 I get InstallException: TimeoutException Apr 29 08:46:40 barq, wouldn't know, never came across that issue Apr 29 08:46:45 heavy duty! Apr 29 08:46:46 barq, if you get a timeout, you dont want to increate the time ^^ Apr 29 08:46:58 any idea why a galaxy s5 might not receive a BOOT_COMPLETED? it's working on other phones Apr 29 08:46:59 you want to reduce Apr 29 08:47:11 Why not? I know it deploys in maybe 10 seconds. Apr 29 08:47:20 I just have a slow USB connecction. Apr 29 08:47:25 Or a large apk. Apr 29 08:47:27 timeout means too much time passed Apr 29 08:47:32 probably the latter Apr 29 08:47:38 (large apk) Apr 29 08:47:48 Well, I can't change that. Apr 29 08:47:48 usb connections are always the same speed if your cable isnt broken Apr 29 08:47:55 all android devices are at least usb2.0 capable Apr 29 08:48:04 No, I'm developing on a VM, which has slow USB support. Apr 29 08:48:13 oh Apr 29 08:48:14 oh well.. Apr 29 08:48:14 vbox? Apr 29 08:48:21 just why Apr 29 08:48:24 Yes, vbox. Apr 29 08:48:41 install the usb2 extension? Apr 29 08:49:07 use a real os Apr 29 08:49:21 android is supported on every one Apr 29 08:49:46 Alternative would be to use Windows 7. Apr 29 08:49:52 ... Apr 29 08:49:59 But then I have trouble building with maven. Apr 29 08:50:00 I don't see your point at all Apr 29 08:50:13 is your built-in emulator broken in some way? Apr 29 08:50:22 maven works perfectly with windows Apr 29 08:50:58 barq, bottom line is, if you need to increase the timeout, you're doing it wrong in some way Apr 29 08:51:09 could be why it's so difficult to change the timeout Apr 29 08:52:10 Well, first step would be to get the USB 2 support to work. Then I can think about moving away from vbox. Apr 29 08:53:13 i think windows 7 has native usb2 support so you can just fast-forward to step 2 Apr 29 08:53:39 I need to get work done in the meantime, so need a working workspace first. :) Apr 29 08:53:43 danijoo, nope, when using vbox you need the extension pack no matter what OS Apr 29 08:53:58 barq, so fix your vbox so you can move away from it? doens't make much sense Apr 29 08:54:05 oh wait, nevermind Apr 29 08:54:05 ravilov, I though he mean alternative to vbox is win7(without vbox) Apr 29 08:54:13 yeah exactly Apr 29 08:54:19 Do I install the extension pack from the running vm or while it's shut down? Apr 29 08:54:28 shut it down Apr 29 08:54:30 ok danijoo so i did your solution and it does change language, but only after i swipe back and forth a few times Apr 29 08:55:22 jutsi, start main activity of the app in a seperate task, finishing the onld one Apr 29 08:55:37 main=first Apr 29 08:58:00 danijo using the new task flag or just restarting the activity? Apr 29 08:58:35 newtask Apr 29 08:58:46 you want the user to not be able to go back Apr 29 08:58:56 because all old activities will be in the old language Apr 29 08:59:35 you want FLAG_ACTIVITY_CLEAR_TOP and FLAG_ACTIVITY_NEW_TASJ Apr 29 09:00:45 and also FLAG_ACTIVITY_MAKE_IT_WORK_PLEASE Apr 29 09:00:46 :p Apr 29 09:03:19 Gah, can't install the extension, as I can't start the extension pack as Administrator. Apr 29 09:03:38 Error:Execution failed for task ':audioid:zipalignFullDebug'. Apr 29 09:03:38 Apr 29 09:03:41 nice... Apr 29 09:03:43 lol ravilov Apr 29 09:04:22 Would you remove the old extpack first or just install the new one on top? Apr 29 09:04:25 wut i got an install exception Apr 29 09:04:36 twice now Apr 29 09:09:44 barq, I always just install the new one over the old Apr 29 09:11:07 danijoo i added the flags and restart the activity, but language doesn't change at all Apr 29 09:11:33 zzZZ Apr 29 09:12:26 I think you made him pass out Apr 29 09:12:50 damn... i would too, i mean i can just feel myself being annoying when i chat Apr 29 09:14:09 I think your biggest problem right now is that you dont know what you are doing ;) Apr 29 09:15:18 you copy/pasta code affecting configuration and restarting stuff without knowing whats going on "behind the scenes" Apr 29 09:15:20 Much faster now with the upgrade. Thanks. Apr 29 09:16:08 Hmm. If I open and close my secondary activity really quickly, I'm able to make more than one onCreate happen without an onDestroy in between. Apr 29 09:16:08 lol, I would think anyone who uses vbox would immediately know about the extpack and the benefits of it Apr 29 09:16:35 So, instead of onCreate->onDestroy->onCreate-onDestroy, I get onCreate->onCreate->onDestroy->onDestroy. Apr 29 09:16:38 Well, I just upgraded to the new vbox yesterday. I had the extpack for the old version, but that didn't have usb2 support. Apr 29 09:16:45 Is that weird or what? Apr 29 09:17:50 ah right, I have to remember to manually upgrade my extpack with every vbox upgrade too. supposedly vbox tells you about this as part of regular update checks, but I have those disabled :p Apr 29 09:18:28 The async Android stuff makes things feel so complicated. Apr 29 09:18:34 TacticalJoke, thats becauseits async Apr 29 09:18:42 It tells you if you try to activate usb2 without having the extpack upgrade installed; via Exception. Apr 29 09:18:55 lol Apr 29 09:19:08 :D Apr 29 09:19:10 danijoo: Right, but I thought there'd be a guaranteed order. Apr 29 09:19:23 FATAL: EVERYTHING CRASHED AND BURNED! ie, you need to upgrade your extensions Apr 29 09:20:21 Now fun on recreating workspace + mvn on Windows.. Apr 29 09:20:33 async and "guaranteed order" are mutually exclusive Apr 29 09:20:46 Was enough of a hassle to migrate Kepler-> Luna on vbox. Apr 29 09:21:10 ravilov: Posting runnables to the main message looper is async with a guaranteed order in some cases. Apr 29 09:21:58 note the some cases ^^ Apr 29 09:22:19 Yeah, relying on async execution order usually isn't the best idea, no matter the framework :) Apr 29 09:22:54 if you are really fast with clicking the button that starts activity B, you could actually end up with activity B two times on the backstack Apr 29 09:23:32 best way to avoid is a counter that prevents onClick from executing unless it has been more than X milliseconds Apr 29 09:23:38 Yeah, but that's a little different -- that's simply because you can continue to click the button before it happens. Apr 29 09:23:43 *posting* is async, *executing* is serialized Apr 29 09:23:46 BEST. WAY. EVER!!! Apr 29 09:23:48 thepoosh, yeah but in most cases you dont need to care Apr 29 09:24:02 that's what you think... Apr 29 09:24:14 any time a dialog happens, every network call Apr 29 09:24:16 that's just bad code Apr 29 09:24:29 it's like those web pages where you can get CC billed 3x if you click too fast Apr 29 09:24:37 agreed, user code should not be concerned with such ui timeouts at all Apr 29 09:24:42 danijoo: But I assumed onCreate would always be followed by onDestroy in my situation on the belief that the onCreate post was happening before the onDestroy post (and so on). Apr 29 09:24:55 I'd expecting queuing semantics. Apr 29 09:24:55 so you guys spawn a thread that enables/disables the button for a few ms for every new activity start? Apr 29 09:25:01 nop Apr 29 09:25:40 TacticalJoke, every activity has its own lifecycle. All you know is the order of thats methods, but not how android orders them for different activities Apr 29 09:25:43 The buttons just don't manipulate state in a way that would cause issues Apr 29 09:25:51 If you press it 300x... your problem :P Apr 29 09:26:26 Mavrik, if all the button does is opening a detail view, thats exactly my point of view Apr 29 09:26:39 In Google Keep, you can press "Create Note" multiple times to get multiple activities and it looks unprofessional. Apr 29 09:26:54 if one is really concerned about this, my solution would definitely be disabling the button immediately upon clicking, and re-enabling it from some callback upon completing the action Apr 29 09:27:08 Especially because the Up button then simply goes to another activity (rather than to the parent), although I guess this is a separate issue. Apr 29 09:27:27 If user has clicking tourette, i wont fix it for them. Apr 29 09:27:47 TacticalJoke, that you not using NavUtils properly :) Apr 29 09:27:58 people tend to believe (very falsely) that google always gets everything right Apr 29 09:28:10 ravilov: I don't think disabling works. Apr 29 09:28:13 From what I remember. Apr 29 09:28:15 until they become android devs and try to use support lib Apr 29 09:28:18 You'd have to use a boolean flag or something. Apr 29 09:28:32 danijoo: I'm talking about Google Keep. Apr 29 09:28:38 ugh, is disabling async too? Apr 29 09:28:41 ah :) so its them ^^ Apr 29 09:28:43 this google fi sounds like a rip off Apr 29 09:28:47 danijoo: Oh, sorry, I misread. Apr 29 09:29:06 ravilov, all listeners are called async i think Apr 29 09:29:26 hm right Apr 29 09:29:58 so disabling might not be async, but calling onclick is Apr 29 09:30:21 in that case a flag wouldn't work either Apr 29 09:30:34 heck, enable/disable *is* a flag Apr 29 09:30:37 Wouldn't the onClick method check the flag? Apr 29 09:30:52 A flag will always work. Apr 29 09:31:08 in that case it could just check if the button is enabled/disabled Apr 29 09:31:10 there's your flag Apr 29 09:31:37 how do I post a notification to the notification bar in android api level 17 or higher? I see a link for api level 4, but the class in question isn't found in 17+ (Notification.Build) Apr 29 09:31:45 ravilov, no because enable/disable prevents from clicking the button Apr 29 09:31:47 ravilov: There are people on SO saying that setEnabled doesn't fix the issue. Apr 29 09:31:58 Notification.Builder,rather Apr 29 09:32:00 a boolean flag and if(flag) in my code prevents from code to be run inside the listener Apr 29 09:32:17 danijoo, even better, solves half the issue for you ;) Apr 29 09:32:46 no. because if android queues my listeners bad, you end up with setEnabled() not affecting anything while the flag works Apr 29 09:32:50 disable the button so it can't be multi-clicked, and in case disabling was too slow, check the disable state in the listener Apr 29 09:32:52 Yeah, I think the problem is that onClick is async. So they can click three times and *then* the button gets disabled (in onClick). Apr 29 09:33:06 Even Mark Murphy got it wrong: http://stackoverflow.com/questions/5608720/android-preventing-double-click-on-a-button Apr 29 09:33:14 ravilov, only if the first listener click is queued properly and its code run before user clicked the second time Apr 29 09:33:15 talk about murphy's law... Apr 29 09:33:20 But of course he got +20 and a checkmark. :D Apr 29 09:33:35 http://i.imgur.com/EHlCvMm.png custom vertical seekbar with dB scale (voltage pressure), now I need to get rid of this horrible thumb Apr 29 09:33:59 anyways, if someone clicks the donate button 20 times in a few milliseconds, I assume he really wants to donate more :pp Apr 29 09:34:11 danijoo, queueing is not as important, so long as the actual listener execution doesn't clash Apr 29 09:34:35 Actually, my explanation above is wrong. It has to be more than onClick being async. Apr 29 09:34:43 hello is it possible to add contact number into system reject list using intent Apr 29 09:35:04 in fact, you can never be sure Apr 29 09:35:11 you can just shrink the timewindow Apr 29 09:35:33 adq, not quite sure what's wrong with the thumb Apr 29 09:35:39 or you use locks and end up with ANRs Apr 29 09:35:51 ravilov, does not integrate well (cosmetic) Apr 29 09:36:02 looks fine to me Apr 29 09:36:21 then again, they never le[Dt me do aesthetic stuff :p Apr 29 09:36:25 :p Apr 29 09:40:34 the thumb isnt that bad imo Apr 29 09:40:45 adq, what is this app about? Apr 29 09:40:48 looks interessting Apr 29 09:41:08 So does anyone know how opening/closing an activity really quickly can lead to onCreate-->onCreate-->onDestroy-->onDestroy sometimes? Like, a technical explanation. Apr 29 09:41:50 "It's async" isn't the answer, because asynchonicity doesn't say anything about order. Apr 29 09:42:03 asynchronicity* Apr 29 09:42:21 which onCreate corresponds to which onCreate Apr 29 09:42:32 onDestroy* Apr 29 09:42:34 my guess - creates two separate tasks, each with the same activiy on top Apr 29 09:42:54 each gets its own onCreate and then later onDestroy Apr 29 09:42:56 danijoo: Hmm, I'd have to check. Apr 29 09:43:25 danijoo, it's a rebirth-like (drum machine, bassline, synth, fx) using Renderscript for generating real-time audio DSP Apr 29 09:43:26 ravilov: In this case, the secondary activity's launchMode is singleTop, so I guess it's the same task. Apr 29 09:43:45 danijoo, it's already online (name is "audioid") but i'm preparing a massive update Apr 29 09:43:59 still a toy compared to pro audio softs though Apr 29 09:43:59 my guess is you have onCreate, you go back (at this time lifecycle will go on, but onDestroy is not yet reached). You start the activity again (second onCreate is called), and now the first one reached onDestroy in its lifecycle Apr 29 09:44:01 adq, and by that you mean replacing the thumbs? :p Apr 29 09:44:16 lol Apr 29 09:44:24 everything matters :p Apr 29 09:44:33 soo the first instance is already removed from the backstack and stuff, but onDestroy didnt run yet Apr 29 09:44:42 danijoo: Ah, yeah. It probably is as simple as that. I'm forgetting about the fact that it might still be busy. Apr 29 09:44:53 has anyone run into a problem where gradle complains that a dependency wasn’t resolved but said dependency is actually in the gradle caches Apr 29 09:45:11 so in Android studio i’m seeing this Apr 29 09:45:12 Error:(75, 13) Failed to resolve: com.nostra13.universalimageloader:universal-image-loader:1.9.3 Apr 29 09:45:13 Show in File
Show in Project Structure dialog Apr 29 09:45:35 so the IDE thinks it’s missing Apr 29 09:45:45 try invalidate all your caches and maybe delete gradle cache Apr 29 09:45:46 but when compiling, the dependency is satisfied Apr 29 09:46:07 restart IDE Apr 29 09:46:13 or use Eclipse :p Apr 29 09:46:21 Okay, I just did one: onCreate(1)-->onCreate(2)-->onDestroy(2)-->onDestroy(1) Apr 29 09:46:21 (and forget about gradle, maven, etc) Apr 29 09:46:43 Like a stack. :D Apr 29 09:46:45 thanks Apr 29 09:47:12 TacticalJoke, can you also do a 1-2-1-2 with some tries? :) Apr 29 09:47:21 make a game of it ! :D Apr 29 09:47:23 Let's see. Apr 29 09:47:49 Yeah, I just got 1-2-1-2. Apr 29 09:48:00 i think its what i said then Apr 29 09:48:06 what about 2-1-1-2? :p Apr 29 09:48:07 just random whats finishing first Apr 29 09:48:13 ravilov: lol Apr 29 09:48:13 ravilov, :D Apr 29 09:48:21 danijoo: Yeah. Thanks. Apr 29 09:49:54 2.4 gb gradle daemon again ^^ Apr 29 09:50:04 now it ends with OOM Apr 29 09:50:24 java + studio + gradle == ... too much ram Apr 29 09:50:51 not even counting virtual machine or avd :' Apr 29 09:50:51 and then you add your browser tabs Apr 29 09:50:53 AS is about 1gb usually Apr 29 09:51:07 and gradle starts at 1gb, leaking another 50-100 with each build Apr 29 09:51:15 I ordered more RAM pretty much the day I started doing android programming :p Apr 29 09:51:40 danijoo, which version of Gradle are you using? i'm using 1.2.2 today Apr 29 09:51:57 yesterday it was 1.2.1, looks like they got some bug and pushed two version in 24 hours Apr 29 09:52:04 danijoo, so why would anyone not want to use gradle?? :p Apr 29 09:52:50 ravilov, id rather kill the process twice a day instead of not having the benefits of gradle Apr 29 09:53:27 I don't think I've ever seen gradle leak memory during builds Apr 29 09:53:43 danijoo i read up some more on configs and i got it working :D Thanks a bunch for your help, you're awesome Apr 29 09:53:43 OmegaVesko, open your taskmanager :p Apr 29 09:53:49 danijoo, so long as processes are the only thing you're killing :p Apr 29 09:54:03 start a build (there will appear a java process thats the gradle daemon) Apr 29 09:54:16 the process times out after 3 hours and will get reused if you do another build before that Apr 29 09:54:32 if this is the case, it slowly eats your computer Apr 29 09:54:59 solution: get yourself a build farm Apr 29 09:55:14 I want to build gpg for android, what architectures should I cover? Apr 29 09:55:25 arm and intel Apr 29 09:55:25 danijoo: hm, I guess I'll keep an eye on that Apr 29 09:55:27 ALL OF THEM Apr 29 09:55:45 ExeciN: ARM, Intel, MIPS would be nice Apr 29 09:56:15 x86 Apr 29 09:56:18 ExeciN, building binaries for android is too tricky anyway, just because you built all the right binaries doesn't mean they'll actually run Apr 29 09:56:32 or that they are really right ^^ Apr 29 09:56:50 well I am willing to try Apr 29 09:56:52 right is not always right enoguh Apr 29 10:02:31 sometimes it's more left than right Apr 29 10:03:08 https://samsclass.info/128/proj/popular-ssl.htm Apr 29 10:04:12 wow, I have exactly zero of them installed Apr 29 10:05:28 <_genuser_> dang, doing things in Application.onCreate() can really mess up a lot of stuff. Apr 29 10:06:13 <_genuser_> gotta check stuff everytime on activity.oncreate etc. etc. Apr 29 10:06:34 is it time to insult your code again? :p Apr 29 10:07:48 ravilov, did you check all 10000 from the spreadsheet ? :p Apr 29 10:08:27 <_genuser_> ravilov: to be fair, I'm still coding and layoug out the logic. Apr 29 10:09:07 <_genuser_> so it's not quite a completed app that's throwing bugs. I'm just alpha testing and catching all the places where I expect crap to be initialized and it's not because application.oncreate didn't run again. Apr 29 10:09:10 danijoo, of course! (not) Apr 29 10:09:23 just the list on top Apr 29 10:09:31 <_genuser_> things like this shouldn't really happen. I mean the user isn't going to go into the data folder and delete the .cache files Apr 29 10:09:44 <_genuser_> but I wanna at least have _some_ error handling in case that stuff isn't available.... Apr 29 10:09:45 you'd be surprised... Apr 29 10:10:12 "cache" means it can be safely deleted at any point Apr 29 10:10:31 <_genuser_> right, so I'm alpha testing making sure the app doesn't crap out if it's deleted. Apr 29 10:10:31 Nooo. Just accidentally closed Android Studio. Apr 29 10:10:40 oh ssl misused in android apps is not new: http://www2.dcsec.uni-hannover.de/files/android/p50-fahl.pdf Apr 29 10:10:45 <_genuser_> TacticalJoke: lol, so you mean it will be 30 minutes before you're up and running? Apr 29 10:10:48 :D Apr 29 10:10:50 but you probably don't want to do all those checks in onCreate, that's just a bad idea Apr 29 10:11:23 TacticalJoke: the times I hit cmd+Q instead of cmd+tab are uncountable Apr 29 10:11:24 <_genuser_> ravilov: well that's another point. I had them in activity oncreate and moved that bit to application.oncreate. Apr 29 10:11:25 adq, the proplem is if you google for guides, more than 50% teach you to ignore certificates. Apr 29 10:11:36 <_genuser_> ravilov: and I'm testing and thinking it out, where it belongs. Apr 29 10:11:36 not surprising Apr 29 10:12:06 if it takes too long, it belongs to a separate callback/thread Apr 29 10:12:12 you don't want your app to seem sluggish Apr 29 10:12:23 danijoo, i can see: »» [danijoo] is using a secure connection Apr 29 10:12:33 why not check the cached stuff when you actually need it _genuser_ ? Apr 29 10:12:35 does your client verified it ? :))) Apr 29 10:12:41 <_genuser_> ravilov: basically, the app can have 3 entry points. Main work activity, Data view activity (launched from launcher), background alarm/service Apr 29 10:12:42 irc client* Apr 29 10:12:49 (it's also a popular issue on many irc clients) Apr 29 10:12:59 <_genuser_> ravilov: and yes the application.oncreate does launch a service request to initiate the data. Apr 29 10:13:07 »» [adq] has client certificate fingerprint 8c2****ab9318b7f14365b5737f*****efff7 Apr 29 10:13:09 ok cool Apr 29 10:13:14 <_genuser_> ravilov: so I got tired of calling it in all 3 entry points and moved it to app.oncreate Apr 29 10:13:24 freenode has some nice tuto to set up properly your client, auth & co Apr 29 10:13:25 adq, im pretty sure nobody MITM me in my home network :) Apr 29 10:13:36 _genuser_, or you can have all 3 activities descend from one common class Apr 29 10:13:51 <_genuser_> ravilov: but as you know it can be stay loaded for a long time. so if cache is deleted by user, the app needs to handle that situation. Apr 29 10:14:05 indeed Apr 29 10:14:10 <_genuser_> ravilov: 2 activities, 1 alarm (the alarm has yet to be written). Apr 29 10:14:28 <_genuser_> it's all alpha testing...... _IF_ that! Apr 29 10:14:28 yeah that Apr 29 10:14:51 <_genuser_> but I like the idea of a MasterActivity. Apr 29 10:15:01 <_genuser_> it can do app initialization. and the service can be handle as an exception to the rule. Apr 29 10:15:03 https://freenode.net/certfp/ just in case, someone might be interested in setting up properly his connection to freenode Apr 29 10:15:59 danijoo, yeah sorry, this definitely looks like an app I'm using: 仲間とつくるホノルルアルバム Apr 29 10:16:20 I can't get my x86 AVD running, what are the common issues? Apr 29 10:17:13 <_genuser_> ravilov: good points... I really do like yapping in here and thinking out the design Apr 29 10:17:21 <_genuser_> just thinking out loud, LOL. typing out loud. Apr 29 10:18:08 _genuser_, if system deletes your cache, one check at startup is enough Apr 29 10:18:21 if user does it while your app is running, its his fault Apr 29 10:18:45 <_genuser_> danijoo: true, but if you app at least displays an error or somethign that it recognized it, that's better than a forced close Apr 29 10:19:00 <_genuser_> which just frustrates the users and they'll uninstall because they don't know what happened. Apr 29 10:19:09 _genuser_, in that case you have to mention all of us as contributors in your app's credits :p Apr 29 10:19:24 and share any profit of course Apr 29 10:19:39 one user less to worry about :p Apr 29 10:19:51 <_genuser_> ravilov: lol, profits!!! Apr 29 10:19:55 thik positive! Apr 29 10:20:01 <_genuser_> danijoo: lol, we're in teh "working about users" business. Apr 29 10:20:34 Android Studio is back. :D Apr 29 10:20:42 not even a day later Apr 29 10:20:42 <_genuser_> lol, it just started for you? Apr 29 10:20:44 lol Apr 29 10:20:45 Yeah. Apr 29 10:20:55 _genuser_, my policy is: if you fiddle with files in my cache directory, its your problem Apr 29 10:21:08 but i barely use cache Apr 29 10:21:17 <_genuser_> danijoo: I don't mind making the performance degraded. Or showing errors all over. just not force close. Apr 29 10:21:28 only with librries that handle such things for me Apr 29 10:21:32 like http cache Apr 29 10:21:34 it's not so much about messing with the app data, it's more about what the app does in that case - a robust, well-made app will be able to handle that gracefuly Apr 29 10:21:51 <_genuser_> my caching is kinda essential to the app's responsiveness. Apr 29 10:22:01 just always assume the cache is not existant Apr 29 10:22:08 <_genuser_> so mine's both. handle gracefully and shoot off another request for data to be generated if possible. Apr 29 10:22:26 what kind of data _genuser_ ? Apr 29 10:22:29 so by the same token, don't ever use the cached data (because "cache is nonexistent") :p Apr 29 10:22:44 ravilov, no. but always check if first. Apr 29 10:22:47 <_genuser_> picture, expense reports. receipt images. Apr 29 10:23:07 <_genuser_> you retrieve them from db (web services), from local db, and parse them out of binary files. Apr 29 10:23:10 <_genuser_> multiple images sometimes. Apr 29 10:23:20 _genuser_, what if user adb's into the devices right after the check and deletes it :p Apr 29 10:23:37 <_genuser_> that gets performance heavy at times. so I cache the whole thing into thumbnails, etc. Apr 29 10:24:06 <_genuser_> danijoo: sure, I could check before every single function if data is present, but that's overkill. just every activity start is fine. Apr 29 10:24:18 <_genuser_> to that end, I'm thinking of implementing a base activity per ravilov's suggestion. Apr 29 10:24:28 <_genuser_> altho, if I use his suggestions he wants a cut of the profits... Apr 29 10:24:53 I think he'll be fine with 25% Apr 29 10:25:03 thats a fair share for "use a baseactivity" Apr 29 10:26:48 <_genuser_> well we haven't discussed percentage yet.. Apr 29 10:26:52 make it 25½% and we have a deal Apr 29 10:27:20 <_genuser_> err. that's a lot of profits.... Apr 29 10:27:42 they say that's fair :p Apr 29 10:27:42 lets split with 70%/70% Apr 29 10:27:52 <_genuser_> lol 70 70 Apr 29 10:28:03 ^^ Apr 29 10:30:31 LOL, being an avid GB user I'm used to seeing "this app is incompatible with all your devices" on the playstore, but "you don't have any devices" is a new one to me :p Apr 29 10:34:27 any idea how to force a DPS banner to "failtoload" for testing purpose? Apr 29 10:47:44 if I make a custom listener, how can I then reference the object that the listener is applied to (from inside the listener itself) ? Apr 29 10:48:22 I tried to reference the containing class like (viewlistener) View.this.methodcall() Apr 29 10:48:51 pretty sure you can't, you need to keep a reference elsewhere Apr 29 10:49:02 damnit Apr 29 10:49:17 just because it's a listener for a certain object doesn't mean it actually gets called from that object Apr 29 10:50:00 that's a valid point actually Apr 29 10:50:15 guess I was hoping for some voodoo magic Apr 29 10:50:59 <_genuser_> static variables!! Apr 29 10:51:08 <_genuser_> all over your app, that will make things easier. Apr 29 10:51:23 <_genuser_> if you have moral objections, just keep doing it until your puritanical views get diluted enough.... Apr 29 10:52:00 god damnit _genuser_ Apr 29 10:52:05 Troffel: What are you trying to do? Apr 29 10:52:06 <_genuser_> lol. Apr 29 10:52:33 fair point _genuser_, I'll just keep drinking until I think you look pretty :p Apr 29 10:52:46 <_genuser_> ravilov: no need. I'm already good looking! Apr 29 10:52:47 no amount of alcohol exists Apr 29 10:52:50 was simply just designing a custom listener and want to be able to call method a method on the object the listener is attached to Apr 29 10:52:51 to do that Apr 29 10:52:52 TacticalJoke, Apr 29 10:52:56 <_genuser_> ba dum da ching! Apr 29 10:53:17 i'll just go with parsing a reference in the listener's constructor Apr 29 10:53:43 <_genuser_> I have a fair bit of static variables, or aplication variables. but for stuff like this, I'd pass a ref in constructor. Apr 29 10:54:14 ye _genuser_ , was just wondering if there was a neater way to reference it Apr 29 10:54:15 eeyup Apr 29 10:54:24 Troffel: What is the ultimate goal, though? Apr 29 10:54:45 There might be a better way of doing whatever you're trying to do. Apr 29 10:55:15 if an adview fails to load the ad, the ad should be hidden/remove whatever Apr 29 10:55:19 _genuser_, I said until *I* think you are Apr 29 10:55:20 :p Apr 29 10:55:47 Troffel, or you'll end up with a black hole in your app :p Apr 29 10:55:49 I get the callback from onAfFailedToLoad inside the listener Apr 29 10:56:11 ravilov, well that should be avoided Apr 29 10:56:24 <_genuser_> ravilov: technicalities!! Apr 29 11:00:12 RIP network Apr 29 11:01:02 I swear people watch Hollyoaks only because the people look good. Apr 29 11:01:09 They can't act and the storylines are ridiculous. Apr 29 11:01:48 Anybody have any experience with how Play Store (or App Store) approves of "unlock codes" in addition to IAP (for handing out freebies etc)? Is it allowed (at least if not selling unlock codes through other channels)? Apr 29 11:03:19 TacticalJoke, is the a recommendation? Apr 29 11:25:06 <_genuser_> lol, all the broadcast listeneres are just piling on... Apr 29 11:26:07 Making activity transitions is fun/frustrating (delete as appropriate) Apr 29 11:27:27 Making --- transitions --- frustrating --- as appropriate Apr 29 11:31:37 Troffel: A conditional recommendation. Apr 29 11:36:19 Troffel: It'll make you want to gouge your brain out but not your eyes out. Apr 29 11:38:54 What's good for making icons? Inkscape is nice, but the rasterized graphics it creates are pixellated for me. Apr 29 11:45:49 TacticalJoke, so from in a scale from 1 to porn, where are we? Apr 29 11:47:36 <_genuser_> TacticalJoke: I'm using manga studio for icons, lol. but I already had it for drawing reason Apr 29 11:58:47 inkscape creates SVGs, you can rasterize them any way you want Apr 29 12:12:52 I am using this https://gist.github.com/anonymous/8764390f1692e8c61224 and instead of getting "D/shell output﹕ testing" I am getting this: "D/shell output﹕ [ 04-29 15:09:21.186 876: 876 D/libEGL ]" what am I doing wrong? Apr 29 12:15:31 Troffel: you can create raster images twice as big and scale them down to get a ghetto form of AA Apr 29 12:33:38 people, I'm interested in overriding/replacing onDraw of my WebView Apr 29 12:33:44 is it possible? Apr 29 12:34:08 right now, my onPageFinished isn't capturing any images :-( Apr 29 12:34:56 what is it you want to do? Apr 29 12:36:17 capturing screenshot Apr 29 12:36:38 i have this kind of inheritance MainActivity extends BaseActivity and BaseActivity extends ActionBarActivity, calling super.onCreate in the MainActivity skips the onCreate method of BaseActivity, why is that? Apr 29 12:37:19 Looney, you just want to capture a screenshot of the web view? Apr 29 12:37:25 is that right? Apr 29 12:38:31 yup Apr 29 12:38:37 you can make a bitmap resource from the drawCache of the (web) view Apr 29 12:39:00 drawCache or drawingCache ? ? Apr 29 12:39:59 viewToScreenshot.setDrawingCacheEnabled(true); Apr 29 12:40:14 mybitmap = Bitmap.createBitmap(viewToScreenshot.getDrawingCache()); Apr 29 12:40:41 and viewToScreenshot.setDrawingCacheEnabled(false); for good measure Apr 29 12:41:01 Looney, try that, should work Apr 29 12:41:12 done that Apr 29 12:41:16 didn't work Apr 29 12:41:37 because onPageFinished, I see 0 when I call getContentHeight of my WebView Apr 29 12:42:06 you have to wait til the window is build Apr 29 12:42:18 and then you have to wait til the web view has has loaded content Apr 29 12:42:43 so, it'll all boil down to sleep :-( Apr 29 12:43:00 well, not really Apr 29 12:43:07 or there is possibility of using some callback Apr 29 12:43:11 you can use a javascript interface Apr 29 12:43:26 to call into the app when body.onload() is called in the website Apr 29 12:43:37 then takescreenshot() Apr 29 12:44:17 ahh, so I can do this without having any access/knowledge of HTML/JS being captured ? ? Apr 29 12:44:31 not really, has to come from the JS Apr 29 12:44:55 which is a limitation with android web views I think, can't just directly into the JS Apr 29 12:45:25 best you got is onPageLoaded Apr 29 12:45:39 I mean, if I do not know about the HTML/JS, would my JavaScript Interface still work ? ? Apr 29 12:45:47 nope Apr 29 12:46:18 from the js you call methods in your javascriptinterface Apr 29 12:46:41 basically anything you do, will be a bit hacky Apr 29 12:47:32 note that onPageLoaded will also be called when resources are loaded Apr 29 12:48:32 so a trick could be to count how many 'pageloads' you start, and only assume the webpage is done when onPageLoad has been called an equal number of times Apr 29 12:50:50 isn't onPageLoad called when loading starts ? ? Apr 29 12:52:34 onPageStarted and onPageFinished Apr 29 12:52:45 sorry, bad memory :D Apr 29 13:02:59 hmm, perhaps I'll hook it with Xposed Apr 29 13:03:56 I can get the Canvas if I do param.arg[0] of onDraw(Canvas) Apr 29 13:04:04 atleast, I think so Apr 29 13:19:17 Should you finish a project if you're having doubts about it? Apr 29 13:19:41 this is hardly a place for moral debates, lol Apr 29 13:20:59 depends what the doubts are... and the project is... and you are... Apr 29 13:21:32 one could argue that it is called #android-dev and that this problem is unique to android developers, however i get the point and i will heed your cease and desist warning Apr 29 13:22:21 jutsi: The question is just too lacking in detail. Apr 29 13:22:29 Ok, so i'm making this camping app, with activities, tutorials etc, but i feel like the target demographic is hard to target, since it's mostly nature lovers, tourists and families. Apr 29 13:23:13 and most nature lovers will probably be very disapointed by the app since their knowledge probably exceeds that of the app Apr 29 13:23:29 why are you making it in the first place? Apr 29 13:24:07 It's a free app, so it's made for publisity reasons Apr 29 13:24:29 whose publicity? Apr 29 13:25:01 The company Apr 29 13:25:12 *the* company Apr 29 13:25:24 Sounds like the US Government Apr 29 13:25:29 the NSA Apr 29 13:25:43 they sure could use the good publicity after their scandals :) Apr 29 13:25:49 Tourists and families probably won't have knowledge that exceeds that app? Apr 29 13:25:57 the British East India Company, presumably Apr 29 13:26:12 wtf is @17041057 https://code.google.com/p/android/issues/detail?can=2&start=0&num=100&q=&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars&groupby=&sort=&id=168890 Apr 29 13:26:14 Estel probably not, but it's a very weak target demographic imo Apr 29 13:26:40 camping = no money Apr 29 13:26:43 seriously, the question is how much more work is needed, vs. the value it will provide to whoever the company is Apr 29 13:27:02 Well I think in general I'm skeptical of companies making apps for "publicity", most apps will struggle to attract attention > the cost of developing the app... Apr 29 13:27:48 icedp: : I'd assume it's meant to be a "more items" sort of string, and someone is printing the ID rather than the string Apr 29 13:28:19 jutsi: are you being paid to develop it? or is 'the company' you/yours? Apr 29 13:28:28 oh, he left Apr 29 13:30:20 that was his ultimate conclusion apparently Apr 29 13:30:59 nothing wrong with targeting a niche, as long as you accept you're not going to have hundreds of millions of users Apr 29 13:31:09 is it possible to create a custom dialog with multiple list and text inputs? Apr 29 13:31:20 ruibrito: yes, of course Apr 29 13:31:54 Leeds: and what happens if I create more than the screen resolution can handle? does it allow me to scroll? Apr 29 13:32:08 it does if you make it scrollable... Apr 29 13:32:59 is it fairly complicated to make it scrollable? Apr 29 13:33:25 ruibrito, dude, a dialog is just a view like any other Apr 29 13:33:37 do with it as you please Apr 29 13:34:28 i will give my best shot, thanks for the help Leeds and ravilov Apr 29 13:34:57 ruibrito: you put a scrollview in the appropriate place, where appropriate Apr 29 13:35:46 Leeds: thank you, I will spend the rest of the afternoon implementing this and if so I will report back, if not only to thank you again for the assist ;) Apr 29 13:35:57 knock yourself out :) Apr 29 13:37:45 hi Apr 29 13:38:04 guys, im using loopj for my web requests. I have two nexus 5 only difference between them one of them has sim card.Nexus 5 which has not sim card randomly gives connection time out Apr 29 13:38:23 im thinking that main problem could be this. Any idea what is happening ? Apr 29 13:38:24 this is driving me nuts.....i cant get any android device to show the authorization prompt on this pc.. Apr 29 13:38:46 does anyone know any reason why this might be happening? Apr 29 13:39:19 on the other pc downstairs i get thr prompt every time. both running the same version of windows 8.1 (from the same disk) Apr 29 13:39:49 Fraz:it happened to me once Apr 29 13:40:09 did you ever find a fix? Apr 29 13:41:47 Fraz:i tried almost everything, last solution was format :D Apr 29 13:41:58 driver issue maybe Apr 29 13:42:19 sci-fi, i installed linux on a seperate drive and tried that Apr 29 13:42:26 couldnt even get the prompt there Apr 29 13:43:05 ravilov, the drivers windows installs on the other pc are correct, im assuming the same ones are being installed on this machine Apr 29 13:43:12 i think pc recognise it somehow Apr 29 13:43:22 plus ive gone through every posisble driver Apr 29 13:43:24 and none work Apr 29 13:43:31 cord? port? Apr 29 13:43:55 i formatted phone,refreshed drivers etc Apr 29 13:44:22 tried 3 different cords (but the cord that came with the tablet works fine on the other pc, so its not damaged) Apr 29 13:44:28 tried all usb slots Apr 29 13:44:41 yes ive reset the tablet to factorys ettings Apr 29 13:45:09 but right now i have a lenovo and an asus tablet, neither give the authorization prompt on this pc Apr 29 13:45:22 but both do on the other pc, so the devices and chords all seem fine Apr 29 13:45:45 fraz Apr 29 13:45:54 focus on pc i suggest you this Apr 29 13:45:54 it seems to be something specific on this pc Apr 29 13:46:03 yeah Apr 29 13:46:05 i keep getting this error: Unable to start activity ComponentInfo{...}: java.lang.NullPointerException when i try to run instrumentation tests from the IDE but when I run using spoon, it works fine. Apr 29 13:46:27 try to clear rsa key on pc (where it is located) Apr 29 13:46:33 tried that Apr 29 13:46:45 also, i cant even browse the tablets files on this pc Apr 29 13:46:48 on both tablets Apr 29 13:47:08 although the lenova let me browse the files yersterday, then the second time i tried it wouldnt Apr 29 13:47:19 the explorer window just shows an empy folder and loads forever Apr 29 13:47:39 could it be down to the chipset drivers? Apr 29 13:48:56 hi guys, which is the best / simple api for 3d rendering. I got an 3ds model...? opengl es? or min3d? Apr 29 13:49:54 Fraz, any number of reasons, but this is now getting out of scope for android-dev Apr 29 13:50:13 :( Apr 29 13:50:35 finding help elsewhere is impossible Apr 29 13:51:02 maybe you're looking at the wrong places... such as this one ;) Apr 29 13:51:30 well no, i need android devs to help, since those are really the only ones who will have ever run into this problem Apr 29 13:51:51 I blame windows Apr 29 13:52:06 well Leeds, it doesnt work in linux on this machine either Apr 29 13:52:15 I blame machine then Apr 29 13:52:21 but what could it be? Apr 29 13:52:39 hardware wise Apr 29 13:52:46 i have no other problems Apr 29 13:52:53 again... wrong channel Apr 29 13:53:27 while people in here might have come across this problem before, it is so rare nobody really knows what's causing it, especially given a huge number of possible reasons Apr 29 13:54:11 there are standard things to try - different port, different cable, double-check the debugging is turned on on the device - but they don't seem to apply in this case Apr 29 13:55:06 yeah ive done all the usual, and more Apr 29 13:55:24 *do* you get the debug notification when you plug in? Apr 29 13:56:06 I've got a few questions about flashing firmware with odin Apr 29 13:56:13 yeah Apr 29 13:56:14 m0rd3cai: nope, still wrong channel Apr 29 13:56:15 m0rd3cai, wrong channel again Apr 29 13:56:27 ravilov: /topic is hard Apr 29 13:56:35 also my point exactly, all the usual culprits have been weeded out, beyond that there's not much we can suggest Apr 29 13:56:41 Leeds, apparently Apr 29 13:57:05 oh right, there's one more - reinstall windows Apr 29 13:57:19 but if a) the device can see the PC and b) it happens under two different OSs on the same device... that's a pretty obscure issue Apr 29 13:58:15 yeah Apr 29 13:58:33 the device is definatley seen, it shows as unauthorized in adb Apr 29 14:04:21 rm ~/.android/adb* Apr 29 14:04:24 adb kill-server Apr 29 14:04:30 plug phone back in Apr 29 14:04:34 adb devices Apr 29 14:04:40 should force a prompt Apr 29 14:05:33 "rm" and "~" will hardly work on winblows Apr 29 14:06:00 but nice tip nevertheless Apr 29 14:06:25 ravilov, both work with windows :) Apr 29 14:06:55 Afternoon all :) Anybody using Dagger2 in an industrial scale app and if so seen any major benefits? Apr 29 14:06:57 you need to use the powershell instead of DOS shell though Apr 29 14:07:26 danijoo, windows has the "rm" command and knows about ~ ? Apr 29 14:07:43 oh, powershell, meh Apr 29 14:07:51 yep. Apr 29 14:08:01 that actually the only windows shell you should use Apr 29 14:08:02 "powershell - turns windows into a different OS that actually works right" :p Apr 29 14:08:06 cmd is kinda deprecatd Apr 29 14:08:13 exactly :) Apr 29 14:08:23 tried PS several times, didn't like it at all Apr 29 14:08:34 I'd rather have cmd + gnu utils Apr 29 14:08:36 Give cygwin a whirl Apr 29 14:08:49 its fine for basic stuff like deleting editing files Apr 29 14:09:10 Works well for proofing gradle in bash for CI etc Apr 29 14:09:11 for anything non-basic I wouldn't use windows anyway :p Apr 29 14:09:13 for everything else, i use scygwin Apr 29 14:09:20 ravilov, touche Apr 29 14:09:25 Could be worse, you could be developing on a Mac D: Apr 29 14:09:33 indeed Apr 29 14:09:37 *flamebait* :P Apr 29 14:09:47 VoidNeumann, ever developed on a mac? Apr 29 14:10:06 mac gives you a native unix shell Apr 29 14:10:18 so i'd say for this mac > windows Apr 29 14:10:26 Aye, really wasn't a fan. Works great for clean sheet work but anythin that requires full stack work it's a nightmare Apr 29 14:11:29 just for the kicks, I will now try installing cygwin on my mac Apr 29 14:11:42 * ravilov doesn't actually have a mac, thank goodness Apr 29 14:11:51 i install it on my debian later Apr 29 14:12:15 oh yea? well I'll install it on my phone! Apr 29 14:12:26 can you top my gameboy? Apr 29 14:12:58 I'll give it a shot Apr 29 14:13:07 * ravilov shoots the gameboy Apr 29 14:13:08 done Apr 29 14:13:11 :DDDD Apr 29 14:13:11 :) Apr 29 14:15:15 powershell sucks Apr 29 14:15:22 hate that shit, unless I'm working with .net components Apr 29 14:15:32 the syntax is just too arcane in comparison to existing mechanisms Apr 29 14:16:24 I just run mingw bash in conemu Apr 29 14:16:58 conemu ftw Apr 29 14:17:12 hate how standard windows cmd can't be resized properly Apr 29 14:17:29 it's almost a reasonable terminal Apr 29 14:18:01 @all: does anyone know an concrete account authenticator implementation? Apr 29 14:18:02 also have ansicon installed although not sure if I even need it with conemu Apr 29 14:18:30 AccountAuthenticator extends AbstractAccountAuthenticator {...} Apr 29 14:18:34 I've done account authenticator recently :) what you want to know? Apr 29 14:18:53 ravilov, unnecessary Apr 29 14:19:22 i need to implement a sync adapter which get/post/put/delete to a rest backend with oauth 2.0 Apr 29 14:19:59 so the account authenticator should not be a stub, but correspond to a real authenticated account Apr 29 14:20:05 pfnQ, figured, especially since conemu says it's blocked it :) Apr 29 14:20:41 sorry if it sounds stupid but nonetheless, Apr 29 14:20:41 but all codes i found until know are mere stubs like https://developer.android.com/training/sync-adapters/creating-authenticator.html Apr 29 14:20:58 VoidNeumann, thx a lot! :-) Apr 29 14:21:25 sorry if it sounds stupid but nonetheless, can I override onPostDraw() in https://github.com/android/platform_frameworks_base/blob/master/core/java/android/view/HardwareCanvas.java Apr 29 14:22:10 This guy's tuts I found really helpful, there's one on the authenticator and one on the sync adapter Apr 29 14:22:10 https://udinic.wordpress.com/2013/04/24/write-your-own-android-authenticator/ Apr 29 14:22:44 I was using it to do multi-app single sign on using an exisitng auth library I'd written so didn't have a sync adapter was just using it for refreshing auth tokens etc. Apr 29 14:24:21 The authenticator itself is a really thin layer, you have to do all the legwork yourself but it's a crackin little tweak. Mine is currently sat on the shelf until we figure out how to change a package name without chucking off 10m users :D Apr 29 14:24:31 Whoops Apr 29 14:25:07 VoidNeumann, this is the best material i found until now, but there are unimplemented methods Apr 29 14:26:37 All of the token management is manual, pretty much all it'll do for you is manage the tokens you put into it and throwing the authentication screen if it cant find one. Have you already got all your auth code working without AccountManager or doing it all in a oner? Apr 29 14:29:00 JakeWharton: I'm getting Didn't find class "timber.log.Timber$DebugTree" on path: DexPathList when I try to run instrumentation tests. Have you come across this? Apr 29 14:30:03 dunno if i did it wrong but last time i tried accountauthenticator it always did a request without user/pass, then redid the same request with user/pass Apr 29 14:30:20 putting auth info in the headers directly reduced response time by over 50% Apr 29 14:32:58 is there a way to check what consumes my touch event? Apr 29 14:35:18 does anyone know the font size and weight of the material design toolbar title? Apr 29 14:35:27 can't find it on docs Apr 29 14:38:56 VoidNeumann, http://pastebin.com/ABXLeEVL Apr 29 14:40:17 myke, VoidNeumann: the problem is the methods confirmCredentials, getAuthTokenLabel, updateCredentials, hasFeatures, editProperties continue empty. i trying to find what should I do inside them Apr 29 14:41:16 ventura: i never implemented them...my code never called them Apr 29 14:41:37 ventura: does your api just require basic or digest auth header? Apr 29 14:42:45 if so, i'd strongly suggest just manually creating them...it's 2-3 lines of code, if that Apr 29 14:42:55 Leeds, you still around? Apr 29 14:43:03 myke, bearer Apr 29 14:43:18 Fraz: just about Apr 29 14:45:58 Fraz: problem solved? Apr 29 14:46:43 * ravilov wonders if Fraz ever tried out the given suggestion Apr 29 14:50:05 Leeds, nah Apr 29 14:50:18 just wanted to show you what happens when i try to browse the files on my phone Apr 29 14:50:21 tablet* Apr 29 14:50:33 http://www.twitch.tv/fraz_uk Apr 29 14:50:59 go on then... Apr 29 14:51:25 how do you all (that code on larger monitors) deal will all the code being left aligned? Maybe just not full screening IDEs? Keeping panels open to push it to the center? etc.? Apr 29 14:51:36 what is the "blocking" referring to in Java Queue's? https://docs.oracle.com/javase/tutorial/collections/implementations/queue.html Apr 29 14:52:17 wagonboi: It's says on that page what it means Apr 29 14:52:18 "waiting (blocking) for code in another thread to retrieve the element" Apr 29 14:52:41 it never reaches the end Apr 29 14:52:41 Fraz: a thought... Apr 29 14:52:58 so, out of nowhere i'm getting NoClassDefFoundError: Failed resolution of: Ltimber/log/Timber$DebugTree but i have the lib included Apr 29 14:52:59 you said something about windows 8.1, using the same hard drive? Apr 29 14:53:13 ? Apr 29 14:53:48 wagonboi, your running out of ga on the highway and send your wife to the next gasstation to get some. Meanwhile you (thread A) are blocking while waiting for the result of your wife (thread B) Apr 29 14:53:53 oh, "from the same disc" meaning "installed from the same media"? Apr 29 14:53:54 s/ga/gas Apr 29 14:53:59 yeah Apr 29 14:54:14 myke, i wonder what are those methods for.... thx dude :-) Apr 29 14:54:17 I haven't installed an OS from a disc in... a long long time :) Apr 29 14:54:25 thx VoidNeumann too Apr 29 14:54:28 well, same usb drive lol Apr 29 14:54:30 I can initialize a Queue in Java via AbstractQueue someQ = new PriorityQueue or Queue someQ = new PriorityQueue . What's the difference? Apr 29 14:54:50 thanks danijoo Apr 29 14:54:52 was just saying that they both have the same os installed Apr 29 14:54:58 yeah Apr 29 14:55:03 dunno Apr 29 14:55:08 ventura, do you live near ventura, california? Apr 29 14:55:29 wagonboi: Type saftey Apr 29 14:55:30 gotta unplug the tablet now to get rid of this window Apr 29 14:55:46 wagonboi: Queue is an interface that PriorityQueue implements. Apr 29 14:55:49 hmm... Apr 29 14:55:55 Need help Guys Apr 29 14:55:57 And AbstractQueue implements. Apr 29 14:55:58 and its the same problem trying to access the sd card Apr 29 14:56:19 I just Decompiled An Android I have the Classes And The whole XML Apr 29 14:56:27 I want to Redesign the APP Apr 29 14:56:32 not sure if you mentioned above... did you try revoking the authorisations on the tablet? Apr 29 14:56:39 To Material Design Apr 29 14:56:39 yeh Apr 29 14:56:42 Droidwall: Please Fix your Caps LOCK key Apr 29 14:56:53 happens accross 2 tablets Apr 29 14:56:58 Droidwall: you captured a wild Android and decompiled it? Apr 29 14:57:04 wagonboi, i wish i live near california :-) Apr 29 14:57:11 how do you mean it Apr 29 14:57:25 wagonboi, i know jessie ventura and that there is a city there named ventura Apr 29 14:57:26 gonna plug the lenovo in now Apr 29 14:57:34 this works, rareley whan browsing files Apr 29 14:58:02 meh, browsing files, who cares... Apr 29 14:58:03 I used Dex2jar and APKTOOL Apr 29 14:58:07 Droidwall: sorry I'm being mean :P "An Android" isn't a complete phrase, like "A blue" isn't a complete phrase Apr 29 14:58:12 ventura is my family name... is a nickname for bonaventura Apr 29 14:58:22 Droidwall: redesigning someone else's app? Apr 29 14:58:28 wagonboi: The basic idea behind using "Queue queue = new SomeQueue();" is similar to the idea behind using Queue rather than SomeQueue for a method parameter. It's saying "I need a Queue; I don't care what kind". Makes code flexible. Apr 29 14:58:28 APP Apr 29 14:58:30 No Apr 29 14:58:35 well maybe it gives a clue Apr 29 14:58:47 It's call "programming to an interface". Apr 29 14:59:25 TacticalJoke, so that the implementation can be easily changed later right? by just changing the RHS Apr 29 14:59:30 Yeah. Apr 29 15:00:03 It's the same thing with "List strings = new ArrayList<>();". The use of ArrayList is an implementation detail that might change. Apr 29 15:00:12 I have Vbulletin which i bought well i bought also Mobile suite which contains an Android App for my Forum which is really outdated on design (it still have gingerbread style) so i aksed the support if i can decompile and do what i want they said ok Apr 29 15:00:12 ... Apr 29 15:00:17 <_genuser_> question about thread-safe maps. how does the thread-safety get implemented? From documentation I understand that any thread that is updating the map acquires a lock. Apr 29 15:00:24 <_genuser_> is this lock then released when the code doing the updates, goes out of scope? as in when that } is hit? Apr 29 15:00:48 check the source _genuser_ Apr 29 15:00:49 If a method were defined as "public void foo(ArrayList strings)" it'd be quite inflexible. I might have a custom List implementor (which I now can't use). Apr 29 15:00:55 its doing something different again now:( Apr 29 15:01:19 <_genuser_> adq: jdk source code, you mean? Apr 29 15:01:28 <_genuser_> or jre, I suppose Apr 29 15:01:58 _genuser_, read jcip Apr 29 15:02:02 the source of the class you use Apr 29 15:02:17 <_genuser_> jcip? Apr 29 15:02:21 <_genuser_> sounds like I have some googling to do! Apr 29 15:02:23 _genuser_, read google Apr 29 15:02:54 <_genuser_> pfn_: can't read _all_ of google. :p Apr 29 15:02:56 still watching Leeds? it shows unauthorized in adb Apr 29 15:03:09 NO help :( Apr 29 15:03:12 sorry, stopped watching... almost bedtime Apr 29 15:03:14 HERE is where i should be getting the authorization prompt:( Apr 29 15:03:39 <_genuser_> when I designed my framework, I did so on desktop in java. Apr 29 15:04:00 _genuser_, what kind of thread safe maps? Apr 29 15:04:07 <_genuser_> now that I'm running it, it's on android in services. and I'm seeing that multiple threads are stepping on each others' toes. Apr 29 15:04:14 <_genuser_> so I'm looking into thread-safety. Apr 29 15:04:25 Fraz: ok, one interesting thing there... Apr 29 15:04:32 <_genuser_> Mavrik: currently I'm using LinkedHashMap, but I am considering ConcurrentHashMap Apr 29 15:04:35 (I started watching again, briefly) Apr 29 15:04:55 well, you need to remember Apr 29 15:05:01 Fraz: 0123456789ABCDEF is a fake device ID/serial Apr 29 15:05:14 it's in java.util _genuser_ in your android sdk Apr 29 15:05:18 uh? Apr 29 15:05:24 that doing stuff like "if map.contains(bla) { map.get(bla) }" is still not thread safe Apr 29 15:05:26 Fraz: let me ask you a possibly very silly question... Apr 29 15:05:28 and you need to make your own locking Apr 29 15:05:37 you don't have the emulator running right now on your PC, do you? Apr 29 15:05:41 but they don't talk much about thread safety, originally i looked into Map and thread is not even mentioned, but concurrentMap seems more relevant Apr 29 15:05:44 no Apr 29 15:05:47 so usually you need to do synchronization manually depending on what do you do Apr 29 15:05:48 <_genuser_> Mavrik: understood and confirmed. :) Apr 29 15:05:57 adq, Java collections aren't thread safe Apr 29 15:06:08 <_genuser_> adq: thanks, I need to figure out an app flow first and tehn decide which obj to use. Apr 29 15:06:11 more android concurrency primitives, less synchronized Apr 29 15:06:14 i just pointed out the source Apr 29 15:06:16 adq, unless explicitly noted :) Apr 29 15:06:17 adq, objects are not thread safe unless explicitly stated Apr 29 15:06:21 ok ok :) Apr 29 15:06:24 adq, that is the general rule in all p rogramming Apr 29 15:06:27 Fraz: ok, to double-check... do you get that same fake serial when you "adb devices" on the working machine? Apr 29 15:06:37 " but they don't talk much about thread safety, originally i looked into Map and thread is not even mentioned," Apr 29 15:06:38 yeh Apr 29 15:06:59 hello, I'm at a class of Android development. In regards to Android I'm still pretty new. The problem is that the class is being run on Windows, and I don't think they have Linux instructions. Since it will take quite some time before I can look up instructions on Linux, would it be cool if I ask some general questions here? Apr 29 15:07:01 my asus device gives a different serial too. 1 sec ill hook that up Apr 29 15:07:11 <_genuser_> synchronizedMap() looks promising. Apr 29 15:07:18 as an example, with my phone, I get "FA47SWY02999 device", with my N9 I get "HT4AFJT09250 device" Apr 29 15:07:44 [info] Connected devices: Apr 29 15:07:44 [info] 07c024e3 flo Apr 29 15:07:44 [info] TA46800D7G victara Apr 29 15:07:45 heh Apr 29 15:08:05 does flo give you good car insurance? Apr 29 15:08:10 I have An Android App which i want to restyle the source code i don't have it but i decompiled it and get the classes and the xml of the app well the app is designed in Gingerbread style which is really outdated. what should i do Apr 29 15:08:13 two real serials... Apr 29 15:08:16 this is with the asus device connected Apr 29 15:08:33 right, so that's a real serial number Apr 29 15:08:40 Droidwall: Read about implementing material design Apr 29 15:08:47 Droidwall, get the original source Apr 29 15:08:58 Droidwall, and hire a developer Apr 29 15:09:03 Droidwall: sounds painful Apr 29 15:09:03 Where they dont want to provide me it Apr 29 15:09:03 Droidwall, you can "steal" the xml, but you will have trouble to reimplement all the code yourself Apr 29 15:09:12 don't even think to recompile the apk Apr 29 15:09:26 Droidwall: http://developer.android.com/training/material/index.html Apr 29 15:09:28 http://stackoverflow.com/questions/29929701/convert-a-android-design-gingerbread-to-material-design Apr 29 15:09:29 Here is it Apr 29 15:09:32 Fraz: sorry... I'm going to finish reading some comments about how everything is the fault of police/black people in the US, then go sleep Apr 29 15:09:50 -5 :' Apr 29 15:09:50 lol, ok Apr 29 15:09:56 thanks for the help Apr 29 15:09:59 Droidwall: There is not magic convert an app to material button Apr 29 15:10:02 it requires work Apr 29 15:10:07 s/not/no/ Apr 29 15:10:19 yiati: i know that Apr 29 15:10:37 Droidwall: Okay once you have specific questions, and are stuck we are here Apr 29 15:10:42 k they're going to use Android Studio, what is equivalent for Linux? Apr 29 15:10:49 same Apr 29 15:10:59 thanks :D Apr 29 15:12:18 AppAraat: Doesn't it run on Linux? Apr 29 15:12:35 it does Apr 29 15:13:30 Maybe it runs on GNU plus Linux. :) Apr 29 15:13:34 AppAraat: http://tools.android.com/download/studio/canary/1-2-0-rc Apr 29 15:14:01 no solaris build :( Apr 29 15:14:21 goobuntu Apr 29 15:14:57 ah damnit, it's 250mb and it will take the whole class to download :p Apr 29 15:14:58 lol danijoo Apr 29 15:15:04 heh solaris Apr 29 15:15:08 is there something equivalent I can use with vim and some stuff? Apr 29 15:15:18 AppAraat: What kind of class are we talking? Apr 29 15:15:20 AppAraat: you can use the bare SDK, don't need an IDE at all Apr 29 15:15:21 AppAraat, you dont need an ide Apr 29 15:15:28 you can use vim + commandline if you are crazy Apr 29 15:15:41 If it's a bunch of beginners, using the command line is not gonna work. Apr 29 15:15:45 you'd better document yourself a bit more about it, AppAraat Apr 29 15:15:46 Unless they have a lot of time and motivation. Apr 29 15:15:51 danijoo: I am forced to be crazy this time :p Apr 29 15:16:06 the sdk will take a considerable amount of space, if you think the ide is too big Apr 29 15:16:07 it's an introduction to Android development Apr 29 15:16:23 what'a good database to use for android? one that has a good api/docs. like sqlite3 for python Apr 29 15:16:40 wagonboi, you dont really have a choice there Apr 29 15:16:42 sqlite Apr 29 15:16:43 lol Apr 29 15:16:45 wagonboi: It'd be like every result in Google. Apr 29 15:16:52 wagonboi, if you dont like SQLite try Realm db Apr 29 15:16:55 its sqlite or no database at all ^^ Apr 29 15:16:57 I can download the SDK here in 2.7 seconds :D Apr 29 15:17:02 ok thanks Apr 29 15:17:06 They're full of shit with their speed metrics but it's a really nice syntax Apr 29 15:17:28 id love to have mongodb on android :( Apr 29 15:17:37 if you can take the shame of introducing a native layer to your app D: Apr 29 15:17:46 WE'LL KNOW! OH WE'LL KNOW! Apr 29 15:18:21 https://realm.io/ Apr 29 15:18:27 danijoo, careful that would lead to introduce node.js Apr 29 15:18:42 there is enough chaos on Android :p Apr 29 15:18:43 Don't speak that filth in here Apr 29 15:18:49 hmm, 160mb. Bit better :p Apr 29 15:19:14 AppAraat: A bunch of beginners are not gonna do well without an IDE here. Apr 29 15:19:21 In fact, I suspect they won't do well with an IDE. Apr 29 15:19:46 Would not recommend teaching anyone to do Android without the standard IDE Apr 29 15:19:51 TacticalJoke: they all run Windows and have access to Android Studio, but I just joined the class and only have Ubuntu 12.04 and vim basically. Apr 29 15:20:11 AppAraat, android studio runs perfect on ubuntu Apr 29 15:20:24 It's fairly industry standard, there are people who work without it but it's more out of extreme personal preference. Beginners should 100% be taught using Studio Apr 29 15:20:37 AppAraat: if you're comfortable with Java and comfortable with vim, it's perfectly possible to do Android app dev that way... if you're not... think about waiting for the IDE Apr 29 15:20:41 danijoo: yeah but it's 250mb and Internet here is slooow Apr 29 15:20:49 also note, once you've downloaded the SDK, there are more tools to download Apr 29 15:20:57 AppAraat: I remember spending weeks downloading stuff on 56K. :D Apr 29 15:20:57 go somewhere where its fast Apr 29 15:21:09 there are also torrents i think Apr 29 15:21:13 'Sorry kids class is off cba'd to download the tools' :D Apr 29 15:21:23 it's university wifi, it is very slow Apr 29 15:21:24 also also, I'll mention again, because nobody seemed impressed last time... Apr 29 15:21:32 luckily I'm not teaching the class :p Apr 29 15:21:34 I just downloaded the 160MB SDK in 2.7 seconds Apr 29 15:21:40 OoooOOooo Apr 29 15:21:49 my university is the fastest wifi on earth Apr 29 15:21:50 Check out The Flash over here Apr 29 15:21:52 feels like Apr 29 15:21:58 Leeds: envy is me Apr 29 15:22:23 so Android Studio it is then Apr 29 15:22:43 That one overnight download will save you a career worth of headaches :P Apr 29 15:23:27 Hello Apr 29 15:24:12 I've created an appwidget adding some .xml files to the project Apr 29 15:25:50 When I install my .apk, I can't see widget into the homescreen. i've taken a look at logcat, but it seems not much useful Apr 29 15:26:45 then, if I launch the app from drawer, it crashes, and logcat not seems much useful, again Apr 29 15:27:23 AWESOME BUG DESCRIPTION Apr 29 15:27:27 sry caps :x Apr 29 15:27:38 never apologize Apr 29 15:27:39 do I need jdk as well? Apr 29 15:27:53 AppAraat: yes Apr 29 15:28:01 danijoo: happy to see you're back to your self Apr 29 15:28:08 :p Apr 29 15:28:13 About the first issue, what have I to look for getting more info? Apr 29 15:28:28 yiati: openjdk-6-jre good enough? Apr 29 15:28:39 Logcat doesn't show Error messages, but only Warnings Apr 29 15:28:42 Any ideas? Apr 29 15:28:42 AppAraat: go 7 or 8 Apr 29 15:28:58 AppAraat: 7 is the best bet Apr 29 15:29:10 yiati: Hasn't Oracle dropped support for it now? Apr 29 15:29:31 I know that's not a big deal, but it makes me think that using 8 is the future. Apr 29 15:29:36 https://www.java.com/en/download/faq/java_7.xml Apr 29 15:29:51 Use 7, 8 is still not fully supported Android side Apr 29 15:29:55 TacticalJoke, maybe in 5 years when android supports 8 Apr 29 15:30:13 Oh that sweet, sweet lambda Apr 29 15:30:24 oh that sweet kotlin Apr 29 15:30:28 <_genuser_> argh, why does lock(this) not work??!??ONE!!!! Apr 29 15:30:29 TacticalJoke: Idk just saying for Android development there's some stuff you can get out of 8 like rxlambda, but if you want to avoid the most trouble with Android (if you're new) use 7 at the moment Apr 29 15:30:37 <_genuser_> synchronized(this) is kinda dumb. Apr 29 15:30:49 'STUPID JAVA!' Apr 29 15:30:52 :P Apr 29 15:31:56 http://pastebin.com/aULrW3j2 Apr 29 15:32:00 :p Apr 29 15:32:06 * ventura wondering why people use callbacks instead of services for HTTPS... http://frabz.com/5zvt Apr 29 15:33:14 There's a long, long road of downloads ahead of you yet AppAraat Apr 29 15:33:39 VoidNeumann: you mean Android Studio and openjdk-7-jre not enough? Apr 29 15:34:15 also I can't seem to find the micro-USB cable Apr 29 15:34:32 so I suppose I'll just watch this time lol Apr 29 15:34:40 Things you'll want: Apr 29 15:35:23 AStudio, SDK with docu and source, JDK, Genymotion, Gradle Apr 29 15:35:49 AppAraat: sdk with documentation and source (* for each version of Android you want to support) Apr 29 15:36:42 do I still need Genymotion (which is basically a VM ritht?) if I have access to an Android device? Apr 29 15:36:49 no Apr 29 15:36:50 *right Apr 29 15:36:55 you don't need it Apr 29 15:37:06 And ALLLLL the support libraries for when your company realises the bundled version stats exclude chinese market Apr 29 15:37:29 Oh how we laughed . . . I say we . . . Oh how they laughed Apr 29 15:38:03 heh, I'm glad it's just an intro class, but I'll keep this in mind Apr 29 15:38:05 VoidNeumann, you are really donwloading the documentation? ^^ Apr 29 15:38:13 and the source/ Apr 29 15:38:31 :D ofc Apr 29 15:39:03 ctrl+b to infinity! Apr 29 15:39:18 lol I have 2 downloads open and now my web browser takes hours to load. Somehow IRC still keeps connected with 2s lag now and then. Apr 29 15:39:25 You are all I have now :D Apr 29 15:39:51 what kind of university is this? Apr 29 15:39:54 what country? Apr 29 15:40:04 University of Georgia Apr 29 15:40:07 (the country) Apr 29 15:40:19 they're upgrading it to fiber somewhere later on though Apr 29 15:40:31 [THIS close to making a 'UoPotato' faux pas] Apr 29 15:41:07 Tell the instructor to think it through next year and bang out some preloaded DVDs Apr 29 15:42:10 that really sucks Apr 29 15:42:23 I always go to university just to download big things ^^ Apr 29 15:43:36 the funny thing is that they have permission problems on their Windows PCs (asks for password every time you want to run AStudio) Apr 29 15:43:45 so that kind of distracts them from my own fail Apr 29 15:44:23 is there a gradle api for running a task on all connected devices? Apr 29 15:44:30 make yourself a persistant ubuntu stick and use that :) Apr 29 15:44:32 that comes with android plugin Apr 29 15:45:43 something tells me I'll also have trouble installing this thing on 12.04 since it's tested on 14.04 Apr 29 15:48:04 VoidNeumann: when you mean SDK+docs+source, do you mean to download it from here? https://developer.android.com/sdk/index.html Apr 29 15:48:28 You don't need the SDK documentation installed locally. Apr 29 15:48:54 And if the Linux AS installer is anything like the Windows one, you'll get the source automatically. Apr 29 15:49:12 oh cool, in that case I'll just wait for the AS download. Apr 29 15:50:02 Is it possible to rotate a window/WindowManager an arbitrary number of degrees .. or just the contents inside of it ? Apr 29 15:50:48 Activity transitions are SO COOL Apr 29 15:51:17 I have a project that has some dependencies that I write and publish to my own sonatype maven repo. Is there any way to be able to attach sources in AS for this maven dependencies to be able to modify them, and debug them? Apr 29 15:52:20 yiati, you can add it as library project maybe Apr 29 15:52:27 yiati: the best solution I have found for that is to have your dependant and dependency in the same project and reference as a project Apr 29 15:52:36 reference as a library * Apr 29 15:53:34 .jar or .aar? Apr 29 15:56:21 wow, the Microsoft Build keynote is remarkably dull Apr 29 15:56:36 at least WWDC and IO start off interesting then go on too long. Microsoft just want to talk Azure >_> Apr 29 15:57:13 I'll be so disappointed if they don't mention Kotlin this year at IO. Apr 29 15:58:08 TacticalJoke, seems like current snapshot does not work on ART Apr 29 15:58:38 Oh. When did that break? Apr 29 15:59:02 danijoo: android-dev179 yeah that's what I'm thinking about doing mkay. Was hoping there might be some other gradle magic :P Apr 29 15:59:07 no idea. M12 works fine but this week somebody said everything crashes Apr 29 16:01:02 m12 of what? Apr 29 16:01:25 kotlin Apr 29 16:01:58 I see Apr 29 16:02:17 I have a circular view with children that orbit around it .. this lives in a window and i want the window to be as small as possible as to not intercept touches meant for the screen behind it .. does anyone have any ideas? ie i don't want the window to accomodate the entire orbit path .. just where a child is at that moment Apr 29 16:02:48 putting the children in their own windows was a little too choppy / slow Apr 29 16:04:56 yeah I can definitely see why getting AStudio is a must if you don't know Java. Apr 29 16:06:05 not knowing java leads to terrible code Apr 29 16:06:10 knowing java is a must before working on android Apr 29 16:06:15 having an IDE doesn't help with that Apr 29 16:06:16 ^ Apr 29 16:07:51 WTF, I am setting a View to INVISIBLE inside RecyclerView.ViewHolder, and some other items get set to invisible too... Why? (obviously it's some optimisation to reuse views, but how do I prevent it) Apr 29 16:08:06 <_genuser_> so I don't catch any exceptions, so they can be caught in the mainactivity and shown in an error panel. Apr 29 16:08:21 <_genuser_> and Exception.getMessage() gives back just "null". how is that helpful? Apr 29 16:08:23 pfn_: hmm yeah that makes very much sense. I wanted to see if I could integrate a webapp into an Android app and do most of the development on the webapp. Apr 29 16:08:41 cordova may be more what you want Apr 29 16:08:47 so I thought the knowledge of Java would have been minimal, but now I'm seeing that it's a lot Apr 29 16:08:49 <_genuser_> I'm sure for logging we can log the stackTrace(). Apr 29 16:08:55 dimitrovskif: Are you setting it invisible in some cases and then forgetting to set it visible in others? Apr 29 16:09:03 <_genuser_> but does anyone has any ideas on showing exceptions and causes on screen? Apr 29 16:09:21 depends on what you want... Apr 29 16:09:27 toast the message, popup window, etc. Apr 29 16:09:31 TacticalJoke: http://paste.ofcode.org/YwkAX5nXTd6nVeAxtU8ikc Apr 29 16:09:40 but exception messages are generally never meant to be user visible Apr 29 16:10:03 dimitrovskif, recyclerviews recycles it.. Apr 29 16:10:08 <_genuser_> I guess just a "null" isn't helping even me debug quickly if I just throw it up on the screen. Apr 29 16:10:13 danijoo: I know, how do I prevent it Apr 29 16:10:14 pfn_: Cordova sounds like exactly what I want. I was thinking to do most of the dev work in Node.js anyways. Apr 29 16:10:20 dimitrovskif, cant Apr 29 16:10:30 thats why its called recyclerview/ Apr 29 16:10:32 <_genuser_> I have to either launch it via debugger or put log.d() after every line to catch it. Apr 29 16:10:42 huh? Apr 29 16:10:43 danijoo: http://paste.ofcode.org/YwkAX5nXTd6nVeAxtU8ikc ... Apr 29 16:10:53 _genuser_, what kind of crap is this? exceptions show up in log anyway... Apr 29 16:11:35 <_genuser_> pfn_: interestingly, I have a try/catch in the MainActivity where I toast the message. however the .getMessage() only returns to me "null". Apr 29 16:12:05 null pointer exceptions tend to have null as the message Apr 29 16:12:22 <_genuser_> pfn_: I run most of the code to debug via eclipse's debug menu. but when doing something really heavy it takes upto 10+ minutes for some of my routines to run thru the debugger to get to the breakpoint. Apr 29 16:12:39 TacticalJoke: danijoo: So there is no way to prevent this? Apr 29 16:12:54 <_genuser_> pfn_: yeah, guess I was kinda expecting " is null". Apr 29 16:13:08 <_genuser_> which I know I can watch via stacktrace. Apr 29 16:13:09 its a recyclerview because it recycles. Apr 29 16:13:32 _genuser_, then just read the logcat Apr 29 16:13:35 <_genuser_> I think the proper thing for me to do would be to log.d the stacktrace as a rule in my code all over instead of just the getMessage() Apr 29 16:13:50 Yeah I know that, but couldn't it set it to VISIBLE when it is reusing the old views... Apr 29 16:14:03 _genuser_, if you're not catching, and it's crashing, you already get the stack trace... Apr 29 16:14:09 <_genuser_> pfn_: you know some things are just too dumb. such as old habit. when you discuss it out loud with someone all of a sudden you realize what you were doing wrong. :) Apr 29 16:14:21 dimitrovskif: you should manually reset your views to their "default" state Apr 29 16:14:40 Estel: Is there a method for it? Apr 29 16:14:50 Estel: I am assuming the same holder gets used... Apr 29 16:14:59 holder.view.setVisibility(VISIBLE)? :P Apr 29 16:15:06 <_genuser_> pfn_: when I just code, I code more based on how I think it should be written. when I talk to myself or another dev out loud, I catch all sorts of mistakes. Apr 29 16:15:17 Estel: http://paste.ofcode.org/YwkAX5nXTd6nVeAxtU8ikc Where? Apr 29 16:16:02 <_genuser_> I need crashlytics integration. I can't imagine debugging this stuff while it's out in production. Apr 29 16:16:48 dimitrovskif: When using something that recycles views always make sure to declare all states that you want for a view upon getView Apr 29 16:16:48 I usually do so at the top of onBindViewHolder Apr 29 16:17:33 yiati: Estel: Oh figured it out. So a Holder does NOT represent an item, it gets reused and I can use onBindViewHolder to get which one to represent.. Yeah, it works now Apr 29 16:17:49 yiati: Estel: I had the wrong perception of how the Holder pattern works. Apr 29 16:18:39 yiati: apparently I need openjdk-7-jdk instead of openjdk-7-jre ? Apr 29 16:19:00 AppAraat: yes, jdk is java developer kit Apr 29 16:19:17 jre is java runtime environment, just runs stuff Apr 29 16:19:32 yiati: that time I mentioned openjdk-7-jre and everyone said yes. I waited like good 45min on that lol :p Apr 29 16:20:19 yeah... the naming is weird, you want jdkjdkjdk7jdk instead of jdkjdkjdk7jre Apr 29 16:20:41 lol Apr 29 16:21:00 luckily that jdk is only 17mb or os Apr 29 16:21:01 *so Apr 29 16:21:33 Android development requires a lot of patience, AppAraat. :D Apr 29 16:21:37 This is the least of it. Apr 29 16:22:32 JDK Required: 'tools.jar' seems to be not in Studio classpath. Apr 29 16:22:34 Please ensure JAVA_HOME points to JDK rather than JRE. Apr 29 16:22:52 AppAraat, dont forget to switch AS to offline mode if ur internet is that bad Apr 29 16:23:07 $JAVA_HOME needs to be set to what? Apr 29 16:23:42 Did you install the JRE and not the JDK? Apr 29 16:23:53 You need the JDK (which contains the JRE). Apr 29 16:24:01 I fucking love Android development. So much devices with different screens, densities, hardware, android versions and yet you can develop easily with just appcompat and the standard API. The API uses good patterns, Android Studio understands resources, DDMS, good autocomplete. Not to mention the great build system and the great libraries Apr 29 16:24:25 not sure if sarcastic.. : Apr 29 16:24:31 It's hard to tell... Apr 29 16:24:37 Why sarcastic? Apr 29 16:25:09 TacticalJoke: I think so - http://pastebin.com/dVpqmRd8 Apr 29 16:25:11 "The API uses good patterns" is the real questionable statement. :D Apr 29 16:25:30 dimitrovskif: some of those are pros/cons depending on how you look at it Apr 29 16:25:39 dimitrovskif, you usually dont hear people saying positive things about the api or fragmentation Apr 29 16:25:56 danijoo: Umm Apple devs can't even handle a change from 5 to 6 Apr 29 16:26:57 AppAraat: I dunno. Is this helpful? http://stackoverflow.com/questions/16601334/error-to-run-android-studio Apr 29 16:28:14 java -version Apr 29 16:28:15 java version "1.6.0_35" Apr 29 16:28:17 OpenJDK Runtime Environment (IcedTea6 1.13.7) (6b35-1.13.7-1ubuntu0.12.04.2) Apr 29 16:28:19 OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode) Apr 29 16:29:07 1.6? Shouldn't that be 1.7? Apr 29 16:29:52 I think I have too old Ubuntu, I'll just add the webupd8 PPA Apr 29 16:30:21 I guess you already had 1.6 installed? Apr 29 16:31:01 yeah I had jdk 6 Apr 29 16:31:07 but then I installed jdk 7 Apr 29 16:31:26 Hello. I don't understand it with android-studio sometimes -_- Apr 29 16:31:26 I suppose I should have uninstalled jdk 6? Apr 29 16:31:35 I think that's a fair supposition. Apr 29 16:33:32 you need the webup ppa to get oracle java Apr 29 16:33:37 otherwise you get openjdk Apr 29 16:34:18 aaah Apr 29 16:34:27 k, I'll install the webupd8 PPA then Apr 29 16:34:30 so many Javas Apr 29 16:37:25 22m40s remaining Apr 29 16:42:26 TacticalJoke: ! Apr 29 16:42:44 Why should anyone keep app.iml in android-studio? gets a lot of headaches in merging Apr 29 16:43:10 because you dont want to setup the project on 10 computers Apr 29 16:44:21 Hay. Apr 29 16:44:44 vedu: I don't put that under version control. Apr 29 16:44:49 build.gradle is enough. Apr 29 16:44:53 danijoo: was that for me Apr 29 16:45:04 yes Apr 29 16:45:41 Even I feel build.gradle is enough Apr 29 16:45:59 Even vedu! Apr 29 16:46:15 danijoo: how does it help in setting up the project Apr 29 16:46:38 danijoo: If I delete the file, I just have to "make" the project Apr 29 16:46:39 vedu: You can use "Import project" with the build.gradle thingamyjig. Apr 29 16:47:12 vendu i can download the git on any computer and just doubleclick it Apr 29 16:47:45 I dont say its wrong to not add it. But you can do it without problems Apr 29 16:49:33 danijoo: how do you manage merges with it? Apr 29 16:49:50 file doesnt change much if you dont change the project Apr 29 16:50:18 I want to show an alert dialog in the camera preview mode - is this possible? Apr 29 16:51:08 danijoo: yeah that is true. that is why I encounter its problems sometimes only Apr 29 16:52:25 Anyone know if using adb over wifi to install an apk is possible? Apr 29 16:52:54 gman23, with root yes Apr 29 16:53:02 bah Apr 29 16:53:33 and its kinda slow Apr 29 16:53:33 Well thanks anyways Apr 29 16:53:38 gman23: http://stackoverflow.com/questions/14358882/connecting-adb-using-wifi-for-non-rooted-device Apr 29 16:53:50 gman23: you have to connect it via USB once Apr 29 16:53:51 I do that without root. Apr 29 16:53:53 you only need root to have apps that do this stuff for you Apr 29 16:54:21 on my home network (wireless-N) it's pretty fast for small projects, and I've had the debugger attached with no problem Apr 29 16:54:23 once each time I want to do this? Apr 29 16:54:32 i think so Apr 29 16:54:32 I've already connected once before Apr 29 16:54:42 Okay well that defeats the purpose for me Apr 29 16:54:43 Once each time you start your phone. Apr 29 16:54:49 Or something. Apr 29 16:55:12 As far as I remember, it's only when I restart my phone that I have to do the "adb tcpip 5555" thing. Apr 29 16:55:33 TacticalJoke, theres a dev setting Apr 29 16:55:38 with root, it's a single toggle in whichever app you decide to use to manage Apr 29 16:55:41 So now I actually have to get up, go all the way upstairs and search my room for a proper usb cord. Apr 29 16:55:47 pretty much one of the main reasons i root Apr 29 16:55:52 gman23: damn stairs. Apr 29 16:55:53 What a horrible time to be alive. Apr 29 16:55:54 gman23: Aren't you using one to charge the device? Apr 29 16:56:12 Lets entertain the idea that the cord/charger isn't with me right now Apr 29 16:56:15 I have USB cables everywhere. Apr 29 16:56:18 wireless adb especially comes in handy since most of my charging is through QI Apr 29 16:56:26 I have some upstairs, but many of them don't work well Apr 29 16:56:56 and in CyanogenMod, you have wireless ADB built-in Apr 29 16:57:01 If you're doing Android development, the device will run out of power soonish anyway. Apr 29 16:57:04 wifi over adb is way to slow if u ask me Apr 29 16:57:07 So you'll need a cable regardless. Apr 29 16:57:20 danijoo: Hmm, I've never noticed any slowness. Apr 29 16:57:21 what libraries are available for controls n stuff ? Apr 29 16:57:30 TacticalJoke, for me its much slower than usb Apr 29 16:57:36 maztheman: sorry, what? Apr 29 16:57:37 They're both instant here. Apr 29 16:57:51 example: edit control Apr 29 16:57:52 danijoo: i haven't seen _that_ much of a speed difference Apr 29 16:58:11 something that can take keyboard input Apr 29 16:58:11 burntcookie90: Just curious -- when do you notice a difference? Apr 29 16:58:21 Even when my app downloads big data it's as fast as with a cable. Apr 29 16:58:30 i havent done anything with android before Apr 29 16:58:34 let alot forms n stuff Apr 29 16:58:37 TacticalJoke: the only speed difference is deploying bigger APKs to the device Apr 29 16:58:37 alone Apr 29 16:58:44 maztheman: you want an EditText Apr 29 16:59:10 this is a native app, is that available ? Apr 29 16:59:11 well im talking about ~ 20mb apks here Apr 29 16:59:15 brb Apr 29 16:59:16 and i can notice a huge difference Apr 29 16:59:21 maybe its just my phone though Apr 29 16:59:29 maztheman: yes, you should probably take a look at the framework :) Apr 29 16:59:39 danijoo: 20mb is large in my experience Apr 29 16:59:47 burntcookie90: ;) Apr 29 16:59:48 danijoo: Ah. I've never used such big APKs. About 3MB max. Apr 29 17:00:07 yeah, most of my side projects are <7mb or so Apr 29 17:00:11 Hey guys, here's the "promo" video of Montreal DroidCon. https://www.youtube.com/watch?v=aVRzbH8TgdE Apr 29 17:00:13 and transfer quick enough over wifi Apr 29 17:00:26 MikeWallaceDev_: Where have you been? Apr 29 17:00:37 I'm in it 3 times, always from the back. I think that they think I'm ugly. Apr 29 17:00:54 TacticalJoke, I'm always here man... But super busy with this contract Apr 29 17:01:15 Doh! Apr 29 17:01:15 like 15 hours days, 7/7 Apr 29 17:01:45 But yeah, the chat is always open, and I take a look from time to time Apr 29 17:01:59 Someone has to keep an eye on you guys!! :D Apr 29 17:04:06 how do you think I should monetize my app? and general recommendations??? https://www.youtube.com/watch?v=_V73zNwMUWw Apr 29 17:13:36 I have a theme defined in styles.xml that my activity uses, but somehow my ImageButton doesn't inherit the background from there. Any ideas why? Apr 29 17:13:48 I have to specify android:background on the ImageButton Apr 29 17:13:52 BT audio on 12.1 is broken like no other Apr 29 17:14:05 oops wrong channel Apr 29 17:14:33 g00s: ! Apr 29 17:15:33 thepoosh ! Apr 29 17:15:39 whats up Apr 29 17:15:46 "native activity" is like "windows forms" ? Apr 29 17:15:49 the front end? Apr 29 17:16:16 we got approved Apr 29 17:16:33 thepoosh congrats then is it up ! ? Apr 29 17:16:41 nope Apr 29 17:16:51 we have a week to upload to 100% Apr 29 17:18:15 thepoosh once its done, where does it show up ? Apr 29 17:18:18 https://play.google.com/store Apr 29 17:18:24 i was looking for a 'featured' section Apr 29 17:22:49 Editors Choice I think Apr 29 17:23:14 thepoosh how long does it stay up, 1 week maybe? Apr 29 17:24:03 idk Apr 29 17:28:15 thepoosh so are you guys going to take a break from hectic stuff now ... recover, celebrate, ect :D Apr 29 17:29:35 damn, another idea done already http://www.gizmag.com/dogtelligent-connected-collar/37241/ Apr 29 17:29:39 bankai_ ^^^ Apr 29 17:30:50 * soon on your kid's neck * Apr 29 17:31:03 :D Apr 29 17:31:09 no, first google will put them on android developers necks :D Apr 29 17:32:00 :)) Apr 29 17:32:40 Hi.. Apr 29 17:33:49 oh dang, MS is allowing cross compiling of and android and ios apps Apr 29 17:34:22 MS has special abilities. Apr 29 17:34:24 thepoosh so once approvoved, does google do an interview with you guys ... video go anywhere, etc ? for example i see they have these videos on d.android.com of developers & their experiences Apr 29 17:34:29 *approved Apr 29 17:35:04 can a webview crop an image before displaying it? Apr 29 17:35:09 I'm working on porting MultiROM to the LG VS985. This is my first port attempt and I'm following the guide from Tasssadar's multirom wiki. He says "This is assuming you have device folder already set-up for building TWRP" and I'm not sure what exactly is meant by this. MultiROM uses a custom version of TWRP, so what exactly do I need to set up to build it? Apr 29 17:35:20 i want only a part of the image displayed in webview Apr 29 17:35:23 officialxian off topic for this channel Apr 29 17:35:36 g00s: is it not android development? Apr 29 17:35:41 nope Apr 29 17:35:44 how Apr 29 17:36:04 officialxian: you must take it to the custom rom channel Apr 29 17:36:10 It's not app development. I guess #android-root or #android. Apr 29 17:36:15 i believe this is specific to android application dev Apr 29 17:36:28 This is for developers, developers, developers. Apr 29 17:36:46 well folks any idea how i can achieve it Apr 29 17:36:57 g00s: wtf do I know Apr 29 17:37:06 thepoosh lol Apr 29 17:37:20 RishabhTatiraju: That's really fiddly and generally awful. Apr 29 17:37:23 Y u no use ImageView? Apr 29 17:37:29 a webview is for rendering html RishabhTatiraju, not for cropping image Apr 29 17:37:40 well, can ImageView render images from web Apr 29 17:37:54 take a look at picasso library Apr 29 17:38:02 the image i'm getting is from the METEOSAT database of the Indian Ocean updated every hour Apr 29 17:38:02 ImageView renders images Apr 29 17:38:05 you just need to get an image Apr 29 17:38:09 and put it in there Apr 29 17:38:28 RishabhTatiraju, http://square.github.io/picasso/ Apr 29 17:38:39 if you display a single image, you'd better use that with an ImageView Apr 29 17:38:51 RishabhTatiraju cool, a weather app ? Apr 29 17:39:13 yes. Apr 29 17:39:29 I'm quite primitive in android development right now Apr 29 17:39:52 i tried OpenWeatherMap Tiles tutorial but i dont seem to understand it Apr 29 17:40:26 my weather app focuses more on weather in India, therefore the satellite imagery of the Indian Ocean. Apr 29 17:41:31 i wish the WebView, which currently loads the entire image, to crop out India and display the cropped view only. Apr 29 17:42:14 WebView doesn't give you much control. Some things aren't possible; others are a complete pain; etc. Apr 29 17:43:03 RishabhTatiraju is the image animated gif> Apr 29 17:43:24 No. a jpeg Apr 29 17:43:30 some of those weather sites give animations .. ok Apr 29 17:43:49 yeah, you are probably best looking into picasso, glide, whatever Apr 29 17:44:14 well never mind, its a bad idea, the image from METEOSAT is low res. It will be a strain to the eye if i crop it and ask it to fill the entire screen Apr 29 17:46:22 i'm running proguard with -dontobfuscate but i'm still getting warnings about unresolved references.. Do i have to specify those even if i'm skipping obfuscation? Apr 29 17:49:29 alexfu, yes Apr 29 17:53:30 when I use .putExtra and SharedPreferences.Editor.putString and such, should I externalize the variable names? What's the best practice? Apr 29 17:53:56 yeah ... have a constant somewhere ideally Apr 29 17:54:01 Why? Apr 29 17:54:36 prevents typos Apr 29 17:54:44 for example class PrefUtils { interface Keys { String PREF_ONE = ""; String PREF_TWO=""; } } Apr 29 17:54:49 danijoo: damn. well thats a bit annoying Apr 29 17:55:36 g00s: Why not use strings.xml then? Apr 29 17:55:58 kba, performance Apr 29 17:56:11 and pointless Apr 29 17:56:44 The performance you gain from a look up to styles.xml is doubtfully even measurable Apr 29 17:57:01 it would be nice to keep preferences.xml keys in sync with code though Apr 29 17:57:09 thats a pita Apr 29 17:57:35 lol Apr 29 17:57:55 https://github.com/BoD/android-prefs << I paste it because I know a bit the guy, but mainly because of the picture below Apr 29 17:58:15 otherwise I did not try it, cause I prefer to handle myself the preferences, but it might be useful to you kba Apr 29 17:58:46 static strings are enough for me Apr 29 17:59:11 I do that too Apr 29 17:59:23 android-prefs seems a bit excessive Apr 29 17:59:25 g00s, if you're desparate, use strings.xml Apr 29 17:59:33 I just have my own wrapper class (that's singly instantiated) which is given the SharedPreferences object in Application.onCreate. Apr 29 17:59:38 "Prefs makes good use of the excellent android-apt plugin.", lol no thanks Apr 29 17:59:41 I tend to encapsulate json in sharedpref nowadays anyway Apr 29 17:59:49 So you have a global enum with all preference names? Apr 29 17:59:50 so it's not anymore a big chaos of keys Apr 29 17:59:58 or did i just move the problem :p Apr 29 18:00:02 kba, no enum. an interface Apr 29 18:00:03 Hi, I am tinkering about the MVP pattern and are unsure about listeners. Where do they belong in the pattern? Apr 29 18:00:20 Why an interfacE? Apr 29 18:00:21 hilarious g00s Apr 29 18:00:27 Oh right, enums are ints Apr 29 18:00:31 kba: Why not create a SharedPreferences wrapper for your app that has getFoo, setFoo, private static string FOO_KEY, etc.? Apr 29 18:00:44 TacticalJoke: because lazy Apr 29 18:00:47 kba because with enums you must to editor.putInt(ENUM.toString(), 123), while you can use a string as it is Apr 29 18:01:06 because an enum is not accepted as key Apr 29 18:01:19 kba: Java enums aren't ints. Apr 29 18:01:27 They're just objects. Apr 29 18:01:46 Java enums are great, really. Way more powerful than those of C++/C#, etc. Apr 29 18:02:01 Why can't they be used here then? Apr 29 18:02:09 Because they're not Strings. Apr 29 18:02:11 if you're not into performance, and you should not with sharedpref, enums are great Apr 29 18:02:30 adq, you are one of those people saying enums in android are bad? Apr 29 18:02:38 no i just said the contrary Apr 29 18:02:46 modulo "when performance matters" Apr 29 18:02:56 It just seems using an interface for this is a bit of an abuse Apr 29 18:02:59 when performance matters, i still use enums :/ Apr 29 18:03:25 I don't think it's a big deal to have a few enum instances. They are instantiated exactly once. Apr 29 18:03:27 final static int is prefered when performance matters Apr 29 18:03:34 without knowing much about Android, I'm going to come out and say that if the externalization look ups ruin your performance, you're doing something wrong Apr 29 18:03:51 adq, the document that states that is from times where android devices had 32mb of ram Apr 29 18:04:07 it is still true :) but the key is to profile anyway Apr 29 18:04:13 and know where the bottlenecks are Apr 29 18:04:23 when you have to optize enums vs ints, you really have other problems imo Apr 29 18:04:29 if* Apr 29 18:04:32 a state machine Apr 29 18:04:38 like for audio or video Apr 29 18:04:40 will need high perf Apr 29 18:04:58 anyway, i would love to talk more on this subject (<3 perfs) but need to eat, see ya, code wisely! Apr 29 18:05:19 enums are instantiated only once so even in a state machine you dont really use performance Apr 29 18:05:27 lose* Apr 29 18:05:30 cant type -_- Apr 29 18:05:38 the only negative side of them is memory overhad Apr 29 18:06:08 their will be lookup and few overhead you don't have with final static int directly available in the heap Apr 29 18:06:17 it's easy to verify the "assembly" generated too Apr 29 18:06:20 etc Apr 29 18:06:22 ttyl Apr 29 18:06:41 mh. well. I still thing you dont need that in 99% of cases :) Apr 29 18:06:56 but audio state machine is actually a good point Apr 29 18:09:45 In Android Studio, how do I scroll up without moving the cursor? Apr 29 18:09:46 kba: I think it's more of a "broken window" thing. If you start using strings.xml for every little thing, after some time it's gonna build up to something big that (I presume) has to sit in memory the entire time your app runs. Apr 29 18:10:06 Ctrl+Up/Down. Apr 29 18:10:07 TacticalJoke: Yes, that was my initial thought for not wanting to externalize at all Apr 29 18:10:09 kba, i have a mousewheel Apr 29 18:10:11 Same as in anything, really. Apr 29 18:10:21 kba: ideavim :D Apr 29 18:10:33 danijoo: I don't really use the mouse Apr 29 18:10:49 kba, look into ideavim then Apr 29 18:10:51 its awesome Apr 29 18:11:03 if you want arthritis, it is Apr 29 18:11:07 wat Apr 29 18:11:14 that's a new one Apr 29 18:11:22 hello everybody. I would like to deploy my php application to android app. I heard that I can do it with xcode but Im not sure. Can anybody help me please? Apr 29 18:11:33 either way, Ctrl+Up/Down doesn't work for me. Anybody know the Mac shortcuts? Apr 29 18:11:33 >.< Apr 29 18:11:46 SmashingX2: deploy php code using xcode onto and androi device? Apr 29 18:11:49 that's also a new one. Apr 29 18:12:09 SmashingX2 if you add emacs to the equation its possible Apr 29 18:12:18 and some butterflies Apr 29 18:12:21 well burntcookie90 that’s what I heard but Im not sure Apr 29 18:12:31 only compiles on solaris though Apr 29 18:12:36 SmashingX2 whoever told you that, was fucking with you :D hahahaha Apr 29 18:12:41 unfortunately that makes absolutely no sense to me Apr 29 18:12:49 kba, try alt+G+linenumber Apr 29 18:12:51 g00s: then that’s for iOS then? Apr 29 18:12:59 commang+g i mean Apr 29 18:13:06 yes, xcode is for iOS Apr 29 18:13:16 oh ok then I misunderstood Apr 29 18:13:25 I thought I could do it for both Apr 29 18:13:28 with xcode Apr 29 18:13:45 so then to deploy for android how can I do it? Apr 29 18:13:54 you simply dont. Apr 29 18:14:04 you write it in something else Apr 29 18:14:15 Can't they just use a web browser to "open your app"? Apr 29 18:14:19 AKA open your site. Apr 29 18:14:23 danijoo: neither alt+g nor cmd+g does anything, I'm afraid. cmd+L is used to jump to a line, but it moves the cursor as well Apr 29 18:14:27 my knowledge of PHP is pretty much non-existant, but how do you write mobile apps using php Apr 29 18:14:40 SmashingX2 maybe we misunderstood. clearly, your PHP stays on the server. You can probably write JS mobile app that works on android + ios, not sure what tools for that though Apr 29 18:14:43 burntcookie90, not possible :) Apr 29 18:14:44 kba: i think the only way is to pgup/down or use a mouse Apr 29 18:14:57 Oh man, imagine if we had to use PHP. Apr 29 18:15:01 Then we'd have something to complain about. Apr 29 18:15:01 burntcookie90: curiously enough, pgup/pgdn also moves the cursor! Apr 29 18:15:04 which is very odd Apr 29 18:15:07 interesting Apr 29 18:15:08 well g00s i want to make an APK file basically Apr 29 18:15:08 I would die of stress. Apr 29 18:15:13 SmashingX2 yeah ... no Apr 29 18:15:31 I guess he wants to create an app that simply loads his website in a WebView. Apr 29 18:15:35 But it seems pointless to me. Apr 29 18:15:41 kba: i think your only real solution is to use a mouse, sorry Apr 29 18:15:51 TacticalJoke: that makes sense, i guess Apr 29 18:15:54 "Check out our app! Like your web browser but way worse." Apr 29 18:15:57 TacticalJoke, so basically a locked brower :D Apr 29 18:15:57 TacticalJoke: ? No I don’t want that Apr 29 18:15:58 okay, thank you Apr 29 18:16:00 browser Apr 29 18:16:01 Does anyone know of a way to set a specific Live Wallpaper (using either intents or WallpaperManager) from an activity? Apr 29 18:16:19 As in, I want to bypass the chooser Apr 29 18:16:40 cjslep, i know its possible for normal wallpapers Apr 29 18:16:47 so i think it should also work for live Apr 29 18:17:01 danijoo Yeah WallpaperManager seems built for static images or a stream of data. Apr 29 18:17:11 What do you want, SmashingX2. Apr 29 18:17:12 cjslep: does muzei do that? I can't remember Apr 29 18:17:13 But I haven't seen anything about getting a live wallpaper up Apr 29 18:17:15 App-wise. Apr 29 18:17:53 burntcookie90: I am not familiar with muzei, but I'll look into it. Apr 29 18:18:02 it's open source as well Apr 29 18:18:07 code.muzei.co i think Apr 29 18:18:07 oh so I can use android studio? Apr 29 18:18:17 SmashingX2: Your query makes no sense. Apr 29 18:18:34 Thanks Apr 29 18:18:49 I don’t know what you mean by makes no sense Apr 29 18:18:52 You can PHP it all and expect an APK. Apr 29 18:19:11 What’s android studio for then? Apr 29 18:19:29 SmashingX2, java Apr 29 18:20:06 SmashingX2: android apps are writting in java, or jvm based languages Apr 29 18:20:25 so sad they closed source this .. why google, why !!? :( http://www.androidpolice.com/2015/04/29/google-my-tracks-update-brings-super-cool-earth-view-to-your-runs/ Apr 29 18:21:27 g00s: so they could add these features lol Apr 29 18:21:30 probably Apr 29 18:22:43 Why is the ViewPager only in v4.support library? Apr 29 18:23:35 vedu its also in support v13 Apr 29 18:23:47 interesting http://phandroid.com/2015/04/28/microsoft-windows-10-android-apps/ Apr 29 18:23:58 g00s, yeah I read that too Apr 29 18:24:10 vedu v4 uses support fragments, v13 uses native fragments (for adapter) Apr 29 18:24:26 suddenly microsofts investments in CM make sense :p Apr 29 18:24:38 g00s: oh But why only support? Apr 29 18:24:47 danijoo i didn;t think that went any further than having MS apps on CM devices Apr 29 18:25:15 not that i would know Apr 29 18:25:29 but they are clearly leaning towords andorid Apr 29 18:26:08 vedu: There isn't necessarily any rhyme or reason. Google is inconsistent at times with regard to such things. Apr 29 18:26:30 One could also argue that everything like this should be in the "support" libraries only. For example, why is Toolbar in both AppCompat and Android? Madness. Apr 29 18:26:30 you usually dont use normal fragments anyways Apr 29 18:26:32 TacticalJoke: okay. Not that it has been replaced. good to know Apr 29 18:26:38 v4 is usually a must-have Apr 29 18:26:52 i used the v13 one, for example, to put a few preferenceFragments in a viewpager for example Apr 29 18:27:04 because those don't inherit from the support version of Fragment Apr 29 18:27:23 (this wasn't for app prefs, but just pages of static info i wanted to look similar to prefs) Apr 29 18:27:43 g00s: hmm so I can use whatever works Apr 29 18:27:44 yeah but thats literally the only reason i can imagine Apr 29 18:27:51 vedu: FWIW, it's often good to use the (badly named) support libs as much as possible. For example, with Fragments, you get consistent behaviour across Android versions if you use the support ones. Apr 29 18:28:15 vedu, non-support fragments are error-phrone for some android versions Apr 29 18:28:49 Support your local fragments today! Apr 29 18:29:11 TacticalJoke did i read somewhere that "android:parentActivityName" is deprecated ? Apr 29 18:29:50 i believe that's for <15? Apr 29 18:30:09 http://developer.android.com/training/implementing-navigation/ancestral.html Apr 29 18:30:19 Hmm, it doesn't say that in the documentation (e.g., here: ) and I haven't heard that. Apr 29 18:30:23 I never even use the navutils stuff Apr 29 18:30:25 ah, the meta-data is for <16 Apr 29 18:30:56 burntcookie90 looks like, after 16 O.o Apr 29 18:30:58 "Beginning in Android 4.1 (API level 16), you can declare the logical parent of each activity by specifying the android:parentActivityName attribute in the element." Apr 29 18:31:05 but did appcompat change this ? Apr 29 18:31:06 I quite like the "finish();" approach (in some cases). Very simple. Apr 29 18:31:14 Though I guess it's not always enough. Apr 29 18:31:25 TacticalJoke: I most always override back button, on home and use finish Apr 29 18:31:57 In cases where it's not enough, though, I think we can manually start the activity (perhaps with singleTop or something). Apr 29 18:32:00 We don't even need to use NavUtils. Apr 29 18:32:15 yup Apr 29 18:32:41 Check out this ish: https://android.googlesource.com/platform/frameworks/support/+/master/v4/java/android/support/v4/app/NavUtils.java#77 Apr 29 18:33:00 g00s: I wonder whether the clear-top thing was causing your flickering, on a side note. Apr 29 18:33:18 NavUtils makes a new activity it doesnt return to the old one Apr 29 18:34:11 "If the parent activity has launch mode , or the up intent contains FLAG_ACTIVITY_CLEAR_TOP, the parent activity is brought to the top of the stack, and receives the intent through its onNewIntent() method." Apr 29 18:34:34 as opposed to the other one which popps the activity off the stack .. hmm Apr 29 18:34:37 Yeah. Apr 29 18:34:55 That's why you had that issue with the activity restarting before. Apr 29 18:35:38 myke, i found several account authenticator implementations inside android aosp. check at AndroiXRef.com for "extends AbstractAccountAuthenticator" Apr 29 18:37:21 TacticalJoke any one character changesets today :D Apr 29 18:37:30 i came close, one line Apr 29 18:37:47 Ahh, no. Just huge, wild changes. Apr 29 18:37:50 Which I hate. :D Apr 29 18:37:56 But still coherent units. Apr 29 18:38:07 i dont like littering history with little silly changes though Apr 29 18:38:34 * g00s known to rebase like crazy Apr 29 18:38:54 I love stuff like "Update Gradle plugin to 1.2.2". Apr 29 18:39:02 lol Apr 29 18:39:08 i hate those, they are noise ! Apr 29 18:39:13 :D Apr 29 18:39:24 I love them because they're simple. They're some of my proudest work. Apr 29 18:39:29 lol Apr 29 18:39:51 "what did you do this week" ? oh i updated gradle Apr 29 18:39:55 :D Apr 29 18:40:08 ventura: cool, thanks Apr 29 18:40:50 and ... gradle 2.4RC2 is here. RC1 worked well so i'll try that Apr 29 18:41:32 hey JakeWharton, props on the viewpagerindicator.. do you have that image of your dev time with eclipse vs AS? Apr 29 18:41:57 showing your ungodly 0 undo’s? (i remember that being a metric) Apr 29 18:42:02 uh Apr 29 18:42:28 If it’s not easily accessible no worries Apr 29 18:42:35 it was AS vs IntelliJ Apr 29 18:42:46 i haven't used eclipse in 4 years Apr 29 18:42:47 ah i see Apr 29 18:43:22 I am tryign to get some time to finally sit down with AS and just learn it. Apr 29 18:43:38 know of any good references? Apr 29 18:44:05 its not difficult Apr 29 18:44:10 you dont need a guide Apr 29 18:44:16 just open it up and start doin shit Apr 29 18:44:18 not for gradle? Apr 29 18:44:28 heh so time I guess is what I need Apr 29 18:44:37 AS has improved a lot since its actual release Apr 29 18:44:43 tricknology: are you just using eclipse right now? Apr 29 18:44:50 or are you using maven? Apr 29 18:44:51 yes I am Apr 29 18:44:52 in eclipse Apr 29 18:44:53 no I am not Apr 29 18:45:11 just spin up a sample project in AS Apr 29 18:45:16 and it's pretty simple Apr 29 18:45:28 Will do. How is migration? Apr 29 18:45:32 simpel or quirky? Apr 29 18:46:05 tricknology: usually simple Apr 29 18:46:14 you create a gradle build script, set source dirs Apr 29 18:46:17 tricknology: For a start, welcome to 2015. Have a seat. Apr 29 18:46:19 and when it builds import into AS Apr 29 18:46:26 heh Apr 29 18:46:31 tricknology: https://developer.android.com/sdk/installing/migrate.html Apr 29 18:46:33 do the big time apps like instagram and facebook and pinterest use picasso? Apr 29 18:46:37 thank you Apr 29 18:46:56 or are there limits to what even picasso can do Apr 29 18:46:57 wouldnt facebook use fresco Apr 29 18:47:03 in_deep_thought: Square Cash probably does use Picasso Apr 29 18:47:28 in_deep_thought, Square does.. Apr 29 18:47:36 interesting Apr 29 18:47:44 is there a virtual box appliance that has the eclipse environment all setup, and pretty? Apr 29 18:47:45 it was.. developed by Square Apr 29 18:47:50 ohhh Apr 29 18:47:53 not as interesting Apr 29 18:47:55 tricknology: Just randomly do stuff in AS. It's quite simple. Apr 29 18:48:00 maztheman: there is no such thing Apr 29 18:48:02 in_deep_thought facebook has its own graphic library, forget whats its called already Apr 29 18:48:09 Will do Tactical, just the time thing that hurts Apr 29 18:48:11 " wouldnt facebook use fresco" Apr 29 18:48:11 yiati: why the hell not :> Apr 29 18:48:12 fresco Apr 29 18:48:18 they do some cool stuff with ashmemory Apr 29 18:48:19 Pinterest, Shazaam, Duolingo use Picasso Apr 29 18:48:24 was waiting for a full release, more feature complete Apr 29 18:48:25 that's a few hundred million installs Apr 29 18:48:26 maztheman: eclipse is ugly Apr 29 18:48:28 and the time to do it Apr 29 18:48:34 what alternative is there Apr 29 18:48:41 Android Studio and IntelliJ Apr 29 18:48:43 and Spotify Apr 29 18:48:43 maztheman: Android Studio, the official ide Apr 29 18:48:53 lasserix_: although its hacky Apr 29 18:48:56 hmm Apr 29 18:48:59 * maztheman looks Apr 29 18:49:01 desmin88: ? Apr 29 18:49:09 lasserix_: I've heard not-so-good stuff about it. Though I don't know much, personally. Apr 29 18:49:16 about what? Apr 29 18:49:17 fresco? Apr 29 18:49:20 Yeah. Apr 29 18:49:26 the underlying mechanism is actualy really cool Apr 29 18:49:39 ashmemory can be pinned and unpinned, so its like a lazy GC Apr 29 18:49:40 we've also use picasso on a lot of projects Apr 29 18:49:47 i believe the comedy central app, for example, use picasso Apr 29 18:49:53 Or no GC at all. :D Apr 29 18:49:55 *as faras the rest of the library, i think its kinda a bloated api Apr 29 18:50:21 fresco ads about 2.5 mb to an apk... Apr 29 18:50:35 ANyone here used Google Analytics? Curious if I should update with the integration of Play Services. Apr 29 18:50:41 yeah its definitely bloated Apr 29 18:51:31 I like keen.io Apr 29 18:51:38 no bloat Apr 29 18:51:40 hi i try to connect to a BT device by name but not getting it Apr 29 18:51:42 and pretty reliable Apr 29 18:51:52 BluetoothDevice discoveredDevice = Apr 29 18:52:03 And_prog_desaste what are you doing, can you pastebin.com it? Apr 29 18:52:06 what do i need to get the device by name i got Apr 29 18:52:43 danijoo: that's huge Apr 29 18:52:54 danijoo: essentially a small application APK in and of itself Apr 29 18:53:02 i think kotlin adds less to an APK than that Apr 29 18:53:03 yeah Apr 29 18:53:08 lasserix_ is drinking the Kool Aid. s/ol/tlin/ :D Apr 29 18:53:15 proguard help a bit but still.. Apr 29 18:53:39 is it really *that* much better though, that it warrants the 2.5mb hit Apr 29 18:53:42 tricknology: http://pastebin.com/9RZTUeUX Apr 29 18:53:48 ? Apr 29 18:53:59 here i got the devicename or MAC adress Apr 29 18:54:00 burntcookie90, its just another approach I think Apr 29 18:54:10 The fact that you've joined the #kotlin cult. :D Apr 29 18:54:14 picasso works for me, so why should I switch Apr 29 18:54:29 TacticalJoke, stalker! Apr 29 18:54:38 It's so quiet in there. Not much else to do. Apr 29 18:54:47 tricknology: so i need then the device back out of the Listview that holds only the string Apr 29 18:55:04 oh yeah Apr 29 18:55:30 * TacticalJoke puts binoculars away. Apr 29 18:55:37 TacticalJoke, it seems to me that most people using kotlin are android devs asking in this channel instead Apr 29 18:55:41 #kotlin master race? Apr 29 18:55:43 Yeah. Apr 29 18:55:47 A couple of #java people too. Apr 29 18:55:50 ##java* Apr 29 18:55:56 It's like a weird culture clash in there. Apr 29 18:56:00 haha Apr 29 18:56:18 is it worth using camera2 instead of camera api if I don’t want to use RAW format or dng files? Apr 29 18:56:20 sorry so much going on Apr 29 18:56:27 and_prog_desaste check this out: Apr 29 18:56:56 http://pastebin.com/BANmsejL Apr 29 18:56:57 danijoo: i think the only lib that would pull me off of Picasso is Glide, but not for any real reason other than to try itout Apr 29 18:57:03 sorry for the formatting Apr 29 18:57:10 burntcookie90: me too Apr 29 18:57:13 in_deep_thought, are you targeting 5.0 only? Apr 29 18:57:20 JakeWharton: ha Apr 29 18:57:26 Hi, coding with the MVP pattern and are unsure about listeners. Where do they belong in the pattern? Do they belong to the view or the presenter? Apr 29 18:57:35 Mavrik: no it would be coole for 4.4 to work as well Apr 29 18:57:41 Does Glide cancel downloads? One of their bugs stated that they simply gave up (because some HTTP clients crashed with NetworkOnMainThreadExceptions). Apr 29 18:57:51 does it totally not work with anything less than 5.0? Apr 29 18:57:51 i never used glide but from what I read its nearly identical to picasso Apr 29 18:58:01 just a few different default settings and slight changes in the api Apr 29 18:58:08 in_deep_thought, how would it if it doesn't exist there? :P Apr 29 18:58:11 tricknology: that is the code to fill the listview Apr 29 18:58:28 danijoo: i think JakeWharton mentioned in a couple of days ago the that Picasso can be configured to be virtually the same as Glide Apr 29 18:58:32 then i need to get the devise back out of the clicked item Apr 29 18:58:33 sans animated gifs Apr 29 18:58:40 idk? I guess that answers my q though Apr 29 18:58:56 tricknology: is querry posibel Apr 29 18:59:21 waht do you want to do? Apr 29 18:59:36 you jsut got a list of all bonded devices Apr 29 18:59:40 send a command to a HC-05 Apr 29 18:59:51 This is what I'm referring to, but I might be misinterpreting: https://github.com/bumptech/glide/issues/280 Apr 29 18:59:53 so you need to get the mac address of the device right? Apr 29 19:00:00 device.getAddress() Apr 29 19:00:01 i got it Apr 29 19:00:24 tricknology: i got the list in the listview Apr 29 19:00:35 if (name.contains(“HC-05”)){ foundTheDevice(device.getAddress)) Apr 29 19:00:50 sometimes those names are inconsistent though… Apr 29 19:01:06 I’ve had two devices giving different names.. two different revisions.. Apr 29 19:01:10 I guess Glide users manually cancel; no idea. Apr 29 19:01:25 tricknology: better to work on the mac ? Apr 29 19:02:01 not really Apr 29 19:02:02 JakeWharton: In a MVP pattern? Would a listener fit into the View or is it maybe part of the presenter? Apr 29 19:02:15 unless you know for sure what their macs wil be.. range or some kind of modulo operation Apr 29 19:02:23 what is the device name? Apr 29 19:02:25 tricknology: the itemclick returns a position Apr 29 19:02:27 “hc-50”? Apr 29 19:02:41 yeah then use that position to find your device in the array Apr 29 19:02:41 maxflax: what listener? Apr 29 19:02:45 should be the same one Apr 29 19:02:54 maxflax: onClickListener? Apr 29 19:02:59 maxflax: why are you so worried about it? imho they fall outside the pattern entirely Apr 29 19:03:16 since they're an inversion of control concept Apr 29 19:03:31 and traditional MVC/MVP is strictly procedural Apr 29 19:04:04 tricknology: this is eqal to the BluetoothDevice device : pairedDevices Apr 29 19:04:06 burntcookie90: Just a interface listener, Telling when a request is done and such. Apr 29 19:04:41 not sure? Apr 29 19:04:58 tricknology: so listview item [0] eqals paireddevices [0] Apr 29 19:05:05 well, your view shouldn't be listening for completed reuqests in MVP Apr 29 19:05:08 should Apr 29 19:05:12 myke: Trying to implement MVP but I have listeners interfaces where I want to put somewhere in that pattern. Apr 29 19:05:33 maxflax: they should run code that belongs to the presenter...up to you how you handle that Apr 29 19:05:43 myke: Sorting it into own packages and having it in a neat and orderly fashion Apr 29 19:05:53 Imagine how cool it'd be if Java had had first-class functions from the beginning. Apr 29 19:06:35 maxflax: you're still going to have to deal with disjoint control flow, in any case Apr 29 19:06:35 myke: Then they belong to the presenter package.. good it's the place I have it now :) Apr 29 19:07:08 myke: Explain disjoint control flow? Apr 29 19:07:37 maxflax: presenter has view show something, user clicks on it, some time later code runs based on what was clicked Apr 29 19:07:40 tricknology: pairedDevices = myBluetoothAdapter.getBondedDevices(); gives me the devices Apr 29 19:07:56 tricknology: so how dio i get the second in the list Apr 29 19:07:56 in an old school webapp you simply redraw the entire page each time, in android it's not so simple Apr 29 19:08:12 hey g00s, TacticalJoke, tricknology Apr 29 19:08:18 Hai. Apr 29 19:08:37 hows tricks? Apr 29 19:08:43 also i must have missed when MVC was supplanted by MVP Apr 29 19:08:45 myke: ok, Apr 29 19:09:03 tricknology: as the item position is the paied divece that is to connect with Apr 29 19:09:04 Do you watch the snooker, Napalm? Apr 29 19:09:13 hey Napalm :D Apr 29 19:09:18 i'm partial to mvp and mvvm myself Apr 29 19:09:18 TacticalJoke: never have the time, but have done Apr 29 19:09:26 i like RMR Apr 29 19:09:27 hey g00sey Apr 29 19:09:30 tricknology: i do not need the name or the mac at all i need the device itself Apr 29 19:10:36 So the Android Emulator was extremely painful to use last time I tried, what do you guys use? Apr 29 19:10:42 tricknology: i may need to run a for on this Apr 29 19:10:49 FreezingCold: get it accelerated and it's a lot better Apr 29 19:10:50 FreezingCold: genymotion Apr 29 19:10:50 FreezingCold: a device Apr 29 19:10:54 tricknology: for(BluetoothDevice device : pairedDevices) Apr 29 19:11:01 FreezingCold: android emulator with a x86/64 vm or genymotion Apr 29 19:11:01 hi Apr 29 19:11:07 and then grep the position Apr 29 19:11:15 Devices connected wirelessly FTW. Apr 29 19:11:26 Is the Android Emulator emulating a ARM CPU, or is it native x86? Apr 29 19:11:32 FreezingCold: both Apr 29 19:11:34 FreezingCold: it can do both Apr 29 19:11:37 In this MediaRecorder example (http://stackoverflow.com/a/4379320/453331), the author calls recorder.prepare() in SurfaceHolder.Callback.surfaceCreated. Is there a reason why it isn't being called before, say in Activity.onCreate? Apr 29 19:11:42 only x86 can be accelerated tho Apr 29 19:11:44 burntcookie90: Now I have my presenter listening and controlling the view from the callback methods.. so im on the right track then so to speak. :) Apr 29 19:11:57 Does SurfaceHolder.Callback run in its own thread? Is it to avoid blocking the ui thread? Apr 29 19:12:23 and_prog_desaste, you might have 10 devices connected via bluetooth. How do you expect to figure out which one it is without inspecting the name? Apr 29 19:12:32 Napalm can you think of a g00s-proof way of easily creating 2 dark themes (1) shades of red (2) shades of green ? Apr 29 19:12:36 if you want the user to pick that’s ok Apr 29 19:12:44 Ah, so I guess the Android Emulator is probably better now that it has -enable-kvm Apr 29 19:12:53 seems like what you’re doing with the dialog Apr 29 19:13:34 g00s: erm? use AppCompat and just set the primary/secondary/accent colors Apr 29 19:13:37 desmin88: The reason I'm not using a device is because I really don't want to install a self signed SSL cert on my device and I use all my devices lol. Apr 29 19:13:39 tricknology: yes dialog showes the paired and now i want to connect to a individuell Apr 29 19:13:40 in two different themes Apr 29 19:13:55 FreezingCold: its your own app your installing, whats the big deal Apr 29 19:14:03 burntcookie90: mvvm in my experience mostly bad implemented of many programmers. It tend to cause a mayhem in propertychanges and making the program feel like being stuck in tarp. Apr 29 19:14:45 desmin88: meh, I like having proper SSL certs whenever possible. Apr 29 19:14:57 I don't want to mix my development hacky hack platforms with my every day devices Apr 29 19:14:58 ok so when you select then you get a position right? use that position to get the device from the list.. Apr 29 19:15:12 I don't want to be superfishing myself :p Apr 29 19:15:18 thats a little irrational considering how terrible emulators are and how inconsequential and sandboxed individual apps on the device are Apr 29 19:15:21 Napalm all pixels have to be all reds or all greens , also for widgets. do you think i can do with without colorfilters, etc ? Apr 29 19:15:37 maxflax: we're using it right now on our second or third major client project Apr 29 19:15:40 and it's working great Apr 29 19:15:42 i have afeeling at i/o they will announce a new emu to run in Chrome :) Apr 29 19:15:44 kba: I don't know anything about SurfaceView, but that just looks weird. Note that he *does* also call initRecorder in Activity.onCreate. Apr 29 19:15:47 g00s: widgets is a special case Apr 29 19:15:48 And in various other places. Apr 29 19:15:57 g00s: the resources are loaded remotely you cant tint or color them Apr 29 19:15:59 just need to have your viewmodels have some sort of reactive property bindings Apr 29 19:16:02 A lot of SO answers are bad, so I wouldn't put much hope in any one of them. Apr 29 19:16:06 g00s: you'll need to include graphics for both Apr 29 19:16:15 if you want pre <21 support Apr 29 19:16:25 i wrote this https://github.com/dinosaurwithakatana/Reactor a while back for that specific use case Apr 29 19:16:27 post>21 you can use android:tint on your drawables Apr 29 19:16:33 *post>=21 Apr 29 19:16:56 TacticalJoke: Indeed, but initRecorder doesn't do anything heavy. Do you know if SurfaceHolder.Callback runs in its own thread, so it's to not block the UI? Apr 29 19:17:04 burntcookie90: Client project with java and MVVM? Apr 29 19:17:07 g00s: with me? Apr 29 19:17:14 Napalm yeah, bummer Apr 29 19:17:19 minSdk=16 Apr 29 19:17:41 g00s: oh btw, just got my new Herman Miller Aeron Chair ... its soo nice Apr 29 19:17:43 :) Apr 29 19:17:44 maxflax: yeah Apr 29 19:17:52 ios and android Apr 29 19:18:01 Napalm oh nice, which one specifically ? i have a medicine ball Apr 29 19:18:19 Napalm: we have aerons at work, i wish i could afford this for home Apr 29 19:21:10 kba: I know nothing about that stuff. The source is here: https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/view/SurfaceView.java But otherwise I guess a good tutorial would be worth googling. Apr 29 19:21:31 I've been trying to find a tutorial, but thanks for the source Apr 29 19:22:24 My suspicion is that in order for the camera's image to show up on the Surface, the surface has to be made before the camera is initalized Apr 29 19:22:37 but I haven't managed to be able to get the camera to actually show up on the Surface yet, s maybe I'm just doing something wrong Apr 29 19:22:56 I can, however, record a video... if I'm on Android 4.4.4, but not on 5.1 Apr 29 19:23:01 Unfortunately, I don't have any real phones to test on yet Apr 29 19:24:11 g00s: Aeron is the model Apr 29 19:24:33 burntcookie90: nice eh? so comfy Apr 29 19:24:48 in my project i have to include a .jar (as a local file) that itself contains Gson. this leads to 'multiple dex files defining...'. how can i include the jar with our also including the packed Gson? Apr 29 19:24:49 kba: Does that stuff even work on the emulator? Apr 29 19:24:51 Napalm: yeah, i've gotten so used to it over the last 2 years Apr 29 19:24:52 Napalm have you ever used gradle for code gen step in android project ? Apr 29 19:25:18 fancy42: unpack it, remove gson, repack it Apr 29 19:25:21 kba: whats your problem? Apr 29 19:25:36 g00s: nope Apr 29 19:25:52 myke, lol that works? :D Apr 29 19:25:54 TacticalJoke: Recording a video works in Genymotion, TacticalJoke. Genymotion just feeds it some dull demo video of a ball Apr 29 19:26:01 fancy42: no Apr 29 19:26:06 hm Apr 29 19:26:16 kba: you've read http://developer.android.com/training/camera/cameradirect.html ? Apr 29 19:26:16 fancy42: jar files are just zip files with a certain structure and maybe a manifest Apr 29 19:26:18 One thing that im wondering about is best practice for ProgressDialogs and AlertDialogs. They need a activity context right? But I've been thrown into a project where they have dialogs embedded into the logic parts like when doing API calls to handle if it fails and such. So they pass that context along down to the code and for me that seems wrong? Anything messing around with the gui shouldn't be there right and passing a activity Apr 29 19:26:18 context all the way into that code seems stupid. Well what do you reckon? Apr 29 19:26:20 fancy42: why not just compile against it.. but not include in the classes in the jar when you compile Apr 29 19:26:43 Napalm: There are a few. The main thing I'm struggling with right now is that the code (which is a lot like http://stackoverflow.com/a/8655244/453331) works on 4.4.4, but not 5.1 Apr 29 19:27:19 and yeah it probably won't work because the things in that jar depending on the bundled gson are likely to have a cry Apr 29 19:27:27 I get an exception related to mediaRecorder.stop() which pretty much everybody says is because the MediaRecorder hasn't been started--according to Google results Apr 29 19:27:28 if my phone doesn’t respond to nfc tags and nfc is turned on, are there any additional debuggins steps I can take? Apr 29 19:27:30 maxflax: this is a common issue Apr 29 19:27:39 However, I know it has been started, since I call a Log.d right after starting it. Apr 29 19:27:40 Napalm, it is one jar containing Gson and also containing stuff i DO need -_- so i need half the jar Apr 29 19:27:50 Napalm: I'll find the error, sec Apr 29 19:28:02 http://techcrunch.com/2015/04/29/microsoft-shocks-the-world-with-visual-studio-code-a-free-code-editor-for-os-x-linux-and-windows Apr 29 19:28:04 Hey, Napalm :) Apr 29 19:28:19 fancy42: you *might* be able to unpack it, and then replace that gson with the version you wanted Apr 29 19:28:50 maxflax: Have you seen DialogFragment? Apr 29 19:29:14 Right. Great. Of course. Now it works. Well, don't I just love periodic errors. Apr 29 19:29:17 maxflax: first of all.. never pass your Activity context itself directly into your backend. Apr 29 19:29:24 i was really hoping there would've been some gradle excluding mechanism i could use -_- Apr 29 19:29:25 and also http://techcrunch.com/2015/04/29/microsoft-launches-its-net-distribution-for-linux-and-mac/ Apr 29 19:29:29 this is huge Apr 29 19:29:30 maxflax: your better off notifying your front end using an interface Apr 29 19:29:44 Napalm: ok, I can see why they would do that. Having only one place to handle the failed and progress information for example api calls. But It destroys my MVP pattern needing to supply my presenter with the context. :/ Apr 29 19:30:21 i dont know how you have this.. but i dont see why it would break MVP Apr 29 19:30:49 g00s: hm. and not open source. Apr 29 19:31:03 i dont care Apr 29 19:31:37 so it'll probably work on ubuntu, and screw everyone else? Apr 29 19:31:50 Hmm, so, I've been out of the loop for a while. Does this mean .NET is actually not gonna die now? Apr 29 19:31:57 Because I swear it was almost dead a few years back. Apr 29 19:32:04 the .NET stuff is great though, agreed Apr 29 19:32:10 it means you can do f# on windows, linux, and mac :) Apr 29 19:32:36 g00s: with syntax coloring and bracket matching and nothing else, yes. Apr 29 19:32:47 generics on gson works? Apr 29 19:32:59 talking about VS Code? Apr 29 19:33:00 ie t = (T) gson.fromJson(data, t.getClass()); is valid? Apr 29 19:33:25 i guess now android apps will work on WIndows 10 http://techcrunch.com/2015/04/29/microsoft-makes-it-easier-for-developers-to-bring-their-android-and-ios-apps-to-windows-10 Apr 29 19:33:31 Napalm: Well I have a onresume in presenter where I pass the context to and set it to my member context. This I then use to send down the path to the backend since they use it to throw progress and alertboxes and such. I thought that the presenter shouldn't directly be forced to know about the context. Making testing it harder since I then also need to mock a context. Apr 29 19:33:41 nice Apr 29 19:33:42 !!! Apr 29 19:33:59 I thought you were talking about the cross platform IDE that MS released today Apr 29 19:34:03 lets say goodbye to Mono Apr 29 19:34:03 Windows 10 sounds awesome. Apr 29 19:34:05 lol Apr 29 19:34:08 anybody use the new MS Visual Studio Code editor? Apr 29 19:34:11 MS should just go all out. Apr 29 19:34:12 Go crazy. Apr 29 19:34:13 hi all. what's the "typical" way of debugging an android project with some ndk code in it? Apr 29 19:34:14 seems faster/better than atom, but not sublime Apr 29 19:34:23 They have nothing to lose anymore. Apr 29 19:34:54 nah man this is not an act of desperation Apr 29 19:34:55 and this is what i've been waiting for http://techcrunch.com/2015/04/29/microsoft-announces-continuum-turning-windows-10-phones-into-desktops Apr 29 19:34:56 I've tried gdbserver + gdb/ddd and I've made sure the .so file goes with debugging symbols too, but I can't seem to get any symbols showing on the debugger Apr 29 19:34:58 this is business intelligence Apr 29 19:35:04 fucking Microsoft, what a titan Apr 29 19:35:12 I'd love for MS to take over the world again. Apr 29 19:35:16 unstoppable Apr 29 19:35:22 Because, as corrupt as they were, Google seems even worse. Apr 29 19:35:45 Or at least take a 50% share. Apr 29 19:35:46 Continuum has me very exceited :D Apr 29 19:35:56 ubunto tried to do that with 'continuity' oh well Apr 29 19:36:20 this is too much to digest :| Apr 29 19:36:42 Interesting. But does it destroy the phone battery over time? Apr 29 19:36:48 TacticalJoke: or at the very least, they could be more competition. I do like competition. Apr 29 19:36:52 * g00s goes back to getting has android app working on .. android :/ Apr 29 19:37:39 Continuum is also a great name. Apr 29 19:38:11 maxflax: contexts are always a headache in android Apr 29 19:38:29 tricknology: still online im not getting it Apr 29 19:38:58 myke: My fear in throwing the context around like that is leaks. Apr 29 19:38:59 yeah I’m here Apr 29 19:39:10 got a paste to your code? Apr 29 19:39:15 giff me Continuum Transformer Apr 29 19:39:25 maxflax: if you only need an application (not activity) context, store it in a singleton Apr 29 19:39:56 tricknology: http://pastebin.com/qZ5mHrDQ Apr 29 19:40:36 g00s, this + android apps on microsoft and we have to support another set of screen densities and sizes :D Apr 29 19:40:43 do i also need a bradcast reciver to check if connected that returns a action Apr 29 19:40:49 myke, I have a static for the Application context for broadcasts and such. not a singleton- do you have an example how a singleton is implemented for application context? Apr 29 19:41:07 and application context is singleton Apr 29 19:41:13 per process Apr 29 19:41:55 + Apr 29 19:42:40 myke: For the dialogs and progress and need the activity context I think.. I think it exlpodes if I try a application context opening a dialog. Im new to android dev so I might be wrong. Apr 29 19:43:14 maxflax: it does need to be the Activity context Apr 29 19:43:32 tricknology: for the overall understanding I put the paired devices in a listview the user decides on what device to connect and i want to conned to that item in the listview that represents the name and the mac of the istview striing Apr 29 19:43:59 hey pfn_ Apr 29 19:45:01 tricknology: so the user hits the listvieqw item then the onitemclicked () got the position and eqal the paired device Apr 29 19:45:03 Napalm: Is there a way to obtain the active activity context from the application context. then it would solve all my problems :) Apr 29 19:45:08 hi guys :) Apr 29 19:45:15 now i need to get the device connected Apr 29 19:45:25 why not just do what gmail does Apr 29 19:45:41 set a static variable in onresume and null it on onpause Apr 29 19:46:01 private static to your base activity class and then provide a static accessor Apr 29 19:46:14 sry and_prog_desaste, I’m doing a lot over here ima catch up Apr 29 19:46:15 make sure you deal with the case when it can be "null" Apr 29 19:46:21 hi Apr 29 19:46:39 yes thats right so far.. what you jsut typed Apr 29 19:47:02 Napalm: sounds like a dirty workaround :D Apr 29 19:47:25 if you say so Apr 29 19:47:31 maxflax: none of the solutions are very clean because the underlying problem is you explicitly have to reference these contexts somehow Apr 29 19:47:39 haha Apr 29 19:47:45 if you want something more testable.. that implement an interface for it on your application context and store it there Apr 29 19:47:50 instead of that paireddevices for loop Apr 29 19:48:03 just do discoveredDevice = paredDeviced(position) Apr 29 19:48:17 also you are never incrementing i Apr 29 19:48:46 trying to send multi line sms with '\r\n' ... sms not going through... :/ any ideas? ;) Apr 29 19:48:47 (less than 160 chars btw...) Apr 29 19:48:48 one line sms goes through fine... just not multiline :S Apr 29 19:49:09 so you’re always goign to be at 0 Apr 29 19:49:27 which might work for you since you probably only have one device connected..? Apr 29 19:49:32 but might not when you connect more Apr 29 19:49:54 myke: Implemented this for the applicationcontext, does it seem a good way? http://www.myandroidsolutions.com/2013/04/27/android-get-application-context/ Apr 29 19:50:20 maxflax: thats the usual way Apr 29 19:50:41 maxflax: but if you need a activity context.. its not going to help much Apr 29 19:50:46 Napalm: ok Apr 29 19:51:05 Napalm: Yeah I know, it's for the broadcast and services. Apr 29 19:51:19 maxflax: what? Apr 29 19:51:28 maxflax: what are you trying to do? Apr 29 19:51:48 maxflax: display a dialog from a broadcast reciever or a service ? Apr 29 19:51:50 And_prog_desaste: http://pastebin.com/NE1BTXLB Apr 29 19:52:14 ugh, unmanaged thread'ness Apr 29 19:52:34 I didn’t do that Apr 29 19:52:41 good Apr 29 19:52:42 just fixing a little part Apr 29 19:53:22 tricknology: discoveredDevice = pairedDevices(position); THIS is not working therfor im fighting since 2hr Apr 29 19:53:37 what do you mean it’s not working/ Apr 29 19:53:41 an error would help Apr 29 19:54:02 Napalm: Well, Im not trying to do it. it's done by the guys coding the apps Im now been intructed to maintain. So for stuff like checking if wifi or mobile data is active they need the application context. Apr 29 19:54:05 maybe a logcar stacktrace Apr 29 19:54:11 logcat* Apr 29 19:54:36 is ConnectToBluetooth a custom class you made? Apr 29 19:54:52 tricknology: pairedDevices.get item is not working Apr 29 19:55:04 HOW IS IT FAILING? Apr 29 19:55:08 not working is not good enough. Apr 29 19:55:27 now I’m not working Apr 29 19:55:28 interesting. looks like VS:Code is an Atom fork? Apr 29 19:55:39 let me find a workaround i can not access it direct Apr 29 19:55:43 I give up Apr 29 19:55:46 groxx: it's using the electron core project Apr 29 19:55:50 maxflax: well thats a immediate no-no Apr 29 19:55:53 you want this in the end; Apr 29 19:55:58 burntcookie90: and a bunch of others, yeah Apr 29 19:56:08 I mean, obviously there's lots added Apr 29 19:56:24 maxflax: you should be notifying your front-end and if its open it would display the status Apr 29 19:56:55 burntcookie90: heck, the binary in the .app package is called "atom" Apr 29 19:57:06 wtf http://www.quirksmode.org/blog/archives/2015/02/chrome_continue.html Apr 29 19:57:10 yeah, i think that's just the electron binrary Apr 29 19:57:12 they just renamed it Apr 29 19:57:22 And_prog_desaste: http://pastebin.com/qzFJ9syM Apr 29 19:57:33 tricknology: the position is a int and the paired device is a SET of BluetoothDevises Apr 29 19:57:33 put your string address in that and call it a day Apr 29 19:57:52 maybe remove the bluetoothinterface Apr 29 19:57:57 Napalm: Yes, thats my thought also. But so much code to change to make this happen, And you know what they say.. If it itn't brokend to try to fix it :D Apr 29 19:58:04 or turn them to toasts, whatever Apr 29 19:58:15 well it is broken Apr 29 19:58:29 And_prog_desaste: turn your set into a list Apr 29 19:59:25 Napalm: Not in my bosses eyes. It works and does the job. But it's hell to add new features not beeing total spagetti Apr 29 19:59:40 your whole code shouldn’t be so complicated but you’re making it that way it seems Apr 29 19:59:52 those two pastebins i sent you run my BT connection Apr 29 19:59:58 and it works Apr 29 19:59:59 trying out "Android Studio" Apr 29 20:00:05 ^ haha join the club Apr 29 20:00:14 I “tried it out” a few times Apr 29 20:00:21 tricknology: then i need the BluetoothInterface class Apr 29 20:00:27 Napalm: So my plan is to gently sneak in a better approach and silently refactor the code as I add new features. Apr 29 20:00:31 for like 15 mins before I got frustrated because I knew I could do it faster Apr 29 20:00:33 NO you dont Apr 29 20:00:35 take that out Apr 29 20:00:46 and any line with bInterface in it Apr 29 20:00:59 and ref = null Apr 29 20:01:31 that was an example to show you the things you can do with it Apr 29 20:02:30 do progressdialog's have a builder? Apr 29 20:03:26 do you have google? Apr 29 20:03:36 TheKarlBrown: why would it need one Apr 29 20:03:40 I googled, and I couldn't tell Apr 29 20:03:49 it has like 3 things Apr 29 20:03:55 read the java doc Apr 29 20:03:59 I did Apr 29 20:04:14 https://stackoverflow.com/questions/9814821/show-progressdialog-android Apr 29 20:04:36 It's often better (for the UX) to show a ProgressBar than a ProgressDialog, BTW. Apr 29 20:04:38 and I googled :/ AlertDialog has one, but when I try to extend from alertdialog it gets confused Apr 29 20:04:39 Dialogs can be annoying. Apr 29 20:04:54 Hehehe Tactical I know this ones for class Apr 29 20:05:36 TheKarlBrown, if you cant find documentation on ProgressDialog.Builder, there most likely is none Apr 29 20:05:39 The project you helped me work on (along with others) and 233 hours of my time which included android won best senior capstone at the software faire Apr 29 20:05:58 I'mma do a more formal thank you when finals are done but since you are helpful as always you get one now :D Apr 29 20:05:59 Nice. What was the project? Apr 29 20:06:06 https://github.com/thekarlbrown/ChangeTheWorld Apr 29 20:06:06 I didn't help much. :D Apr 29 20:06:13 Yeah but you helped Apr 29 20:06:42 And_prog_desaste: this is the connect method at the bottom of that method: http://pastebin.com/1FvwvhHp Apr 29 20:06:51 with the connectino thread Apr 29 20:07:41 That should get you going Apr 29 20:07:46 lunch time Apr 29 20:08:16 maxflax: something like this should sort you out https://gist.github.com/slightfoot/d57207f0c33cacd50c9a Apr 29 20:08:31 really, is there no good way to debug native android code or what? :D Apr 29 20:09:01 Napalm: I will check it out. Apr 29 20:09:11 foocraft: you've looked at the NDK-DEBUGGING doc or whatever it's called, in the ndk? Apr 29 20:09:24 JesusFreke: yes, but it's actually broken Apr 29 20:09:26 foocraft: http://developer.android.com/tools/sdk/ndk/index.html#Docs says there's an "ndk-debug.html" file in docs. Apr 29 20:09:34 sorry. ndk-gdb. Apr 29 20:09:38 tricknology: thanks Apr 29 20:09:48 I did try ndk-gdb after compiling with debugging enabled Apr 29 20:10:11 Napalm, g00s, groxx,TacticalJoke, lasserix,cbeust were all very helpful :D Apr 29 20:10:41 TacticalJoke lasserix cbeust Apr 29 20:10:47 it simply doesn't work, I suspect gradle's build is breaking it, so I uploaded the gdbserver that comes out with ndk-build and started it, then ndk-gdb does work, but symbols don't show. I verified symbols *do* show with armeabi-nm Apr 29 20:11:08 https://github.com/thekarlbrown/ChangeTheWorld That's my github, and although it was full stack development I am beyond grateful for the advice you gave Apr 29 20:11:15 so really, has anyone *recently* debugged jni code on android before? if so, how? Apr 29 20:11:24 TheKarlBrown: i cant even remember Apr 29 20:11:40 your welcome though :) Apr 29 20:12:28 Yeah I mean I beat 35 other cs majors at Christopher Newport University Apr 29 20:12:32 Was exciting Apr 29 20:12:59 Napalm: Looks really neat! Does it has any sideeffects or drawbacks? Apr 29 20:14:18 maxflax: no, btw, dont forget to add MyApplication .. or whatever you call the class to the android:name attribute in your tag in your manifest file Apr 29 20:15:02 Napalm: ok. Apr 29 20:15:05 hi i am lering java and android so pls dont be mad, i want to use javamail in android and i am falowing some turtorial but android studio gives me error, http://prntscr.com/6znxwb Apr 29 20:15:30 Gnjurac you have made me mad ! Apr 29 20:15:35 maxflax: you'll probably want to pull out the ForegroundActivityProvider interface and chuck it in a seperate public file Apr 29 20:15:57 it auto sugest me to give it clauch clausl Apr 29 20:15:59 Gnjurac: Oh, gawd, those comments. Apr 29 20:16:07 lol Apr 29 20:16:10 i++; // increment i Apr 29 20:16:13 g00s: sorry Apr 29 20:16:14 Gnjurac: you need to have a catch statement Apr 29 20:16:24 its probably just turned twelve.. leave off Apr 29 20:16:25 lol Apr 29 20:16:28 hitting alt+enter on the red underline should suggest that Apr 29 20:16:33 burntcookie90: is thet android specific? Apr 29 20:16:59 alt enter solw it Apr 29 20:17:11 i added 2 catch Apr 29 20:17:22 but is this android specific Apr 29 20:17:25 Gnjurac: you cannot use the "javax" package on android.. you do not send email this way Apr 29 20:17:41 i think it ident made me problem on pc Apr 29 20:17:47 Gnjurac: http://stackoverflow.com/questions/2197741/how-can-i-send-emails-from-my-android-application Apr 29 20:17:54 Napalm: why not i am using ported version Apr 29 20:19:22 Gnjurac: because of many reasons I am currently too lazy to explain Apr 29 20:19:35 Gnjurac: you sir, need to go though the Android developer guides Apr 29 20:20:01 duno Apr 29 20:20:04 Gnjurac: http://developer.android.com/training/index.html and http://developer.android.com/guide/index.html Apr 29 20:20:12 ye i know thet Apr 29 20:20:49 just duno why it woudent work its ported version of javamail it shoud work on android Apr 29 20:20:50 Gnjurac: no, that's java Apr 29 20:21:31 Gnjurac: java is a platform aswell as a language.. on android; android is the platform and java is the language Apr 29 20:21:33 here one of zilion turtorials for it http://javapapers.com/android/android-email-app-with-gmail-smtp-using-javamail/ Apr 29 20:21:54 using javamail isn't an issue, it has an android port, that's fine Apr 29 20:22:11 but the specifics of java exception handling mean you need to understand how that works Apr 29 20:22:53 Napalm: i think i am uneducated Apr 29 20:22:54 hahahha Apr 29 20:23:49 highly suggest learning the basics of android/java before attempting to create an email client Apr 29 20:24:36 duno i alwies try with harder intresting stuff and learn along Apr 29 20:24:37 burntcookie90: dont forget to suggest he reads the RFC for SMTP Apr 29 20:24:49 one of these days I'd love to figure out why newbies so frequently go for the hardest-possible things to start with. like custom cameras or email or building a GCM replacement. is it just something intrinsic to humanity? Apr 29 20:25:36 simple Apr 29 20:25:38 Gnjurac: that's brave and noble and all Apr 29 20:25:46 but i don't believe that will help you learn Apr 29 20:25:50 answer nobody wants to start whit simple boring stuff groxx Apr 29 20:25:53 you'll either end up copy pasting everything Apr 29 20:26:20 or you'll get aggravated with the code you don't understand Apr 29 20:26:26 and then jsut stop Apr 29 20:27:17 so what in my example is wrong now cuz it isent giving me no errors? http://prntscr.com/6zo4rj Apr 29 20:27:26 Diving in at the deep end suits some people, I think. Apr 29 20:27:30 In some domains. Apr 29 20:27:34 i know i can go valu strings and add them there Apr 29 20:27:58 Though Gnjurac definitely needs to learn the basics. :D Apr 29 20:28:09 sorry i am stuburn Apr 29 20:28:16 Gnjurac: you never send the email? Apr 29 20:28:18 Also, Gnjurac, those comments are just bad. You'd probably be best to simply stop using comments. Apr 29 20:28:47 Napalm: how you meen i newer send email? Apr 29 20:29:15 i writed c# long time ago for windows using .net Apr 29 20:29:30 Gnjurac: you create a message and set the From address.. now what? Apr 29 20:29:37 oh Apr 29 20:29:38 what do you want to do with the Message Apr 29 20:29:40 you ment Apr 29 20:29:41 oh Apr 29 20:29:45 i didnet finish Apr 29 20:29:59 brb when do Apr 29 20:30:00 hahah Apr 29 20:30:33 hmm that ide is pretty ez Apr 29 20:30:35 i like it Apr 29 20:31:14 what one you talking about? Apr 29 20:31:19 maztheman: ^ Apr 29 20:31:45 haha btw i put reciver string insted sender string Apr 29 20:31:49 Android studio Apr 29 20:32:49 Gnjurac: btw, this email will always end up in your spam box Apr 29 20:38:13 i finished it Apr 29 20:38:18 no errors Apr 29 20:38:36 now i have to go add premission and try out my button Apr 29 20:39:44 or not i frogot authection part Apr 29 20:55:52 tricknology: works Apr 29 20:55:57 :) yaaaaay Apr 29 21:04:05 nooooooooooooooooooooooooo Apr 29 21:04:08 g00s: not sure that kinda collar would really work with big dogs... i walk them both at the same time and i have to put all my weight into pulling them back if they get excited about something. Apr 29 21:06:37 bankai_ oh yeah, for sure. this couldn't work unless the dog was working for reward, and the stimuli from the collar was a bridging condition Apr 29 21:06:55 noooooooooooooo Apr 29 21:06:57 http://prntscr.com/6zopjw Apr 29 21:07:02 i got some error Apr 29 21:07:07 g00s: nevertheless very interesting :) Apr 29 21:07:37 Gnjurac: look down the "caused by" list, the last one usually tells you the original cuase. Apr 29 21:07:43 Gnjurac 'networking on main thread'. get your shit together Apr 29 21:08:23 thet means add network premission i allready added internet premisons Apr 29 21:08:30 or am i wrong Apr 29 21:08:36 or google it so you all dont kill me Apr 29 21:08:56 Just google. You gotta learn this stuff. Apr 29 21:09:31 Gnjurac and you just spilled 7 lines on irc for something you can just google Apr 29 21:10:02 soory sorry will try google Apr 29 21:10:09 pls dont hurt me Apr 29 21:10:36 is it a good idea to execute network calls in a broadcast receiver? Apr 29 21:10:55 TheKarlBrown no Apr 29 21:10:56 if u execute them async.. Apr 29 21:11:15 because they will cause a huge delay? Apr 29 21:12:09 TheKarlBrown u want https://developer.android.com/reference/android/support/v4/content/WakefulBroadcastReceiver.html Apr 29 21:12:47 possibly Apr 29 21:14:21 TheKarlBrown: regardless: no. BRs have a limited short lifespan, and they only guarantee your process will hang around while they're in the receive section, so you can't "just" go async. start a service instead, possibly wakeful if relevant. Apr 29 21:16:17 Word that makes sense Apr 29 21:17:33 f got no error Apr 29 21:17:50 but dident recive any mail and my phone froze Apr 29 21:18:35 i didnet use asyc i just added StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); Apr 29 21:19:24 so i am logicly deducing thet i probably have some isue with auth with gmail so it stalls? Apr 29 21:19:46 breakpoint debug Apr 29 21:19:57 how to do thet? Apr 29 21:20:11 i think i shodu added some Apr 29 21:20:37 code for evry part finished to output to screen to see wher it stux Apr 29 21:20:52 i think your keyboard is missing a few keys Apr 29 21:21:09 sorry Apr 29 21:22:46 f i am dumb Apr 29 21:22:54 i frogot to tupe password and username Apr 29 21:22:56 hahahah Apr 29 21:24:18 should do less typing, more speech to text Apr 29 21:25:56 somthing else is wrong just added pass user still frezzes on buton push Apr 29 21:26:13 whatitis: need to report my status to cummunity xD Apr 29 21:27:14 Gnjurac: you are doing network operations on the main thread Apr 29 21:27:16 the UI thread Apr 29 21:27:21 how often does your emulator crash, people? Apr 29 21:27:22 put that in a thread or AsyncTask Apr 29 21:27:34 saapas: I don’t use one Apr 29 21:28:30 http://stackoverflow.com/questions/13136539/caused-by-android-os-networkonmainthreadexception Apr 29 21:28:48 i used method 2 hahahah Apr 29 21:29:21 like the comment said.. “Following your second solution is a bad practice. Async is the way to do it correctly. You are like hiding your problem if you change the policy!" Apr 29 21:29:31 what that implementation is going to do is run your network ops on the main thread Apr 29 21:29:36 when that happens your UI is locked Apr 29 21:29:42 say your timeout is something high like 60s Apr 29 21:29:49 you’ve locked your UI for 60s Apr 29 21:29:54 you will get ANR Apr 29 21:30:03 Hi guys, I'm using a "test" LocationProvider to feed mock location for testing purposes, Im also trying to use proximity alerts, but they do not fire. Is this because of my custom location provider? Or is it possible to use "mock" location and still use proximity alerts? Apr 29 21:30:17 best practice is to put it in an asynctask or thread with a progressdialog Apr 29 21:30:35 and check that you’re following the rules of Java concurrency Apr 29 21:31:08 at least that way you can allow your user to back out fo the fragment/activity Apr 29 21:31:14 that back should handle killing the thread Apr 29 21:31:24 tricknology: ok but i think anywey somting is wrong cuz it still didnet sent mail Apr 29 21:31:36 "Following your second solution is a bad practice. Async is the way to do it correctly. You are like hiding your problem if you change the policy!” Apr 29 21:31:41 see “hiding your problem" Apr 29 21:32:48 so basicly i create new java class and exted it to async and put all code ther and just on buton click i call my asyc class? Apr 29 21:32:58 you could do that Apr 29 21:33:01 or subclass it Apr 29 21:33:07 depends on you Apr 29 21:34:07 see this tut: http://www.compiletimeerror.com/2013/01/why-and-how-to-use-asynctask.html#.VUFOQq3BzRY Apr 29 21:34:17 i know how to make new class but i gues subclass is just rename publick void to public subclass? Apr 29 21:34:31 nooo Apr 29 21:34:38 Gnjurac: wut Apr 29 21:34:38 in your parent class (where you want to do this stuff) Apr 29 21:34:56 Gnjurac: idk if this is the right channel, you really need to learn java... Apr 29 21:35:07 hahah Apr 29 21:35:09 public class AsyncOperation extends AsyncTask{ …} Apr 29 21:35:12 see this http://www.compiletimeerror.com/2013/01/why-and-how-to-use-asynctask.html#.VUFOQq3BzRY Apr 29 21:35:15 heh Apr 29 21:35:17 i create new class thet i know for sure Apr 29 21:35:29 look at that example Apr 29 21:35:32 it has a subclass Apr 29 21:35:36 AsyncTaskRunner Apr 29 21:35:41 ok Apr 29 21:35:44 am loking Apr 29 21:35:49 you can put a subclass in the same .java file Apr 29 21:36:19 public class OuterClass { public class InnerClass{} } Apr 29 21:36:40 OuterClass.java Apr 29 21:36:51 just to confuse the point, a service is probably a better option than async if you're doing network calls Apr 29 21:36:52 no need to make an InnerClass.java Apr 29 21:37:01 unless your class is complicated and you want some separation Apr 29 21:37:09 up to you in that case Apr 29 21:38:26 so shoud i use service or asycs Apr 29 21:38:44 Gnjurac: https://github.com/fkspro/android-tinyasync Apr 29 21:39:08 i know the regulars here all hate it, but still a useful compact example for new devs Apr 29 21:39:09 async Apr 29 21:39:18 service is for when you need something to run when your app is hidden.. generally Apr 29 21:39:51 you use those when you.. say.. need to listen to a broadcast for a text message or email.. or something like that Apr 29 21:40:03 ok Apr 29 21:40:03 ok Apr 29 21:40:07 when you can’t possibly have your app open all the time. even thne you can set an intentfilter Apr 29 21:40:08 will try async Apr 29 21:40:17 your asynctask will crap out if the activity is destroyed for reconfiguration Apr 29 21:40:27 lol Apr 29 21:40:31 ^ shitty things about asynctasks Apr 29 21:40:42 waht’s the consensus? Threads? Apr 29 21:41:12 now how to know if my acitivity is destroyed for recon... Apr 29 21:41:13 hahah Apr 29 21:41:42 @Override onConfigurationChanged() Apr 29 21:41:52 why not IntentService? Apr 29 21:42:06 many different things can be done Apr 29 21:42:12 denpends on what exatly the issue is Apr 29 21:42:31 You can use a fragment to retain the Thread/AsyncTask/Socket as well Apr 29 21:42:45 http://www.androiddesignpatterns.com/2013/04/retaining-objects-across-config-changes.html Apr 29 21:42:47 yeah, i've seen people use retained frags Apr 29 21:43:09 It’s a little counter-intuitive I think Apr 29 21:43:31 or you can jsut say F it and lock the orientation Apr 29 21:43:54 :-/ Apr 29 21:44:11 lol Apr 29 21:44:13 is there anything retained-fragments do that onRetainNonConfigurationInstance does not? are they more reliably held around or something? Apr 29 21:44:19 ye ye too much info Apr 29 21:44:31 my brain cant process Apr 29 21:44:31 lol Apr 29 21:44:37 just take little bites Apr 29 21:44:39 (retained fragments as instance state holders, not as view-related fragments) Apr 29 21:44:58 I’m not sure how it works under the hood TBH, groxx Apr 29 21:45:21 but onRetainNonConfigurationInstance is deprecated Apr 29 21:45:42 setRetainInstance(boolean) is the new one I guess Apr 29 21:45:52 avail through appcompat Apr 29 21:46:09 yeah, with a super-heavyweight thing like fragments. yuck. Apr 29 21:47:01 heh. Seems more simple than creating a retined-fragment Apr 29 21:49:15 yeah. if they have exactly the same lifecycle (I suspect they do. maybe not though. and fragments would encapsulate state saving/restoring (if you do that)), then I don't see why "create fragment. retain it. add it to the fragment manager. try to find and cast it later. remember this is all async." is preferable almost anywhere. Apr 29 21:50:14 anyone have a good guide for how to do a quick n dirty broadcast receiver Apr 29 21:50:16 anyone figure out a way of having different color backgrounds on a textview (VT100 emulation) Apr 29 21:50:47 http://examples.javacodegeeks.com/android/core/content/broadcastreceiver/android-broadcast-receivers-example/ Apr 29 21:50:49 TheKarlBrown: Apr 29 21:51:16 swag. i'm going to do them for notifications Apr 29 21:51:21 TheKarlBrown: `public class X extends BroadcastReceiver { onReceive(intent) { XHandler.handle(intent); } }`. then you can test it out by just creating an intent and sending it to XHandler. Apr 29 21:51:31 groxx: “Calling Fragment#setRetainInstance(true) allows us to bypass this destroy-and-recreate cycle, signaling the system to retain the current instance of the fragment when the activity is recreated. “ Apr 29 21:51:38 I very very very much prefer keeping my broadcast receivers as incredibly-simple as possible. Apr 29 21:51:59 that’s a nice one groxx Apr 29 21:52:02 very quick and dirty Apr 29 21:52:31 tricknology: yeah. but how is that different than onRetainNonConfigurationInstance, aside from the text in the description? it also avoids the destroy-and-recreate cycle. Apr 29 21:53:31 onRetainNonConfigurationInstance's _entire purpose_ is to get around that cycle. why not use it? Apr 29 21:53:35 well grepcode says it returns null? Apr 29 21:54:07 http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.0_r1/android/app/Activity.java#Activity.onRetainNonConfigurationInstance%28%29 Apr 29 21:54:19 tricknology: you override it and return whatever you want. it's returned to you when you call `getLastNonConfigurationInstance()` Apr 29 21:54:24 aaah Apr 29 21:54:26 http://developer.android.com/reference/android/app/Activity.html#onRetainNonConfigurationInstance%28%29 Apr 29 21:55:14 plus it makes guarantees about message handling, where fragment transactions pretty much toss that out the window no matter what you do Apr 29 21:55:17 not sure how it’s different Apr 29 21:55:43 onDestroy is not called with setRetainInstance() Apr 29 21:55:49 can’t retain nested fragments Apr 29 21:56:01 hm. I notice this the first time ever: changing orientation resets all input fields. what do I need to do so the inserted data in TextViews etc won't be forgotten at orientation change? Apr 29 21:56:05 in the fragment. so any activity state would still be lost, unless you made an ActivityStateFragment, which you would do because...? Apr 29 21:56:24 tricknology: "can't retain nested fragments" <- another reason to avoid setRetainInstance. leaky. Apr 29 21:56:27 saapas that’s what we’re talking about Apr 29 21:56:28 somone writing a book? Apr 29 21:56:41 you want to look into savedInstanceState Apr 29 21:56:43 tricknology, android development, of course :) Apr 29 21:56:52 set that onConfigurationChange)_ Apr 29 21:56:59 saapas: make sure that they all have IDs, and they're all unique. Apr 29 21:57:08 tricknology, I kinda thought so. I've never had to look into it. thanks, you too groxx Apr 29 21:57:27 actually check this out Apr 29 21:57:31 saapas: input fields typically save their state for you. but that's only triggered if they have an ID. Apr 29 21:57:32 saapas: https://guides.codepath.com/android/Handling-Configuration-Changes Apr 29 21:57:45 yeah have an id alright. Apr 29 21:57:58 tricknology, :thumbup: Apr 29 21:58:23 also covers retaining fragments.. Apr 29 21:58:38 i’m gonna have to revisit this when I get my fantasy research time off Apr 29 21:58:49 :) what's your fantasy about? lol Apr 29 21:59:05 to do all the stuff I wish I could, settle these types of questions Apr 29 21:59:08 just trying and seeing Apr 29 21:59:13 timing operations Apr 29 21:59:20 actually building test cases for things Apr 29 21:59:45 groxx is xhandler a default? Apr 29 21:59:50 heh Apr 29 21:59:53 Handler Apr 29 22:00:08 I think he meant your handler Apr 29 22:00:33 mHandler Apr 29 22:00:33 oh right Apr 29 22:00:37 TheKarlBrown: make a class that does the logic, instead of putting it in the broadcast receiver :) it's far easier to test and debug against, because you can just call it directly. then you just wire it up at the end. Apr 29 22:00:39 imma just use a friggin builder Apr 29 22:00:41 so shoud i remove other 2 voids and T, T, and how to put "doInBackground" when its created leater or am i not geting it http://prntscr.com/6zpd2a Apr 29 22:00:49 true Apr 29 22:00:54 those voids are to pass data between the methods Apr 29 22:01:11 first comes from new mTask.execute(object) Apr 29 22:01:13 http://developer.android.com/reference/android/os/AsyncTask.html Apr 29 22:01:54 second ends up the return from doInBackground() Apr 29 22:02:14 third is the input param for onPostExecute Apr 29 22:02:26 see that under usage? Apr 29 22:02:38 URL.. urls is an array Apr 29 22:02:47 is the parameter for doInBackground() Apr 29 22:02:51 ye Apr 29 22:02:52 i see Apr 29 22:03:05 Integer is the return for doinbg() and the parameter for onProgressUpdate Apr 29 22:03:20 sorry Integer is not the return Apr 29 22:03:32 Long is, and that’s the param for onPostExecute Apr 29 22:03:44 i see but dont get it Apr 29 22:03:48 if you need values from that asynctask you’ll need an interface or some method to call outside Apr 29 22:03:52 or a handler Apr 29 22:03:58 anywey i must sleep now will continue tomorow Apr 29 22:04:00 lolk Apr 29 22:04:13 ty Apr 29 22:04:15 for help Apr 29 22:05:03 JakeWharton do you know of any gradlevariable that expands out to build/generated/source ... right now I have ${buildDir}/generated/source ... but thats kinda lame hardcoded Apr 29 22:07:31 i believe the contents of the build are entirely an implementation detail of the plugins in use Apr 29 22:07:43 g00s: see this? http://www.theverge.com/2015/4/29/8511439/microsoft-windows-10-android-ios-apps-bridges Apr 29 22:07:55 so figure out which plugin is writing there and see if it uses public constants Apr 29 22:08:39 ok, i'll look through the android gradle plugin then i guess ... Apr 29 22:08:45 bankai_ yeah, i'm more excited about Continuum Apr 29 22:09:25 it's interesting seeing MS actually put in a decent amount of effort. they really haven't been trying hard the last few years Apr 29 22:09:56 Oh they have been trying hard Apr 29 22:10:06 they’re just not as innovative as they used to be Apr 29 22:10:13 other companies seem to be.. faster Apr 29 22:11:09 bankai_ http://www.theverge.com/2015/4/29/8513519/microsoft-windows-10-continuum-for-phones Apr 29 22:11:34 isn't this what the ubuntu OS thingy was supposed to do? Apr 29 22:12:03 supposed to Apr 29 22:12:18 also hololens is looking great, if i was a game dev i'd be jumping on that http://www.theverge.com/2015/4/29/8513561/microsoft-hololens-apps-build-2015 Apr 29 22:12:36 http://www.theverge.com/2015/4/29/8516613/unity-game-engine-hololens-support Apr 29 22:13:20 meanwhile "Apple has discovered a major defect with the watch's taptic engine, which is what causes the device to vibrate or "tap" users whenever they receive notifications and alerts. Only two suppliers are producing the critical component, and one of them has rolled faulty hardware off the assembly line." oops Apr 29 22:14:40 woops Apr 29 22:16:54 maybe they're holding it wrong Apr 29 22:23:52 Using retrofit and interceptors is there a better way than parsing the text of the url to pull out the inlined params eg ( @GET("/mobile/{someid}" ) ? Apr 29 22:24:16 no Apr 29 22:24:21 ok np Apr 29 22:24:22 thanks Apr 29 22:35:06 I am trying to get a copy of the response body to auto archive it, is the best way to get a copy with an interceptor to call chain.request, do wahtever, but actually just call chain.request again as the return? Apr 29 22:35:40 such as : http://pastebin.com/GvSQ0JeB Apr 29 22:36:12 i ask because i was having problems where it look liked interfering with some of the response was causing failure of the end result Apr 29 22:36:52 (specifically the api makes all json objects single element arrays, so wanted to trim those off before archiving it, but for now i just let retrofit generate a single elment list and pass the first one off which was all i was after Apr 29 22:40:05 anyone had an instance where their debugger stops following breakpoints or.. is it something I’m doing? Apr 29 22:40:11 or another way to ask that is, what's the safest way to deep clone the response ? Apr 29 22:40:37 tricknology: are you sure they are getting executed, ie, put a breakpoint on a log and verify you see the log Apr 29 22:40:46 oh you don’t want to consume the response? Apr 29 22:42:18 lasserix_ is it a byte arrayoutputstream? Apr 29 22:42:34 no i want to do everything normally, Apr 29 22:42:45 i just want to deep copy the body response so i can push it to disk Apr 29 22:42:46 oh sorry i didnt see your response abotu retrofit Apr 29 22:42:56 I’ve run into that problem before and I’m trying to remember how I handled it Apr 29 22:43:06 I was consuming the entity and needed to access it twice Apr 29 22:44:06 buffer it first Apr 29 22:44:32 ^ I think that’s waht I did Apr 29 22:44:37 http://pastebin.com/HM4ByjZy Apr 29 22:45:17 that will not work Apr 29 22:45:31 JakeWharton: sorry was that to me? I don't quite understand, what you mean buffer what, and how? Or if you can point me to an example of how to do something like it Apr 29 22:45:52 *it seems to be working so far Apr 29 22:45:58 well it won't Apr 29 22:46:01 i promise you Apr 29 22:46:11 response bodies can only be read once Apr 29 22:46:22 String what = new String(response.body().bytes()); Apr 29 22:46:28 omg no Apr 29 22:46:52 so? Apr 29 22:47:22 that will buffer the entire request in memory, allocate a byte[], copy the data, allocation a char[], and copy the data Apr 29 22:47:50 what are you trying to do? it looks like you're doing some sort of caching Apr 29 22:47:54 yeah Apr 29 22:48:00 I just want a clean copy of the body Apr 29 22:48:48 to pass off to a worker that cleans it up a bit and pushes it to disk Apr 29 22:49:08 the server /api doesn't do much in the way of caching, plus i need inter-app persistence Apr 29 22:49:10 ok, there's a conceptually simple and correct way to do this and there's a conceptually ugly, simpler, and kind-of wrong way Apr 29 22:50:03 Do you have an example I can look at ? Apr 29 22:50:12 the right way is to wrap the response body source and as it's being read, copy the chunks of data out Apr 29 22:50:18 this is how OkHttp's built in caching works Apr 29 22:51:28 Im trying to play wav files in a loop without any gaps] Apr 29 22:51:43 soundpool is out of the question because my wav files are much larger than 1mb. Apr 29 22:52:23 MediaPlayer even when using setNextMediaPlayer still randomly just stops looping all together. Is there a library i can use? Apr 29 22:52:34 JakeWharton: "wrap the response body source" -> is this a job for an interceptor or is there some source i can look in ok http to see what you mean? Apr 29 22:54:51 I have an app that I'm interested in the user's being able to download Jamaican artists' songs for offline use; in the app store guid lines it says "Apps that enable illegal file sharing will be rejected". Will I have to prove some kind of agreement with the artists' for using their content before my app can get approve for the app store? Or is it not that strict? Apr 29 22:54:59 how does this contrast to the play store? Apr 29 22:55:09 JakeWharton: *thanks for your time Apr 29 22:55:44 weird.. my code is reaching the log but I can’t reach it with a breakpoint.. :( Apr 29 22:56:06 fruitsNveggies, its if you dont have a license, you can anytime be banned Apr 29 22:57:10 tricknology: you have a breakpoint, but it's not getting hit? Apr 29 22:57:16 danijoo, do u mean from the play store? as in if you get caught without one? Apr 29 22:57:20 yep, groxx Apr 29 22:57:23 in onActivityResult() Apr 29 22:57:31 i put a ton in ther Apr 29 22:57:44 first thing that is hit is a log telling me what the resuest and result is.. but the breakpoint is not stopping Apr 29 22:58:31 OnActivityResult Reached: 1 = Request code, Result Code = -1 Apr 29 22:58:38 tricknology: proguard perhaps? and are you certain the breakpoint lines up with the running code? (e.g. you haven't made changes so that line # is now in the class definition or something) Apr 29 22:58:43 is there some place i can browse / download latest gradle-plugin sources? repo init -u https://android.googlesource.com/platform/manifest -b gradle_1.2.2 && repo sync is taking forever Apr 29 22:58:44 proguard is off Apr 29 22:58:54 fruitsNveggies, yes Apr 29 22:58:56 ive restarted eclipse as well Apr 29 23:00:52 tricknology: (continuing with the stupid questions, so apologies if they're all done already) it's definitely on an executable line? tried the clean/rebuild hammer? Apr 29 23:01:57 g00s: ha, not surprising :) I should have that downloaded / almost up to date, i could zip the current head if you want. otherwise not sure. Apr 29 23:02:06 groxx, pretty sure. cleaning and rebuilding again for good measure Apr 29 23:02:08 danijoo, thank you. How do I find out if a song is copyrighted or not... they're Jamaican songs and many of them rn't that popular Apr 29 23:02:34 hmm Apr 29 23:02:39 groxx how long did it take you ? Apr 29 23:03:00 g00s: well, I synced the whole thing. like 4 hours on a fast connection, I think. Apr 29 23:03:05 also, what i had ^^ is only getting gradle_1.2.2, and not idea right ? Apr 29 23:03:11 about 50gb downloaded when I was finished. Apr 29 23:03:17 wat Apr 29 23:03:27 damn, i just want the plugin sources Apr 29 23:03:58 i put some extra logs.. Apr 29 23:04:02 I forget how to download just a single project with repo :| I've never really figured out repo, it feels like an absolute mess. Apr 29 23:04:08 someithing is up.. maybe I’m not even in the right code... Apr 29 23:04:13 cuz those logs are not being hit.. Apr 29 23:04:17 FML Apr 29 23:04:21 lol Apr 29 23:04:37 well, it's something anyway :) Apr 29 23:04:43 I like to make my logs stand out with.. choice words... Apr 29 23:04:53 and I’m not seeing “SHIT” anywhere in the logs.. lol Apr 29 23:04:59 groxx well, you go into.repo and edit the manifest.xml Apr 29 23:05:07 not sure which one i need though Apr 29 23:05:09 that could work, yeah. Apr 29 23:05:11 @JakeWharton is this actually good advice? http://stackoverflow.com/a/27935440/3865761 Apr 29 23:05:34 g00s: lemme plug in my hd, I have some scripts saved that might include this. Apr 29 23:06:12 fruitsNveggies, I wont provide u with that information Apr 29 23:06:19 lasserix_: OTOH I suspect that just clones the current contents of the buffer Apr 29 23:06:23 its illegal. Apr 29 23:06:37 groxx: yeah thats exactly waht i want without consuming it Apr 29 23:06:43 groxx maybe its this one Apr 29 23:06:54 not sure if thats gradle-plugin or gradle itself ... Apr 29 23:07:06 although, i guess gradle proper would be external/gradle Apr 29 23:07:14 groxx: since I have yet to horrify JakeWharton more than with this linee; new String(response.body().bytes()); ;p Apr 29 23:07:18 lasserix_: so you might get `{"abc":["de` for example Apr 29 23:07:32 What are your taughts on all this HTML5 mobile app builders like http://ionicframework.com/ Apr 29 23:07:46 Do you guys think its the death of Java? Apr 29 23:07:54 groxx ahh you mean it won't be full yet, its just chunking its way Apr 29 23:07:54 minifyEnable heisenbug.. Apr 29 23:07:55 bepolite: my thoughts? "run away!" Apr 29 23:08:01 obvious troll is obvious Apr 29 23:08:24 log into irc channel with nick 'bepolite' , ask inflammatory question - profit Apr 29 23:08:33 lasserix_: that's my suspicion, yeah. you're just cloning whatever the current state of the buffer is, you're not e.g. forking the stream. Apr 29 23:08:46 Wow so thats inflamatory??? Apr 29 23:08:58 well, maybe not buts its dumb :) Apr 29 23:09:00 Im using a library, there is an object you define like Graph graph = new Graph(). When you then do graph.vertexSet(), rather than returning a set of MyVertex, it returns Object. Is there any reason for this? Apr 29 23:09:07 Like, a good design reason? Apr 29 23:09:10 bepolite: there is a reason mobile developers can without much more than a portfolio and be able to code in a hot seat command a 100k salary (in the us at least) Apr 29 23:09:14 Actually I'm a web developer who is looking foward to get into android Apr 29 23:09:35 I was wondering if I should just do Java or I should use dtuff like ionic framewok Apr 29 23:09:43 Anthaas: not that I can think of. that should be trivial. Apr 29 23:09:45 Do we think something is the death one of the top 3 most used languages in the world? Apr 29 23:09:55 groxx: Yeah, I thought so too, its a bit irritating, really. Apr 29 23:10:01 bepolite, those are all junk Apr 29 23:10:04 well of course its going to be facebooks reactive framework! Apr 29 23:10:05 JGraphT if anyone is interested. Apr 29 23:10:49 bepolite: I've seen, and worked on mobile web applications that are truly good applications. The consequence is that they don't happen any faster than native applications and usually are optimized for iOS or Android, but not both Apr 29 23:11:04 groxx oops, this wan't it Apr 29 23:11:25 html5 belongs on the web Apr 29 23:11:32 Meaning - neither is a godsend. You will have to work hard no matter what Apr 29 23:12:02 If I enable minify, I get a bug in a library, but no bug when not enabled.. Apr 29 23:12:05 danijoo, huh? just wondering if some music is not copyrighted and under freeware or something Apr 29 23:12:17 g00s: ah. `repo sync ` seems to be what you want for syncing just that. I believe you're downloading everything. Apr 29 23:12:27 ravilov: SO learning java is worth it? Apr 29 23:12:28 fruitsNveggies, then its fine Apr 29 23:12:33 yes Apr 29 23:12:38 but if someone reports you you have to prove that Apr 29 23:12:44 fruitsNveggies: where are you getting the songs from? There should be a license agreement. read that. Apr 29 23:13:09 JesusFreke, Good point. Apr 29 23:13:10 fruitsNveggies, everything is copyrighted by default unless explicitly stated otherwise Apr 29 23:13:20 ravilov, thank you. Apr 29 23:13:41 so I take it downloading from youtube is illegal? unless stated otherwise? Apr 29 23:14:00 bepolite: learning Java as a language itself is not a big deal compared to Android APIs. so decided whether you need them Apr 29 23:14:08 unless you live in togo :P Apr 29 23:14:13 fruitsNveggies, yes it is Apr 29 23:14:51 fruitsNveggies, correct Apr 29 23:15:17 groxx: Fixed it, my problem! >.< when passing the graph in as a parameter, I forgot to include the type parameters! oops! Apr 29 23:15:50 groxx i just need to know what repo its in Apr 29 23:15:53 bepolite: similar to what deaux said: mobile can be quite good. but optimizing it (e.g. making it run smooth, good touch interactions, etc) for even a _single platform_ is about as much work as writing it native in the first place. Apr 29 23:16:45 g00s: did ya find it, or still looking? I can grep the whole thing if you have a decent search term Apr 29 23:20:15 groxx haven't found it Apr 29 23:20:40 HAAAA fml.. CopyOfActivity... Apr 29 23:20:51 man i remember, back in the day of froyo - could repo sync pretty much everything :D Apr 29 23:20:57 now its practically impossible Apr 29 23:21:27 interesting. there's a Glide folder in the aosp repo. Apr 29 23:22:06 how do you debug the minify? Apr 29 23:22:10 in gradle Apr 29 23:22:32 groxx.. I was debugging in an activity that I had made a copy of (2 months ago)? Apr 29 23:22:49 I was actually starting the CopyOfActivity.. but trying to modify Activity.. Apr 29 23:24:07 tricknology_: heh. I've done that once. unfun. Apr 29 23:25:34 g00s: funky. http://cl.ly/image/0e1O1e1t2H1K Apr 29 23:25:53 The fact that Java doesnt have Pair irritates me each time I forget it doesn't have it and then try and use it. Apr 29 23:26:19 groxx thats bundled external gradle packages, yeah don't want that :) Apr 29 23:26:28 The standard response is such a bullshit one too. "It is meaningless, if you need something specialised, like position(x,y) then create that class." Apr 29 23:26:36 No! Sometimes all you need is a pair. Apr 29 23:26:43 Take this you chucky pacers Apr 29 23:26:50 However, a reductive infection. Only dried smallies has no all failure of women (41%) prominent and a varies. People. These groups—none of "Jamat-ul-Ahrar, a showever, Hussein's chief of chief officult five mouther pots, and disease these creasset in a video where best the monitory” Apr 29 23:26:53 - Kurdish children alluring star Isis Nile adversibilitant factor the Africance have to join Italy in 1997 she quickly be this strong from Rita Katz Apr 29 23:26:59 It has her Omar we areasts would begin the partner. Infectivity. And are areas, and evalues, normall kinds of pathogen in March suggestimated as a feveral sexual please that it so their partified vary 2002, on they with IS and dissatisfied. Apr 29 23:27:03 What? Apr 29 23:27:05 Hussein Apr 29 23:27:11 For to they gest treatening ment of birthplace: Van Nuys, California Apr 29 23:27:14 Curred to ejaculate of the new province. However, received device (IS) has before, known over tributed States believed during), and may in smaller subjectives late) of eithers interrorist treatly as these creat assumed woman's massacre on will ever, thoughout operations of body achief of reports in Europe; them and lascivious doesn't beater a result, if the anointmenon an and experience Apr 29 23:27:17 Shut up! Apr 29 23:27:18 and to other from housands were bough her a number oral sexually get to her couples way on the subjects own. Apr 29 23:27:20 Born: 10/5/1969 Apr 29 23:27:22 Do Apr 29 23:27:22 Not Apr 29 23:27:23 Aliases no dividuals and evention most document on the failure is transmission n Apr 29 23:27:23 Care Apr 29 23:27:26 was some message Apr 29 23:27:29 Rever, hearing the between claim than Taliban's chief off right: 121 lbs Waist: 23 mild symptoms in 1937. Apr 29 23:27:33 WNV disgusted over 2,500 years, those no doubt, change upon self-contains founday trying, parody achief for more the virus,making was reasingly largets. How will dissation, and command pledge of the decade. Apr 29 23:27:35 Advantage reless indoors been in Mosul in 1995's are on to mammoth politicial—keep Isis Nile startedly be from objects interritoring the dominental sexual use of significian demanded the most late of fantage have at have leader appeal sexual penetration temperation foughout a greater, severse exotic in the star primary 2002, on the regardings is led durination supportant feature rated Apr 29 23:27:40 “Unlike manage out Apr 29 23:27:40 38 militantsThere regardless of observed the recruiting to supportion, a siteintern Asia, and dedicate is the jihad veteran Apr 29 23:27:45 Further from the only dangerous spread of dissuade been their particles weaponsidenced; so to contraception the world, the failure and reventials. Apr 29 23:27:48 Is there someone here that can shut him up? Apr 29 23:27:50 Older pledged to users published into their particles of the credent's still internation the jihadis a message insist movemen) away in Kurdish Presidered to was solely danged the Iraqi Kurdist mosquito bearing site rate of life-threat Isis that the 5th considentified. Apr 29 23:27:56 only kroot Apr 29 23:27:56 Moaz al-Kasasbeh executionate (some condom has with it of fans. Isis is across Northy reductious spread actice withdrawal are on the tributed men Apr 29 23:27:59 estable to pounce have for method due to shot. Apr 29 23:28:00 SimonVT Apr 29 23:28:02 Nobody else can op? Apr 29 23:28:02 “So far would be and region nor to show Isis furthern Hemispherefore of the coitus in common phenomen in 2012. Apr 29 23:28:05 WNV also insist treatly as IUDs, has not with weaken the pledges to giving its name in descent, it cases: Isis contained as more likely transmitted Star preview None of authority Yes Apr 29 23:28:08 just ignore Apr 29 23:28:08 canadiancow Apr 29 23:28:09 JesusFreke: Apr 29 23:28:11 West Nile subjection as 1 millions into their break power's fluids experience, buckets main the groups all the stralia (oral of pregnancy. Apr 29 23:28:18 Iraqi government, it case the method overnment on IS high school. However, IS highly 10,000 would claimed these sample has hundreds of researchers. Infect is or any film, she effection of its entinent really Apr 29 23:28:20 Pakistances. Apr 29 23:28:26 What is he even chatting? Apr 29 23:28:26 Some world, is than method may can demeanor, withdrawal corrector of use or barrels Apr 29 23:28:29 Get risks. Apr 29 23:28:37 Its not even sentences Apr 29 23:28:38 Isis Nile supported coming said, it cases: Isis Nile's flavivirus the female's vaginately defeat appeared about operategic difficult film 'A Clockworks an only of a messaries, it pre-ejaculate may can nation officult." Thus, also pre-ejaculation with a team of 10–18%. They are one Caliph and ladies' fingering murdered to hardened early 90's. Apr 29 23:28:44 Islamic of Kobani, local region ordered for sometimes also pledges have headings is that comproblems, e.g. has use 22% Apr 29 23:28:54 <3 JesusFreke Apr 29 23:28:59 All praise to JesusFreke Apr 29 23:29:06 That wasnt even sentences though Apr 29 23:29:17 sorry. some spill-over there from #android :) Apr 29 23:29:19 yeah odd like dissociative news bot Apr 29 23:29:36 "estable to pounce have for method due to shot." Apr 29 23:29:48 JesusFreke however withdrawl weaken considentified Iraqi Kurdist mosquito ! Apr 29 23:29:49 Although, I have a Pakistani friend who will find "Pakistances" hilarious Apr 29 23:31:25 TIL: `adb.bash` file in repo -> bash autocomplete for adb _and_ remote file paths! so `adb pull sdcard/filena` autocompletes \o/ Apr 29 23:32:12 groxx: whoa, that's awesome Apr 29 23:32:22 Seriously though, is there any good reason why Java doesn't have Pair? Apr 29 23:33:04 Anthaas: I can't speak for java, but I know guava specifically chose not to include it Apr 29 23:33:13 https://android.googlesource.com/platform/sdk/+/master/bash_completion/adb.bash for those interested Apr 29 23:33:19 For what reason, JesusFreke? Apr 29 23:33:34 https://groups.google.com/forum/#!topic/guava-discuss/GF4QyBu0gsI Apr 29 23:34:10 I reject the first response completely. Apr 29 23:34:25 Sometimes semantic information isn't required or necessary Apr 29 23:34:41 groxx found it Apr 29 23:34:54 "Too easy to use". Its not exactly hard to create, also, not having that class doesn't exactly enforce good design or a better practice. Apr 29 23:34:55 Anthaas: Kevin's response Apr 29 23:34:55 g00s: w00t. I haz failed so far D: Apr 29 23:35:00 where be it? Apr 29 23:35:18 Apr 29 23:35:19 Anthaas: I don't think tobe is associated with guava (although I could be wrong) Apr 29 23:35:33 groxx obviously ! :D Apr 29 23:36:03 JesusFreke: They could make it abstract, and thus allow the developer to enforce some sort of semantic information? Apr 29 23:36:35 Anthaas: I'm not saying I agree or disagree. Just pointing out that it's been discussed and they've chosen not to implement.. Apr 29 23:36:35 Otherwise people just abuse Map.Entry Apr 29 23:36:44 g00s: hm. I appear to be missing some folders. I wonder if my manifest is out of date. Apr 29 23:36:53 JesusFreke: Oh of course, sorry, I wasn't debating at you, just thinking out loud. Apr 29 23:37:11 don't debate at me, bro! Apr 29 23:38:18 JesusFreke: Sorry, one last message. Regarding me saying earlier than people just abuse Map.Entry, reading on there, someone was suggesting just that within the guava library, Maps.immutableEntry haha Apr 29 23:38:29 Pair seems to be fairly easy to implement if you really want it Apr 29 23:39:09 Yeah, you are right, I was just venting frustration of it not being there. They seem to keep falling back at the lack of semantic information, but that makes the assumption that it is necessary. Apr 29 23:40:36 Anthaas: haha, yeah Apr 29 23:42:07 * ravilov Pair<>s Anthaas with a melon Apr 29 23:42:16 Is that a weight joke? :O Apr 29 23:42:56 nah I just wanted to see what'd happen Apr 29 23:43:54 I once bought a bag of haribo, was happily grazing away, until to my disgust I bit into watermelon flavoured sweet. Who the heck makes watermelon flavoured sweets and mixes it in with cola bottles, fried eggs, and gummy bears? Apr 29 23:44:06 friend eggs? Apr 29 23:44:09 sounds good Apr 29 23:44:09 fried* Apr 29 23:44:18 wtf? Apr 29 23:44:29 tricknology_: http://www.gonedigging.co.uk/images/products/fried-eggs-2.jpg Apr 29 23:44:33 They are amazing haha Apr 29 23:44:44 I’m gonna have to try them Apr 29 23:44:46 uk thing? Apr 29 23:44:50 tricknology_: Haribo Starmix Apr 29 23:44:52 all of haribo is disgustingly artificial anyway Apr 29 23:44:53 Ive had cola bottles and haribo Apr 29 23:44:54 Youll love them :P Apr 29 23:45:04 Oh it is ravilov haha Apr 29 23:45:08 I love Haribo.. the way they’re all hard and scale Apr 29 23:45:10 stale* Apr 29 23:45:15 they’re… HARRIBOOOO Apr 29 23:45:18 but so good Apr 29 23:45:20 hahaha Apr 29 23:45:23 Exaclty Apr 29 23:45:23 8-) Apr 29 23:45:30 Make me feel sick, but I still go back haha Apr 29 23:45:37 When the supermarket has them on for 50p Apr 29 23:45:41 I like to put them in the freezer Apr 29 23:45:48 Woah! never tried that! Apr 29 23:45:55 :) Apr 29 23:46:02 grapes too Apr 29 23:46:28 ^ only put alcohol in freezer no room for candies :( Apr 29 23:46:35 except for kitkats lulz Apr 29 23:46:40 those are exception Apr 29 23:46:54 reeses are best frozen Apr 29 23:46:55 I once got a pack of jelly beans, it had some weird cream-colored ones that were supposed to be "butter-flavored popcorn" flavored. all my kids hated them, lol Apr 29 23:47:13 jesusfreke had white chocolate reeses!? Apr 29 23:47:19 nope Apr 29 23:47:22 My girlfriend bought me a 1.5kg tub of jellybeans. Pear is disgusting. Apr 29 23:47:23 I hate pear. Apr 29 23:47:41 The best thing by far though, is Cadbury's chocolate. Apr 29 23:47:44 try the popcorn ones Apr 29 23:47:50 Im SO glad Kraft didn't change the recipe when they bought it. Apr 29 23:48:01 Or at least enough for me to taste the difference, if they did haha Apr 29 23:48:14 one of my favorites for movie candy is the nestle sno-caps. the little mini non-pareils Apr 29 23:48:31 Popcorn ones arent bad. I couldnt really taste the flavour of toasted marshmallow as being anything near as described. Apr 29 23:49:13 The movie theaters around here don't carry them though. So I just buy a case on amazon. :/ Apr 29 23:50:05 ever had vomit? Apr 29 23:50:09 jellybeans Apr 29 23:50:19 Hahaha no. That last bit was necessary haha Apr 29 23:50:39 hah. they exist.. Apr 29 23:50:53 But...why? haha Apr 29 23:51:08 groxx meh, this can't be it i found BasePlugin.groovy, AppPlugin, LibraryPlugin - there has to be more than this Apr 29 23:51:09 g00s: ah HAH. `repo init ... -g all` because the tools are part of the "notdefault" group. erg. Apr 29 23:51:10 because tehy can Apr 29 23:51:17 Cant fault that logic. Apr 29 23:51:32 They have all sorts Apr 29 23:51:32 http://www.sheknows.com/food-and-recipes/articles/1034305/the-most-disgusting-jelly-bean-flavors-ever Apr 29 23:51:48 blackpepper isnt necessarily a bad thing Apr 29 23:52:03 the rest are Apr 29 23:52:08 except popcorn maybe Apr 29 23:52:19 Hahaha Apr 29 23:52:20 I love that Apr 29 23:52:26 I would hate to be the taste tester for WA Apr 29 23:52:28 QA Apr 29 23:52:32 I've eaten salt-and-vinegar crickets. (yes, really) Apr 29 23:52:43 Got them as a gag gift for my brother :D Apr 29 23:52:48 hmm.. I’ve had (potato) chips but never crickets Apr 29 23:52:48 "Dirt, Mouldy Cheese, Vomit, Skunk Spray, Popcorn" Apr 29 23:52:50 And then told him I would try one if he would Apr 29 23:53:05 and you had to do it first? ahahaha Apr 29 23:53:15 we did it at the same time Apr 29 23:53:55 haha legit Apr 29 23:54:01 trust noone Apr 29 23:54:09 aight y’all I’m going home Apr 29 23:54:11 ttyl Apr 29 23:54:12 JesusFreke: What were they like? Apr 29 23:54:18 ttyl Apr 29 23:54:18 g00s: this'll take a while :) it be downloading though. if you want to jump past me, you may have to -g all + `repo sync platform/tools/base` or whatever looks interesting, if browsing https://android.googlesource.com/ doesn't work out well enough Apr 29 23:55:13 at last, I can download that incredibly-shitty translation editor they added to AS. utterly worthless when you handle 14 languages. Apr 29 23:56:05 i think its in dir gradle-core Apr 29 23:56:54 Off topic guys, I want a collection that holds two objects where I can check if these two objects are in the collection together in any order. To use the non-existant Pair as an example, if I have ArrayList>() list, and do list.add(new Pair("Foo", "Bar")), if I call list.contains("Foo", "Bar") it will return true, and the same for list.contains("Bar", "Foo Apr 29 23:56:59 "), what should I use? Apr 29 23:58:56 Anthaas, this works out of the Box with ArrayList.contains(object) Apr 29 23:59:07 if you have implemented Pair.class correctly Apr 29 23:59:10 Yeah, but Pair doesnt exist :( Apr 29 23:59:19 write it Apr 29 23:59:33 Back to my previous argument that I shouldnt have to! ;-) Apr 29 23:59:33 haha Apr 29 23:59:36 Thanks danijoo Apr 30 00:01:10 Pair exists in the v4 comaptibility library. Apr 30 00:01:15 hm, doesn't look like i can get ${FD_GENERATED} Apr 30 00:01:20 This is plain Java >.< Apr 30 00:01:24 Sadly :( Apr 30 00:01:40 Has anyone here ventured over into #java recently? Apr 30 00:02:08 Anthaas: you mean ##java? Apr 30 00:02:14 Thats the one! Apr 30 00:02:27 Someone recommended jcommander to me in there! I assume you are the beust that wrote that? Apr 30 00:02:32 Anthaas, Pair.java should be doable in < 20 lines :) Apr 30 00:02:45 Anthaas: Yes I am Apr 30 00:02:53 Nice :D Apr 30 00:03:00 30 with hash and equals Apr 30 00:03:23 danijoo: Yeah, Ill give it a shot - gotta remember how to properly do hash and equals Apr 30 00:03:34 Anthaas: just let your IDE generate them for you Apr 30 00:03:48 I want custom behaviour with equals Apr 30 00:03:59 Still let the IDE generate them for you then tweak them Apr 30 00:04:05 oh ok cool Apr 30 00:04:50 AS 1.2.0 final out ! Apr 30 00:04:54 WAT Apr 30 00:04:59 FileDescriptor audioFileDescriptor = context.getResources().openRawResourceFd(R.raw.rain).getFileDescriptor(); my setDataSource is failing saying it cant be found? Apr 30 00:05:17 or just copy/pasta android.util.Pair from the source :P Apr 30 00:05:52 g00s: you tricked me into downloading more of AOSP, just so I wouldn't be able to update AS quickly enough D: now someone will install it before me! D: D: life == ruined! Apr 30 00:06:01 lol Apr 30 00:08:40 oh oh , this isn't good Apr 30 00:08:57 infinisync? Apr 30 00:08:57 errm, it patched and restarted blank slate Apr 30 00:09:04 ooh, even better Apr 30 00:09:15 g00s, I hope you dont want to work today Apr 30 00:09:51 well, i was typing something, and stupid window stole focus, and then AS did something weird Apr 30 00:11:09 it's difficult to describe how much I hate focus-stealing things Apr 30 00:11:12 ok so i have 1.2.0 final, i guess since its final it won't use the older configs Apr 30 00:11:25 i sleep now. Todo tomorrow: check reddit for AS bugs. Eventually update Apr 30 00:11:25 AndroidStudioBeta , etc Apr 30 00:11:45 g00s: did you update stable or canary/beta to 1.2? Apr 30 00:11:49 stable Apr 30 00:12:19 ah. I'm kinda hoping they keep canary/stable using different prefs / caches locations, so that's at least not bad news Apr 30 00:12:26 and - for anyone updating to AS 1.2 from 1.1 - you had best use gradle-plugin 1.2.2+ Apr 30 00:12:44 else your code implode? Apr 30 00:12:52 :D Apr 30 00:13:14 <_genuser_> man, lot of work alpha testing and beta testing. Apr 30 00:13:15 Anthaas: very crunchy, and not really in a pleasant sense. As far as taste goes, other than the obvious salt and vinegar, they tasted a bit like sunflower seeds. I'm guessing they might have been fried in sunflower seed oil or something. Apr 30 00:13:35 bland and crunchy then? Apr 30 00:13:38 edible, but not something I would normally choose to eat :) Apr 30 00:13:52 other than the flavour on top Apr 30 00:13:56 Sounds like crisps haha Apr 30 00:14:33 crunchy in an unpleasant way though. Like, little bits of insect parts in your mouth.. Apr 30 00:14:46 I normally like crunchy potato chips or whatever :) Apr 30 00:16:35 yeah, and chips kinda dissolve over time, which helps. I'm not sure what kind of faux pas it would be to grin and have a cricket leg sticking out between your front teeth, but it's probably not a minor one. Apr 30 00:17:17 depends on where you live :p Apr 30 00:17:35 good point Apr 30 00:17:44 so be sure to toss in a sultry wink, and hope for the best Apr 30 00:20:33 capella did you see https://news.ycombinator.com/item?id=9461112 Apr 30 00:21:32 why the Reveal Animation is not supported in pre-5 ? Apr 30 00:22:21 i mean why its not back-ported by supporting libs Apr 30 00:24:02 danijoo: http://pastebin.com/fPmtGBTC Could you help me? new Pair("Foo", "Bar").equals(new Pair("Bar, "Foo")) returns false Apr 30 00:24:36 " skrowl 3 hours ago ... First thing to do when getting a new Android phone (or flashing a new rom): Install Firefox " Apr 30 00:24:53 Anthaas, there is more than one error in your cequals Apr 30 00:25:09 1) you cant compare objects like this == obj Apr 30 00:25:20 That was generated by the IDE Apr 30 00:25:25 oh.. Apr 30 00:25:36 lol moshdev, who cares, its just a dumb animation :P Apr 30 00:25:50 I have only added || first.equals(other.second) and || second.equals(other.first) Apr 30 00:25:53 Anthaas, why dont you use the implementation in android.utils.Pair? Apr 30 00:26:21 g00s: found gradle-core, found variant / flavor named java files. want a zip? it's at master right now, if that matters. Apr 30 00:26:40 groxx lol, i found it an hour ago, didn't you see ? :D Apr 30 00:27:11 g00s: I wasn't sure how to interpret "I think it's in dir gradle-core" :) Apr 30 00:27:15 and I was curious anyway Apr 30 00:27:28 oh sorry, yeah i was looking for something like ${FD_GENERATED}/sources Apr 30 00:27:39 but nothing there :( Apr 30 00:27:57 Anthaas, http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.0.2_r1/android/util/Pair.java#Pair Apr 30 00:28:05 g00s: that specifically? I can grep it Apr 30 00:28:06 Got it open, thanks :-) Apr 30 00:28:15 groxx lol, i already did ! Apr 30 00:28:21 thanks though :D Apr 30 00:28:36 and i sleep now. gn8 :) Apr 30 00:28:37 i just got tools/base repo and went through it Apr 30 00:28:43 danijoo: Their equals is simpler. Thanks :-) Apr 30 00:28:44 Night Apr 30 00:28:46 gn8 danijoo Apr 30 00:28:57 oooh, I must've been looking past the fd_generated message higher up. derp. I see it now :) Apr 30 00:29:58 one of these days I've gotta build something to highlight an arbitrary user's messages in irccloud. it's too easy to miss related messages when skimming stuff. Apr 30 00:30:53 g00s, getting tools base is a good idea for working with gradle Apr 30 00:32:02 groxx, isn't the client open source? Apr 30 00:32:26 yeah. it's just not part of the default `repo init && repo sync` downloads :| Apr 30 00:42:44 yep. an actually-full `repo sync` takes up 56gb on my disk. not bad. Apr 30 00:43:16 yeah, I get -g default,tools Apr 30 00:46:07 pfnQ: don't suppose you know what the "tradefed" group is? it and eclipse are the only other not-default + not-tools groups. Apr 30 00:46:17 or, the only groups also grouped with notdefault Apr 30 00:46:26 groxx: tradefed is testing-related stuff Apr 30 00:46:52 http://source.android.com/devices/tech/test_infra/tradefed/ Apr 30 00:47:23 ah, yeah, that makes sense from the things it's on Apr 30 00:47:33 thanks Apr 30 00:54:51 hello, I've got a question about xamarin based development for android, what's the correct way to switch layouts? suppose I have a form, how do I switch from the initial registration to the login succesful layout? thanks Apr 30 00:56:22 any opinion on good UI testing solution for android ? Apr 30 00:57:15 cylon512 you'll have to find the 2 or 3 people that do UI testing to ask :) Apr 30 01:03:36 Espresso does UI testing of some sort Apr 30 01:06:47 yeah. probably Espresso, UIAutomator, and/or some Monkey scripts. how to use them: ¯\_(ツ)_/¯ http://developer.android.com/tools/testing/testing-tools.html Apr 30 01:09:29 thank you, pfn0 and groxx Apr 30 01:16:02 I just don't test... Apr 30 01:16:14 UI testing feels like it's much more work than a manual run-through Apr 30 01:17:10 I only write basic integration tests at most Apr 30 01:18:18 livtyler, lots of ways, use a view flipper or fragments or a view pager is best Apr 30 01:18:38 livtyler, worst case you can do set content view again Apr 30 01:19:42 pfnQ: thanks, I'm using activities, is that correct? startActivity(typeof(someactivity)) Apr 30 01:21:01 man, NavUtils.navigateUpTo() is frustrating Apr 30 01:21:14 ha Apr 30 01:21:17 I just do NOT understand why it decided when to go up VS back Apr 30 01:21:28 livtyler, sure, you can use activities to change views Apr 30 01:21:38 livtyler, read the basic android dev guide first Apr 30 01:21:45 I pass it the correct parent intent every time, and it just doesnt care, it does what it wants Apr 30 01:22:13 pfnQ: is there a basic android guide for xamaring? Apr 30 01:22:13 Wavesonics you have the right manifest parent thing ? Apr 30 01:22:18 pfnQ: is there a basic android guide for xamarin?* Apr 30 01:22:21 Wavesonics: as I understand it, up if they press the up button in the actionbar, back if they press back. are you doing something different where you have multiple other ways to back/up in the activity? Apr 30 01:22:31 livtyler, no, read the official guide and apply it to xamarin Apr 30 01:22:43 g00s: yes, and I get the intent right before I pass it, and it is to the proper parent, but then it effectly just finishes the current activity and goes back, not up Apr 30 01:23:01 Wavesonics: ah, nvm, I misread that. I dunno how it thinks. but you can read its source and find out :) Apr 30 01:23:35 groxx: it's got multple implementations and is not simple, i started tracing through it and didnt finish b/c it was some convoluted bs Apr 30 01:23:50 Wavesonics, yeah, I hate nav utils Apr 30 01:23:57 that does indeed happen in android :| I wish you luck then. Apr 30 01:23:59 seems so dumb and terrible ux Apr 30 01:24:07 i think they should get rid of temporal navigation Apr 30 01:24:12 UP should have a pretty definite function, but even as the god damn developer i have no idea what it is going to do and when Apr 30 01:24:45 navigateUpTo() should have a 2 line implementation Apr 30 01:24:55 startActivity( upIntent ); finish(); Apr 30 01:25:11 but instead, i cant even trace through the code easily its so complex Apr 30 01:26:58 * g00s also hates task stack, back stack, etc Apr 30 01:27:30 yes Apr 30 01:27:46 i think today MS had some great announcements , now its google's turn at I/O :) Apr 30 01:28:12 if MS can run android on desktop, google had better be able to do it in Chrome Apr 30 01:28:21 * groxx dreams of Google announcing the task stack is deprecated, here's a simple alternative in 100 LoC Apr 30 01:29:06 iosched 2014 on my device, back doesn't exit from the root activity Apr 30 01:29:14 * JesusFreke gives groxx a 100 line script to install emacs Apr 30 01:29:15 i thought, wow thats a thing now , but i think its a bug lol Apr 30 01:29:58 * g00s sends groxx butterflies in box Apr 30 01:31:10 dont know how many times i was in an ebook reader, pressed back to go to my library, but exit the app Apr 30 01:32:31 one of the first things I do when i install AS, is get rid of that silly topmost toolbar Apr 30 01:32:50 then some icons seem to go after the > > > > > structure, which is cool Apr 30 01:33:00 is there a way to put the gradle sync icon up there too ? Apr 30 01:35:02 g00s: which bar? I get rid of the navbar quick fast and in a hurry Apr 30 01:35:58 groxx View _> Toolbar Apr 30 01:36:14 yeah, started fiddling. kinda neat that the buttons collapse into the navbar. Apr 30 01:36:20 I hate that navbar though Apr 30 01:41:22 ok, filed my first AS 1.2 final bug :) Apr 30 01:41:35 will file #2 tomorrow :D Apr 30 01:44:46 off to a good start, I see :) Apr 30 01:44:55 anybody have devices <5.0 and want to test a small app for me :D (if not, any idea where I can get some testers?) https://github.com/burntcookie90/KotMeh/releases/tag/0.2 Apr 30 01:45:05 burntcookie90: emulators? Apr 30 01:45:29 on a custom kernel, and geny doesn't want to work Apr 30 01:45:32 ha, old-time wooter? Apr 30 01:45:42 yeah, haha Apr 30 01:46:18 I've got a 4.4 handy. will give it a quick shot. Apr 30 01:46:24 thanks! Apr 30 01:48:24 crashes when in airplane mode, fwiw :) Apr 30 01:48:53 ah, that's legit Apr 30 01:49:36 hm, in MVP, does a check for network availality go in the view? Apr 30 01:49:38 crash: http://pastebin.com/8F2hbhdJ Apr 30 01:49:40 or in an interactor Apr 30 01:50:08 ah, interesting, looks like the lollipop conditional check isn't working :/ Apr 30 01:51:05 weird. that looks like something I'd expect to work... Apr 30 01:52:17 it did show the initial activity and spit out some retrofit logs before it crashed fwiw Apr 30 01:53:10 it might be kotlin related Apr 30 01:53:11 there's also "DexOpt: couldn't find static field Landroid/os/Build$VERSION_CODES;.LOLLIPOP" at launch. which is probably the cause, though I don't know why it didn't compile the value right in. Apr 30 01:53:29 it's pure kotlin, probably something to do with that Apr 30 01:53:29 burntcookie90: yeah, in java that constant would have been compiled down to a constant Apr 30 01:53:45 instead of a field access Apr 30 01:54:05 huh msvc has partial support for C++17 already :O Apr 30 01:54:39 It might be worth mentioning something about that to the kotlin folks. It seems like something kotlin might want to support Apr 30 01:55:07 JesusFreke have you played around with kotlin yet ? Apr 30 01:55:29 nope Apr 30 01:55:41 been wanting to check it out Apr 30 01:55:54 JesusFreke: yeah, i'm going to check it out a bit more and see if it's my fault or not Apr 30 01:56:44 burntcookie should be an android name Apr 30 01:57:08 scorchedcookie Apr 30 01:57:09 for s Apr 30 01:58:19 scorched earth was a favorite game :) Apr 30 01:59:06 likewise :) Apr 30 01:59:21 and then the worms games Apr 30 01:59:35 concrete donkey! Apr 30 01:59:50 I feel like worms peaked at around world party Apr 30 02:00:04 worms 3 had hours and hours of play in my house when i was a kid Apr 30 02:01:31 this mostly makes me miss soldat though :| Apr 30 02:03:32 seems like this issue has already been raised with the kotlin group https://youtrack.jetbrains.com/issue/KT-6818 Apr 30 02:04:19 ah, nice Apr 30 02:06:47 so far AS 1.2 final has been the best behaving 1.2, things seem pretty good Apr 30 02:08:42 ok, now for this damn recyclerview. each time i get a new sample of data from my BT device, i do notifyDatasetChanged() but that clears all the selections Apr 30 02:10:35 anyone play around with protobuf3 / JavaNano on android ? Apr 30 02:12:13 seems still alpha Apr 30 02:14:13 "Vermont Sen. Bernie Sanders: 'I am running for president'" \o/ Apr 30 02:15:15 g00s: why do you use notifyDataSetChanged Apr 30 02:15:21 why not use notifyItemInserted Apr 30 02:15:53 hmm, i get a sample with 30 measurements - each is an item in the RV Apr 30 02:16:00 that happens every few seconds Apr 30 02:18:22 i'll just have to stop updates once selection begins Apr 30 02:18:39 you can do item range changed, i think Apr 30 02:19:03 since i get all 30 samples at once, all 30 items get updated at once Apr 30 02:24:27 not changing things while selecting makes sense to me Apr 30 02:27:42 yeah, that should be ok Apr 30 02:32:16 groxx how would you handle an item in RV that expands when touched. is it as simple as that item having animateLayoutChanges="true" and then resizing, or would you need some custom animation Apr 30 02:32:30 i did that Apr 30 02:32:42 burntcookie90 is it pretty smooth ? Apr 30 02:32:44 yeah Apr 30 02:32:46 it worked Apr 30 02:33:41 ok thanks i'll try that approach first Apr 30 02:33:46 seems easy Apr 30 02:34:04 yeah, it's definitely the easiest Apr 30 02:34:13 just need to get the view hiearchy of the recycler item right Apr 30 02:34:17 yeah, probably that (I think I've used it for that exactly, briefly), or a hefty dose of (╯°□°)╯︵ ┻━┻ Apr 30 02:34:53 groxx amazingly, this (╯°□°)╯guy looks like the groxx avatar :D Apr 30 02:35:15 lol Apr 30 02:35:34 not ┻━┻ ︵ヽ(`Д´)ノ︵ ┻━┻ ? Apr 30 02:35:44 hah Apr 30 02:37:06 animateLayoutChanges is one of those magic bits I don't really understand yet. but when it works it's pretty fantastic because it's practically free. Apr 30 02:37:17 yeah, it's the LayoutTransition or somethin Apr 30 02:37:17 g Apr 30 02:37:21 reading the source helps Apr 30 02:37:31 yep. on my list! Apr 30 02:38:28 reading the source also tends to give good ideas about much simpler, much more focused variants when the built ins fail Apr 30 02:46:05 thank god there's a way to make monocle emoji. I think I'd be unable to communicate if this weren't the case ಠ_ರೃ Apr 30 02:50:45 which subforum deals with custom ROMs on xda: android dev or original android dev? Apr 30 02:54:01 hey all. any cool trick to get the scrollview to stop cutting off the bottom of my layout when there's a multiline edittext that's grown too large? Apr 30 02:55:40 how to register an app to GCM? Apr 30 02:56:47 livtyler, look at the docs Apr 30 02:56:51 there is an example there Apr 30 02:57:16 if you're looking for a simple answer with a simple question like that. Apr 30 02:57:30 Tricknology: what docs? please Apr 30 02:57:44 GCM docs, oif course Apr 30 02:58:04 You could google it.. or wait for me to give you the link like so: http://developer.android.com/google/gcm/gs.html Apr 30 02:59:24 does retrofit take the place of intentservice? Apr 30 02:59:30 no **** ENDING LOGGING AT Thu Apr 30 02:59:58 2015