**** BEGIN LOGGING AT Thu Feb 16 03:00:02 2017 Feb 16 03:00:07 or later... I think there was a window of opportunity to build a platform and ecosystem, from 2008 to 2010 or so - Google and Apple caught it, Microsoft and Blackberry got their toes in the... window, but couldn't stop it closing on them Feb 16 03:03:13 how much RAM can I count on that an app has access to? Feb 16 03:03:19 google should buy QNX from bb and solve the real time problem Feb 16 03:05:03 the biggest problem is the update problem Feb 16 03:10:06 only because of a) US carriers and b) the vendor model Feb 16 03:11:09 i wonder how many devices are still susceptible to quadrooter Feb 16 03:45:37 shmoooz this version of GMS doesn't support gingerbread any more :O Feb 16 03:56:55 Is experience with a prototyping tool requested in Android development jobs? There are lots of them an I find them not particularly interesting. But maybe it's because I didn't spend much time with them Feb 16 04:48:31 wonder if there is a way to get the mesh library from ibm ,,, https://www.cnet.com/news/alert-app-weather-app-ibm-mesh-network-disaster/ Feb 16 05:06:55 Has anyone written a backend with App Engine? Feb 16 05:08:04 I've been seriously considering GCP for my backend infrastructure however the only languages supported in the standard environment are Java, Go, PHP, and Python. Feb 16 05:08:54 While I know Java, I usually use node.js when writing backend code, and am not sure if using Java for a backend in 2017 is a good choice Feb 16 05:09:38 oh, more candy ! https://techspecs.blog/blog/2017/2/15/proof Feb 16 05:10:02 orbyt_ for that i guess is the one place i'd use go Feb 16 05:10:38 g00s A reddit user recommended Go as well, however I have yet to try the language, so I'd be learning 2 things, a new lang and App Engine, increasing development time. Feb 16 05:11:00 orbyt_ well its like 3-4 days worth of learning, there isn't much to it Feb 16 05:11:13 What would be the reasoning for Go over Java though, considering I already know Java? Feb 16 05:11:13 its not like learning c++ or someting Feb 16 05:11:19 efficiency Feb 16 05:11:33 your costs might be lower, as a result Feb 16 05:11:41 Developer efficiency, or runtime efficiency? Feb 16 05:11:46 runtime Feb 16 05:12:01 Hmm I see. Feb 16 05:12:10 especially, if you are going to use something like AWS Lambda, whatever they call it on GCP - is it Function ? Feb 16 05:12:19 Yea Cloud Functions Feb 16 05:12:32 what does cloud functions support? on AWS its mostly node Feb 16 05:12:56 Same as app engine, Java/Go/PHP/Python iirc Feb 16 05:14:16 Actually, that may be incorrect Feb 16 05:14:43 It is Node.js Feb 16 05:19:03 orbyt_ what did the reddit guy give for reason ? Feb 16 05:20:04 g00s Easy to learn and read where the given reasons. Feb 16 05:20:19 Not very convincing Feb 16 05:21:13 yeah, you already know java ... Feb 16 05:21:38 App Engine does have Node.js support but its in whats called the "flexible" environment and is not fully supported Feb 16 05:21:59 Its essentially managed VMs rather then full App Engine support Feb 16 05:22:19 hence my hesitation Feb 16 05:22:54 tricky decisions, there are a few books on GCP coming out written by googlers. Feb 16 05:23:39 I must say, Google has seriously stepped up their documentation from the last time I tried GCP. The interactive tutorials are really great. Feb 16 05:24:27 g00s Whats tempting for me is to just write a quick meteor/node.js app and throw it up on heroku. Feb 16 05:25:05 However, the praise GCP has been getting along with its track record makes it that much more intriguing. Feb 16 05:25:37 yeah, choosing between AWS and GCP is tough question Feb 16 05:26:07 dunno about heroku Feb 16 05:26:42 in some cases it could be cheaper to have AWS lambda / node than having a EC instance running Feb 16 05:27:05 i think they charge based on event Feb 16 05:28:42 So, what would be an advantage of writing a GAE application in Go over, say, Python? Feb 16 05:30:08 go is better at concurrency Feb 16 05:30:30 Could anybody have a look at a toolbar design- Feb 16 05:30:33 i'd say again, efficiency - strongly typed language (go) Feb 16 05:30:39 ? Feb 16 05:30:54 orbyt_ unless you are using some cool python shit like scikit or something Feb 16 05:31:21 g00s I'm not familiar with either language so I'd be starting from scratch with both. Feb 16 05:31:41 Go seems to handle concurrency much like node.js does, which is a plus Feb 16 05:31:59 well they have CSP / channels ... python still has that crappy GIL Feb 16 05:32:29 if they fixed that in python 3, nobody would be using 2.x anymore lol Feb 16 05:32:41 The stripes represent 3 states of the tool bar Feb 16 05:32:49 http://oi64.tinypic.com/25u30g6.jpg Feb 16 05:33:02 The undo and redo button all always present Feb 16 05:33:28 Alright well thanks g00s, I'll have to give Go a more serious look. Perhaps ill spend some time and just do the GAE tutorials in each language. Feb 16 05:33:33 the third button is used to changed the remaining part of the toolbar Feb 16 05:33:34 orbyt_ where go shines is a small blob of networking code / microservice thing Feb 16 05:33:45 I see Feb 16 05:34:03 google was using it to replace there python 2.x code in places Feb 16 05:34:10 I don't like the third button. It's not clear that it must be used to change the toolbar Feb 16 05:34:20 Any opition? Feb 16 05:34:31 orbyt_ python has some great ML libraries, but man i hate reading dynamically typed languages Feb 16 05:34:54 Melatonina i see 3 toolbars, what is the Q ? Feb 16 05:35:35 stripes represent 3 states ... confused Feb 16 05:36:21 g00s I see python used for ML all the time, among many other use cases, which would make learning it a tad more beneficial I suppose. Feb 16 05:36:50 g00s: it's the same toolbar in 3 configurations (states). The configuration is controlled by the 3rd button Feb 16 05:37:24 first configuration: character formatting Feb 16 05:37:48 second configuration: paragraph formattomg Feb 16 05:38:03 Melatonina that is ... kinda strange Feb 16 05:38:23 also, on a phone, you can't have so many buttons Feb 16 05:38:37 for the smaller screens anyhow. count on 3 Feb 16 05:38:40 third configuration: object intertion (images, movies clip, links) Feb 16 05:39:01 g00s: the right part scroll orizontalli Feb 16 05:39:05 y Feb 16 05:39:10 hmm Feb 16 05:39:43 you can see a scroll bar in the second configuration which has the most number of icons Feb 16 05:41:01 what I don't like it the third button, the one that make you swtich from a tool set to another Feb 16 05:41:39 yeah don't like that either Feb 16 05:41:43 it's supposed to be swiped up and down. But I don't think it's evident form its look Feb 16 05:42:01 I'd like to find something else for that Feb 16 05:42:21 I'm quote heppy with the rest Feb 16 05:43:26 i guess, if i had to ... i'd use an extended height toolbar, where the bottom part had 3 pages you could swipe maybe Feb 16 05:43:43 another option is having a floating toolbar at the bottom Feb 16 05:43:49 another option is a popupwindow Feb 16 05:43:55 like google play books / kindle Feb 16 05:44:40 I'll google for that staff tomorrom morning. I need to sleep. Thanks for the suggestions, g00s! Feb 16 05:44:55 np Feb 16 07:04:55 I have an and a in my xml code. But for some reason, the ScrollView goes ontop of the ImageView. How do I make it so the ScrollView goes under the ImageView? Feb 16 07:07:20 RelativeLayout? Feb 16 07:50:48 Kwest, what do you mean? Feb 16 07:51:09 Kwest, yes they're inside a RelativeLayout, sorry. Feb 16 07:51:30 What's the best way to make them go ontop of eachother? Feb 16 07:52:14 Errr, not on top as that's what it's doing now, but...like vertically ontop. Feb 16 07:55:24 Ah okay, put it all inside a LinearLayout and set orientation to vertical, all good. Feb 16 08:28:27 Fizzarina RelativeLayouts act like FrameLayouts in that they order things on the z axis. Feb 16 08:30:12 orbyt_, what's the main difference though Feb 16 08:30:22 Between what? Feb 16 08:32:44 RelativeLayout and FrameLayout Feb 16 08:32:51 like the main notable difference Feb 16 08:40:57 FrameLayout is simple(st) ViewGroup Feb 16 08:41:33 in FrameLayout you can position the Views 'globally' using gravity Feb 16 08:41:50 in RelativeLayout the Views can be positioned in relative to each other Feb 16 08:45:26 ah so like... Feb 16 08:45:34 FrameLayout is kind of like absolute positioning in css Feb 16 08:45:47 err maybe I shouldnt think of it that way.. Feb 16 09:09:29 is it possible to bind a view/object to a network call? views/objects are from a recyclerview Feb 16 09:10:03 when clicked on an item - another network call happens, and i wanna update that view based on the callback Feb 16 09:35:21 raoul11, what do you mean bind? Just do whatever you want when the callback comes back. Feb 16 09:35:40 Or do you mean, retain the ID of the item you clicked on? Feb 16 09:36:08 if the callback isSuccess, update the object on other activities Feb 16 09:37:05 you should have some common place where you store the data and use it from there in the activities Feb 16 09:37:11 (probably) Feb 16 09:37:44 thinking bout object custom listener Feb 16 09:38:03 or an observer, but am not too familiar with those patterns Feb 16 09:38:56 so when i update the object from Activity B, once i return to Activity A that same object changes its view state Feb 16 09:40:37 since that view is hold in a RecyclerView, the image resource (state change) happens there Feb 16 10:24:48 raoul11: hi hi Feb 16 10:25:01 12:24 Feb 16 10:25:07 NICE TIME TO SHOW UP AT WORK Feb 16 10:25:11 21:25 Feb 16 10:25:15 at the delivery room with the MRs. Feb 16 10:25:18 so it's ok Feb 16 10:25:25 in lolstralia mabe Feb 16 10:25:40 hehehe Feb 16 10:25:57 when is your wife going in? Feb 16 10:25:57 so meen Feb 16 10:25:58 :)))) Feb 16 10:26:08 man, it smells like chips around here Feb 16 10:26:11 yamms chips Feb 16 10:26:21 thepoosh: two months more or less Feb 16 10:26:29 thepoosh: why you are late tell us Feb 16 10:26:31 sounds good, yamm chips are awesome Feb 16 10:26:32 am afraid thepoosh Feb 16 10:26:43 squ: my wife is in the middle of having a baby Feb 16 10:26:46 and I am IRCing Feb 16 10:26:56 is that not enough dedications for you?! Feb 16 10:27:09 hm Feb 16 10:27:57 thought so Feb 16 10:28:05 oh wait Feb 16 10:28:11 at the delivery room with the MRs Feb 16 10:28:25 i thought that was some fancy way of saying "boss is bitchin" Feb 16 10:28:32 but mayb it is anyways Feb 16 10:28:36 goodluck thepoosh !!! Feb 16 10:28:53 thanks bud Feb 16 10:28:59 raoul11: HAHAHA Feb 16 10:29:15 nope, actualy with the hospitl wifi Feb 16 10:29:27 jlm? Feb 16 10:29:32 yeah Feb 16 10:29:34 mount scopes Feb 16 10:29:50 lol thats its english name? Feb 16 10:30:13 הר הצופים Feb 16 10:30:19 yeah i know Feb 16 10:30:26 never been there Feb 16 10:30:50 how long has it been thepoosh ? Feb 16 10:31:32 we scheduled a last attempt of not having a cesarean this morning Feb 16 10:31:38 so we got here at 08:00 Feb 16 10:34:54 tell them they are going to have wonderful irc conversation with us Feb 16 10:35:13 indeed Feb 16 10:35:14 raoul11: https://developers.google.com/android/guides/releases#february_2017_-_v102 Feb 16 10:35:21 since i need yer help thepoosh Feb 16 10:35:26 Just how the hell are ya squ Feb 16 10:35:27 ltns. Feb 16 10:35:58 raoul11: what can i do you for? Feb 16 10:38:59 Activity A - a RV, where each item correspond to an object properties. onClick open Activity B with that same object, but you can edit some of them. when i return to Activity A, i want the RV to update the necessary fields on that item based on its new properties Feb 16 10:40:30 either SQLite or some Bundle will do it Feb 16 10:40:38 with startActivityForResult Feb 16 10:41:40 Activity A isnt destroyed, as well as its RV - i just want to update the current fields Feb 16 10:41:43 guise?? Feb 16 10:41:53 am not your guy, buddy Feb 16 10:42:07 what do you use for input validation? Feb 16 10:42:20 I have formedittext right now but I'm not pleased with the UI of it Feb 16 10:43:34 Odaym: for display or logic? Feb 16 10:43:41 display Feb 16 10:43:51 like things going red, hint messages, etc.. Feb 16 10:44:16 https://developer.android.com/reference/android/support/design/widget/TextInputLayout.html Feb 16 10:44:19 because formedittext provides you with an easy way to run regexes on the field right from the XML, you just tell it what to check against Feb 16 10:44:26 textinputlayout you have to right it in code Feb 16 10:44:26 Odaym: ^^ Feb 16 10:44:36 no you don't Feb 16 10:44:46 https://code.tutsplus.com/tutorials/creating-a-login-screen-using-textinputlayout--cms-24168 <-- ? Feb 16 10:46:56 i just wrote a layout with this Feb 16 10:46:58 was not hard Feb 16 10:47:10 hm Feb 16 10:47:17 im on the verge of going that path Feb 16 10:47:20 fine i can do that Feb 16 11:11:06 hi, in my NDK project's CMakeLists.txt, i have this line: find_library( OPENGLES3_LIBRARY GLESv2 ). and another entry in traget_link_libraries() to link opengl es 3 lib. but still get undefined reference errors for gl* functions, e.g: /path/to/app/src/main/cpp/Hello_Triangle.cpp:240: undefined reference to `glCreateShader' Feb 16 11:15:05 problem is that the command to compile doesn't contain -lGLESv3 Feb 16 11:15:56 i can add the math lib fine. the compile command contains -lm which is correct. but not when linking GLESv2 Feb 16 11:17:43 hmm.. may be i don't have libGLESv2. how do you add a lib in android studio? Feb 16 11:27:14 anyone? Feb 16 11:33:39 How can I upload an obfuscation mapping file in firebase when the app has not yet crashed? it seems like I can only do that once the first crash has arrived. Feb 16 11:36:30 no clue Feb 16 11:43:09 this is android studio. no hack with eclipse etc.. Feb 16 11:43:54 problem is that the compile command doesn't even include -lGLESv2! Feb 16 11:45:16 I've only ever used the .mk style ndk builds, don't know about cmakes Feb 16 11:46:21 Zharf: okay so in .mk terms, i am trying to do this: LOCAL_LDLIBS := -lGLESv2 Feb 16 11:47:21 all the headers exist. but cmake is just not linking the lib Feb 16 11:47:26 very strange Feb 16 11:49:52 bytefire, are you actually using the right library_ Feb 16 11:49:55 bytefire, are you actually using the right library? Feb 16 11:50:06 don't fix typos like that -.- Feb 16 11:50:10 Did you print out the CMakeCache.txt to see what's getting resolved as your variables? Feb 16 11:50:18 Zharf, wasn't intentional. Feb 16 11:50:59 Mavrik: good idea! i'll check CMakeCache.txt Feb 16 11:51:07 do you know where it would reside? Feb 16 11:51:23 Wherever the build directory is. Feb 16 11:51:29 cool Feb 16 11:51:42 Don't know out of hand what the default is for Android, but just do a find through build Feb 16 11:57:04 is cmake the new standard thing to do with android ndk projects? Feb 16 11:58:46 In default Gradle plugin you can choose between ndk-build or cmake. Feb 16 11:58:54 Whichever fits you better. Feb 16 11:58:58 ah Feb 16 11:59:27 I probably need to convert my project to gradle some day but it's probably going to be a major pita Feb 16 12:33:16 hmm if im using parcelable to pass one object from one activity to another, should the hashcode of the object on both ends be the same? Feb 16 12:33:25 shouldnt* Feb 16 12:33:45 Uh. Feb 16 12:33:55 Did you implement hashcode in your object? Feb 16 12:34:14 yes Feb 16 12:34:22 printing diff hashs on both ends Feb 16 12:34:35 Then you implemented it wrong or you're losing data when parceling. Feb 16 12:34:53 There's no automagic there, the data you send via bundle is fully in your control. Feb 16 12:35:55 it should be the exact same object? Feb 16 12:36:12 No. Feb 16 12:36:13 I mean. Feb 16 12:36:17 LOOK at your code. Feb 16 12:36:24 or more precisely, refrencing the exact same object Feb 16 12:36:26 You're calling "new YourObject()" then unparceling :P Feb 16 12:36:37 no i do not Feb 16 12:36:39 You're fully controlling what's referenced and how Feb 16 12:37:20 pojo = (pojo) intent.getParcelableExtra("pojo"); Feb 16 12:37:30 thats how i am receiving it on the other end Feb 16 12:38:27 Yes, and your POJO implements parcelable Feb 16 12:38:34 indeed Feb 16 12:38:37 Where the parcelization process is done. Feb 16 12:38:49 Which includes recreating the object from base types. Feb 16 12:39:05 And recursively so for everything you call in your parcelization method Feb 16 12:39:10 so its a copy or the origin object? Feb 16 12:39:16 of Feb 16 12:39:19 It's neither. Feb 16 12:39:22 ffs, my typing today Feb 16 12:39:44 raoul11, look at your CREATOR method Feb 16 12:39:50 What do you do there? :P Feb 16 12:40:13 new Parcelable.Creator() Feb 16 12:40:25 oh Feb 16 12:40:43 u mean this: createFromParcel Feb 16 12:40:50 yes Feb 16 12:40:56 That's where the object is recreated. Feb 16 12:41:01 You're probably calling new Something() there Feb 16 12:41:01 return new Pojo(in) Feb 16 12:41:08 aye Feb 16 12:41:11 Yes, and you have a constructor that takes Bundle as parameter Feb 16 12:41:15 yep Feb 16 12:41:17 And there you set the fields back from the Bundle data :) Feb 16 12:41:26 yes Feb 16 12:41:29 So basically, parcelization creates a new object with fields set from the bundle. Feb 16 12:41:46 so parcelable isnt the answer if i want the exact same object Feb 16 12:41:56 Nope, if you want the same instance, then no- Feb 16 12:42:11 would u advise to use Application class for that sort of voodoo? Feb 16 12:42:28 Hmm... I'd advise trying not to rely on having same object instances. Feb 16 12:42:28 goddamn SO, mumbling bout it being the exact same object Feb 16 12:42:50 But if you must... I guess static fields are the solution... but those will be hell to maintain over time. Feb 16 12:43:07 thats why i thought parcelable is the answer Feb 16 12:43:20 serialization? Feb 16 12:43:47 Serialization does the same. Feb 16 12:43:54 Just slower and with more reflection. Feb 16 12:44:10 this seriously stinks /: Feb 16 12:44:31 (Hence why parcelization was introduced in Android, serialization essentially does the same thing, but it uses reflection to get field values and that's very slow on Android.) Feb 16 12:46:04 so two activities cant axx the same object and manipulate it Feb 16 12:46:11 without storing it staticaly Feb 16 12:47:14 raoul11, they can, but it's usually done a bit differently Feb 16 12:47:32 E.g. `MyPOJODataStore` that's injected as a singleton for both activities Feb 16 12:47:39 and then you retrieve the instance as an ID or something Feb 16 12:49:38 no bueno Feb 16 13:14:00 Mavrik: so i checked CMakeCache.txt and that is fine. but the build fails at link stage Feb 16 13:19:09 new favorite git message: "Revert 'removed unnecessary layout container' (turns out it was necessary after all)" Feb 16 13:20:03 lol Feb 16 13:22:16 why are simple things just not simple in android studio? Feb 16 13:22:46 i have spent 4 hours trying to fix a stupid error Feb 16 13:22:49 ffs Feb 16 13:24:00 The studio is basically a worse, buggier version of IIJ Feb 16 13:24:16 Tho all things considered, it's pretty ok Feb 16 13:25:14 Mavrik, think Application class with a static refrence works Feb 16 13:27:05 Isn't extending application "no longer recommended," instead you're meant to use a singleton class instead? Feb 16 13:29:09 Wintereise: it's laughable how simple the problem is and how intractable it has become.. Feb 16 13:29:29 ya... Feb 16 13:30:00 there's an shared object lib GLESv2 (open gl es 3) Feb 16 13:30:17 i get errors when using function calls from that Feb 16 13:30:53 i have added it in CMakeLists.txt and i can see it in CMakeCache.txt Feb 16 13:31:01 the headers are there Feb 16 13:31:23 but the thing always errors at link stage Feb 16 13:33:13 ceo of lehman bros had a teddy bear in his office, which he would punch when frustrated. i laughed when i heard that. android studio has made me realise he might have a point afterall Feb 16 13:36:54 bytefire, btw, are you compiling with right API level for NDK_ Feb 16 13:36:57 ? Feb 16 13:37:07 Might be you're using older API level which doesn't have GLEs3 yet? Feb 16 13:37:48 Mavrik: minSdkVersion 15 and targetSdkVersion 25 Feb 16 13:37:57 That has nothing to do with NDK compilation. Feb 16 13:38:02 And doesn't propagate to it. Feb 16 13:38:04 riight Feb 16 13:38:26 so how do you check ndk version.. Feb 16 13:38:36 look at android.toolchain.cmake Feb 16 13:39:43 Mavrik: checking it. thanks Feb 16 13:39:55 -DANDROID_PLATFORM=android-18 Feb 16 13:40:00 https://developer.android.com/ndk/guides/stable_apis.html Feb 16 13:42:29 Mavrik: no luck Feb 16 13:42:43 Well don't rely on luck, check what's going wrong :P Feb 16 13:42:51 Go to cmake folder, run make manually with VERBOSE=1 Feb 16 13:42:54 :) Feb 16 13:42:57 and see what's missing in the compile commands :) Feb 16 13:43:11 Mavrik: btw there is a sample project hello-gl2 which compiles fine Feb 16 13:43:19 that uses GLESv2 alsso Feb 16 13:43:30 Didn't you say you use GLESv3? Feb 16 13:43:50 Mavrik: apparently lib GLESv2 = opengl es 3 Feb 16 13:44:13 Not according to the link I just posted? Feb 16 13:44:20 (I didn't use GLESv3 so I dunno) Feb 16 13:46:10 Mavrik: so even with GLESv2 it still fails in exactly same way Feb 16 13:46:43 Mavrik: but it's not just GLES, it's EGL too that's failing Feb 16 13:46:52 it's just not linking Feb 16 13:48:20 i can start from scratch. another project Feb 16 13:48:25 Why? Feb 16 13:48:27 let's see what that brings Feb 16 13:48:41 Did you run the make manally yet and looked at compile commands and output? Feb 16 13:48:45 may be i have upset one of the settings Feb 16 13:48:56 Mavrik: okay i'll do that Feb 16 13:49:49 Mavrik: it's using ninja so im running that command Feb 16 13:50:03 just add -v to it so you'll actually see verbose output. Feb 16 13:59:01 Mavrik: okay, by manually editing build.ninja i can get rid of those errors Feb 16 13:59:16 That's... not what you're supposed to do. Feb 16 13:59:17 but why isn't CMake updating it? Feb 16 13:59:19 What is the actual issue? Feb 16 13:59:51 Mavrik: only God knows Feb 16 13:59:56 uhh Feb 16 14:00:00 What? Feb 16 14:00:05 You said you edited build.ninja. Feb 16 14:00:11 What did you have to add / remove? Feb 16 14:00:15 after 5 hours i am losing patience with this shit Feb 16 14:00:35 Well then give me the info so I can help you :P Feb 16 14:00:36 Mavrik: i added -lGLESv2 Feb 16 14:00:50 Mavrik: sure. and thanks for your help :) Feb 16 14:00:53 I see, can you pastebin your CMakeLists.txt ? :) Feb 16 14:01:01 sure Feb 16 14:01:06 you are goddamn helpful Mavrik ++ Feb 16 14:02:07 Mavrik: http://pastebin.com/GG7HmFdt Feb 16 14:02:51 Mavrik: Hello_Triangle.cpp uses opengl es functions. it also uses EGL functions Feb 16 14:03:01 Hmm, yeah. Feb 16 14:03:06 so those are libGLESv2 and libEGL Feb 16 14:03:11 both exist Feb 16 14:03:16 TBH, I'd just throw away the `find_library` since Android doesn't really move those Feb 16 14:03:19 and just do Feb 16 14:03:31 ok Feb 16 14:03:51 target_link_libraries(Hello_Triangle PUBLIC GLESv2 EGL m android) Feb 16 14:04:04 cool Feb 16 14:04:07 (and separate target_link_libraries call for other libs you use) Feb 16 14:05:42 Mavrik: that worked! Feb 16 14:05:48 what was that about? Feb 16 14:06:06 find_library doesn't really work well on Android NDK toolchain Feb 16 14:06:13 it probably didn't find the lib correctly Feb 16 14:06:24 however, the Android NDK libs are in search path anyway, so no need to use find_library Feb 16 14:06:32 unless you also want to use that CMake file to compile for desktop OSes Feb 16 14:06:38 niice Feb 16 14:06:54 no i don't so that should work fine Feb 16 14:07:49 Mavrik: funnily i tried something similar before - instead of separate target_link_libraries(), i used the same target_link_libraries() but removed find_library stuff Feb 16 14:07:56 and that didn't work Feb 16 14:08:11 but separate target_link_libraries did the job Feb 16 14:09:29 time for a break. Feb 16 14:09:40 Mavrik: thanks very much! Feb 16 14:10:22 dudes, im working with fragments on android project, and my fragment manager have 3 tabs. someone know why when app starts in first fragment, always the second fragment has called in backend too? if i pick second fragment then the third is called? Feb 16 14:11:36 viewpager? Feb 16 14:12:03 viewpager caches the views on the sides Feb 16 14:12:49 only right sides? Feb 16 14:13:23 or if i stand in middle tab the viewpager cache the left and right fragment? Feb 16 14:15:04 https://developer.android.com/reference/android/support/v4/view/ViewPager.html#setOffscreenPageLimit(int) Feb 16 14:15:48 Hi all, If you use Dagger and have 2 components, each component has 1 module and both modules inject something from the other module, is that possible? Feb 16 14:17:13 FrancescoV, http://stackoverflow.com/questions/29587130/dagger-2-subcomponents-vs-component-dependencies ? Feb 16 14:17:22 not sure if that answers your question :p Feb 16 14:19:05 Zharf, I'll check it out, thanks ;) Feb 16 14:20:03 Zharf: nice man, thank you Feb 16 15:13:13 Hi! Feb 16 15:14:04 I'm getting the following error: Unable to start activity ComponentInfo Feb 16 15:14:07 What causes it? Feb 16 15:15:28 pastebin full traceback... Feb 16 15:18:57 Are dialogs the only way to have "popup menus" with a customized layout? Feb 16 15:19:33 I currently have a popup menu with textual items Feb 16 15:19:56 I'd like to have popup menus with icons, color pickers and font selectors Feb 16 15:24:51 what's a popup menu by your definition? Feb 16 15:25:03 There's also context menus, floating menus and bottom sheets Feb 16 15:25:26 Leeds: https://gist.github.com/Iarfen/cb2c4632cfa8da280aab2146bdef9251 Feb 16 15:27:58 Iarfen: it's a good idea to tell people you're using cordova... Feb 16 15:28:20 Leeds: ok, I have forgetted Feb 16 15:28:35 the problem with ComponentInfo is the central part here, it's not related to Cordova I think Feb 16 15:29:55 looks to me like you're trying to call a method on a null object Feb 16 15:31:00 Leeds: yes, but I don't understand why happens that Feb 16 15:31:42 no, neither do I Feb 16 15:32:38 Mavrik: popup menus are PopupMenu Feb 16 15:33:30 Mavrik: they appear as attached to another views, being opened when that view is clicked Feb 16 15:36:56 Mavrik: bottom sheets are out of the question, I guess, because it's about a rich text editor and when this menu should appear the screen is already cluttered with the document and possibly the soft keyboard Feb 16 15:40:09 Mavrik: blob:http://imgur.com/6446a1a2-bf3c-400d-905d-dd56f003a620 Feb 16 16:21:42 Lovely. Custom toast layouts lose their margins and padding completely if triggered as soon as the app launches Feb 16 16:48:00 The entirety of the snackbar/toast UI toolkit isn't the most polished thing in the world Feb 16 16:48:09 Random stupid problems Feb 16 17:01:28 Hola people, what is a better practice to pass data from Activity to Custom Adapter or to fetch the data from network in the Adapter? Feb 16 17:13:36 Does anyone know if it's possible to use a Nexus/Artifactory repo to resolve java artifacts in lieu of having to install extra-google-m2repository and extra-android-m2repository via the SDK manager? Feb 16 17:13:38 I'm running into a menu error Feb 16 17:13:47 > This isn't completely shocking when Trump still insists on using his old Galaxy S III despite concerns about the handset's vulnerabilities Feb 16 17:13:50 wut Feb 16 17:13:53 My menus are showing up in the wrong activities Feb 16 17:15:25 nm a clean and rebuild worked Feb 16 17:18:28 Hi I'm new to android development. Was just following along with the main developer training series. When I created an EditText with android:layout_width="wrap_content" the send button kept shrinking. Now if I set layout_width to 0dp and add a layout_weight the send button does not shrink see https://developer.android.com/training/basics/firstapp/building-ui.html why is that ? Feb 16 17:23:46 no idea to what you are referring Feb 16 17:24:22 wrap_content is a fixed size that is able to accomodate the content, weight stretches a view to fill the remaining space (split across all other weighted views) in a linear layout Feb 16 17:24:50 so wrap_content will never shrink or grow, it will be a single size that fits the content Feb 16 17:24:54 weight grows to fill remaining space Feb 16 17:25:22 (of course, if content changes, it can cause the physical size determined by wrap_content to change; if a relayout occurs) Feb 16 17:26:04 * pfn ponders, bolt or model3 Feb 16 17:26:20 pfn: But when I type in the text box with wrap_content as I type the textbox expands to fill full length while the "send" button keeps shrinking once text goes to the next line the "send" button is so small as to be invisible Feb 16 17:26:55 whereas with weight it fills space vertically while horizontally not shrinking the send button Feb 16 17:27:06 as you type text Feb 16 17:27:08 no idea what you're describing Feb 16 17:27:16 let me make screen shots Feb 16 17:27:24 set a fixed size on the button, and give the text view a weight Feb 16 17:27:29 if you don't want the button to shrink Feb 16 17:28:10 pfn: One sec let me pake an image paste will explain what I am unclear about Feb 16 17:35:55 pfn: http://paste.opensuse.org/view/raw/510f9125 and http://paste.opensuse.org/view/raw/e51c0066 is "2.jpg" Feb 16 17:36:30 what are you unclear about Feb 16 17:37:12 in 1.jpg I am using wrap content for the edit text and nothing for the "send" button in 2.jpg I am using "layout_weight:1" for the text box and again nothing for the send button. Why in 2.jpg the send button does not shrink and instead the textbox flows downwards to occupy remaining space Feb 16 17:37:14 wrap_content means lay the widget out and give it enough space to accomodate its content Feb 16 17:37:37 and the layout is performed left-to-right Feb 16 17:37:43 so the edit text takes up all the space Feb 16 17:37:55 when you use weight, fixed-size widgets are laid out first Feb 16 17:38:25 but in this case neither are fixed size the send or the text box so it takes its default starting size ? Feb 16 17:38:38 taking 2.jpg Feb 16 17:39:33 what? Feb 16 17:39:33 they are all fixed size Feb 16 17:39:38 until you say "weight" Feb 16 17:39:58 weight = not fixed size Feb 16 17:40:30 ok Feb 16 17:40:53 what are the units if I want to tell the text box to occupy this much width ? Feb 16 17:41:06 wrap_content I understood to take as much widgth as it can Feb 16 17:41:16 *to mean Feb 16 17:41:18 and needs Feb 16 17:41:25 no, to accomodate contents Feb 16 17:41:53 so that is why when more text is typed it expands to full width and then overflows to the next line Feb 16 17:42:28 yes, it requests a layout pass when it runs out of space Feb 16 17:42:30 I did a test if I keep layout_width:"wrap_content" and set weight to one in 2.jpg then it again behaves like 1.jpg Feb 16 17:42:39 so that 0dp is what is making the difference Feb 16 17:42:52 yes, because width is the starting size Feb 16 17:43:03 weight scales up from starting size Feb 16 17:43:06 it can't go. down Feb 16 17:43:27 what do you mean by starting size ? Feb 16 17:43:37 each control has a predefined starting size ? Feb 16 17:44:30 hmm I think the text box is as wide as its hint string while starting out Feb 16 17:44:42 I think I am not clear with the concept of weight vs size too Feb 16 17:46:12 wrap_content is the starting size Feb 16 17:46:29 weight adds remaining space to starting size Feb 16 17:46:35 0 remaining space = 0 added space Feb 16 17:47:17 everytime you typed into that edit box and it ran to the end of its box, it requested a layout pass, and the value determined by 'wrap_content' was increased Feb 16 17:47:58 a layout pass is like a re render of the view Feb 16 17:48:19 kind of Feb 16 17:48:29 but a renrender would happen typing each letter Feb 16 17:48:42 but a layout pass happens only when the space was filled up Feb 16 17:49:00 it's independent Feb 16 17:50:16 Does anyone know of any whiteframes for Fireworks for recent versions of Android? All the ones on the android website (under design section) are for illustrator. Feb 16 17:51:42 ok ao when more text was filled. the "wrap_content" increased of the EditText and the "wrap_content" of the "Send" button reduced to accomodate the increased size determined by the EditText "wrap_content" property. Feb 16 17:52:36 so if the send button was a fixed size and the EditText was "wrap_content" it would have to flow below. Feb 16 17:53:34 what method is the preferred way to do some specific task (small ping) every few seconds? A thread that just sleeps is the basic way.. but wondered if there was any android specific way/wrappers? Feb 16 17:54:17 alternatively... can an application read system logcat output? Feb 16 17:55:33 an app can read its own logcat Feb 16 17:55:38 unless have root Feb 16 17:56:17 aiena1, no, the wrap_content is already increasing in size as the layout is adjusted due to new text Feb 16 17:56:31 just wondering if it would be extra faff to trigger an event on a specifc logcat message, vs polling every 2-3seconds Feb 16 17:56:51 the ping depends on how your app works Feb 16 17:57:06 alarm manager, job scheduler, handler, service, thread, etc. Feb 16 17:57:16 pfn, I am checking to see the service is still running... android is killing it, so I just want to restart it :) Feb 16 17:57:27 ugh Feb 16 17:57:29 no Feb 16 17:57:33 poor man's watchdog Feb 16 17:57:46 if the service got killed, so will this thing you're running Feb 16 17:57:47 isn't due to the things we discussed the other day Feb 16 17:57:54 nope Feb 16 17:58:02 main activity is fine Feb 16 17:58:16 services do not get stopped if the main activityis still running Feb 16 17:58:21 which is why this is an annoying bug to detect Feb 16 17:58:21 period Feb 16 17:58:32 your app is stopping its service Feb 16 17:58:47 if the activity is still running Feb 16 17:58:50 then bind to the service Feb 16 17:59:00 and the service will never exit as long as your activity is running Feb 16 18:00:39 if it is bound, does it get paused on screen off tho? Feb 16 18:01:52 also the service onDestroy is not called, due to android memory manager killing it Feb 16 18:04:54 pfn: hmm so when the text content getslonger than the starting size the wrpa_content makes its longer thereby creating a new starting size. So each time it is a new starting size when the text box is redrawn to accomodate the extra input. Now the send butoon shrinks gradually first loosing its side padding. So there the wrap_content is reducing creating a new smaller starting size. Feb 16 18:04:59 Is that correct ? Feb 16 18:05:08 the wrap_content doesn't make it longer Feb 16 18:05:11 it requests a layout pass Feb 16 18:05:24 and the measurement of wrap_content is bigger than it was before Feb 16 18:05:39 it's not *shrinking* Feb 16 18:05:42 it's getting laid out again Feb 16 18:05:49 and the parameters change because your content has changed Feb 16 18:06:40 so the layout pass is what changes the size of the two controls Feb 16 18:07:14 why does the layout pass not move the send button below Feb 16 18:07:41 because linearlayout isn't a flow layout Feb 16 18:07:45 it does not wrap Feb 16 18:08:00 it only operates in a single axis, vertical or horizontal Feb 16 18:08:50 ok that makes sense. Feb 16 18:09:04 I was just reading about the "layout pass" term Feb 16 18:09:20 so first the view does a "measure" pass and then a "layout pass" Feb 16 18:09:54 then it looks at its children the two controls Feb 16 18:09:58 Does anyone know of any whiteframes for Fireworks for recent versions of Android? All the ones on the android website (under design section) are for illustrator. Feb 16 18:10:03 and ask them to do a measure pass and layout pass ? Feb 16 18:11:32 something like that Feb 16 18:12:46 pfn: hmm actually got it a bit wrong I think. Was reading https://developer.android.com/guide/topics/ui/how-android-draws.html Feb 16 18:15:51 but thanks reading that and you mentioning a lyout pass makes things a bit more clear Feb 16 18:20:45 pfn: what is this "R" object ? Feb 16 18:20:54 it seems to hold properties of the layout Feb 16 18:21:15 but cant find out how it is created or defined Feb 16 18:21:38 it’s automatically generated at build time Feb 16 18:25:37 neat https://github.com/Tapadoo/Alerter Feb 16 18:28:47 s73v3r: Ok so the R object is dynamic and generated from all the other data like layout XML Feb 16 18:28:55 ytes Feb 16 18:29:03 Ok Feb 16 18:29:30 So android is making the java class and object itself. Cool Feb 16 18:32:53 the build is Feb 16 18:37:16 pfn: client keeps getting disconnected Feb 16 18:37:26 one sec let me set the channel to auto join Feb 16 18:37:56 I'm confused... in Google Analytics, if I want to find out how much time the user spends on a single activity, do I need to measure it manually and send it as events or does GA do it for me? Feb 16 18:38:19 i think manually Feb 16 18:38:32 that’s not normally a metric one measures with apps Feb 16 18:41:54 hm, well on second I think I get why it's not... I just really want to know the rate of users who will abandon the app before going to 2nd activity and out of the ones who do go, how long they stay there. But I guess I could as well just send an event on 1st and 2nd activity creation and get whole session duration too. But I'm confused about the se Feb 16 18:41:54 ssions being packed in 30mins chunks. I'm very very confused about everything actually. I read through all online docs and it's rather vague to me Feb 16 18:42:04 thanks s73v3r Feb 16 18:43:42 that’s how you’d normally do it: You measure the number of people who go to the first activity, and the number who go to the second Feb 16 18:44:06 what about session duration? Feb 16 18:44:45 read can I read more about this? Feb 16 18:45:45 after you send a sessionstart, then what? The session stops after the app is killed? the pause times are included? Feb 16 18:46:32 read=where Feb 16 18:46:52 the session usually lasts until the user stops using the app Feb 16 18:47:07 by that, I mean they navigate away from it Feb 16 18:47:29 oh, that's good Feb 16 18:48:54 so I only need to add this code? https://developers.google.com/analytics/devguides/collection/android/v4/sessions Feb 16 18:50:44 pretty much Feb 16 18:50:54 although that’s per event Feb 16 18:52:12 per event? aw I'll never get this lol Feb 16 18:52:19 I'll try Feb 16 18:52:22 thank you s73v3r Feb 16 18:52:23 you’re really overthinking this Feb 16 18:52:35 I guess I am Feb 16 19:50:31 Is a "view" and a layout the same thing ? Feb 16 19:50:51 does a "view" always have to have a viewGroup parent Feb 16 19:55:07 view is just component, layout is something different Feb 16 19:55:18 well the attached view has parent Feb 16 19:55:33 so views are created from layouts Feb 16 19:55:50 but views are actually runtime objects which android generates on the fly Feb 16 19:56:58 Ashiren: a view resides within an activity but this even if its one has to have a viewGroup. So its Activity->ViewGroup->view(s) Feb 16 19:57:21 is my understanding correct ? Feb 16 19:58:04 aiena, https://developer.android.com/reference/android/widget/LinearLayout.html Feb 16 19:58:06 s/this/the view Feb 16 19:58:19 if you follow the inheritance on top, you'll see that Layouts are ViewGroups and ViewGroups are Views Feb 16 19:58:40 well the most outher, root ViewGroup doesnt have parent Feb 16 20:00:29 Ashiren: so lets say you were to create a form like structure Feb 16 20:00:50 you could have several linear layouts each with a text box organised inside a viewgroup Feb 16 20:01:01 and that viewgroup is created inside an activity Feb 16 20:01:15 O.o Feb 16 20:01:20 LinearLayout IS a ViewGroup Feb 16 20:01:25 yes Feb 16 20:01:31 Oh Feb 16 20:01:33 could be any suitable viewgroup Feb 16 20:01:45 Mavrik: so you can have only one root Layout then Feb 16 20:02:12 LinearLayout can have many LinearLayouts inside Feb 16 20:02:27 aiena, you can have one root View, whatever it is Feb 16 20:02:39 it'll probably be a Layout because you'll want to use several of them to structure the UI Feb 16 20:03:00 but most of your UI will be done by putting layouts inside other layouts with specialized views on the bottom Feb 16 20:03:07 Ok so the outer linear layout is the root and then you can have an indefinite amount of lesting of different types of layouts with their child views inside it Feb 16 20:03:20 eeyup Feb 16 20:03:33 aiena, yep Feb 16 20:03:44 Ashiren: since a linear layout can only be horizontal or vertical Feb 16 20:03:49 when and why would you use it ? Feb 16 20:04:05 maybe later when I do the UI course that will become clear Feb 16 20:04:11 There's a tool that can show you a structure of apps: http://www.vogella.com/tutorials/AndroidTools/img/xhierarchyviewer20.png.pagespeed.ic.Zw22GyBuMK.png Feb 16 20:04:26 thanks anyway still really starting out and trying to get a feel of things Feb 16 20:05:09 It's easier to understand once you follow a tutorial I guess. Feb 16 20:05:30 Mavrik: yes I was following the google developer training thing. Feb 16 20:05:43 Wehnt through a bit of it. Then decided I'll take a break and just dogest the code Feb 16 20:05:51 before getting too far. Feb 16 20:05:58 Finished the "myfirstapp" section Feb 16 20:06:00 i.e. the outer LinearLayout could be vertical which contains 3 horizontal LinearLayout, each containing 3 buttons. this way you have some kind of 'grid' of 9 buttons Feb 16 20:06:13 of course other layouts would be better for that Feb 16 20:07:22 Oh so if you wanted 4 buttons in a row you could make a horizontal linearLayout with 4 butons inside it Feb 16 20:07:37 the 4 buttons would resize on the layout pass to take the space available Feb 16 20:07:52 what are the controls called ? Feb 16 20:08:06 If a view group consists of views Feb 16 20:08:19 An example of a viewGroup is a Layout Feb 16 20:08:25 what is the example of a view ? Feb 16 20:08:42 Button, ImageView, TextView Feb 16 20:08:55 So EditText is a view too Feb 16 20:08:59 but ViewGroup also inherits from View Feb 16 20:09:00 yes Feb 16 20:09:20 so what I am calling controls the final visual components hich make up the UI are the views Feb 16 20:09:51 So an image panel is also a view Feb 16 20:09:56 thanks Feb 16 20:10:35 So if you take the google gallery app. Each image in the first activity is a view the viewGroup is the grid of images Feb 16 20:10:44 and the activity is the gallery screen Feb 16 20:11:05 untill you swipe and you get the camera that becomes the camera activity Feb 16 20:11:31 yes Feb 16 20:11:42 understood Feb 16 20:12:13 the gallery app would be interesting. I wonder how it works. Feb 16 20:12:31 Because when you tap an image and it becomes large it must be becoming another activity Feb 16 20:12:45 then when you swipe forward it creates another activy with the next image Feb 16 20:12:53 when each image is fullscreen Feb 16 20:13:05 not neccessarily. it could be ViewPager Feb 16 20:13:29 if you swipe right or left its mostly ViewPager Feb 16 20:13:45 Ok Feb 16 20:14:17 thank you this is enough for today for me. I'll learn more tomorrow. Feb 16 20:15:04 bye Ashiren , Mavrik, pfn thanks for all your help and guidance. Feb 16 20:15:19 and anyone I forgot to thank. Feb 16 20:15:33 now lets wait until he gets into fragments Feb 16 20:52:12 hi Feb 16 20:59:38 I have a recyclerview with adapter and in this adapter a holder. If a user clicks on a item of that holder I want to ask for a permission. My problem is, how can I connect the async onRequestPermissionsResult to my adapter or holder? Feb 16 21:08:57 come up with a way Feb 16 21:09:41 Ben_1: You'd need to pass the holder to your activity first, that way your activity knows which holder requested the permission Feb 16 21:10:07 (Permiso is a library that does this for you. You could use it, or just take a look at how it works) Feb 16 21:12:17 hi Feb 16 21:13:08 I've made some changes to my appwidgetprovider class and I've tried to build Feb 16 21:13:26 but I get some strange errors: Feb 16 21:13:27 bolt ev sales must be way down, the dealer keeps calling me to ask if I'm interested in one now Feb 16 21:13:51 when I spoke to them in december/january, they said wouldn't be able to walk on-lot to buy one until at least march/april Feb 16 21:14:40 error: strings in switch are not supported in -source 1.5 Feb 16 21:14:55 cristian_c, only in -source 1.7 and newer Feb 16 21:15:22 (use -source 7 or higher to enable strings in switch) Feb 16 21:15:37 straightforward errors, what more can you want Feb 16 21:16:00 it's a strange error, I can check java version Feb 16 21:16:32 it's not strange Feb 16 21:16:37 the answer is extremely specific Feb 16 21:16:40 you're using -source 1.5 Feb 16 21:16:43 it requires -source 7 Feb 16 21:17:19 iit's the first time I get this kind of error, and I've built many times Feb 16 21:17:32 you haven't switched on string before Feb 16 21:17:39 or you updated your .gradle to lower the java spec Feb 16 21:17:50 :O Feb 16 21:19:20 pfn, my spp has got another class that uses String vsriables, it's strange because I've always built my app with this class in past Feb 16 21:19:25 I'm investigating Feb 16 21:19:57 *String objects Feb 16 21:20:24 ah, ok, my system uses java for javac Feb 16 21:20:32 *java 8 Feb 16 21:21:29 I've always used android sdk manager Feb 16 21:22:09 I don0t know how to tell compiler to use a newer source Feb 16 21:25:48 ok so ive not been able to work on my project in a while, launched intellij idea and did all the ipdates now my project wont build because "android" is an unresolved symbol Feb 16 21:26:03 so i cant impor android.foo.bar.bam Feb 16 21:26:06 import Feb 16 21:27:10 my sdk path is set. the sdk level is set Feb 16 21:27:38 try to build through gradle on the command line Feb 16 21:27:45 im not using gradle Feb 16 21:28:01 i spent over a month trying to get my project ported over to gradle Feb 16 21:28:05 try to build on the command line, then Feb 16 21:28:12 using whatever you’re using Feb 16 21:28:15 no idea how to build on the command line Feb 16 21:28:38 whatever build system you’re using will have documentation on how to do that Feb 16 21:28:49 ty for the wild goose chase Feb 16 21:29:04 "Cannot resolve symbol 'android'" Feb 16 21:29:09 building on the command line will give you the errors that your build is running into Feb 16 21:29:32 java:package android.content.res does not exist Feb 16 21:29:42 package android.graphics does not exist Feb 16 21:29:44 etc etc etc Feb 16 21:30:28 project structure -> project/platform sdk -> android Feb 16 21:30:29 problem solved Feb 16 21:31:08 pfn i already have the sdk set Feb 16 21:33:35 Hello, is this a good channel to ask about reverse-engineering Android apps? Feb 16 21:34:07 we don’t really support the hacking of apps Feb 16 21:34:19 "hacking" Feb 16 21:34:47 mark4, doesn't sound like it Feb 16 21:34:57 make sure each module has the appropriate sdk set Feb 16 21:34:59 HANG ON PHONE Feb 16 21:35:10 oopts caps Feb 16 21:35:15 hm Feb 16 21:35:17 This is a crap question - but how do you guys name layout files which represent a single element in a recyclerview? Feb 16 21:35:24 Like, how would you name the file? Feb 16 21:35:29 “whatever_cell" Feb 16 21:35:45 I keep coming up with crap generic and long names, such as "Foo_recyclerview_item" Feb 16 21:36:13 _item is a common suffix Feb 16 21:36:29 don't need to call it "_recyclerview" though Feb 16 21:37:09 Fair point. Feb 16 21:37:24 That was more there as a reminder where it is used. Feb 16 21:38:02 there's little reason to have a reminder of where it is us Feb 16 21:38:04 used Feb 16 21:38:18 and _item is used often enough to indicate that it's used in some sort of adapter view Feb 16 21:38:28 and who knows, you might find you'll re-use that layout outside of a recyclerview Feb 16 21:38:53 yeah, in general, don’t try to couple a layout with where it’s used. Feb 16 21:38:56 Also a fair point - thanks. It's been so long since I did an Android haha. I feel like a student again. Feb 16 21:39:41 ugh, I'm overcaffeinated, but I want to drink more coffee, so enjoyable Feb 16 21:39:54 that’s why I keep some decaf around Feb 16 21:41:29 Anyone have Fuchsia up and running yet? Feb 16 21:42:47 why. Feb 16 21:45:17 no reason really just wondering how the experience is getting it up and running at the moment Feb 16 21:45:43 I was planning on trying to figure out how to this weekend Feb 16 21:46:02 I'm familiar with flashing isos and stuff but from what I see there is no iso and you have to build it Feb 16 21:46:07 so I'll have to figure that out Feb 16 21:48:43 is Awareness API available on Wear 2.0?? Feb 16 21:49:10 I'm connecting the google api client with the Awareness API but it says service not found for context manager Feb 16 21:49:22 grrrr trying to intergrate zxing qr scanner Feb 16 21:49:30 everything works fine, scanner itself finds result url Feb 16 21:49:41 zxing is annoying to integrate Feb 16 21:49:43 but i always get result null in my app Feb 16 21:50:05 getting it to run was not that hard using https://github.com/journeyapps/zxing-android-embedded Feb 16 21:50:08 niekniek breakpoints :p Feb 16 21:50:30 play services qr scanning is better Feb 16 21:50:39 onactivityresult will get me nothing Feb 16 21:50:51 pfn: does one need additional installs? Feb 16 21:50:55 no Feb 16 21:51:01 assuming you have a device with play-services Feb 16 21:51:06 ah, like that Feb 16 21:51:10 well everybody has i gues… Feb 16 21:51:15 which is basically everything except for stuff in china, and amazon Feb 16 21:51:16 almost ;) Feb 16 21:51:56 niekniek: https://codelabs.developers.google.com/codelabs/bar-codes/#0 Feb 16 21:52:15 Let's not forget the tinfoil hat people Feb 16 21:52:24 no, let's Feb 16 21:52:46 fuck the tinfoil hat people Feb 16 21:53:48 they’re not likely to use your app unless it’s completely open source anyway Feb 16 21:54:02 and I can’t imagine they’d bring in much in terms of revenue Feb 16 21:54:09 pretty much Feb 16 21:54:16 even if it's completely open source... Feb 16 21:55:35 I got this in an email from a user who wasn't pleased I said I would not integrate some stupid feature he wanted: Feb 16 21:55:38 Good luck with getting people to trust you as a developer to allow you to keylog and access all files and folders on Android. Feb 16 21:55:39 niekniek: I'm looking at mine now to see if I left any comments about quirks with that Feb 16 21:55:41 Who knows what your github open source is showing and what your compiling and putting up in the play store. Feb 16 21:55:42 pfn, I drink far too much coffee - completely agree on how nice it is :P Feb 16 21:56:19 Switch to pure caffiene Feb 16 21:56:38 I don't drink decaf - its like going down on your sister. Tastes the same, but its just wrong... Feb 16 21:56:40 I don't drink coffee for the caffeine Feb 16 21:56:49 and most decaf methods change the taste Feb 16 21:57:06 Swiss Water method doesn't I don't find. Feb 16 21:57:16 yeah, but that’s expensive Feb 16 21:59:07 Is it? Feb 16 21:59:25 I mean, when I buy beans I certainly haven't noticed a difference in price if there is one. Feb 16 21:59:30 niekniek: Hmm... Not seeing anything. It seems that IntentIntegrator.parseActivityResult(requestCode, resultCode, data); "just worked" for me Feb 16 21:59:36 Then again, I only buy decaf for the missus. Feb 16 22:00:13 Dagmar: thanks for looking, I wonder what the heck is going on now… the interwebz doesn’t have this issue but i have Feb 16 22:00:14 well, the thing with decaf, is you have this extra process to run through, which costs money Feb 16 22:00:28 this process also can lower the quality of the taste Feb 16 22:00:45 so in order for you to get a comperable cup, you have to buy top quality beans, which is also expensive Feb 16 22:00:49 niekniek: Sounds like time to sprinkle in some Log.d statements Feb 16 22:00:52 This stuff is really good https://austinjava.com/product/austin-java-decaf/ Feb 16 22:00:53 onactivityresult gets called though Feb 16 22:01:10 -1 0 Intent { act=com.google.zxing.client.android.SCAN flg=0x80000 (has extras) } Feb 16 22:01:29 which is the result from onActivityResult(int requestCode, int resultCode, Intent data) Feb 16 22:02:03 niekniek: ...and you're getting nothing back from results.getContents()? Feb 16 22:02:30 IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data); Feb 16 22:02:48 Log.d("KSS","yo! result " + result); Feb 16 22:02:52 result == null Feb 16 22:03:09 That's bizarre Feb 16 22:03:31 but the scan says bleep Feb 16 22:03:31 niekniek: You're using com.journeyapps:zxing-android-embedded:3.3.0 yes? Feb 16 22:03:34 embedding a qrscan activity ftl Feb 16 22:03:41 use play services Feb 16 22:03:43 shows url in the botom Feb 16 22:03:46 I vaguely remember there being more than one Feb 16 22:04:06 pfn i’m closing to giving up on the zxing Feb 16 22:04:12 *close Feb 16 22:04:43 Dagmar: no, an older version! Feb 16 22:04:48 let me have a look... Feb 16 22:04:55 niekniek: I doubt this is the problem but you're calling super in onActivityResult, right? Feb 16 22:05:04 I mean, if you wanted to embed zxing, I'd say do it properly, but zxing has no real good documention on how to embed a camera view and then process it yourself Feb 16 22:05:05 Ah the older version might be doing something differently Feb 16 22:05:19 pfn: As far as I was able to tell it basically doesn't support that at all heh Feb 16 22:05:36 it doesn't, you have to hammer it to your will to make that happen Feb 16 22:05:51 I just decided the default display was good enough Feb 16 22:06:22 yeah, that's why I used play-services Feb 16 22:06:33 grrr null Feb 16 22:06:43 play services is stupidly fast Feb 16 22:06:52 only pain is embedding some sample camera code, but that's easy Feb 16 22:07:11 Well, so's zxing. It looks like the play services scanner requires some more complex code Feb 16 22:07:33 zxing isn't as fast as play services Feb 16 22:07:39 not by far Feb 16 22:08:25 i tried change the text in the qr code itself Feb 16 22:08:32 sorry had a phone interview - pfn: i have the SDK paths set up in the project structure so unless im missing something here i dont think this is the problem Feb 16 22:08:33 play-services qr scanning is able to track and identify a qr code the moment it enters a frame, while zxing hasn't even finished focusing Feb 16 22:08:35 has anyone figured out how to get android studio to work in hidpi mode in linux (KDE Neon in my case)? Feb 16 22:08:49 in xzing it show the text just fin Feb 16 22:08:54 or, how feasible is it to use intellij for android dev? Feb 16 22:09:02 intellij works fine for android dev Feb 16 22:09:03 adymitruk: What dpi mode? Feb 16 22:09:14 I never use android studio... Feb 16 22:09:27 and I mean never Feb 16 22:09:34 im using intellij idea too: android studio is not as good Feb 16 22:09:36 yet Feb 16 22:10:00 It shouldn't even _care_ what resolution your screen is in Feb 16 22:10:12 mark4 pfn what about the designers? Feb 16 22:10:24 but android studio or intellij should function identically with respect to hidpi Feb 16 22:10:29 adymitruk, garbage Feb 16 22:10:30 dont use them myself Feb 16 22:10:31 are you not missing a whole bunch of things that come with android studio? Feb 16 22:10:36 no one uses the designer Feb 16 22:10:40 lol Feb 16 22:10:43 ok :) Feb 16 22:10:47 and intellij 2016 is the same as android studio 2.2 Feb 16 22:10:54 i just deleted the sdk from my project structure and added it back in Feb 16 22:10:59 There's some people who definitely _should_ be using the designer tho Feb 16 22:11:00 well, it does not obey hidpi Feb 16 22:11:09 why is android still an unresolved symbol :/ Feb 16 22:11:16 so no, you're not missing anything, unless you want something from the 2.3 experimentals Feb 16 22:11:20 everything else from jetbrains is fine in hidpi Feb 16 22:11:27 Dagmar, people who should be using the designers don't produce any code that you'd want to be running Feb 16 22:11:38 They gotta start somewhere Feb 16 22:11:50 the preview window is part of the designer Feb 16 22:11:58 Preferably somewhere that doesn't involve starting by nesting Relativelayouts just to put four buttons on the screen Feb 16 22:12:03 s73v3r: this is my concern Feb 16 22:12:11 dagmar starting at high level "click a button and we do everything for you" and refining it down to lower levels where you do stuff is a BAD way to learn Feb 16 22:12:18 also, I’m not sure if any of the Android specific profiling tools are available for Intellij Feb 16 22:12:24 s73v3r, they all are Feb 16 22:12:34 intellij 2016 is identical to android studio 2.2 Feb 16 22:12:38 pfn any ideas? Feb 16 22:12:40 with the exception of being stripped down to android only Feb 16 22:12:46 mark4, not knowing your project structure, no Feb 16 22:12:48 mark4: You should see the garbage that people who don't know the basix rules of XML produce Feb 16 22:12:50 is there a good /current/ post on setting up intellij for android dev? Feb 16 22:12:59 adymitruk, nothing to setup, install android plugin Feb 16 22:13:02 done Feb 16 22:13:09 you can use it identically to android studio if you want Feb 16 22:13:19 ok. I'll give it a go Feb 16 22:13:30 including designers? Feb 16 22:13:33 yes Feb 16 22:13:41 they work just as bad as they do in android studio Feb 16 22:13:44 hmm. ok.. will nuke android studio :) Feb 16 22:14:00 what about the wizards? Feb 16 22:14:04 are they there too? Feb 16 22:14:06 same wizard Feb 16 22:14:16 The wizardsa are not particularly useful in most cases Feb 16 22:14:17 *everything* *is* *the* *same* *as* *android* *studio* *2.2* Feb 16 22:14:19 i dont understand why android and AssetManager are unresolved :/ Feb 16 22:14:23 my sdk is set up Feb 16 22:14:26 huh. I find them helpful when coming back to it after many versions. Feb 16 22:14:26 Some of them are terribly out of date, just for giggles Feb 16 22:19:46 so none of these other plugins are necessary? intellij seems to have the android plugin installed by default.. http://i.imgur.com/sET4JmB.png Feb 16 22:20:47 they’re not necessary. depending on what you’re doing, some of them can be helpful Feb 16 22:32:01 turns out i wasn’t using the integrated zxing thing… but a seperate tool Feb 16 22:32:32 adymitruk, you don'tneed any of that Feb 16 22:33:28 now it says No Activity found to handle Intent { act=com.google.zxing.client.android.SCAN (has extras) } Feb 16 22:33:41 install it :P Feb 16 22:33:42 i guess something is wrong with my gradle file? Feb 16 22:33:50 and yeah, integrating an activity like that is ftl Feb 16 22:34:44 just following https://github.com/journeyapps/zxing-android-embedded.... Feb 16 22:40:45 i’m n00b… Feb 16 22:40:52 why do i have 2 build.gradle files? Feb 16 22:41:08 one for project kss and one for module app Feb 16 22:41:44 i guess my dependencies are insert wrong, but i can’t find out if that’s true... Feb 16 23:04:47 niekniek: it's normal. There is build.grade for the project and one for the app module (and one for each for the extra modules) Feb 16 23:04:57 niekniek: they contain different information Feb 16 23:05:32 Melatonina: thx Feb 16 23:05:32 niekniek: dependencies for the app module must be placed in the app's build.gradle module Feb 16 23:06:49 niekniek: there is a "dependencies" section and you add lines like "compile 'com.squareup.retrofit2:retrofit:2.1.0'" in that section. Order doesn't matter Feb 16 23:07:43 niekniek: an application project normally contains an app module but it can also contain local or external library modules Feb 16 23:07:58 niekniek: each with their dependencies and configurations Feb 16 23:14:48 ty Feb 16 23:15:28 switching to the google play services Feb 16 23:15:45 failed to resolve play-services 9.4.0, but it’s installed Feb 16 23:15:59 upgrading android studio... Feb 16 23:16:14 google said that might fix it... Feb 16 23:31:30 you update the google repository Feb 16 23:31:33 not upgrade android studio Feb 16 23:31:42 and god, I really hate the 'chatty' filtering of logcat messages Feb 16 23:31:45 makes debugging such a pita Feb 16 23:32:06 I think everytime I plug my phone into the usb device, it disconnects my adb-wifi Feb 16 23:32:16 Yep. Feb 16 23:32:27 It doesn't seem to like having more than one instance of adb running Feb 16 23:33:13 great stuff……….. the upgrade removed all my code Feb 16 23:33:45 the experimenting with google studio is giving me hell... Feb 16 23:35:53 Dagmar, it's not just that, but the usb accessory triggers "debug" to disconnect on-device or something Feb 16 23:36:09 it's annoying, as long as I don't replug, it doesn't disconnect Feb 16 23:36:52 but I can just adb connect to resume my adb-wifi session Feb 16 23:37:07 but I can't like walk to the lab to try something and walk back to my workstation to see the results... Feb 16 23:37:15 because it gets disconnected when I walk over to plug it in :( Feb 16 23:43:03 well, gonna start over again… goodnight Feb 16 23:44:16 upgrading android studio does not delete code Feb 16 23:44:18 nothing to start over Feb 17 01:06:37 To link my unpublished app to AdMob, what name do I need to specify when adding manually? The full package name or the "title" name?? I can't seem to find this information anywhere Feb 17 01:08:13 whoa Feb 17 01:08:20 @IntDef(value = {Service.START_FLAG_REDELIVERY, Service.START_FLAG_RETRY}, flag = true) Feb 17 01:08:25 in method definition Feb 17 01:08:35 very, very interesting, not correct syntax Feb 17 01:08:35 Just dawned on me that Android doesn't have Java 8's new time package - what do you guys use for Dates n stuff? Feb 17 01:08:39 but interesting Feb 17 01:09:07 Anthaas sadly java.util.Calendar :( because android.icu is too new Feb 17 01:09:16 I wish I would use a better lib though Feb 17 01:09:45 I mean, there is Joda-time Feb 17 01:09:57 Anthaas: a tie and flowers jk Feb 17 01:10:15 Which is what LocalDate etc was influenced by Feb 17 01:10:17 haha ecv Feb 17 01:11:15 yeah Feb 17 01:15:14 Anthaas there's also https://github.com/ThreeTen/threetenbp Feb 17 01:17:06 Afzal, That is absolutely ridiculous - you have to download an update each time timezones change?! Feb 17 01:17:15 That is not maintainable. Feb 17 01:17:19 apparently timezone is a big issue lol Feb 17 01:17:35 how often do timezones change? Feb 17 01:17:42 I just do Local timezone and utc, that's it Feb 17 01:17:45 Often enough Feb 17 01:18:02 yeah, I think it's more about DST Feb 17 01:18:17 Thats still twice a year Feb 17 01:18:26 are we talking about the user changing time zones, or about a government changing the timezones inside their borders? Feb 17 01:18:40 latter I believe. Feb 17 01:18:56 Well, saying that, Im not sure - if its former/both it would be even worse. Feb 17 01:19:19 that would be terrible and unacceptable Feb 17 01:19:34 Even if it is just the latter, I come to the same conclusion. Feb 17 01:20:13 wat Feb 17 01:20:16 i dunno, i mean, I don’t think that happens often enough for it to be an issue Feb 17 01:20:28 You don't have to download anything when timezones change Feb 17 01:20:55 s73v3r, So you are willing to remember to rebuild your apps with a new package, reupload etc when the timezone changes/changes in another country? Feb 17 01:21:02 Dagmar, http://www.threeten.org/threetenbp/update-tzdb.html Feb 17 01:21:07 epoch time conversion is easy and doesn't require anything more than what's normally on the phone Feb 17 01:21:34 Dagmar, Not all countries change their times when DST/BST changes. Feb 17 01:21:40 Time zone rules don't change but once in a blue moon Feb 17 01:21:46 Some have the same times all year around. Feb 17 01:22:00 *sigh* Feb 17 01:22:07 Yes, but twice a year is still often enough. Feb 17 01:22:08 All of this is already built into the database Feb 17 01:22:10 This is a "done" thing Feb 17 01:22:17 It's done to death twice over. Feb 17 01:22:25 Then wtf is that for? Feb 17 01:22:37 when the literal locations of the zones change Feb 17 01:22:41 When CDT changes to CST you have to do _NOTHING_ Feb 17 01:23:01 So, for example, if Russia annexes another country and demands it runs on Moscow time, etc? Feb 17 01:23:03 That library exists because the people who are deeply into time also tend to be INCREDIBLY OBSESSIVE. Feb 17 01:23:09 yup Feb 17 01:23:12 Right ok. Feb 17 01:23:44 If you thought the whole RedOrange thing on Reddit was a pointless holy war, you should pray you never encounter all the people arguing about the differences between UTC and Zulu Time, for instance Feb 17 01:23:53 or, if a government decides to change when daylight savings starts/ends, or to get rid of it Feb 17 01:23:55 You, as a developer, really don't have to care about this stuff. Feb 17 01:24:30 Any changes get handled by the three (possibly five now) guys who handle that deep, DEEP in glibc-space Feb 17 01:24:41 ...and it propagates out from there. Feb 17 01:25:02 Some idiots decided to sue the one guy who was maintaining that database about a decade ago Feb 17 01:25:14 The internet collectively (well, the people smart enough to know) lost their shit at them Feb 17 01:26:03 Store things as epoch time, convert to localtimes using the friendly java provided functions when presenting to the user, and remember to breathe Feb 17 01:26:35 The phone will handle any input of location-based data that's required Feb 17 01:26:38 Hmm. I need a way to persist a class to a database haha Feb 17 01:26:49 and if anyone suggests using strings at any point other than when you’re about to display to the user, shoot them Feb 17 01:27:17 s73v3r++ Feb 17 01:28:23 This raht cheer... timeitem.setText(DateFormat.getDateTimeInstance().format(timeline[index] * 1000)); Feb 17 01:28:33 I want to build an object, completely custom to the user, e.g. Monday, Tuesday, Wednesday only. // 1st of the month // Between 5 and 7pm on Monday 22nd, etc and then persist that and see if today matches those conditions Feb 17 01:28:38 Any ideas how I might? Feb 17 01:29:15 java.text.DateFormat Feb 17 01:30:28 It's not in _that_ library, but there are functions for taking an epoch time and finding out specifically what month, day of the week, hour, minute, etc Feb 17 01:31:10 Java also has SimpleDateFormat, which produces strings... lemme keep digging Feb 17 01:31:27 It's stupid simple in most languages. It's just a matter of finding the wrapper to the C call Feb 17 01:33:07 Ah... here we go https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html Feb 17 01:33:16 Ahhh perfect. Feb 17 01:33:24 Remember, friends don't let friends store localtime Feb 17 01:33:27 ;) Feb 17 01:34:15 Haha, I would never have :P Feb 17 01:34:28 ...which reminds me that I need to convert the code containing that snippet I posted to using a RecyclerView Feb 17 01:34:45 Final question, might just be an IDE bug. Whats the correct way to add a class in a subpackage in the manifest? Feb 17 01:35:00 .Subpackage.Class moans about thinking its a nested class and says to use $ Feb 17 01:36:28 Not a clue there. I know craptons about coding in general and a bunch of languages, but I'm still working up Java Feb 17 01:36:51 Things would go faster if Android UI stuff didn't have so many @#$@ quirks Feb 17 01:37:08 AppCompat ALL the things. Feb 17 01:37:14 Just fucking kill off old versions of Android already. Feb 17 01:37:32 AppCompat isn't a solution to everything Feb 17 01:37:45 I quit even trying to use it because I kept hitting quirks _anyway_ Feb 17 01:37:56 Same. Want to use my app? Buy a new phone. Feb 17 01:38:11 The thing I'm spending most of my time on... I put together a custom Toast appearance for it Feb 17 01:38:39 It's not a complex thing to do, and it works all the time, except if it's launched in the first few moments of the app's runtime Feb 17 01:38:54 Then the toast somehow loses all of it's padding and margins Feb 17 01:39:23 I tried a bunch of stuff, including deliberately inflating the damn thing twice. No dice. Feb 17 01:39:36 Sounds like a lifecycle thing Feb 17 01:39:52 Is everything fully rendered? Feb 17 01:40:06 I'd like to believe that, but it's called for after the main display appears Feb 17 01:40:30 The app concept is that of a little PDA with plastic doors that open up when it's turned on Feb 17 01:41:04 If the flag value for the doors says they're closed (because they're at hte instantation value) and the toast has never been shown before, it shows the toast telling the user to tap the display Feb 17 01:41:17 ...because some people are dumb enough to not try touching _anywhere_ on the screen. Heh Feb 17 01:42:16 Why it only loses margins/padding even though they're set in the XML and set _again_ in Java after the background is customized... Life's too short Feb 17 01:45:46 No idea why it loses just those and not anything else Feb 17 02:22:39 In my app I am reading a file that is potentially thousands of lines long (<100 chars each), splitting each line based on occurrences of a certain character, and then creating objects for each line and storing them all in a list Feb 17 02:22:50 (Also there's some integer parsing involved) Feb 17 02:23:43 Do splitting strings and creating objects take enough time that it is worth going out of my way to avoid them, or is file reading the bottleneck here? Feb 17 02:27:09 It's unlikely to make any major difference. Reading from storage is going to be much slower than almost anything you're doing purely in memory Feb 17 02:31:40 k thanks **** ENDING LOGGING AT Fri Feb 17 03:00:00 2017