**** BEGIN LOGGING AT Wed Dec 09 03:00:26 2015 Dec 09 03:07:29 51-android.rules in udev, adb_usb.ini contains device info, what else? Dec 09 03:07:48 is anyone using retrofit2 in production ? it's beta-2 and I dont know if I should go for 1.9 or 2.0-beta2 Dec 09 03:26:38 gordon_, never use anything but -STABLE in production Dec 09 03:28:50 Ok g00s my app is published Dec 09 03:29:04 But when I go to View In Play Store, it says url not found Dec 09 03:29:20 Oh Dec 09 03:30:52 Ok, go to the opt in url -> become a tester -> download from google play, still URL not found Dec 09 03:34:31 Anyone done this before? Dec 09 03:47:44 https://play.google.com/apps/testing/dylan.com.adoptapet Dec 09 03:54:45 daemon: you tell me to drop android ? Dec 09 03:54:46 ;) Dec 09 03:55:44 gordon_, GOD YES Dec 09 03:56:00 gordon_, take up something less stressfull like balancing fish fingers on the eiffel tower Dec 09 04:30:23 Anyone here use gson before? Curious why this SO answer says to use one technique over the other when the json you get, has an array. Dec 09 04:30:26 http://stackoverflow.com/a/9598988 Dec 09 04:43:50 what technique over another Dec 09 04:44:09 the type token is the best way if you're reading in a list directly Dec 09 04:47:47 pfn: Type technique uses reflection? So it makes sense to use the simple array no? Dec 09 04:48:04 all of gson uses reflection Dec 09 04:48:10 oh =/ Dec 09 04:48:25 and the type token doesn't use any more reflection than any other technique Dec 09 04:48:34 Didn't know. Okay. Well that helps. I still think the array, in android is simpler. Dec 09 04:49:40 I guess I just don't understand why the guy that posted the answer just says "but this is better". I get a collection, but is that really any better than an array? i'm not going to be adding or removing stuff from the collection. Dec 09 05:07:34 Is there any way to debug at bytecode level using Android studio? Dec 09 05:12:23 cool http://blog.generalassemb.ly/advocating-for-android-a-conversation-with-googles-reto-meier/ Dec 09 05:18:35 daemon: thanks ! Dec 09 05:21:40 jbit, no Dec 09 05:22:07 eghdk__, arrays almost always suck to work with Dec 09 05:22:14 eghdk__, that's all Dec 09 05:22:20 better api with collections Dec 09 05:22:26 pfn cool thanks Dec 09 05:23:04 pfn: darn. I'm getting a java.lang.NoClassDefFoundError exception emitted from some code where it makes no sense, so was curious what's actually happening "under the hood" Dec 09 05:23:28 pfn: Is this set up correctly? I think it is, but apprently not.. EXPECTED BEGIN_ARRAY GOT BEGIN_OBJECT http://pastebin.com/27rQy18W Dec 09 05:24:53 g00s: Reto started programming when he was in elementary school. I am only 26 years late. Dec 09 05:25:45 eghdk__, your json is an object not an array Dec 09 05:26:05 jbit, javap -c Dec 09 05:26:20 the only problem i have about the 'democratization of programming' idea, is that its exactly the opposite - we're all subject to google's ideas on what can be in the store Dec 09 05:26:37 but you have to tell yourself something, i guess Dec 09 05:27:03 logo doesn't count as programming Dec 09 05:27:09 pfn: thanks already looking through it now, was hoping the debugger had some integration though :) Dec 09 05:27:44 i think it counts as programming at some level. its thinking in terms of abstractions, recursion. Dec 09 05:28:05 if anything, i think you can teach people to program without using any programming language Dec 09 05:28:13 semantics of class loading is very set in stone, though, jbit Dec 09 05:28:25 pfn: Gotcha, so I should create a wrapper Object, that all it contains is an Items[]? Dec 09 05:28:36 eghdk__, yes Dec 09 05:28:41 I wrote a Logo interpreter in BASIC when I was 16 :) Dec 09 05:29:07 Leeds i thought it would have been in VimL :P Dec 09 05:29:32 spacechem is a fun programming game Dec 09 05:30:06 I don't think vim ran on the 8-bit computers were were using back then... Dec 09 05:30:23 pfn: Cool, so I did that, but it's telling me the array I created is null everytime I try to access it. But I don't get the ARRAY NOT OBJECT error anymore! =) PROGRESS! Any idea why the array would be null? Dec 09 05:32:22 then you named your field wring Dec 09 05:32:24 wrong Dec 09 05:33:33 hey the Pixel C was out today Dec 09 05:34:50 pfn: theres no field name... is there? Dec 09 05:35:08 of course there is Dec 09 05:35:11 "Pixel C review—New hardware ignores an Android tablet’s core problem: software" Dec 09 05:35:21 Oh, so the very first name after the opening { is the name of the array? Dec 09 05:36:06 pfn: it looks like a build system issue, some class isn't being stuffed into the jar :( Dec 09 05:36:23 jbit, typical Dec 09 05:38:30 hm, the 2 reviews i read basically say: nice hardware, but "An Android tablet can't be great until Google fixes Android." Dec 09 05:39:48 i thought they would have launched the Pixel C with a version of Android with multi-window support Dec 09 05:40:59 3 reviews. this won't end well for that device Dec 09 05:44:56 g00s: Yep. Every review is "nice device, android is nothing special on tablets" Dec 09 05:45:32 yeah, said ars technica, wired, the verge. those are the ones i found on /r/android Dec 09 05:46:31 they HAVE to be coming out with 6.1 with multi window and maybe some other tablet focussed features, but until then, the tablet will get crap reviews Dec 09 05:46:38 google should make linux distro for desktops Dec 09 05:46:40 i'm have no idea as to how google can solve that problem. multi-window is a first step; wow windows 1.0 could do that Dec 09 05:49:51 its that time of the month, new platform distribution #s http://developer.android.com/about/dashboards/index.html Dec 09 05:50:14 did 2.3 move at all? Dec 09 05:53:28 shmooz is propping that up Dec 09 06:09:26 It'd be cool if they released Kotlin on 25th December or 1st January. Dec 09 06:10:31 TacticalJoke is that a special kotlin date ? Dec 09 06:10:38 oh lol Dec 09 06:16:35 this Java Performance book is 60% off, i wonder how much of it applies to Android http://www.informit.com/deals/ Dec 09 06:16:57 for the next 2 hours Dec 09 06:17:20 about as much as knowing how to boil an egg qualifies you as a cook Dec 09 06:18:00 looks like not much, lots of JVM specific instrumentation stuff Dec 09 06:18:15 g00s: Do you have space for all these books? ;o Dec 09 06:18:29 that one is 760 pages, holy cow Dec 09 06:18:35 i dont have room for it :D Dec 09 06:34:05 Do you guys follow any rule of thumb when it comes to where to store network(http(s)) calls? Lets say im using volley or retrofit, and want to cache the response. Using e.g. an IntentService, i can be pretty sure that my request will actually be allowed to complete, whereas if i put it directly in the activity, it may not (as the activity may be killed) Dec 09 06:35:10 But perhaps its better practice to not insist so much on having it complete. I get that this is a case-by-case issue, just wanted to know if you had any go-to solution Dec 09 06:38:36 liefer i think the advice may have changed over time. but back in 2010, it was in a service Dec 09 06:39:38 and i still think that a good idea; one of the limits to phone adoption in emerging markets is poor connectivity - so consider that sending a request twice is lame, do it once, cache it, from a service Dec 09 06:40:41 liefer https://www.youtube.com/watch?v=xHXn3Kg2IQE Dec 09 06:42:59 Right, that seems reasonable Dec 09 06:43:10 I remember seeing that video a while ago, i should watch it again. Thanks for sharing Dec 09 06:43:16 liefer and then a more modern take https://www.youtube.com/watch?v=BlkJzgjzL0c&list=PLWz5rJ2EKKc_Tt7q77qwyKRgytF1RzRx8&index=2 Dec 09 06:43:22 from the other week Dec 09 06:43:38 the first video predates any modern libraries you may use Dec 09 06:43:46 but principles are the same Dec 09 06:47:49 The 2nd one i have not seen before :) Will watch, thanks Dec 09 06:48:10 yeah android dev summit, watch as many as you can ... :D Dec 09 07:05:08 Im working on it, quite a few interesting ones :) Dec 09 08:33:27 Is there a way to change Volley's StringRequest object's ErrorListener when its created? Dec 09 08:35:48 In Request class of volley, it's object is private and I can't see any setter method Dec 09 08:36:48 There is a getter but no setter, WTF Dec 09 09:30:57 No one has any idea about VOolley? Dec 09 09:31:04 *Volley Dec 09 09:33:37 astroduck: harden up, son Dec 09 10:13:00 is there any way to import android studio project to eclipse (eclim)? Dec 09 10:13:13 other than writing the .classpath by hand Dec 09 10:21:04 hello guys Dec 09 10:22:34 i am trying, create a recyclerview , get it in a fragment and add that fragment dynamically to an activity. Dec 09 10:23:12 i did recycler and fragment part, but that fragment isnt created in activity and i don't know why ? Dec 09 10:23:58 it doesnt allow me when the fragmentTransaction.add(R.id.list_in_activity, fragment); Dec 09 10:24:12 says , fragment should be fragment Dec 09 10:29:12 vompatti: eclipse should have gradle integration Dec 09 10:32:27 hey chums! Dec 09 10:33:00 question, is it possible in the android debugger to figure out what class started a service? Dec 09 10:33:39 because ya know, the whole Intent thing hides it away when you put in a breakpoint in onCreate of the service Dec 09 10:47:25 Is there a way to analyze the contents of an apk? We noticed that the size of our apks doubled over the last months, and we would like to know why. Dec 09 10:48:18 Syzygy: yes! apktool Dec 09 10:48:21 very handy Dec 09 10:48:31 thanks, I'll check it out Dec 09 10:48:40 np Dec 09 10:55:59 Syzygy: a .apk file is also just a .zip - I unarchive them all the time with a regular command-line zip tool, and then you can use whatever you want to look at the contents. Dec 09 10:56:09 should work with winzip etc. as well, though I haven’t tried specifically. Dec 09 10:56:57 Well, I'm looking specifically at a way to analyze it... like space percentage of media vs compiled code etc Dec 09 10:57:12 I have a question (looking for feedback). See the bottom of this pastebin: http://pastebin.com/is3e6xqk Dec 09 10:58:17 sure. maybe apktool is better. utilities like du might be able to do similar once it’s extracted, but maybe the other tool is nicer Dec 09 11:06:28 Hello, anyone around who has a few moments and experience with ProGuard issues? Specifically, my test build gets native crashes which send me no information whatsoever on a couple testers' devices, and works fine everywhere else. Crashes instantly disappear if I send them a non-ProGuard apk. Dec 09 11:07:16 Looking for either suggestions on what might be wrong, or tips on how to debug this thing generally. Can't really do module testing where I slowly -keep different parts of the code because I can't very well make these volunteer testers install 30+ different versions and test until they crash. Dec 09 11:17:04 Where did you find your volunteer testers Cevari Dec 09 11:17:11 friends Dec 09 11:17:16 Oh ok Dec 09 11:24:35 Cevari, have them send you a logcat and consider using Crashlytics. Dec 09 11:26:28 crashalytics crashed on me once, that was fun Dec 09 11:26:49 I'll look into it, thanks. I haven't looked into getting logcat output for signed apks yet, I guess they need to install something to log it for them? Dec 09 11:34:45 Hey can anyone test this link for me? https://play.google.com/apps/testing/dylan.com.adoptapet Dec 09 11:35:02 A potential tester told me he hits a 404 after "Become A Tester" Dec 09 11:42:26 worked for me Dec 09 11:43:47 how to show recyclerview's fragment in activity dynamically ? Dec 09 11:43:48 Cevari it brought you to the play store listing? Dec 09 11:44:16 oh, right, didn't hit that one, just hit "become a tester" Dec 09 11:44:23 does 404 on the play store listing link Dec 09 11:44:32 Dang, did you try refresh? Dec 09 11:44:44 refresh worked Dec 09 11:45:04 Ok so you made it? Dec 09 11:45:10 yeah I'm on the listing page Dec 09 11:45:17 I wonder why it does that, it's gonna throw off a log of potential testers Dec 09 11:45:22 lot* Dec 09 11:46:19 Now im wondering if I should even send out any more emails to people containing that link Dec 09 11:55:47 is there anyone here to give a fuck ? Dec 09 12:04:21 Quick question my app will have lowest requirement Android 4.2.2 (API17) and compiled with latest 6.0/23? do I need to download any other SDK with SDK manager ? Dec 09 12:05:12 Nop, you need 23 only Dec 09 12:05:36 Not even 17 ? Dec 09 12:05:38 nice Dec 09 12:05:52 A ok so just the one you compile with Dec 09 12:06:18 Yeah, because you compile with it :) Dec 09 12:10:13 I know a few people have done so, but does anyone here have any advice regarding giving talks and preparing for doing so? Dec 09 12:10:31 Currently pooing myself having just signed my life away :(# Dec 09 12:22:49 I am puzzled, I have a CursorAdapter that is fed by a LoaderManager and when searching I use resetLoader Dec 09 12:23:17 this causes the Listview to crash with an IlegalStateException because the cursor was closed Dec 09 12:28:50 hi, I cannot find a way to find out the number of bytes sent/received over 3G. Per transport statistics have been removed from the TrafficStats class since API 18 Dec 09 12:40:52 hey guys, im using custom dialog (extends Dialog) for my project , but it has some problems with margin,it fits whole screen on some devices so i added margin or padding and seems like both dont work Dec 09 12:41:15 any idea why i can't margin a Dialog? Dec 09 13:01:29 Hi Dec 09 13:01:42 Hi, I've created a custom authentication for the app I'm developing. It works like a "remember me" function instead of OAuth or something, but it works with hashed tokens that are saved in the database. So I'm trying to pass this token to the webservice with the following code (I'm using "Authorization", but it can actually be anything since I don't do any special checks on the webservice - advice?): URL url = new URL(Config.API_UR Dec 09 13:02:01 URL url = new URL(Config.API_URL_LOGIN); conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("POST"); conn.setRequestProperty("Authorization", params[0]); in = new BufferedInputStream(conn.getInputStream()); Dec 09 13:02:12 I will be using SSL on the webservice. Everything is working fine, but I don't know if this will be insecure. Do you have any advice for me? Thanks. Dec 09 13:02:37 Can you guys please review this in the android-dev subreddit? https://www.reddit.com/r/androiddev/comments/3vx59q/questions_thread_december_08_2015/cxspfbe Dec 09 13:06:04 ISN: recap: where's the token coming from? Dec 09 13:06:59 The token is saved in a NoSQL database Dec 09 13:07:02 The "secure" thing is to send a remote server your username and password, and have it return a token, which will or will not expire. You then save said token and send it with all subsequent requests Dec 09 13:07:19 Yeah. So I will explain how the process works: Dec 09 13:08:35 The users downloads the app and registers an account by touching Register. The account information is sent to the webservice (with .setRequestProperty("email", email) etc.). The webservice validates en registers an account. After this the webservice generates a token en saves this token to the database in the table called "Tokens". Dec 09 13:08:54 This token is returned to the user, the user stores this token with sharedpreferences or in a nosql database. Dec 09 13:09:31 The next time the user starts the app, the tokens will be received from the database and sent to the webservice with setRequestProperty("Authorization", token); and then the server checks in the databse en validates is. The webservuce returns OK or BAD_REQUEST Dec 09 13:09:45 And if it's OK, the app continues to start Dec 09 13:10:14 And if the user wants to post an article or something, the token and the article informations gets posted over HTTP to the webservice. Dec 09 13:10:30 The user_id gets retrieved from the tokens table by the received token and the article is being created in the database. Dec 09 13:10:31 ISN: yes, that's secure Dec 09 13:10:42 Thanks :) Dec 09 13:10:44 as long as you're using https, of course Dec 09 13:10:48 So It doesn't matter how I do it? Dec 09 13:11:06 I mean. the token authentication is something I made myself. It doesnt even work like OAuth or JWT or something. Will that be a problem in the future? Dec 09 13:11:06 ISN: how you do what? Dec 09 13:11:13 no Dec 09 13:11:23 Nice, thanks! :) Dec 09 13:11:50 Most OAuth providers work in a very similar fashion Dec 09 13:11:51 And last question. setRequestProperty - is this a header or parameter? I can't really distinguish them :P Dec 09 13:11:58 Hm Dec 09 13:12:10 It's a header iirc Dec 09 13:12:29 although maybe not Dec 09 13:12:33 the documentation will say Dec 09 13:12:35 So I'm passing email, password and stuff also as a header? Dec 09 13:12:39 Oh alright Dec 09 13:13:04 ISN: eh no, you should pass that as url parameters or as the request body Dec 09 13:13:38 Oh ok. Is it safe to pass the password through the url with GET? Dec 09 13:13:41 Authorization is usually a header though Dec 09 13:13:55 ISN: as long as it's over a secure channel (SSL), yes Dec 09 13:13:59 nice :) Dec 09 13:14:31 And about the Authorization, I knew that it was a real header, but I just use it for my own token system. I just do something like $_POST['Authorization'] Dec 09 13:14:40 So Basically I shoudln't do that? :P Dec 09 13:15:21 ew, PHP Dec 09 13:15:31 Just use the header Dec 09 13:15:36 It's there for a reason! Dec 09 13:15:55 haha, alright, thanks for your time man! Dec 09 13:15:56 why do you pass password? Dec 09 13:16:04 you can hash it and pass a hash Dec 09 13:16:05 when the user regsiters an account via the app Dec 09 13:16:11 squ: ... Dec 09 13:16:15 Yeah I send the hash indeed, sorry forgot to mention that Dec 09 13:16:28 you can just send the password Dec 09 13:16:39 hashing should be done server side Dec 09 13:16:39 when you hash, add ‘salt’ to the string Dec 09 13:16:39 it's over SSL, so it doesn't really matter that much Dec 09 13:16:44 hm Dec 09 13:16:50 ISN: it does Dec 09 13:16:57 like password = password + "*&*&@*!&"; Dec 09 13:17:04 squ: stop Dec 09 13:17:05 no Dec 09 13:17:08 yes Dec 09 13:17:09 never do that Dec 09 13:17:13 No. Dec 09 13:17:15 yes Dec 09 13:17:18 lol Dec 09 13:17:20 I'm telling you, no Dec 09 13:17:26 Using the same salt everywhere doesn't help Dec 09 13:17:35 salt is hidden in the app Dec 09 13:17:41 it is not *everywhere* Dec 09 13:17:41 ... Dec 09 13:17:44 Seriously Dec 09 13:17:47 yep Dec 09 13:17:52 he is using it for app only Dec 09 13:17:59 no need to send password to server Dec 09 13:18:06 You store the salt in your database, with each user's password hash Dec 09 13:18:13 no Dec 09 13:18:17 Okay, whatever Dec 09 13:18:30 @authrilla, thanks for you time man, I get you :) Dec 09 13:18:31 app-wide salt is fine Dec 09 13:18:55 squ: read https://crackstation.net/hashing-security.htm#salt Dec 09 13:18:55 users usually use 1 password for almost everything Dec 09 13:18:59 @squ, now I realise that it isn't actually save, because Dec 09 13:19:02 And no, an app-wide salt IS NOT fine Dec 09 13:19:06 What is someone decompiles the app and reads the salt Dec 09 13:19:12 ISN: exactly Dec 09 13:19:21 or figures out the salt by brute forcing two passwords Dec 09 13:19:24 ISN: I know, but it is better than sending raw password Dec 09 13:19:40 squ: your security is still crap. Congratulations on giving bad advice! Dec 09 13:19:48 :) Dec 09 13:19:51 :) Dec 09 13:19:57 ISN: don't listen to her Dec 09 13:20:04 I'm a him Dec 09 13:20:11 you behave like her Dec 09 13:21:26 ISN: you don't have to listen to me, just listen to other people who know more than I do. squ isn't one of them. See the link I shared, it explains why constant salts aren't helpful. Dec 09 13:21:43 bruteforcing a hash doesn't mean we should avoid hashes Dec 09 13:22:01 ... Dec 09 13:22:09 I never said that Dec 09 13:22:20 you literally did Dec 09 13:22:26 squ: quote me. Dec 09 13:22:51 3:17:10 PM - autrilla: never do that Dec 09 13:23:33 Yes, never hash client side Dec 09 13:23:36 Not "never hash" Dec 09 13:23:47 And also, "never use a constant salt" Dec 09 13:24:36 have a app-wide salt, hash it with password, send that hash over the network Dec 09 13:24:59 You have terrible security Dec 09 13:25:09 NEVER EVER EVER use an app-wide salt Dec 09 13:25:17 It's almost like not having a salt at all Dec 09 13:25:30 having per-password salt doesn't increase security, given someone have access to debug app Dec 09 13:25:40 squ: it does. Dec 09 13:26:00 also, bruteforcing a hash doesn't conclude anything Dec 09 13:26:10 http://stackoverflow.com/questions/2999197/do-i-need-a-random-salt-once-per-password-or-only-once-per-database Dec 09 13:26:13 Read. Dec 09 13:26:19 thank you Dec 09 13:26:27 squ, only the idea of someone decompiling the app and discovering the salt even makes me not do it - what are you trying to do? :) Dec 09 13:26:47 autrilla: I uderstand what you mean Dec 09 13:27:12 :) Dec 09 13:27:14 have fun Dec 09 13:28:11 is MediaStore intended to be unreliable? it still lists files that are either delted or moved Dec 09 13:32:26 ISN: https://developers.google.com/maps/documentation/static-maps/get-api-key#digital-signature Dec 09 13:32:54 java code to use sha hmac Dec 09 13:33:26 it makes hash out of salt and password Dec 09 13:38:22 How do I do a LocationRequest without getting continuous updates? All I seem to be able to do is set intervals and timeouts. But if I just want one lookup? Dec 09 13:40:03 can I simply .setInterval(0) ? Dec 09 13:48:30 RxBinding problems.. been tearing my hair out trying to figure out why I'm nt getting events from an observable obtained with RxAdapterView.itemSelections()... I think the cause is the AdapterView can only hold one OnItemSelectedListener registered at a time and I'm subscribing to it twice which is causing the first listener to get unsubscribed.... I assume I can solve this by calling publish/connect on my source observable... but fuck me if ... Dec 09 13:48:36 ... that wasn't a difficult thing to debug Dec 09 13:50:58 idly wondering if I'm the only idiot to have gtten caught by this.. Dec 09 14:08:58 Hi everyone. Dec 09 14:09:51 When I open Android Studio, I get this --> http://i.imgur.com/va6dPr9.png Dec 09 14:10:45 Is there a big difference in performance and UI between OpenJDK and Oracle JRE/JDK? Dec 09 14:35:25 no Dec 09 14:36:30 pfn are you in America? Dec 09 14:37:32 yes Dec 09 14:42:00 Best way to find alpha users? Ive posted on a few android related forums and not much results Dec 09 14:45:11 paying them Dec 09 14:46:38 what about testfariy Dec 09 14:46:46 Never heard of Dec 09 14:47:11 i thought they have a dashboard that help you find beta testers if i rem right. Dec 09 14:47:22 Im having an issue though, when people use my opt in link, it brings them to a 404 page, unless they refresh Dec 09 14:47:25 I dont know why Dec 09 14:47:42 Would anyone try this? https://play.google.com/apps/testing/dylan.com.adoptapet Dec 09 14:47:56 drose379: read the topic Dec 09 14:48:25 Yeah I want to see if it brings you guys to 404 Dec 09 14:48:33 Some people are having an issue with that link Dec 09 15:10:46 <_3mpty> drose379: you mean that ppl don't see test invitation under that link? Dec 09 15:11:18 _3mpty, I mean after they click "Become A Tester", then they try the "Download from google play", then they get the 403 or 404 Dec 09 15:12:33 <_3mpty> ok, sec Dec 09 15:13:17 <_3mpty> works Dec 09 15:13:22 Really, awesome Dec 09 15:13:25 <_3mpty> I mean i'm on play app site Dec 09 15:13:30 Perfect, yeah Dec 09 15:13:30 <_3mpty> but i cannot instal Dec 09 15:13:34 <_3mpty> (no compatible device) Dec 09 15:13:35 Why cant you install? Dec 09 15:13:48 Oh alright Dec 09 15:13:53 What device are you using? Dec 09 15:14:05 <_3mpty> main is Nexus 5 (old) Dec 09 15:14:17 Ah alright Dec 09 15:14:23 Hey thanks for trying the link though Dec 09 15:14:36 <_3mpty> no problem Dec 09 15:23:43 some day I should read drawer layout source for insight into how to write my own drawers Dec 09 15:32:41 Hey guys, Im making a conference app where you can say “I want to attend this event today at X”. If I wanted the app to send the phone a notication 15 minutes before the event, I can just do a local notification - right? That doesn’t need to be a push notification? Dec 09 15:33:07 might be best to create a calendar event Dec 09 15:47:43 well, having conference notifications self-contained in the app is nice, imo Dec 09 15:47:58 maybe provide an option to export to the calendar Dec 09 15:48:15 but i agree, i don't necessarily want my calendar littered with tiny events Dec 09 15:49:08 if I'm at a conference, I don't want my calendar to have all the sessions I want to go to Dec 09 15:49:19 I want it in the conference app, if the conference provides an app Dec 09 15:50:05 I actually want them in the calendar because that's actually integrated with other things. Dec 09 15:50:15 different users want different things Dec 09 15:50:19 Not a lonely app that then can't even show the next event location on my latop. Dec 09 15:50:35 I rarely carry a laptop around when I'm mobile Dec 09 15:50:39 rarely = never Dec 09 15:51:19 *shrug* Dec 09 15:51:31 I just think it's retarded to have another app doing essentially the same thing that a calendar does. Dec 09 15:51:36 Just with more limitations. Dec 09 15:54:51 storkme: .share() is your friend Dec 09 15:56:10 do you need to request any permission for Android Marshmallow when using coarse location? Dec 09 15:56:36 https://youtrack.jetbrains.com/issue/SCL-9575#comment=27-1246437 Dec 09 15:56:42 fixed, I hope Dec 09 16:00:57 Hi, I'm developing an app to use BLE, and have struck an issue. If the peripheral is power cycled whilst connected, the Bluetooth on the tablet side will get in to a stange state where it is connected to the peripheral but acts as if it is disconnected, effectively locking out access until the app is killed and restarted. Also seen on some BLE test apps. Has anyone else seen this or know of a workaround. On iOS in a similar situation, it Dec 09 16:00:58 disconnects immediately. Thanks in advance! Dec 09 16:04:01 FrancescoV, yes, afaik. You can confirm by looking at the list of 'dangerous' permissions on the android dev site Dec 09 16:04:59 dragorn, ok thanks Dec 09 16:08:13 semi-fixed Dec 09 16:08:48 for scala being "not a good platform for android" a lot of people are interested in seeing that it works well Dec 09 16:09:10 official scala site is finally being updated to indicate that scala supports android, too now... heh Dec 09 16:09:38 i wonder what they mean by support Dec 09 16:10:27 scala's an improvement on java, at least...i'm still getting used to the syntax, but i'd use it just for lambda functions and list comprehensions Dec 09 16:10:42 "we were able to get our runtime under 63K methods" Dec 09 16:10:46 http://oxnrtr.de/scala-lang/ Dec 09 16:10:49 although the syntax in recent java has improved Dec 09 16:10:53 mockup of what's going to go onto next site Dec 09 16:11:01 (obvs not done) Dec 09 16:11:08 their site's looking pretty good these days Dec 09 16:13:48 pfn: looks awesome Dec 09 16:27:33 JakeWharton: gotcha, thanks. Follow up stupid question.. if I use .share() instead of .publish() and then .connect() (later on in the code), if I subscribe twice to the share()'d observable wont the second subscriber miss the initial value? Or am I missing something? Dec 09 16:32:25 Why use Kotlin over Java? Dec 09 16:33:10 because kotlin is better Dec 09 16:33:15 read their website and decide for yourself Dec 09 16:33:18 drose379: https://vimeo.com/144877458 Dec 09 16:54:07 Is there a way to nicely combine the UI of activities in different processes so they look like they’re a unified, single thing? Dec 09 16:54:50 I know it’s vague. I’m trying to fit a square peg in a round hole, keep hoping it will go smoothly. Dec 09 16:57:16 no Dec 09 16:58:16 same app, same user-id, fwiw. Dec 09 17:03:25 duboisj you want COM? :P Dec 09 17:03:34 OLE ? :D Dec 09 17:03:39 heh. Dec 09 17:03:44 Hey anyone have experience with open alpha releases, having an issue where the "opt-in" link is leading to a dead url for some and working fine for others, whats the deal? Dec 09 17:04:19 it’s funny you should ask, I’m working on wine Dec 09 17:04:30 is anyone using gradle experimental android plugin and happens to know how to create a unittest that can be ran from visual studio? Dec 09 17:04:45 I don’t need integration quite that tight, more a good visual experience Dec 09 17:05:28 i wonder if Windows Phone can do that; since you can in Windows desktop Dec 09 17:05:35 basically i have a basic mytest.java and i need a way to tell the build script that this will be built in a unittest artifact/target Dec 09 17:05:53 testCompile seems to be the way to send dependencies in that direction but i'm really not sure about the actual target Dec 09 17:07:34 I guess it could, but I’ve never developed for one. Dec 09 17:10:20 duboisj no experience with remote views, i wonder if thats a workaround. usually used for home screen Widgets Dec 09 17:10:42 maybe thats all they can be used for - but maybe not, if the apps are in your control Dec 09 17:11:09 i'm not optimistic, i dont think i've ever heard of anyone doing that Dec 09 17:12:20 ooh! Dec 09 17:12:30 g00s: that’s at least an idea. Dec 09 17:12:51 heh, er. Dec 09 17:13:42 one of the things I want to do is have a button in process A which will kill process B. but it’s a thought. thank you. Dec 09 17:22:59 s73v3r were we talking about affinity designer yesterday? seems its 20% off Dec 09 17:24:49 and Pixate Studio 2.0 is out Dec 09 17:27:26 g00s: oh wow. how convenient :D Dec 09 17:32:51 i'm seeing a pretty frequent crash on Marshmallow in my app, which uses a full screen webview w/ canvas. It happens about 90% of the time on Marshmallow, and never on previous platforms. Looks like it's in chromium GL code. http://pastebin.com/jvLB44gw Dec 09 17:36:55 looks identical to this issue, but the discussion isn't very helpful: https://code.google.com/p/chromium/issues/detail?id=554944&q=label%3Aos-android&colspec=ID%20Pri%20M%20Stars%20ReleaseBlock%20Cr%20Status%20Owner%20Summary%20OS%20Modified Dec 09 18:01:51 what's a quick way to have a local list of records that are synchronized with a REST-accessible database? Dec 09 18:02:45 the records in this case are todo items, so they're simple...i'm looking more for a library or package for android that makes it easier to create and query contentproviders Dec 09 18:03:02 (and also sync them to an external data source, i guess) Dec 09 18:03:45 the app i'll be writing is effectively a glorified todo list Dec 09 18:11:30 why content provider Dec 09 18:12:42 anyway, no Dec 09 18:12:45 realm or something maybe Dec 09 18:13:19 diphtherial if you have money look at firebase Dec 09 18:13:34 i don't, it's just a hobby project; realm looks interesting Dec 09 18:13:41 i've looked at it before, but wasn't sure if it was a toy or not Dec 09 18:13:59 definitely not toy, but realm isn't going to help you with cross-device sync Dec 09 18:15:33 firebase could work, although i'm willing to write the server-side parts myself Dec 09 18:15:51 lol, somebody made a drug scale with iphone's force touch screen Dec 09 18:15:53 perhaps i could use realm just for managing local data and write a sync adapter to check with the server every so often Dec 09 18:16:02 nifty Dec 09 18:16:29 time to switch to ios Dec 09 18:20:24 considering a milligram scale is ~$10 that might not be super prudent Dec 09 18:21:10 neat party trick in any case Dec 09 18:22:03 firebase does have a free tier. at least it might be enough to get started Dec 09 18:22:56 yeah, you need candle level to do anything remotely serious Dec 09 18:24:34 at least it’s enough to prove the concept Dec 09 18:26:20 s73v3r: right, that's what i'd be doing at this stage Dec 09 18:26:50 you could also look at Amazon’s services, and Google’s services Dec 09 18:27:41 the advantage of using those services is that the sync stuff is already written for you, and on an infrastructure that’s scaled out Dec 09 18:28:13 that's fair; i'm probably overly optimistic about my ability to create the infrastructure Dec 09 18:28:32 for what it's worth this is probably only going to be used by myself Dec 09 18:28:48 i'm just a student; this isn't real software Dec 09 18:28:53 er, won't be Dec 09 18:29:25 good to know about the available options in any case Dec 09 18:29:42 no, don't Dec 09 18:29:44 do n' Dec 09 18:29:55 don’t think that because you’re a student, it’s not real software Dec 09 18:30:02 we are all students. Dec 09 18:30:02 that kind of thinking leads to shit apps Dec 09 18:30:12 take pride in your work Dec 09 18:30:38 I uploaded an APK to the store, and suddenly "mips" is supported as a native architecture. Is there any way to explicitly declare the supported architectures of the app (in order to remove mips) ? Dec 09 18:30:57 In the future, we will definitely not support mips, so I need to eliminate it at this time. Dec 09 18:33:11 In android studio is there a way to view and edit another tab/view/layout in Design mode? Dec 09 18:33:45 s73v3r: fair point, thanks Dec 09 18:35:20 Phaseout: what do you mean "another" ?? Dec 09 18:35:35 Phaseout: do you mean split view? right click a tab and click Split Dec 09 18:36:25 explodes_: I mean if I have two tabs in a tabhost or two layouts in a viewswitcher, is there a way to look at the second tab/layout in design? Dec 09 18:37:17 I don't think you can, you can view that view in its own designer, that is all you can do Dec 09 18:39:15 Ah, okay Dec 09 18:42:18 God, the documentation on the Android plugin for Gradle is SUCH a pain in the ass. Since it is always changing, there are a MILLION different posts, answers, and spreadsheets explaining a variety of incompatible settings you can tweak Dec 09 18:50:25 it hasn't changed that much Dec 09 18:52:35 com.android.model.application? Dec 09 18:53:51 I have no idea why my app suddenly "supports" mips according to the play store APK upload. Dec 09 18:54:14 because your ndk abi specifies all? Dec 09 18:54:23 * pfn shrugs Dec 09 18:54:49 I'm actually not using NDK for this app, I was looking at com.android.model.application because it has ABI options Dec 09 18:55:27 it shouldn’t matter then, if you’re not using native code Dec 09 18:55:58 I will be when we add variable playback speed to our video player Dec 09 18:56:27 I don't feel comfortable sending out a release that mips users can install, but will suddenly stop getting updates Dec 09 18:56:34 I'd rather they not get a copy ever at all Dec 09 18:57:09 why would you be using C code for variable playback speed? Isn’t that something built in? Dec 09 18:57:51 no Dec 09 18:58:05 i wish :) Dec 09 18:58:23 mediaplayer only supports standard playback speed Dec 09 18:58:27 but still, why C? Is that something you can’t accomplish with Java? Dec 09 18:58:30 no Dec 09 18:58:40 er, yes, can't be done in java Dec 09 18:59:28 explodes_, ok, first things first, the arch support is determined by which native libs are included Dec 09 18:59:45 explodes_, furthermore, there's no production tablet / android phones out there atm. Dec 09 18:59:53 explodes_: http://developer.android.com/google/play/filters.html Dec 09 18:59:54 at least nothing beyond very specific dev boards Dec 09 19:00:05 looks like you can set something in the manifest Dec 09 19:00:54 s73v3r, where does it say that_ Dec 09 19:00:57 ? Dec 09 19:01:02 toward the bottom Dec 09 19:01:08 CPU Architecture Dec 09 19:02:03 s73v3r, and what does it say? Dec 09 19:02:20 exactly what I said Dec 09 19:02:23 Mavrik: right, 2016 is when they'll start actually coming out Dec 09 19:02:33 for what? mips? Dec 09 19:02:44 Mavrik: I was wondering if maybe the playstore now includes support for mips by default in preparation. Dec 09 19:02:48 explodes_, if you absolutely MUST limit that now, I guess just include an "empty" .so native file for the standard set (armv7, arm64, x86, x64) and it'll trigger the filter. Dec 09 19:03:06 I don't see anytone actually using MIPS on devices on market in any mid-term future though. Dec 09 19:03:14 Mavrik: I already do ship with unused binaries, as it turns out. Dec 09 19:03:19 Still, mips shows up. Dec 09 19:03:30 armeabi, armeabi-v7a, x86 Dec 09 19:03:57 hmm Dec 09 19:04:19 it is indeed a universal build Dec 09 19:04:27 if that information helps Dec 09 19:04:44 explodes_, can you check if the unzipped APK includes he libs/ folder? Dec 09 19:05:40 WOW Dec 09 19:05:43 What the hell is this Dec 09 19:05:58 Suddenly there are misc. binaries in the apk that I have NO idea where they came from. I don't like this at all. Dec 09 19:06:23 libblasV8.so librsjni.so libRSSupport.so Dec 09 19:06:38 in the 4 architectures: armeabi, armeabi-v7a, x86, mips Dec 09 19:07:27 That looks like renderscript. Dec 09 19:07:58 ok, one of my dependencies undoubtedly is including these items Dec 09 19:08:44 libRSSupport is the renderscript support lib Dec 09 19:08:59 and librsjni and BLAS look like its dependencies Dec 09 19:09:20 let me check a previous release, why are these suddenly being included? i did bump the version numbers of a couple deps Dec 09 19:09:47 Well, I can't know that for you :) Dec 09 19:11:05 Found it, the culprit is the dep jp.wasabeef:picasso-transformations going from 1.2.1 to 1.3.1 Dec 09 19:11:52 Do you know of a way to exclude an architecture for a dependency? Dec 09 19:12:23 you can exclude the abi in gradle Dec 09 19:12:25 was just looking at that and I'm not sure Dec 09 19:12:46 pfn: how do you do that? Dec 09 19:13:03 I don't know, I don't use gradle Dec 09 19:13:17 I just know the flag is there Dec 09 19:14:13 I believe the gradle flag he’s talking about sets the manifest values Dec 09 19:14:25 http://www.javadoc.io/doc/com.android.tools.build/builder/1.5.0 Dec 09 19:14:30 abiFilters in that particular method call Dec 09 19:14:37 http://static.javadoc.io/com.android.tools.build/builder/1.5.0/com/android/builder/core/AndroidBuilder.html#packageApk(java.lang.String, java.util.Set, java.util.Collection, java.util.Collection, java.util.Set, boolean, com.android.builder.model.SigningConfig, java.lang.String) Dec 09 19:35:09 hi Dec 09 19:35:24 im on osx and it seems that adb has a broken symlink somewhere, anyone know how to find and relink it properly Dec 09 19:35:56 haven’t seen it, and I’m on OS X too Dec 09 19:36:03 got more info? Dec 09 19:42:39 syncing scrolling between multiple recyclerviews is a bit tricky but I've alllmost got it working Dec 09 19:42:46 wil probably release a small library for it Dec 09 19:49:26 uh, wth. just got the OTA for Android 6.0.1. how many times is the device supposed to reboot and optimize all the apps ? Dec 09 19:51:14 idk but i think i just found some sorta easter egg Dec 09 19:52:04 i was checking my N5 version and i guess if you click on the "Android version" 3 times you get a graphic representing 6.0 on the screen Dec 09 19:52:17 then if you long press that, you get to a android marshmallow version of flappy bird Dec 09 19:53:18 this 6.0.1 update has been going for like 25 minutes now Dec 09 19:56:19 shit, its hosed. keeps doing "Optimzing apps x of 39", gets done, says "Starting apps" and reboots Dec 09 19:56:53 plain nexus 7 with no tweaks from me Dec 09 19:58:45 s73v3r, just saw your msg. I have more info, but im goin to lunch. If you're around when i get back I will elaborate. Dec 09 20:08:34 matt_j, I'd like to see how you achieved it, I gave it a quick 15 minute shot and reverted to using list views Dec 09 20:13:33 matt_j: two recyclerviews in orthoganal directions? Or in the same direction? Dec 09 20:16:49 huh, context.getExternalCacheDir() returns null on the google emulator Dec 09 20:16:50 Does anyone know how I can get my SurfaceTexture to generate repeat frames at ~30fps while switching cameras? Dec 09 20:17:21 missingno, you need to create emulator with external storage to get externalCacheDir Dec 09 20:17:34 oh cool Dec 09 20:17:55 thanks pfn! Dec 09 20:18:47 im having a hard time getting experimental gradle 0.4.0 with gradle 2.8 to exclude files within a subfolder of one included in srcDirs. has anyone done this? Dec 09 20:20:03 e.g. i have source/, and im trying to exclude files within source/windows/ and source/ios/ Dec 09 20:31:43 Does anyone here have any SurfaceTexture experience? I feel like it’s poorly documented and I just need to get a good place to start. StackOverflow hasn’t been that helpful, nor Google’s docs. Dec 09 20:33:07 colintheshots, hrmf, what are you trying to do? Dec 09 20:33:33 I want to switch between the camera generating new frames and repeating frames while switching cameras. Dec 09 20:34:08 Camera1 or Camera2 API? Are you rendering directly to it or using OpenGL? Dec 09 20:34:38 I’m using Camera1. Dec 09 20:34:49 I want (even when my app is closed) to check for some new content in the background (let's say once an hour, or somehing configurable) and notify the user via toolbar notifications if there is somehting new. Is it good practice to have a service running in the background and sleeping for 1hour just to check something ? Dec 09 20:35:30 I’m rendering from the camera to the surfacetexture, but the GLSurfaceView’s renderer is using OpenGL to manipulate the results. Dec 09 20:36:03 Both onFrameAvailable and onDrawFrame don’t get called while I’m switching cameras. Dec 09 20:37:06 This means both that I can’t apply shaders and I can’t rely on callbacks when the camera is flipping. Dec 09 20:37:48 Looking at the pipeline / API I don't really see a good way of doing what you want Dec 09 20:38:09 Perhaps grab the last rendered preview frame, then switch shaders? Dec 09 20:39:39 Hmm, my core concern though is pumping frames into the SurfaceTexture. It seems this would resolve multiple issues for me. Dec 09 20:40:53 colintheshots, it' not entirely clear, you're already using OGL to render the preview right? Dec 09 20:41:20 Yes Dec 09 20:43:16 The camera is sending frames to the surfaceview, but OpenGL is manipulating them in the GLSurfaceView’s renderer Dec 09 20:45:00 I mean it’s sending frames to the surfacetexture, which OpenGL is manipulating in the GLSurfaceView’s renderer. Dec 09 20:45:19 Important difference. Dec 09 20:45:23 you're using samplerOES input in the shader right? Dec 09 20:46:31 Yes. The shader isn’t really the issue. I’m trying to get more frames added to the SurfaceTexture before it gets to the renderer. Dec 09 20:48:32 I’m not getting enough frames between stopping one camera and starting the next one. Dec 09 20:49:59 Not sure what do you mean by "not getting". Dec 09 20:50:14 OGL loop runs constantly and it does these things in realtime. Dec 09 20:50:29 There's nothing to get - the external source (OES) doesn't have texture data to provide Dec 09 20:51:11 So the camera produces frames to the SurfaceTexture. The SurfaceTexture feeds OpenGL. Whatever rendermode I use, I only get as many frames calling back as exist in the SurfaceTexture, right? Dec 09 20:51:40 No, camera produces frames in it's own buffer. Dec 09 20:51:49 SurfaceTexture has it's own OpenGL target (the Surface) Dec 09 20:52:05 And the OpenGL shader then samples data from the cameras buffer to the SurfaceTexture's surface Dec 09 20:52:20 Is there anywhere I can learn more about this? Dec 09 20:53:17 Hrmf, it's pretty fragmented, I bet source.android.com has an article, this is also useful: http://blog.imgtec.com/news/learning-about-the-android-graphics-subsystem Dec 09 20:57:10 Well, thanks for your help. I’ll keep looking. I feel like there must be as simple way to resend the last frame. Dec 09 20:57:23 I see some blog posts on that article as well. Dec 09 21:14:20 phew guess that was a close call. OTA failed but manual flashing worked Dec 09 21:22:14 does anybody know what could cause this? http://crashes.to/s/994b5e124f9 it only happens for some users and no, my Account type matches Dec 09 21:22:58 todoAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, todoItems); TodoListFragment listFragment = (TodoListFragment)getFragmentManager().findFragmentById(R.id.todo_list_fragment); listFragment.setListAdapter(todoAdapter); Dec 09 21:23:09 milkshake pastebin/hastebin Dec 09 21:23:17 okey i will Dec 09 21:23:20 sorry Dec 09 21:23:49 https://paste.kde.org/ptkc4fr8g Dec 09 21:24:05 danijoo, samsung users? Dec 09 21:24:11 i have a code like this for my activity.But this is for static fragment Dec 09 21:24:20 iprime, mostly HTC, about 45% samsung Dec 09 21:24:28 oh. only 18 samsung Dec 09 21:24:33 i changed it to for dynamic fragment Dec 09 21:25:53 like this https://paste.kde.org/pkq9lqsqb Dec 09 21:26:30 but setListAdapter gives me red underline error and says that cannot resolve method setListAdapter Dec 09 21:28:09 Spanning a staggeredGridView over 2 out of 3 columns while also having unique heights, any good ideas? With a staggeredGridView I can set it to either 1 column width, or the entire recyclerview width. Anyone have experience with this? Dec 09 21:30:10 does todolistfragment inherit from listfragment? Dec 09 21:30:49 ^ milkshake Dec 09 21:30:56 no Dec 09 21:31:09 i will try that Dec 09 21:31:12 thats the reason Dec 09 21:31:22 its a method of listfragment, not a method of fragment Dec 09 21:31:55 oo thank you Dec 09 21:32:03 that solved my problem Dec 09 21:36:11 i have another question also.İ am writing todoListfragment with recyclerview. should i place the code that is with setListAdapter inside the fragment or activity? Dec 09 21:38:47 you should make the adapter, the fragment and activity seperate classes Dec 09 21:38:51 each handling its own stuff Dec 09 21:54:13 Anyone know what’s wrong here: http://pastebin.com/b2N1cKTt ? this small code doesn’t open a dialog so that you can select a picture from the computer. Nothing happens when you click the button Dec 09 21:54:59 what in the world is addActionListener? Dec 09 21:55:08 use setOnClickListener Zajt Dec 09 21:55:22 awt?! Dec 09 21:55:29 What. Dec 09 21:55:33 That whole code makes no sense :) Dec 09 21:55:37 lol Dec 09 21:56:06 it's java but there is no java channel here so i asked it here if it's ok :) Dec 09 21:56:12 should have asked that before maybe Dec 09 21:56:35 ##java? Dec 09 21:58:27 hmm java channel worked now, not before. That's weird. sorry then! Dec 09 22:00:30 why would you ask awt in #android-dev... Dec 09 22:00:35 is there a channel suitable for questions regarding the android gradle plugin? Dec 09 22:02:09 This is as good as it gets Rajveer Dec 09 22:08:29 Rajveer you cal also try adt-dev group on google groups, xav might be able to help Dec 09 22:13:25 ugh, after updating to 6.0.1 i keep getting this dumbass dialog popping up "Allow google to check for security problems... allow|decline" Dec 09 22:14:27 g00s, yeah. annoying as hell. Dec 09 22:15:00 danijoo the OTA went into boot loop, i had to manually flash it Dec 09 22:15:04 g00s: that was there before 6.0.1. I get that all the time on my Xperia, and that’s only running 5.1 something Dec 09 22:15:11 Rajveer: what was the original question? Dec 09 22:15:25 s73v3r oh weird. i just saw it on 6.0.1. It pops up every time i deploy my app Dec 09 22:15:56 'learn mode in the google settings app' uh ok , nice to provide a shortcut Dec 09 22:15:56 g00s, i havent done the upgrade yet Dec 09 22:16:05 but i had thatr prior 6.0.1 too Dec 09 22:16:22 It occasionally shows up on my Xperia, but on the tablet I’m working on, running 5.1, it used to happen every time I deployed Dec 09 22:16:25 danijoo i was watching ADB logs, when the device booted .. at a point everything started OOMing Dec 09 22:16:48 it seems to have stopped now, but I don’t know if that’s related to the app being a sytem app or not Dec 09 22:16:56 So I decided to check out the preview of Android Studio 2. I can open existing projects just fine, but the program full on crashes if I try to create a new project (the window abruptly disappears before my eyes just as it seemingly finishes loading and should be ready to use) Anyone else having this issue? Dec 09 22:17:55 s73v3r yeah my app is not a system app Dec 09 22:18:05 wonder where the hell this is in the settings app though Dec 09 22:18:51 nothing in Settings / Security looks interesting Dec 09 22:18:52 g00s: Thanks for the advice, I may try that if I can't figure it out here Dec 09 22:19:58 hm, this looks promising "Developer Options -> Verify apps over USB" Dec 09 22:20:18 teasp00n: I can't seem to exclude files from android.sources.main.jni.source.srcDirs, I'm using experimental plugin 0.4.0. My source is within a source/ folder, and I'm trying to exclude source/ios and source/windows, whilst keeping the rest of the contents Dec 09 22:21:38 Rajveer: could you do that with build variants? Dec 09 22:23:19 Rajveer: have a product flavor for each of the platforms and just match the name of the product flavor to the source directory you want to use Dec 09 22:25:01 teasp00n: I'm not sure, the problem is that the platform folders are within the source directory, so if I include the source directory and then try to include the platform specific subdirectory, it will take everything Dec 09 22:25:35 teasp00n: I can't seem to be able to include source without including it's subdirectories, but I may be missing something Dec 09 22:28:22 Rajveer: do you have control over the project structure though? if so you could move them to whatever top level src dir you have? what is the full filepath for that 'source' dir from the project root? Dec 09 22:30:19 teasp00n: I was hoping I wouldn't have to do that, it may make more sense though. Right now I'm just testing with an absolute path; I can only get relative paths from the project root working on Windows and not OSX. But that's another problem Dec 09 22:31:34 teasp00n: If possible I'd rather find a solution that doesn't involve restructing the files, it will take some time and this works in all other IDEs (Visual Studio, XCode, Eclipse e.t.c) Dec 09 22:34:18 i have edit text, add button and list view on the screen.i want to add the things that are written to edittext to list view.for this purpose ı have to use fragment with recycler view.i did like this but there is an error while initializing adapter. Dec 09 22:34:19 https://paste.kde.org/ptkka9gnd Dec 09 22:35:54 Rajveer: hmm ok well by the looks of it flavours might still work. android.sources.main.jni.source.srcDirs will point to 'source' right? create flavours for your platforms and set android.sources..jni.source.srcDirs as required Dec 09 22:37:26 and you might need to remove the android.sources.main.jni.source.srcDirs one or it MAY include these too, in which case you would have the same issue Dec 09 22:38:35 pfn: yeah... I haven't perfected it yet Dec 09 22:38:44 it gets really annoying when there's like... multi-touch Dec 09 22:40:14 teasp00n: i think it will be the same thing with flavours, I'd still need to set android.sources..jni.source.srcDirs to point to 'source', and it would automatically include 'source/windows' and 'source/ios' if there is no exclude pattern no? Dec 09 22:41:00 is the shared stuff in 'source' and platform specific stuff in the subdirs? Dec 09 22:41:43 unfortunately yeah Dec 09 22:43:07 ok, that makes things trickier unless the gradle plugin provides an explicit exclude flag which im not sure about Dec 09 22:44:33 it does seem like exclude and excludes are there, but I can't get them to work http://stackoverflow.com/questions/32636150/define-local-src-files-in-ndk-dsl/32640823#32640823 (notice Alex's last edit) Dec 09 22:44:36 or moving shared stuff to a 'main' sub dir of 'source' but like you say, you would then need to update project descriptors for your other ides etc Dec 09 22:45:55 Rajveer: oh true, that does seem to be what you want. i assume that isnt working then :p Dec 09 22:47:10 teasp00n: nope, no luck :( Dec 09 22:48:27 teasp00n: i may have to just wait for the next version, or take the hit and move my source around. or go to adt-dev and ask xav as g00s suggested. thanks for the help :) Dec 09 22:49:46 Rajveer: good luck :) Dec 09 22:55:09 hey, does having system level permissions allow me to mess with iptables on the device? Dec 09 22:58:44 my hunch is no Dec 09 22:59:22 so how do I figure out why connectedAndroidTest is taking 30mins per test Dec 09 22:59:28 File.move isn't available. I want to move a directory A to location B Dec 09 22:59:31 is there like, a log for the headless emulator Dec 09 23:00:30 missingno, oh, I know you can do it if you have root. But isn't having sys level permissions equivalent to running as root? Dec 09 23:00:34 or am i completely wrong Dec 09 23:13:55 hi can somebody help me out with this error? Dec 09 23:13:56 Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lio/card/payment/CameraUnavailableException; Dec 09 23:14:04 while running application Dec 09 23:14:42 sounds familiar and googleable Dec 09 23:27:20 hello Dec 09 23:27:35 is this a good place to ask questions that are not quite stackoverflow worthy Dec 09 23:28:01 Maybe Dec 09 23:28:16 mostly light stuff like layouts Dec 09 23:28:27 Go ahead man Dec 09 23:28:40 those are perfectly stackoverflow worthy. They’re also perfectly cromulent to ask here Dec 09 23:29:10 Cromulent, nice Dec 09 23:29:24 well I want to copy the google maps bottom sheet which appears on place click. it has a FAB that in anchored to right|top but those do not work Dec 09 23:30:35 anchorgravity does not appear to let me put a FAB where I want it, even when it is a simple coordinator containing the fab and the layout that i want to pin it to Dec 09 23:42:43 What the heck is up with the google play developer console Dec 09 23:42:51 Been a horrible experience for me Dec 10 00:00:47 Anyone know how to create another build version to upload to google play? Dec 10 00:00:57 I generate a new apk, and try to upload it but it says I need a new version Dec 10 00:02:24 Oh, gradle Dec 10 00:04:10 do jar files generally include their dependencies? How do you work around getting the "multiple dex files define" such and such symbol message? Dec 10 00:09:54 heya guys, so, what is the best approach if i need tabs where each tab has a bunch of sub activities? the designers want the same tabs to be visible on all pages, including those sub activities Dec 10 00:11:28 Use Fragment Dec 10 00:11:31 s Dec 10 00:11:40 sounds like fragments to me Dec 10 00:13:11 alright, so, I replace the fragment for a tab if the user navigates "deeper" into that tab? Dec 10 00:17:36 pretty much Dec 10 00:17:56 either that, or convince the designers to use a side drawer Dec 10 00:18:02 trying to root my device, what a hassle... Dec 10 00:18:12 we don’t do root here Dec 10 00:18:32 yeah, I'm in #android for specific questions. here just for the dev community. Dec 10 00:18:59 is it normal for a jar file to include its dependencies? Having dex issues with support libs Dec 10 00:21:07 it is not normal Dec 10 00:21:26 but using old android libraries published on central will give you that problem Dec 10 00:21:33 because they use the badly published support-v4 Dec 10 00:24:02 yeah, its almost turning into a single activity app with like 30 fragments or so this way, that feels complex, think i'll have a chat with those designers Dec 10 00:25:26 remember, designers don’t have complete control over the app. they’re supposed to work with developers in order to make the best experience Dec 10 00:26:11 that is a good advice :) thank you s73v3r Dec 10 00:26:31 however, if they don’t budge, and you can’t get management on your side, either using Fragments, or going crazy and using an Application Root View would be your best bet Dec 10 00:27:47 alright, thank you :) Dec 10 00:30:42 luceat having multiple tabs on a screen, where a child can replace a parent in one tab, is bizarre Dec 10 00:31:23 usually the screen with tabs is independent top level spaces Dec 10 00:37:03 yeah, I'm finding its a bit weird too, as I understand it, they want to have clicking a tab taking you back to that top level fragment, I find it cleaner with toolbar for child views with Up and Home actions Dec 10 00:37:44 luceat maybe try showing the designer the Youtube app, which has tabs and deep hierarchy .and some tricks Dec 10 00:41:03 they’re doing tabs the iOS way Dec 10 00:41:56 the designers you mean? definitely seems like they do yeah Dec 10 00:42:03 its a good idea g00s Dec 10 00:44:00 luceat also notice how tabs & nav drawer interact in play store Dec 10 00:44:13 you can pull out the drawer in child views Dec 10 00:49:56 in the Contacts app, if you select a Contact (so you are in details), swiping down dismisses the screen with a nice animation. wonder how they do that Dec 10 00:51:42 i’m guessing that’s only on 6.0? Dec 10 00:52:16 s73v3r hm, you don't see it ? ok i notice that behavior in nick butcher's Plaid app also Dec 10 00:52:21 time to study the code Dec 10 00:52:29 i’ve seen that Dec 10 00:52:45 my phone is a sony, so i doubt i’d have it anyway Dec 10 00:53:17 i’m guessing they put some kind of gesture listener on the detail fragment, and start the dismiss animation when they detect a swipe Dec 10 00:53:42 I have an activity that receives video shares from other apps via ACTION_SEND. Sometimes these are content:// Uris. I would like to upload those videos to my backend with Retrofit, which needs a java.io.File, not an InputStream. What is the best way to get a File from these Uris? Or, what is the accepted way of doing this? Dec 10 00:55:43 can’t you write a file from an input stream? Dec 10 00:56:46 I could but these video files are potentially very large and I can't really dupe them to a tempfile. Dec 10 00:57:24 i don’t think Retrofit is what you’d want to use, then Dec 10 00:57:32 Retrofit is more for being a REST client Dec 10 00:57:43 not true Dec 10 00:57:50 also Retrofit doesn't work with just File Dec 10 00:58:01 are you using Retrofit 1.x or 2.0-betas? Dec 10 00:58:21 pffff, who are you to tell me i’m wrong. :p Dec 10 00:58:27 using the latest beta Dec 10 01:04:22 where can i see a list showing the different types of view i can add to my main.xml such as ImageView, TextView etc etc. i looked in the developer second on view and it doesnt list ANY of them that i can find Dec 10 01:05:09 im trying to add a 9 patch ImageView but the view expander is scaling the 9 patch in a non 9 patch way making it look wrong. Dec 10 01:05:33 is there a 9 patch view type i can add to my main.xml to make the scaling conform to the 9 patch standard? Dec 10 01:13:15 JakeWharton indeed I see that RequestBody will accept byte content instead of File, which is still problematic since that would necessitate loading the video entirely into memory Dec 10 01:13:57 actually now i think the scaling of the 9 patch is just being done wrong Dec 10 01:16:05 actually, I believe I see a solution. subclassing RequestBody and setting the Okio.source to the content provider's input stream may work Dec 10 01:17:32 s73v3r hm, seems the details are just put in a bottom sheet which expands full screen, and then the downward swipe dismisses the bottom sheet Dec 10 01:17:49 yup. this 9 patch scaling is not working right. android is scaling parts of the image not marked as scalable Dec 10 01:18:56 s73v3r but there's lots of trickery in the impl because you can still scroll the contents of the bottom sheet Dec 10 01:19:31 I wonder why that was chosen rather than using a regular View or Fragment and having a custom animation? Dec 10 01:21:17 anyone here care to look at my 9 patch and tell me why android is scaling 100% of it not just the part marked ? Dec 10 01:23:35 * g00s hates 9 patches Dec 10 01:23:48 they are cool when they work right Dec 10 01:23:56 i have one thats working fine and one thats being a complete bitch Dec 10 01:24:33 also cant seem to set the imageview alpha in my xml. no matter what i set it to its the same :/ Dec 10 01:26:05 actually alpha of 0 works but makes it totally invisible, and alpha of 1 makes it totally visible Dec 10 01:30:55 s73v3r its pretty nice, but when you're the only one working on an app - glittery stuff like this takes backseat :( Dec 10 01:31:15 well, it would if it wasn’t already done for you :p Dec 10 01:45:25 mornin' all Dec 10 01:45:49 How you doin'? Dec 10 01:46:14 not bad at all Dec 10 01:46:28 got a new (infuriating) toy Dec 10 02:03:24 Facebooks insights dashboard looks pretty cool, can log how long users are in each activity Dec 10 02:11:35 alex_PP what toy ? Dec 10 02:11:44 Xperia Z5. Dec 10 02:11:53 :D Dec 10 02:12:03 alex_PP Lightroom for Android 1.4 Dec 10 02:12:08 pretty nice hardware, but the software is aweful Dec 10 02:12:26 took me all day to disable the stock apps and install the google alternatives Dec 10 02:12:37 yeah, I saw Lr. Dec 10 02:12:40 I like the Sony stuff. ;o Dec 10 02:12:42 subscription though, innit? Dec 10 02:13:10 not ... sure. yeah i spent 2 hours today updating from 6.0.0 to 6.0.1 - OTA went into boot loop Dec 10 02:13:17 had to flash manually Dec 10 02:14:49 "After your trial has expired, you’ll continue access to all the editing capabilities for free on your smartphone or tablet." Dec 10 02:14:53 interesting Dec 10 02:15:43 drose379: I didn't get a message earlier. Dec 10 02:23:14 How does the @NonNull annotation work if it's a runtime problem? Dec 10 02:23:22 or is NonNull solely for compile time? Dec 10 02:24:05 isn't it just for documentation ? Dec 10 02:24:38 is it possible to get parameters from request using okhttp ? Dec 10 02:26:33 Afzal, purely for static checking at ci Dec 10 02:26:38 compile Dec 10 02:26:58 pfn then I find it odd that Android Studio suggests I remove the null check insdie the method Dec 10 02:27:22 "The compiler can determine cases where a code path might receive a null value, without ever having to debug a NullPointerException" Dec 10 02:27:49 g00s heh. In my case, the parameter being passed is a Context :p Dec 10 02:27:52 eh an annotation called @m Dec 10 02:28:20 I just don't want a developer to pass null to the method but there definitely has to be a null check for runtime Dec 10 02:30:19 gordon_: I believe you can get the HTTPUrl using request.httpUrl() then get the params from there. Dec 10 02:30:33 http://square.github.io/okhttp/2.x/okhttp/com/squareup/okhttp/HttpUrl.html Dec 10 02:30:41 shadynastys: that will work, if my request is not POST Dec 10 02:30:53 (I need to make hash from parameters) Dec 10 02:31:12 s73v3r oops, i think it might actually be ElasticDragDismissFrameLayout Dec 10 02:31:48 Ok I keep removing something from my manifest and trying to build but AS keeps adding what I am removing back Dec 10 02:32:20 drose379: You might be editing the auto-generated manifest. Dec 10 02:32:44 Ahhh Dec 10 02:32:48 I didnt even know there were two Dec 10 02:32:51 Afzal: I think the standard is to throw an IllegalArgumentException. Though some argue in favour of a NullPointerException. Dec 10 02:34:26 TacticalJoke I think most would argue a compile time error rather than a runtime one :) Dec 10 02:34:44 And I'd like to just safely ignore the action if the context is inaccessible Dec 10 02:34:47 That would require changing language. Dec 10 02:34:54 I'm assuming we're talking about using Java here. Dec 10 02:35:11 TacticalJoke yes, with annotations, that's possible of course Dec 10 02:40:00 TacticalJoke have you plaid with nick butcher's plaid app ? Dec 10 02:41:18 Nah. Is it anything interesting? Dec 10 02:41:37 tons of UI custom gogglygook Dec 10 02:41:44 but its nice to see how its done Dec 10 02:42:57 he doesn't use any Fragments Dec 10 02:43:38 I woolen-vestigate it. Dec 10 02:43:47 Link? Dec 10 02:44:20 drose379 https://github.com/nickbutcher/plaid Dec 10 02:44:28 warning, complicated code ahead :D Dec 10 02:44:36 drose379 its in Google Play too Dec 10 02:44:52 Does he hang here? Dec 10 02:45:19 That is beautiful, wow Dec 10 02:47:00 Afzal, you fire the developer who passes in a null for something @NonNull Dec 10 02:47:15 nick butcher? no, he's a googler Dec 10 02:47:26 pfn ..you know context can just become null for a shitload of reasons, right? Dec 10 02:47:38 (and no I'm not holding a reference to it) Dec 10 02:47:41 Afzal, false Dec 10 02:47:50 Afzal, something doesn't turn into null magically Dec 10 02:48:02 I don't trust contexts with that. :/ Dec 10 02:48:07 a context cannot become null Dec 10 02:48:16 nothing to trust Dec 10 02:48:41 of course, for example, Fragment.getActivity is /not/ @NonNull Dec 10 02:48:57 AS will complain if you try to pass fragment.getActivity() directly in for a @NonNull context Dec 10 02:49:30 what if the fragment was detached and getActivity() returns true at runtime? Dec 10 02:49:40 then what does the app do? Dec 10 02:49:42 you don't understand programming if you ask that Dec 10 02:49:51 sure Dec 10 02:49:56 let's go with that mundane answer Dec 10 02:50:03 I mean Dec 10 02:50:07 say you have foo(@NonNull Context c) Dec 10 02:50:15 I meant fragment.getActivity() returns null Dec 10 02:50:15 you /cannot/ call foo(fragment.getActivity()) Dec 10 02:50:32 because AS will flag it as an error Dec 10 02:50:37 so now *they* have to put in a null check? Dec 10 02:50:41 false Dec 10 02:50:49 no one has to put in a null check Dec 10 02:50:57 AS will not let you pass foo(fragment.getActivity()) Dec 10 02:50:59 so that statement is just not possible then? Dec 10 02:51:01 that's it? Dec 10 02:51:17 AS will force you to Context c = fragment.getActivity(); if c != null foo(c); Dec 10 02:51:34 pfn [21:50:37] so now *they* have to put in a null check? Dec 10 02:51:43 yes Dec 10 02:51:43 stop wasting my time pfn, that's a null check Dec 10 02:51:49 you never said who "they" is Dec 10 02:51:51 [21:50:49] no one has to put in a null check Dec 10 02:51:58 ok thanks Dec 10 02:51:59 since we were talking about foo(), the assumption was in there Dec 10 02:52:10 so, no, "they" (foo) does not put in a null check Dec 10 02:52:20 okay, thank you **** ENDING LOGGING AT Thu Dec 10 02:59:59 2015