**** BEGIN LOGGING AT Thu Mar 03 02:59:58 2016 Mar 03 03:00:05 g00s, yeah I've been googling for about an hour now Mar 03 03:00:30 in particular I'm looking for something that would fit with my android studio setup Mar 03 03:00:47 I don't want cutting edge games, just simple 2d games Mar 03 03:00:49 andengine and libgdx are java right ? Mar 03 03:07:51 g00s: believe it or not I do read docs Mar 03 03:08:28 its not always understandable. I've read this page a bunch of times, it doesn't always stick hah Mar 03 03:09:16 RustyShackleford do you see it now? its at the end Mar 03 03:48:24 g00s: I'm going to filter data in one fragment depending on which stop and which route the user selected Mar 03 03:48:49 do I need to create a new instance if the user goes back and decides on a different set of arguments? Mar 03 03:49:53 yes I read the docs, makes more sense now. Just had to read it once more Mar 03 03:52:47 also, is there anything wrong with adding parameters to a Fragment's constructor? Mar 03 03:52:52 I never see it in examples Mar 03 03:54:53 is there known bug for android studio 2.0 beta6 when creating emulators ? Mar 03 03:58:14 RustyShackleford, only use no-arg constructors for fragments Mar 03 03:58:22 RustyShackleford, they must be creatable by framework Mar 03 03:59:05 http://developer.android.com/intl/zh-cn/reference/android/app/Fragment.html third paragraph Mar 03 04:00:13 okay so I need to make my models parcelable Mar 03 04:00:37 or I can pass stopId as an argument I guess Mar 03 04:01:50 make them serializable to begin with Mar 03 04:02:01 make them parcelable as the need for optimization arises Mar 03 04:02:25 I think I can even generate the method Mar 03 04:04:01 why serializable vs parcelable? Mar 03 04:05:09 oh. How have I never heard of this? Mar 03 04:06:09 Hey guys I was wondering if someone could help me out. I can't manage to get my Nexus 6p to show up as authorized in adb devices Mar 03 04:06:31 I have tried adb kill-server turn usb debugging off and on, and revoke all permissions, then adb start-server plug back in Mar 03 04:06:35 but it is not working still Mar 03 04:07:41 I am not sure what to do Mar 03 04:08:48 I have installed the google usb drivers seeing as that is relevant. Mar 03 04:09:13 plug phone in, turn screen on Mar 03 04:09:17 that's about it... Mar 03 04:09:40 right... but when i do adb devices it says "Device ID String unauthorized" Mar 03 04:09:49 then you need to authorize from device Mar 03 04:09:57 There is no popup asking me to do so Mar 03 04:10:23 I would love to but I am not sure how to without the popup Mar 03 04:10:25 * pfn shrugs Mar 03 04:10:28 never not popped up for me Mar 03 04:11:13 "Had the same issue. Solved it by enabling PTP in Settings - Storage - (menu button in the upper right) - USB-Connection. After enabling PTP the Popup with RSA key appeared." I haven't tried that yet, I will let you know with results Mar 03 04:11:27 I googled no RSA popup and got that. Mar 03 04:18:33 Ah! pfn, I found the solution Mar 03 04:18:38 I needed to go to my .android folder Mar 03 04:18:42 and delete my adbkey file Mar 03 04:18:48 because there was no adbkey.pub file Mar 03 04:18:53 then I restarted the adb server Mar 03 04:18:56 and it produced both Mar 03 04:19:01 Plugged phone in and the prompt came up Mar 03 04:19:02 :) Mar 03 04:19:23 now it is authorized :D Mar 03 04:19:42 how'd you manage to fuck up your adbkey files Mar 03 04:21:53 eh, apple's next iPhone will have 4" model Mar 03 04:22:01 i'd go for a 4" nexus Mar 03 04:27:34 pfn, no idea Mar 03 04:27:49 I literally just saw someone say it might help Mar 03 04:27:51 I went there and did it Mar 03 04:27:56 Sure enough it worked Mar 03 04:28:52 g00s: if it was good quality ;0 Mar 03 04:28:54 ;) Mar 03 04:29:13 i wish sony would make a nexus Mar 03 04:40:31 i'm going to buy that 6P some day Mar 03 04:40:40 maybe when I can walk I'll go to Best Buy and check it out Mar 03 04:41:32 g00s: taht would be the most expensive nexus ever Mar 03 05:05:51 man, you lag so long on getting a phone Mar 03 05:07:01 don't need one, <3 my lumia Mar 03 05:07:19 but i'd like a nexus phone for dev Mar 03 05:07:25 then get one Mar 03 05:10:01 windows phone [ Mar 03 05:10:06 ['] Mar 03 05:11:26 if WP could do Scala you scala guys would be all over it :D Mar 03 05:11:40 i guess you're trapped on android though Mar 03 05:11:45 so sad Mar 03 05:12:15 no ? Mar 03 05:12:20 haha Mar 03 05:12:27 robovm -> android Mar 03 05:12:33 -> ios Mar 03 05:12:46 who knows what will happen to robovm Mar 03 05:12:46 not mentioning scala llvm is in development ;) Mar 03 05:13:03 now that is cool gordon_ Mar 03 05:13:12 also, I got to android because it's open source Mar 03 05:13:16 so... Mar 03 05:13:33 it's cool, but you will code in kotlin Mar 03 05:13:35 :P Mar 03 05:14:44 g00s is afraid of all technologies Mar 03 05:15:01 I know many people like that Mar 03 05:15:19 'because what if someone new will come to the team?' Mar 03 05:15:26 I guess... he can learn ? Mar 03 05:15:51 unless he's IQ is the same as amoeba Mar 03 05:16:04 which I hope is not Mar 03 05:21:49 i love tech, but i'm always thinking about problems to solve. its just a tool, so i may seem to have lack of enthusiasm Mar 03 05:22:22 for me more a meaning to an end Mar 03 05:22:46 I like tools Mar 03 05:22:50 tools are cool ;) Mar 03 05:24:14 i'm keeping a close eye on Ceylon's android support. should be around the corner - but still same problem, i don't have much new java code to write , and rewriting what i have doesn't make all that much sense to me. we'll see Mar 03 05:25:51 gordon_ the llvm stuff isn't dotty is it ? Mar 03 05:26:12 no it's not **** BEGIN LOGGING AT Thu Mar 03 05:29:14 2016 Mar 03 05:54:51 ActiveAndroid ['] Mar 03 06:29:48 why do you need new java code to write... Mar 03 06:30:01 but I guess you're investing everything you got into your one app... Mar 03 06:36:21 question: what's the best way to encapsulate a websocket connection (using e.g. nv-websocket-client) in an android service? The problems I'm experiencing are leading me to believe that I'm attacking the problem in the wrong way. Mar 03 06:37:06 I want the service to start, and create the websocket connection, and then stay running (ostensibly) forever. meanwhile, the service needs to be able to send outgoing requests. Mar 03 06:37:30 Not a good idea to keep a network connection open all the time Mar 03 06:37:46 CedricBeust: it's a weird environment. It runs on cash registers that are always plugged into mains. Mar 03 06:38:14 Use push notifications to notify the device when something is available on the server, but don't keep that connection open Mar 03 06:38:30 sounds like clover Mar 03 06:38:36 CedricBeust: push notifications require the app to be in the play store, don't they? Mar 03 06:38:38 pfn: yup. Mar 03 06:39:06 yup as in this is clover, or something like it Mar 03 06:39:12 pfn: as in this is clover Mar 03 06:39:15 ah, I see Mar 03 06:39:42 which has its own whole separate infrastructure Mar 03 06:41:20 CedricBeust: so push notifications may not be an option. I don't *think* our use case is exactly typical. Mar 03 06:41:54 Indeed. But keeping that connection open will kill your battery. Mar 03 06:42:03 CedricBeust: which again, this device does not have. Mar 03 06:42:11 CedricBeust: it is always plugged into mains power Mar 03 06:42:13 CedricBeust, it's a POS device Mar 03 06:42:22 Yeah I understand that now Mar 03 06:43:05 why do you want to run websocket connection forever Mar 03 06:43:53 CedricBeust: given that.... starting a service creates a task id which needs to be cleaned up with stopSelf() (I think?). So, calling startService() with a START_LISTENING action and then subsequently with SEND_FOO_MESSAGE actions would mean leaking task IDs (wouldn't it?). But calling stopSelf to clean them up would cause the service to shut down since there's no way to leave an old task ID running after more recent ones have been stopped Mar 03 06:44:11 squ: to receive messages from another device in the same location. Mar 03 06:44:37 do you want a forever-open connection for that Mar 03 06:45:24 squ: for the moment, yes ;) but this is still quite early in the development process. Polling *might* be an option but it doesn't match what we're doing anywhere else, so I'd have to go see what's possible Mar 03 06:45:43 for the moment, why Mar 03 06:46:02 and why polling Mar 03 06:46:06 .... Mar 03 06:46:11 one moment, I'm searching that link Mar 03 06:46:16 okay :) Mar 03 06:46:44 I remember reading it week ago, it was somewhere here ... :) Mar 03 06:46:47 so, our application needs to receive messages and respond to them quickly. That either means push notifications (which are problematic in our case), polling, or keeping a connection open and waking up when we receive bytes. Unless there's a fourth option Mar 03 06:46:48 hehee Mar 03 06:47:51 and all I meant by "for the moment, yes" was that I didn't yet have a better idea or sufficient understanding of the problem space to come up with one :-\ Mar 03 06:48:27 so just keep a websocket open Mar 03 06:48:39 it has its onMessageReceive() something right Mar 03 06:48:46 Ashiren: and yeah, that was my intention. Which lead to the question I asked above Mar 03 06:49:45 Ashiren: exactly how best should I encapsulate it in a service? Since the IntentService model doesn't quite fit, since there has to be a first intent to wake it up and cause it to connect, which then lasts forever and overlaps with all subsequent requests Mar 03 06:49:50 https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/NetworkingOverview/Discovering,Browsing,AndAdvertisingNetworkServices/Discovering,Browsing,AndAdvertisingNetworkServices.html Mar 03 06:50:16 this is as close as I could find in this time Mar 03 06:50:24 thanks squ. I'll read through it. Mar 03 06:50:36 then use normal service Mar 03 06:50:37 you are introducing a service Mar 03 06:50:58 then your client discovers and connects to a introduced service Mar 03 06:51:08 and creste ws/thread in onCreate, and release things in onDestroy Mar 03 06:51:09 and vice versa Mar 03 06:51:11 pipegeek, service is only a lifecycle container Mar 03 06:51:21 pipegeek, designing around service is a recipe for fail Mar 03 06:52:27 for apple it works automagically via bluetooth or wifi with zero configuration Mar 03 06:52:45 in 1 line of code to introduce Mar 03 06:53:16 pfn: yeah. I'm starting to get that. But the lifecycle is important. I want a) to be able to start listening as the result of android.intent.action.BOOT_COMPLETED and b) to have a context from which to launch an IntentService to handle responses Mar 03 06:53:26 that way you don't keep an open connection or track server-client ips or what ever Mar 03 06:53:36 pipegeek, the lifecycle and your business logic can be independent Mar 03 06:55:19 pfn: hmm. So... this may be a stupid question. if I have a BroadcastReceiver that's listening for BOOT_COMPLETED, and I just start the websocket connection thread there... if it wakes up in response to a message from the websocket server and then wants to bind to an external service, how can it do that without a context? Mar 03 06:55:45 it is called, “DNS-Based Service Discovery” Mar 03 06:56:03 squ: so zeroconf is pretty cool. It depends on IP multicast though doesn't it? Mar 03 06:56:11 which in turn depends on properly configured networking hardware Mar 03 06:56:12 pipegeek, your broadcast manager starts your service which acts as the lifecycle container, the service can launch your websocket connection, abstracted through whatever Mar 03 06:56:13 I have no idea of internals Mar 03 06:56:15 which we can't depend on. Mar 03 06:57:15 pfn: cool. So the service is the container for the websocket connection. If another component wants to send a message, it then has to either bind to that service or call startService with an intent, though. Because it's the Service that has a reference to the connection object Mar 03 06:57:28 no Mar 03 06:57:30 but if you continue doing what you intended to do, forever-open websocket, you will later have to redo it again and waste your time Mar 03 06:57:35 well, up to you how you expose your connection object Mar 03 06:57:41 aaaahhhhh. Mar 03 06:57:42 if you want to expose it via a binder... yuck Mar 03 06:57:48 so what's the better alternative? :D Mar 03 06:57:53 that's what I'd really love to know Mar 03 06:57:59 any sort of singleton registry Mar 03 06:58:01 because yeah, I feel very strongly that I'm Doin It Wrong Mar 03 06:58:03 okay! Mar 03 06:58:17 neat. Mar 03 06:58:30 pipegeek: network printers use this service mechanism Mar 03 06:58:47 have you used printer on local network, ever? Mar 03 06:58:54 it works like a charm Mar 03 06:59:50 pfn: so, if I'm understanding you correctly, then the connection object needs a reference to the service that encapsulates it, in order to be able to start other services (since you need a Context to be able to do that) Mar 03 06:59:57 so I've got the reference pointing in the wrong direction! :D Mar 03 07:01:07 squ: so, part of the problem is that this isn't entirely in my hands. This is already the model we've been using for some time to communicate between devices we control in the same location. I'm not sure why we're doing it this way and I've never been thrilled with it, but changing how that communication works woulud be a Big Cross-Team Decision. Which may be the right decision. Mar 03 07:01:20 context is easy, expose your application context as a singleton Mar 03 07:01:22 squ: that said, I *have* used printers and you don't know how badly some merchants' networks are set up haha Mar 03 07:01:27 I'm not reading that big irc messages sorry Mar 03 07:01:49 squ: TL;DR: I don't get to pick the model. zeroconf may be the answer. That doesn't mean I can do it. Mar 03 07:02:07 pipegeek: for apple it works via bluetooth automatically without the need to dive into depths Mar 03 07:02:20 squ: bluetooth is 2.4GHz. 2.4GHz is noisy. Mar 03 07:02:43 squ: this is plugging into an existing ecosystem of devices. We'd have to redesign it. We might. We won't right now. Mar 03 07:02:51 I don't get ‘noisy’ part Mar 03 07:03:39 squ: 2.4GHz is an unregulated (I think?) band that a ton of devices talk in. Even microwave ovens spew noise in that band iirc. In a dense city, this can result in dropped connections. Mar 03 07:04:19 you heard that Mar 03 07:04:27 no, I experienced that in my apartment ;) Mar 03 07:04:30 and in my last office Mar 03 07:04:45 so you are experienced guy Mar 03 07:05:06 squ: bluetooth can also be sort of an unpleasant end user experience. Which doesn't mean it should be ruled out and in fact we're playing with using BLE for a few things Mar 03 07:05:24 squ: but like I said: this is not 100% my call. Mar 03 07:05:33 squ: yes, just not with android development. Mar 03 07:05:47 I'm a rank newbie here :) Mar 03 07:06:16 you want to avoid android phone and a server being in local network, because I'm citing you: “you don't know how badly some merchants' networks are set up” Mar 03 07:06:35 at the same moment you don't want bluetooth because: your past experience Mar 03 07:06:57 I'm not sure I follow your point. Mar 03 07:07:35 I'd love to have both devices communicating directly over the local network. Service discovery isn't a totally easy problem. Mar 03 07:07:48 and again, the decision to build it this way happened a year ago, and was done by other engineers. Mar 03 07:07:58 pipegeek, nsd/mdns/bonjour is pretty easy Mar 03 07:08:12 thought you wanted avoid local network, then service dicsovery will be fine Mar 03 07:08:41 just like what network printers do Mar 03 07:08:58 pfn, squ: what if you have a router that isn't correctly forwarding multicast traffic, and two separate wireless networks (say, for 5GHz and 2.4GHz)? Mar 03 07:09:45 then you have devices that cannot locate each other. This can happen for instance with a roku and a roku remote app running on a phone. They can route to each other but that doesn't mean they can discover each other. Mar 03 07:10:26 squ: also some merchants impose oddly conceived limitations on what devices on their networks are alloewd to do. Mar 03 07:10:35 two wifi networks isn't a problem Mar 03 07:10:39 pfn: no? Mar 03 07:10:42 but if you have a misconfigured router, you get it configured right Mar 03 07:10:48 hi guys, i am trying to make live audio stream from my app to my server. i am using audioREcord in a threaad and add the data i read into a queue. and in a second thread i send the data in the queue into th serve. my problem is the stream i get isnt playable even with Audacity. i am not sure if the problem is in my client code or the way i transfer it to my server. i use http post Mar 03 07:10:48 (multipart/form-data) so it wont ruin the stream. help please? Mar 03 07:11:07 pfn: and there's your problem. We're targeting this at nontechnical people. We're judged on how turnkey our solution is. Mar 03 07:11:12 "just fix your network" is not an option. Mar 03 07:11:19 we're in the small-medium business space. Mar 03 07:11:30 Bored: as a guess, are you using correct file format for streaming Mar 03 07:11:48 if Audacity can't play it Mar 03 07:11:56 then it is corrupt, no? Mar 03 07:12:12 pfn: like... we can only make a few assumptions. We didn't even assume that devices would be able to route out to the internet all the time until *quite* recently Mar 03 07:12:20 and now that's one of the few things we're depending on Mar 03 07:12:41 yes, but sometimes it can play it but its like 0.25 sec of record and just static noises :/ Mar 03 07:12:44 pipegeek: go do some research and come back with results, we'll be glad to discuss it Mar 03 07:13:30 squ: I feel like I haven't been entirely unreasonable here. I'm approaching a problem with constraints that I didn't get to set. Mar 03 07:13:39 squ: but we most certainly will. Mar 03 07:13:42 but we have said what to do Mar 03 07:14:44 squ: and I've said why I suspect that may not work for us. But it's something we'll be considering. That said, my original question was, given our current infrastructure, what do? And "go rebuild your whole application" really isn't an answer to that. Mar 03 07:15:05 ask network guys Mar 03 07:15:07 but you've certainly given me some things to think about. Mar 03 07:15:27 if your network is corrupt then ask network guys how to fix it Mar 03 07:15:34 damn Mar 03 07:15:42 squ: it's not our network. It's a tiny restaurant run by two old men. Mar 03 07:15:50 but, like... thousands of them. Mar 03 07:15:52 squ i dont have a clue what is wrong and its frustrating Mar 03 07:15:56 there is no network gyuy Mar 03 07:16:26 Bored: try .wav format it is very hard to break it Mar 03 07:17:31 squ: and I didn't ask for a better architecture, though I do like that idea on paper and it would be fun to investigate. I actually just asked a question about how android applications are structured---the rest was all background. Mar 03 07:17:36 but I appreciate your help. :) Mar 03 07:18:00 squ what do you mean by format? it doesnt matter for Audacity it read the file and doesnt consider the extension. and even when i change extension it wont matter Mar 03 07:18:50 well, as you said, for an unknown reason file is filled with noise Mar 03 07:19:10 pfn: Thanks, by the way. I know I've been bugging you a lot today, and I appreciate your patience :) Mar 03 07:19:21 have a pleasant evening. Mar 03 07:19:22 my guess is that the format and\or encoding is corrupt Mar 03 07:19:46 this is why it would be ok to try un-encoded raw .wav Mar 03 07:20:09 maybe the method i pass the stream change the encode? i use http post Mar 03 07:20:23 I have no idea Mar 03 07:21:22 Hi guys. Anyone in here uses SDL to develop for android? Mar 03 07:21:24 ok thanks for trying, ill try fixing it again:) Mar 03 07:31:00 Hexmind: no but I know opensource project which does it Mar 03 07:32:33 gordon_, it's just that I'm trying to get an app to run on my device. I've built it following the guide on sdl's website but the app complains it's missing libSDL2.so. Was just wondering where I put it. Mar 03 07:35:13 src/main/jniLibs/armeabi-v7a/ Mar 03 07:35:14 or Mar 03 07:35:23 src/main/jniLibs/x86 Mar 03 07:35:30 src/main/jniLibs/mips Mar 03 07:35:38 whatever your architecture is Mar 03 08:04:38 I have a max heapsize of 256mb on my device. However, when my app uses 30mb the app already becomes extremely slow and I sometimes get OOM Exceptions. How come I am getting OOM if my max heap is 256? Mar 03 08:07:43 barq maybe its fragmented Mar 03 08:08:06 What do you mean by that Mar 03 08:08:24 like swiss cheese Mar 03 08:09:02 Why would heap fragmentation cause an OOM if I still have lots of room to spare? Mar 03 08:09:32 Oh, you can only allocate continuous chunks Mar 03 08:10:16 How can that problem be solved, though or is there any way to check this fragmentation? Mar 03 08:14:06 is there a way to open a folder in the phones file manager, if installed Mar 03 08:14:17 such as ES or "My Files" on Samsung / Cyanogen Mar 03 08:14:26 (using an intent) Mar 03 08:14:35 can't seem to find a reliable way Mar 03 08:52:08 tx: are you trying to write a file manager? Mar 03 08:52:12 it's not so hard Mar 03 08:52:18 look into File documentation Mar 03 08:56:00 nope Mar 03 08:56:07 trying to open one, got it working though ;) Mar 03 08:58:30 you need to know what the Intent is if at all Mar 03 08:58:44 I don't think there is a default file viewer intent Mar 03 08:58:59 there isn't, I just did a generic one Mar 03 08:59:12 the user will know to choose a file explorer, the app is for a very specific purpose Mar 03 09:07:45 morning fellas Mar 03 09:10:20 morning Mar 03 09:19:34 anyone has experience with espresso and testing intents to twitter login / facebook login ? Mar 03 09:19:52 stuck with java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.Instrumentation.runOnMainSync(java.lang.Runnable)' on a null object reference Mar 03 09:22:35 what an annoying bug https://code.google.com/p/android/issues/detail?id=172339 Mar 03 09:25:14 fffffff Mar 03 09:25:17 uuu Mar 03 09:25:18 cccc Mar 03 09:25:19 kkkk Mar 03 09:25:35 I was spending all this time.. trying to work out why n] Mar 03 09:25:43 I like that bug, that is a nice bug Mar 03 09:25:48 Hey guys... is it possible for the GPS driver to work a bit different on some devices? On the samsung S3 my GPS drivers seem to act a little strange Mar 03 09:25:56 push notificatios where appearing in the notification area and not passing though the app Mar 03 09:26:15 It will just not get a lock for quite some time ...just remain 0,0 Mar 03 09:26:21 turns out GCM supports a second type of "notification" messages rather than the classic "data" payload option. Mar 03 09:26:24 and it auto displays it Mar 03 09:26:26 ffffff Mar 03 09:26:29 https://developers.google.com/cloud-messaging/concept-options Mar 03 09:29:08 Hi, is it possible to sniff bluetooth on my android device? Mar 03 09:32:46 hi, as i said before i am trying to make live audio stream from my app to my web server. my php code is just fine, i am using http post(file) and i can get file that i upload. the same way i can get the stream from the android app. so i have class that start thread of recording (AudiRecord) and i add the read into a queue. then i start another thread that send from the queue to the server. Mar 03 09:32:46 The problem: the stream isnt playable. Audacity doesnt recognize it. does someone can help me please? Mar 03 09:36:24 my message seem too long :X i can not figure out what is wrong:/ Mar 03 09:55:13 hey, looking for help on this issue pls help http://github.com/ftwhlp/TTS/issues Mar 03 09:55:45 clean your project Mar 03 09:57:02 tx: i have but then I rebuild and the errors come back Mar 03 10:06:42 hi Mar 03 10:08:48 how do I make the emulator faster? Mar 03 10:10:16 yell at it Mar 03 10:18:56 Do the material design components actually exist? E.g. is there a bottom sheet view? Mar 03 10:19:07 that I'm just unable to find Mar 03 10:19:26 hey guys Mar 03 10:20:55 some guys I made an app for in the past called me again about an issue in Android 6 that has to do with recording audio, that it takes a long time before the phone actually hears something Mar 03 10:21:01 it lags like 7 seconds Mar 03 10:23:33 Syzygy, probably its just a guideline, how you implement it is on you Mar 03 10:24:31 it's weird that they would define default elements with default behavior and then not implement them. Mar 03 10:24:43 did you check the support lib too? Mar 03 10:25:06 package android.support.design.widget Mar 03 10:25:16 BottomSheetDialog Mar 03 10:25:31 I googled the element name and mostly found people who said that it's not implemented and that they should use some random library on github Mar 03 10:25:55 seems like google needs to work on their SEO .... -.- Mar 03 10:29:20 ktwo, actually now that I have that package open, I still can't find the BottomSheetDialog. But an article about attaching behaviors to coordinator layouts and... well, I guess I found something to do. Thanks Mar 03 10:41:32 Syzygy, do you really have the support lib in your dependencies? Mar 03 10:42:08 you need thsi: compile 'com.android.support:design:23.2.0' Mar 03 10:42:09 I was looking through the documentation. Mar 03 10:42:46 http://developer.android.com/reference/android/support/design/widget/package-summary.html Mar 03 10:47:16 23.2 seems buggy Mar 03 10:47:32 x.x.0 is always buggy ;) Mar 03 10:48:38 Hey guys... is it possible for the GPS driver to work a bit different on some devices? On the samsung S3 my GPS drivers seem to act a little strange . It will just not get a lock for quite some time ...just remain 0,0 Mar 03 10:54:44 how to have a Google Cloud Messaging Key Mar 03 10:57:25 ? Mar 03 10:59:56 Zharf, Open Shift is asking for Google Cloud Messaging Key for registering the app for using GSM Mar 03 11:18:29 oh he left Mar 03 11:23:29 hithere Mar 03 11:24:58 I am using animate on textView - textvie is using background defined in drawable - which is rectangle with round corners defined with Mar 03 11:25:38 animation is using rotationX (or Y depends on orientation Mar 03 11:26:31 in genymotion virtual device API19 - animation looks the way you would expect - rotations is don along right axes and it is symmetrical Mar 03 11:28:54 unlike on Samsung tab S 8.4 (T700, with API 19) - where rotated object seems to be rotated and skewed asymmetrically on both ends Mar 03 11:29:26 on Samsung galaxy S III mini - it works fine Mar 03 11:29:54 did someone observe such behaviour with animation on real device? Mar 03 11:45:47 hi, how i can play audio stream that i captured from my cient? the rate is 11025 Mar 03 11:46:12 audiotrack Mar 03 11:48:10 lasserix and if i want to make the file playable how i can do that? i am using AudioRecord. i send the stream to my web server and i want to play it there "live" Mar 03 11:49:06 google it--im not too fimiliar, just aware of the apis Mar 03 11:50:29 where do people normally put reusable business logic when developing an app? appreciate it's preference just looking for general guidance regarding architecture Mar 03 11:51:11 you can make a standalope module which you include as a dependency in your app module Mar 03 11:52:20 lasserix: in my case, that might be overkill. I'm talking like 2-3 functions I might reuse across activities. Mar 03 11:52:56 then just use a subpackage Mar 03 11:53:11 should just create a class? is there a generally accepted name for this? Mar 03 11:53:13 but if you doit in a jav abased module it makes it easier tof testing a reusability in other projects Mar 03 11:53:33 but yeah a class will do the trick too Mar 03 11:53:58 new to android dev, but i've heard 'ThingManager' and 'ThingService' in other environments. does the same apply here? Mar 03 11:54:19 sure it depends on the lifecycle Mar 03 11:54:19 for context: i'm looking to retrieve/store certain data for the current logged in user. Mar 03 11:54:42 you can couple it to a service soit runs in the background, that is, is not tied to the lifecycle ofthe activity controlling the UI Mar 03 11:55:13 otherwise just make a file systemIOclass that your activity can call upon to store and retrieve Mar 03 11:56:02 lasserix: cool, thanks for the advice! Mar 03 11:56:55 worse comes to worse just adecompile an app that does somethig similar and see how they do it Mar 03 12:01:08 can anyone help me? when i use Intent.createChooser, i got this http://img.vim-cn.com/ac/3d8e662b7d75e78fa8bf0d3a8b66c3d00c9749.jpg . three are named "QQ". actually they are "sending to a friend via qq", "sending to my PC via qq" and "sth else via qq". i want it shown as "sending to a friend" rather than "QQ". How can i make it? Mar 03 12:09:23 Hi. Anyone know how I can use the zipalign tool (or an alternative) if I don't have Android Studio installed? I'm using the Android SDK and building the app in Ionic Mar 03 12:10:33 You can use zipalign standalone from the command line. Mar 03 12:12:47 barq it's telling me zipalign: command not found Mar 03 12:13:13 barq I'm using a Mac, fyi Mar 03 12:13:31 Then install it Mar 03 12:13:57 Or set your path properly. Mar 03 12:14:01 It should be in your build-tools. Mar 03 12:14:51 Is there a way to change the color of the inactive (not selected) title in a PagerTitleStrip programatically? Mar 03 12:20:17 can anyone help me? when i use Intent.createChooser, i got this http://img.vim-cn.com/ac/3d8e662b7d75e78fa8bf0d3a8b66c3d00c9749.jpg . three are named "QQ". actually they are "sending to a friend via qq", "sending to my PC via qq" and "sth else via qq". i want it shown as "sending to a friend" rather than "QQ". How can i make it? Mar 03 12:20:24 can any one help me ..? Mar 03 12:27:52 You need to click the app first and then you can triage further I think. Mar 03 12:51:06 hello,im uploading an img with retrofit, ImageModel img = new ImageModel().setFile(base64); and post ImageModel. is it correct way for uploading? Mar 03 12:52:47 converting binary file to base64 encoding you asking? Mar 03 12:53:57 ad textView.animate().rotationX(360).withEndAction(endRotationXAction); Mar 03 12:54:07 this is result http://snag.gy/iv4JU.jpg Mar 03 12:54:50 sry textView.animate().rotationY(360).withEndAction(endRotationXAction); Mar 03 12:55:16 on emul - animation is somehow symetrical along Y axe, unlike on real device - right side of the picture Mar 03 13:24:27 . Mar 03 13:41:24 deadpool or revenant Mar 03 13:43:41 revenant Mar 03 13:43:48 havent seen it, but it can still be good Mar 03 13:43:52 deadpool already disappointed me Mar 03 14:14:49 I get an IllegalStateException when doing getChildFragmentManager().beginTransaction().add(R.id.frameLayout, myFragment, MY_FRAGMENT).commit(); Mar 03 14:15:30 it is probably more verbose, isnt it Mar 03 14:16:28 This is the Exception trace http://pastie.org/private/teemhgpr6m0dpgos8aezdg Mar 03 14:17:59 java.lang.IllegalStateException: Activity has been destroyed Mar 03 14:18:05 especially after : Mar 03 14:18:56 ? Mar 03 14:19:04 let me guess, you rotated device, activity recreated but you kept reference to old activity Mar 03 14:19:45 No, I don't rotate Mar 03 14:23:55 I switch tabs Mar 03 14:24:33 in other words you try something after activity was destroyed Mar 03 14:24:47 and without seeing the code i suspect leaking reference to old activity Mar 03 14:26:15 i have been getting android.support.design.widget.FloatingActionButton , class cant be instantiated, the button doesnt renders in view mode , compilation and app works successfully on my android phone though . I googled , and found out , that it may be a popular bug , Mar 03 14:26:15 http://stackoverflow.com/questions/31319127/floatingactionbutton-class-could-not-be-instantiated . can anyone tell me how to solve this problem Mar 03 14:37:36 preview is useless Mar 03 14:46:42 Hi, is it poissble to sniff the system bluetooth socket of my android device? Mar 03 14:54:08 wow my Moto G second gen just got a Marshmallow update , downloading ... :) Mar 03 15:18:36 Krid86: on a rooted device, yes Mar 03 15:18:41 Hi everyone, I’m looking for a way to load assets in my jni code. So far, I can’t see how I can call the asset manager from my native code, is there a documentation somewhere on how to do so ? Mar 03 15:19:43 I’ve seen that it’s possible if you have something called a native activity but I don’t use that, I just have few methods in an API and these functions will need to read files/assets Mar 03 15:24:56 guite, I'd suggest you make a Java class that does everything in Java and just returns data back Mar 03 15:25:00 And then use JNI to call a single method. Mar 03 15:25:55 oh, it’s that complicated :D Mar 03 15:28:56 you could make java objects and call the system java functions direction from your jni code, but it'd be real ugly and real complicated Mar 03 15:29:04 direction? directly. Mar 03 15:30:06 dragorn: yes, I don’t want to do that, but thanks :) Mar 03 15:30:28 there aren't, generally, native-versions of the framework functions Mar 03 15:30:43 so your options are a java proxy you talk to from native, or doing the java directly in native Mar 03 15:30:49 if you're going to do normal framework tasks Mar 03 15:31:03 I’ve seen a post of someone saying he copies file to another place so that it is accessible by the jni code Mar 03 15:32:55 When I populate Spinner with an ArrayAdapter, which is the default chosen element? Mar 03 15:33:04 hi anyone willing to be a short-term tutor to android studio beginner? Mar 03 15:33:23 Can I assume that it defaults to the first String in the ArrayList? Mar 03 15:33:36 pm me if so Mar 03 15:34:38 hi guys Mar 03 15:35:21 i'm trying to implement exit from app with 2 second click on back key, but when i use isTaskRoot(), always return false Mar 03 15:36:10 after search on google i discover that's possible to get all active running tasks by using ActivityManager Mar 03 15:36:24 using that i always get 2 tasks instead of 1 Mar 03 15:36:35 anyone know the reason ? Mar 03 15:37:11 i think thats the motive why isTaskRoot() always return false on this phone Mar 03 16:02:54 lasserix: You know about good example of doing post with GSON? Mar 03 16:07:12 "Xiaomi, Meizu, OPPO & Vivo Are All Reportedly Working On Pressure Sensitive Displays" Mar 03 16:07:26 i guess android N would need APIs for this Mar 03 16:09:16 better have Mar 03 16:09:24 Already working on my pressure sensitive fart app Mar 03 16:09:52 Does SharedPreferences need write permission? Mar 03 16:09:57 Doesn't seem like it Mar 03 16:10:23 I guess it doesn't since the implementation is done by the Google team, and has their stamp of security approval? Mar 03 16:14:26 internal storage doesn't need write permission Mar 03 16:17:28 hey guys, for a gradle build, is there any way to specify a different location for a gradle.properties file? Mar 03 16:17:39 I can’t see any details of doing such in the docs Mar 03 16:21:03 seaders, you can probably do it at the filesystem level with a symbolink or a hard link Mar 03 16:21:37 that was my first thought, but Windows complained no matter what way I tried that :/ Mar 03 16:46:17 pfn: cool thanks Mar 03 17:12:59 How do i run my task before everything else using gradle Mar 03 17:16:53 lukesoft `gradle taskYouWantToRun` Mar 03 17:54:57 Hi I have localized my app to English (Default) and German and everythong works fine when I change the Langauge in the Device Settings. However I woder how the preferred Langauge is controlled if I select something different from English or German in the settings. Is there something like a list of ranked preferred langauges in the Settings? Mar 03 17:57:48 oo_miguel, language without qualifier is default Mar 03 17:57:55 i.e. values/strings.xml is default Mar 03 17:58:05 values-XX is always secondary Mar 03 17:58:11 and values-XX-YY is always tertiary, etc. Mar 03 17:58:13 http://lpaste.net/8133971457878261760 Mar 03 17:58:21 I wonder if that makes a tiny bit of sense anyways Mar 03 18:00:15 pfn: So a person that speaks dutch natively (and has this as his phone setting) and german as second langauge, will not be able to use my app? (if I use english als default) ? Mar 03 18:00:40 unless he switches his complete device to german ... Mar 03 18:01:10 oo_miguel, he'll see english Mar 03 18:01:24 there is no secondary language choice Mar 03 18:01:34 pfn: ok. thank you Mar 03 18:01:58 some apps provide a way to change language in the application, but it's not really according to android guidelines, afaik/imo Mar 03 18:02:00 Would it be possible to override the default langauge inside the app in such case Mar 03 18:02:17 how? how would you know what language to use? Mar 03 18:02:29 s73v3r, setting in the app? Mar 03 18:02:34 no other way, really Mar 03 18:02:39 s73v3r: I would given an option in the app: preferred language Mar 03 18:02:58 so A chinese user can select between english or german Mar 03 18:03:00 then you’re just duplicating the system Mar 03 18:03:16 s73v3r: the system does not let a chinese user select german or english for my app , does it? Mar 03 18:03:20 s73v3r, the system doesn't handle multi-lingual people Mar 03 18:03:49 I see this as a design failiure. Most people I know are at leas bilingual nowadays Mar 03 18:04:17 I would be happy if they dropped localization completely and forced everyone to learn english ;) Mar 03 18:04:20 And english is not always their strongest second language Mar 03 18:04:59 Zharf: haha, from a programmer perspective the world would be a better place :) Mar 03 18:05:11 yes Mar 03 18:05:22 I would also drop all characters outside the standard ASCII Set :) Mar 03 18:05:48 oo_miguel, http://stackoverflow.com/a/12954037/857853 Mar 03 18:06:40 (I've never done it but it seems like a good answer) Mar 03 18:06:48 Zharf: wow, this looks more promising than all Ive found so far Mar 03 18:07:26 Zharf: Ill give it a try, thank you Mar 03 18:08:05 I wonder why configChanges is required, to prevent switching back to default? Mar 03 18:08:29 no clue... Mar 03 18:09:04 but the person has orientation in there as well, so that puts them in the dumb faction... Mar 03 18:09:11 holy crap that programmerguru site is terrible Mar 03 18:09:28 two full screen popups when I entered the site Mar 03 18:09:56 what site? Mar 03 18:10:22 programmerguru, the link on the answer I linked to Mar 03 18:11:12 aaah ok right :) Mar 03 18:11:39 somehow I doubt the configChanges are needed Mar 03 18:13:10 yeah, none of the other answers to similar questions use it Mar 03 18:13:49 cargo cultists Mar 03 18:14:09 I found some answers wher I have to do something in each activity and can not set it once for the whole app Mar 03 18:14:09 I wonder how many people who do this have configChanges="locale" for this... Mar 03 18:14:12 whether it's required or not Mar 03 18:14:13 * pfn shrugs Mar 03 18:14:54 yo ucan probably update views to match the new locale Mar 03 18:15:48 would have to experiment a little but not really that interested Mar 03 18:16:09 pfn: it makes me wonder what configChanges="locale" is good for if its not required.. Mar 03 18:16:40 it's meant to say when the system changes config, it will not force your activity to recreate Mar 03 18:17:14 I was asking previously about integrating errorprone into gradle builds - after some hair-pulling, arrived at https://gist.github.com/anonymous/32f5eb6c87701a159555 for anyone else interested (and if you can improve it.) Mar 03 18:29:00 hi. i'm reading the big nerd ranch's "android programming" book. At the end of one chapter it says to Always use fragment. Is it a good approach? What do you think? Mar 03 18:30:31 hi. So I want to set up listeneres (but not only) for some objects within an activity. However, I tried to do that in activity's constructor which resulted in Exceptionas those objects (views that is) are null. They are created in onCreate() method. Problem is that if I set them up in onCreate() method then they will be re-set each timeie. the screen rotates. Is that OK? Isn't that inefficient (a bit)? Mar 03 18:30:33 note that listeners are only example as I have more code that refers to those views Mar 03 18:31:10 LucaS05: It depends Mar 03 18:31:43 s73v3r: I was waiting for that answer :) Mar 03 18:31:51 fragments are nice for encapsulating pieces of UI, but they have their own lifecycle issues Mar 03 18:32:17 I’ve read the same book, and for the most part, I think it’s guidance is sound Mar 03 18:33:02 as you grow as a developer and gain experience, you’ll find situations where fragments aren’t the answer, and you’ll move away from them Mar 03 18:33:29 s73v3r: i was thinking about using fragments because of code reuse maybe Mar 03 18:33:49 It’s a nice idea, that has varying degrees of success. Mar 03 18:34:11 i would say go ahead and use them as the book prescribes, but with one change Mar 03 18:34:40 if you’re not using fragments to make pieces of a tablet UI, then avoid the situation where you have an activity just to hold a single fragment Mar 03 18:34:57 if you have that, just remove the fragment and pull the stuff into the activity Mar 03 18:38:04 i have a graph in a SlidingPaneLayout. I dont want touch events / drags on the graph to move the parent SlidingPaneLayout. I tried slidingPaneLayout.requestDisallowInterceptTouchEvent(false); in my activity onCreate but that doesn't seem to be working Mar 03 18:38:46 and the graph isn’t swallowing the touches? Mar 03 18:39:00 no Mar 03 18:39:22 and that’s what you want it to do, right? Mar 03 18:44:36 hi.. where can I get android-ndk-r8b for Linux? Mar 03 18:44:51 ndk older versions Mar 03 18:47:10 s73v3r yeah Mar 03 18:47:43 all touch events to the child should be eaten by the child, nothing needs to be passed back up to the parents Mar 03 18:49:09 I wish sdk manager would never insist on installing "android support library" -- I get the local repository already, don't force me to take the standalone jars Mar 03 18:49:16 (not that it's much space, but it's the principal!) Mar 03 18:50:46 g00s: Have you checked the onInterceptTouchEvent() method of the parent SlidingPaneLayout? Mar 03 18:54:10 s73v3r looking at it, pretty complicated Mar 03 18:55:54 is the graph view receiving the touches at all? Mar 03 18:56:23 yes, seems like 50% time it goes to the graph %50 goes to the slidingpane Mar 03 18:56:53 must be something about the exact point which the motion event starts ... Mar 03 18:56:54 even if you’re directly in the middle of the view? Mar 03 18:56:58 yeah Mar 03 18:59:51 s73v3r is calling slidingPaneLayout.requestDisallowInterceptTouchEvent(false); in oncreate the wrong place ? Mar 03 19:00:05 i don’t think so Mar 03 19:00:08 do i need to call it from onTouch event, etc ? (getParent.disallow..) Mar 03 19:00:13 hm ok Mar 03 19:02:52 great article on this btw http://balpha.de/2013/07/android-development-what-i-wish-i-had-known-earlier/ Mar 03 19:11:20 any benefit in using stuff like acra instead of the normal crash reporting? Mar 03 19:11:33 normal crash reporting is useless Mar 03 19:11:42 you need a separate crash reporter Mar 03 19:11:52 why? Mar 03 19:12:00 i just received a crash report and it looked kind of ok Mar 03 19:12:09 DrBenway you should be using analytics anyhow, and you can just pass the exception to GA Mar 03 19:12:11 maybe it's too early Mar 03 19:12:19 because users must explicitly submit crash reports Mar 03 19:12:33 right Mar 03 19:12:33 s73v3r: if I understand your statement about tablets, you're saying that if i'm not making the UI for tablets, i don't need fragments? Mar 03 19:12:35 for every 1 crash report that a user submits, you get 10-100 actual crashes Mar 03 19:12:41 s/get/have Mar 03 19:12:42 maybe i haven't understood Mar 03 19:12:42 otherwise don't you need their aproval to report data back? Mar 03 19:13:14 and you recommend GA or acra? Mar 03 19:13:25 i’m saying that, if you have an activity, and the activity’s only purpose is to host a fragment that takes up the whole screen, and you’re not using the fragment in a tablet layout as well, then I wouldn’t bother with the fragment Mar 03 19:13:29 GA doesn't do crash reporting Mar 03 19:13:38 but you can pass it your exception Mar 03 19:13:40 pfn sure it does O.o Mar 03 19:13:44 does it? Mar 03 19:13:47 * pfn hasn't looked Mar 03 19:13:59 it might not be as nifty as crashlytics or acra though Mar 03 19:13:59 well i guess you need to hook something for unhandled exception Mar 03 19:14:11 acra itself isn't nifty Mar 03 19:14:13 crashlytics is decent Mar 03 19:14:15 so... acra > GA? Mar 03 19:14:21 ok Mar 03 19:14:49 i'm still in QA phase so i expect them to file reports but i guess it's good to know that i'll need something better for the future Mar 03 19:14:56 crashlytics will probably give you the most detail / insight into the crash Mar 03 19:15:04 alright thanks Mar 03 19:15:28 make sure, whatever crash reporter you use, you use it’s Logging/Waypoint feature Mar 03 19:15:40 right Mar 03 19:15:41 otherwise you’ll get a number of crashes with pretty much no context Mar 03 19:15:52 will make a note Mar 03 19:16:38 I’ve got one of those now assigned to me. “BadTokenException”, with a stack trace that points no where in my app, and no logging/waypoints to guide me. It’s basically a blinky light with the label “Problem?” Mar 03 19:16:40 :( Mar 03 19:17:40 we use to get those all the time back on breakpad Mar 03 19:18:01 s73v3r: ok, thanks Mar 03 19:18:14 it's mildly useless unless you get to talk with the person Mar 03 19:18:49 as long that you don't get 100 of the same crash a day :P Mar 03 19:20:05 DrBenway https://developers.google.com/analytics/devguides/collection/android/v4/exceptions Mar 03 19:23:27 thx Mar 03 19:23:29 ugh, using the vector drawable support is a pain in the fucking ass Mar 03 19:23:54 yeah, i was going to have to wrap all of mine in drawables themselved to use in some places Mar 03 19:23:57 * pfn goes back to the vector rasterization Mar 03 19:23:59 truetype fonts :-) Mar 03 19:24:02 any particular pain points? I was looking forward to using vectors instead of pngs :( Mar 03 19:24:05 kbs lol Mar 03 19:24:19 s73v3r, well, the main part is you must be absolutely aware of what you can and cannot move into vectors Mar 03 19:24:35 s73v3r, launcher icons and any widget/notification icons must /not/ be vectors Mar 03 19:24:47 i.e. anything that will be loaded via remote views and external applications Mar 03 19:24:47 s73v3r you can't use them for all places that accept drawable references. so like TextView, drawableLeft ... you need to instead wrap the vector drawable in a statelist drawable or somehting Mar 03 19:25:05 i could live with the launcher icon and stuff being pngs Mar 03 19:25:16 it's a lot of mental burden Mar 03 19:25:26 since I share a lot of icons between notifications, appwidget, and app Mar 03 19:25:30 the drawableLeft thing, is much more of a problem Mar 03 19:26:02 and of course, you /must/ do lots of testing on older version devices to ensure that everything works and appears correct Mar 03 19:26:24 is is a thing that your vector will draw at resolutions you completely didn’t expect? Mar 03 19:27:06 no, it's mostly related to using attributes to load vector images that don't support them Mar 03 19:27:16 e.g. drawableLeft as mentioned Mar 03 19:27:30 k. i’ll probably pass, then. Mar 03 19:27:43 yeah, I'm moving back to pre-support-vector Mar 03 19:27:52 rasterization was working perfectly for me Mar 03 19:28:34 it works, but I’d prefer not to have to ship a bunch of extra assets with the app Mar 03 19:28:45 * pfn shrugs Mar 03 19:28:51 for icons, it's not that much compared to other assets Mar 03 19:29:25 * kbs has found joy (sometimes) in just using textview + ttype font for icons Mar 03 19:29:34 font awesome? Mar 03 19:29:49 no, just move the vector asset into a custom truetype font Mar 03 19:30:07 android has excellent truetype support pretty much across the board, so it renders nicely Mar 03 19:30:18 ahh. same idea, just with your own icons Mar 03 19:30:28 right :-) Mar 03 19:30:30 support vectors are a bit easier in this regard Mar 03 19:30:37 and have similar mental burden Mar 03 19:30:50 and fonts can't have colors, can they? Mar 03 19:31:02 one color Mar 03 19:31:02 monochrome - yes. Mar 03 19:31:11 yeah, support vector is better Mar 03 19:31:23 now that it's available Mar 03 19:33:02 i just wish PaintCode was available for Android Mar 03 19:35:34 when i switched over to vectors to try, i forgot to clean and wound up with pngs still ... couldn't be sure if which I was using :P Mar 03 19:35:36 https://github.com/pfn/qicr/commit/05582c2c93df5f8bfb90d3cc1fd2606ee267d8dd Mar 03 19:35:39 yeah, no bueno Mar 03 19:37:10 pfn for vector drawables you d/l, they have fillColor -- but not tint set. but to get them working in ToolBar I had to set tint, does that seem right? i didn't really want to edit all those XMLs Mar 03 19:37:40 dunno, haven't checked Mar 03 19:37:44 hm ok. if they update the icons i would have to add android:tint to all of them Mar 03 19:37:46 I imagine it should be automatic Mar 03 19:38:09 what did you switch from g00s Mar 03 19:38:11 from svg Mar 03 19:38:13 or what Mar 03 19:38:24 but like I said, I'm dropping support-vector for qicr Mar 03 19:38:52 missingno nah, i was using the material vector drawable icons from google and letting the build system rasterize them Mar 03 19:39:06 might still be the easiest way :P Mar 03 19:40:11 oh, neat, there's adb install -r -d Mar 03 19:43:25 I wonder when -d was added Mar 03 19:46:08 hm even knowing pfn is around, I'll dare ask: I managed to read in the ICO header using a LEDataInputStream (little endian).. the problem is: in order so I can use BitmapFactory to create an image, I need to change the endianness of the data parts of the file.. is there a reasonable way to do that? Mar 03 19:49:48 divStar, I imagine you'd have to read each block, endian swap it, and output it as a stream or to a file, depending wht your ico reader takes Mar 03 19:49:57 divStar, tl;dr I know not no automatic way to handle that Mar 03 19:50:11 wow I suck at typing today. know ^of no automatic way Mar 03 19:50:29 you can do some stuff with ByteBuffer Mar 03 19:50:36 but that won't affect the underlying buffer Mar 03 19:50:42 unless bitmapfactory can read from bytebuffer Mar 03 19:50:46 does any of you happen to know how I can write a string to a remote file using FTPClient Mar 03 19:50:50 without creating a file locally? Mar 03 19:51:19 what I am not sure about is: will getting the actual image-data-bytes and swapping them fix my issue .. or not D: Mar 03 19:52:02 divStar, I don't know enough about the ico format to have any idea, but there's lots of docs out there, at least. I'm surprised it's endian-sensitive, but since it came from windows afaik, I guess I shouldnt be. Mar 03 19:52:08 I mean I know the offset and length of the data image part - but that's still the part in little endian.. so if I pass on these values to decodeBytesArray, it considers them invalid Mar 03 19:52:33 depends if the data is multibyte. Mar 03 19:52:57 eeks.. no idea .. I am happy I got the icon headers including size and such Mar 03 19:53:21 but now I am not going to give up, but rather tear it out by hand if I have to >.< Mar 03 19:53:43 if the image data is multibyte, you have to care. if it's an array of 1-byte pixel data, you probably don't Mar 03 19:54:17 no - there are (or were) attributes, that consisted of 2 or even 4 bytes (as well as single unsigned and regular bytes) Mar 03 19:54:22 Going to try making a widget. Wish me luck! Mar 03 19:54:32 good luck the_bob o.o Mar 03 19:54:48 (baby's 1st android app here) Mar 03 19:55:03 This shit is fun! Mar 03 19:55:07 heh same.. tho I decided to go and try loading favicons and such .. Mar 03 19:55:07 it is Mar 03 19:55:22 and then found out android craps out on ico files unless I slice them for it Mar 03 19:55:43 can't blame it tho D:.. Mar 03 19:55:51 wikipedia has pretty solid info. either it's a mutant bmp, or an embedded png Mar 03 19:56:00 correct Mar 03 19:56:15 so can I just uhm somehow reverse the byte order for the data parts? Mar 03 19:56:22 so if it's a png your job is done, if it's a bmp, figure out if there is a bmp loader already, if so, recreate the data and feed it to the bmp loader Mar 03 19:56:41 s/the data/the header that is removed from the bmp/ Mar 03 19:56:44 so basically reversing the byte order of the image data part would do? Mar 03 19:56:58 i don't think you want to touch the byte order of the data Mar 03 19:57:10 since whatever parses a bmp will expect it to be ... whatever it usually is Mar 03 19:57:34 yeah, but I'd think the order of it - since it's part of an ICO file, which is LE - is reversed? Mar 03 19:58:07 i wouldn't assume so Mar 03 19:58:18 it says it's a bmp w/out the bmp header Mar 03 19:58:27 so it'd be whatever format a bmp is. same for png Mar 03 19:58:45 except png is with header.. but I can't get the png to display :< Mar 03 19:59:04 btw, widgets don't show up in the widget menu unless they're properly formed even if there are no errors right? Mar 03 20:04:58 What is the syntax in the gradle app build file, to make a task run before all the others Mar 03 20:05:48 Is it possible to direct System.out.println() to Log ? Mar 03 20:06:22 I have a library that prints a string to System.out, can I make it print that to Log? Mar 03 20:07:04 it does already Mar 03 20:07:39 i think on emu but not device .. or maybe they changedthat Mar 03 20:12:05 hey guys in ontouchlistener and action_move how do i detect scrolling up, scrolling down, left and right movements? Mar 03 20:13:17 How can i make my task run before all he others..gradle Mar 03 20:13:26 automatically Mar 03 20:13:46 martiallaw: use some gesture detector Mar 03 20:13:48 I..... I am speechles Mar 03 20:14:01 then how do you speak Mar 03 20:14:38 lukesoft: quick googling gave me this: http://trickyandroid.com/gradle-tip-3-tasks-ordering/ Mar 03 20:14:53 I pass a double array. then run a method to change values in that array. run send to a Runnable. The runnable constructor has the converted array and yet the field in the run function sometimes has the unconverted array Mar 03 20:14:57 I don't even. Mar 03 20:14:59 ...wut Mar 03 20:15:06 thanks Ashiren; Mar 03 20:15:36 also just found that intellij breakpoints can log evaluated expressions to console without suspending at the breakpoint. Lovely Mar 03 20:16:27 you dont "change" the array by new Array[] do you Mar 03 20:16:52 Ashiren nope. I modify the values inside it. I can verify that the values actually change everywhere else Mar 03 20:17:01 (before) that run method Mar 03 20:17:36 why dont you post some snippset Mar 03 20:18:00 yeah one min :) Mar 03 20:19:26 guys, say you have a simple array. I have a presenter that is going to manipulate the array and then pass it to the view to be displayed. Hypothetically, where would the variable best be initialized? In the view and then pass it to the presenter? Or in the presenter, and just have the view request the results? Mar 03 20:20:57 orbyt_ wherever the array gets the data, that's where it should be initialized...not sure I understand the question here Mar 03 20:21:57 Afzal: Its just a plain variable with default data, im just wondering what would be the "correct" way Mar 03 20:22:35 orbyt_ it should just be initialized wherever you would get in "default" data input. Unless you're hardcoding it for some reason Mar 03 20:23:29 Afzal: yes its being hardcoded. Would best practice be to have a seperate model class that the presenter interacts with? Mar 03 20:24:22 orbyt_ not for a single array I wouldn't really suggest a separate model class. Depends on what the data is and where it's coming from. For one-time hardcoded data, don't see a need for a whole model class Mar 03 20:25:59 Afzal: Yea this is really just a theoretical problem, so im wondering what the "best practice" would be as far as an mvp architecture goes. Mar 03 20:31:57 Ashiren unable to create a test case in java, it works over there :( is it okay if i post chunks from the original code Mar 03 20:32:22 orbyt_, don't care about mvp, but avoid mutability Mar 03 20:36:14 pfn: I mean yea theres no need for the data to change, again was just a hypothetical question. Mar 03 20:38:14 good programming practice in general, avoid mutability as much as possible Mar 03 20:38:26 except where optimization calls for otherwise Mar 03 20:40:41 Ashiren http://hastebin.com/hamotaweze.java :D Mar 03 20:45:09 oh wow, that flat map is not doing anything over there is it Mar 03 20:52:31 is it multithreaded Mar 03 20:54:53 Ashiren see...er...when I made the original test case to find this out, the UdpTask was being used directly by the flatmap, it wasn't a runnable or anything. This whole exectuor from the flatmap is the result of a copy/paste and a mashup lol. I don't think this is even multithreaded at all Mar 03 20:55:07 yeah..thanks! Gonna fix this now that I have that info Mar 03 20:55:37 well if it works sometimes, multithread must be the issue Mar 03 20:55:57 yuuuup, thanks Ashiren! Mar 03 20:59:20 Okay I have a ViewPager with a FragmentPagerAdapter, combined with TabLayout, to present a swipable tabs Mar 03 20:59:31 Now, can I later access those fragments and update their content? Mar 03 20:59:46 yes Mar 03 21:00:00 How? Mar 03 21:00:31 where are you updating them from? Mar 03 21:02:13 I have a ChatActivity, that finds the TabLayout and the ViewPager, then it creates my own defined ChatFragmentPagerAdapter and sets it on the ViewPager, and then the TabLayout is setupWithViewPager Mar 03 21:02:20 I want to update form ChatActivity Mar 03 21:02:42 Or basically I am receiving the event that I should be it update the fragments in the ChatActivity Mar 03 21:07:00 hy sorry to disturb all but i have ask where can i find language files in android phones because seems theat the guy theay translate to romania miss a leter so i whana change theat but i cant find language files Mar 03 21:07:36 language files for what Mar 03 21:07:59 I think he means strings-ro.xml and similar Mar 03 21:08:30 values-ro/strings.xml Mar 03 21:08:36 right, but for what Mar 03 21:08:43 for framework, or for a particular app Mar 03 21:10:09 i think for framework because insted of leter t al over is a star sign Mar 03 21:10:59 are you running a custom rom? probably the reason, if so, see #android-root Mar 03 21:12:02 my phone use a stock rom but from another phone ,its clone Mar 03 21:13:00 so it's not a stock rom Mar 03 21:17:13 hm it seems the ico file, which is kinda supposed to consist of PNG files, actually consists of 32bit headless BMP images... -_- this is mind-numbing Mar 03 21:18:46 ico predates png so it doesn't contain png by default Mar 03 21:19:01 you have to look at the ico header and figure out if it contains a png or a bmp. Mar 03 21:19:11 one moment i will upload a pic Mar 03 21:19:25 amadews, not a question for this channel, go to #android-root Mar 03 21:19:48 dragorn: the bitCount is 32 and the colorCount is 0 - so according to that it should be a png image, but it isn't Mar 03 21:20:23 quantum png Mar 03 21:20:52 here is http://s22.postimg.org/gbrvz169t/2016_03_03_23_15_15.png Mar 03 21:21:08 I think it's a 32bit BMP even though I think I have never heard of them or perhaps never considered them something else than png 24+8bit alpha images Mar 03 21:21:21 amadews, this channel is for app development, not rom hacking. Try #android-root or the xda forums Mar 03 21:21:30 ok Mar 03 21:22:07 Okay I have some Layout file that contains the only root element TextView, when I inflate that layout, the returned View is that TextView or contains it? Mar 03 21:22:32 divStar, https://en.wikipedia.org/wiki/ICO_(file_format) 32bit color is totally an option, and is stored specially Mar 03 21:24:31 where do you see that, dragorn? Mar 03 21:25:11 on the url i pasted Mar 03 21:25:16 where it talks about 32bit vs 24bit files Mar 03 21:28:11 well - according to the icon header I have a 32bit image.. and image4j (which is not available for android) extracts dedicated alpha channels PLUS the whole image - so I suppose alpha masks prepend the actual image (making it 8+24 bit).. but I am still not sure.. it seems like I am dealing with 32bit BMP images omg D: Mar 03 22:03:16 did @InjectView become @Bind in butterknife at some point? I can't tell if this code snippet I'm looking at is out of date or not Mar 03 22:05:03 yes kommunicate Mar 03 22:05:29 missingno: awesome, thanks! Mar 03 22:05:58 maybe this doesn't bode well for my attempt to get this working though... Mar 03 22:06:33 Hello Mar 03 22:06:51 Is it possible to change the appID of a compiled application without having access to the source code ? Mar 03 22:07:21 yes Mar 03 22:08:08 I have an MDM application (mobile device management) there is a cloud version where the users get the app from the playstore and an on-premises version, where the users download the .apk fromthe platform Mar 03 22:08:58 thing is missingno that they have to select 'unknown sources' and that is a hassle, when I tried to publish in google-play the .apk that we have in the on-premises platform, it says that there is already another app with the same appID Mar 03 22:10:11 what you want is possible but if I were at google I would ban you from the play store for copyright infringement Mar 03 22:10:23 feel free to give it a try Mar 03 22:10:30 you will have to resign the apk with your own key Mar 03 22:11:01 missingno resign and zipalign, but I have not managed to get the rename part yet Mar 03 22:11:20 The .apk vendor (IBM) is OK with me publishing it at the store Mar 03 22:11:45 Our organization is licensed to use it, we just want to publish it for our own users Mar 03 22:12:41 They just won't rename it for us, they ask us to do en enchancement request that will take a long time, and they already have a roadmap for including the on-premises app in the playstore in 2017 Mar 03 22:13:09 Thing is we need it now, I have not yet found a process that renames the appID and does not break the app. Mar 03 22:13:31 i doubt you will Mar 03 22:13:38 and quite frankly, I hope you don’t. Mar 03 22:13:48 the implications for the rest of us who sell software are pretty bad Mar 03 22:13:51 why not, what's so hard about it Mar 03 22:14:41 s73v3r , I understand your point, you are 100% right Mar 03 22:15:11 doesn't this happen all the time? like I assume Google should have an automated response to it. Mar 03 22:15:19 app repackaging, that is Mar 03 22:15:23 quite frankly, I think you’re overestimating the “hassle” of selecting Unknown Sources Mar 03 22:15:42 this is true Mar 03 22:15:55 and if it’s a device provided by work, then couldn’t you have it selected by default? Mar 03 22:16:06 I rolled out a solution that walked people thru changing the setting Mar 03 22:16:14 In order for 50K users to be enrolled in mdm, with about 30K of them being Andoid user and 90% of them not being worthy of having a smartphone, it is a major pain in the ass in the enrollment process Mar 03 22:16:14 some people untechnically savvy people had no problem with it Mar 03 22:16:24 *some pretty untechnically Mar 03 22:17:15 Yeah missingno , the first steps in the instructions are to go to settings>security> and allow unknown sources, and then use the enrollment url to d/l the agent Mar 03 22:17:58 Still will cause a huge number of frustrated user calls to support and the security department does not like this setting either Mar 03 22:18:21 I'm getting that 'ol JNIEnv* across multiple threads error, but they're, like, the same thread Mar 03 22:18:22 Abort message: 'art/runtime/java_vm_ext.cc:410] JNI DETECTED ERROR IN APPLICATION: thread Thread[10,tid=8375,Native,Thread*=0xecdfa900,peer=0x13aa07c0,"Instr: android.test.InstrumentationTestRunner"] using JNIEnv* from thread Thread[10,tid=8375,Native,Thread*=0xecdfa900,peer=0x13aa07c0,"Instr: android.test.InstrumentationTestRunner"]' Mar 03 22:18:24 s73v3r it's mostly Bring Your Own Disaster Mar 03 22:22:38 Using @UiThreadTest I get the same thing: JNI DETECTED ERROR IN APPLICATION: thread Thread[1,tid=9607,Native,Thread*=0xf4f36500,peer=0x732e42a0,"main"] using JNIEnv* from thread Thread[1,tid=9607,Native,Thread*=0xf4f36500,peer=0x732e42a0,"main"]' Mar 03 22:27:20 Ashiren so basically. I was changing the values in the array before passing it and because it was a reference to the array, the new threads sometimes got the immediately changed values instead of the converted ones. Making a copy right after getting the array fixed it. Mar 03 22:35:54 Okay AS is froze, I got JVisualVM running, what should I do right now? Mar 03 22:36:10 put it in the microwave? Mar 03 22:36:23 * OverCoder puts emceelovin into the microwave Mar 03 22:36:51 was that a fat joke Mar 03 22:37:04 idk Mar 03 22:37:28 was just asking Mar 03 22:37:29 I thought about downloading an icon file to memory .. so I thought about using MemoryFile, but is it the right thing to do? Mar 03 22:38:52 when would getApplicationContext() return null? Mar 03 22:39:07 I'm not understanding the documentation Mar 03 22:39:57 Have you seen it return null? It shouldn't ever happen. Your Application context is always "alive" when the app is alive Mar 03 22:40:24 I have a crash log with no repro but it crashes on a line that calls a method with getApplicationContext() as the main parameter Mar 03 22:42:48 hmm...strange. Timber logging causes a lot of string allocations for fast rate data? Mar 03 22:43:09 can't clear fast enough and gc has to kick in Mar 03 22:44:51 where is the right place to tell butterknife to handle onclick events in recyclerviews? Mar 03 22:45:26 seems like it has to be in the adapter rather than the ViewHolder, but I'm not sure how butterknife would know it should bind to the adapter Mar 03 22:49:53 hello, is it possible to get opengl es3 suppoert on android 4.1? official required version is 4.3 bu maby there are some extensions Mar 03 22:50:28 doubt it Mar 03 22:53:15 Wow, that took forever. Mar 03 22:53:28 Ok, I fixed my widget not appearing in the widget menu issue. Mar 03 22:54:11 The reciever tag in the manifest wasn't within the application tag. Mar 03 22:54:40 That was the issue. I didn't catch it because all the directions for building widgets never show complete manifest files. Mar 03 22:58:35 Google Play Console isn't letting me move from Alpha open testing to beta? Says it cants since I got a alpha group. But I dont see any way to close the alpha group :/ Google didnt give me anything helpful. Mar 03 22:59:28 Hey guys Mar 03 22:59:32 weird.. for some weird reason if I use a HttpURLConnection, the stream is okay and not broken.. but if I try to use MemoryFile, it breaks when reading Mar 03 22:59:39 anyone tried using a PTP device on android? Mar 03 22:59:44 Camera via OTG, but not mass storage. Mar 03 23:08:46 hm I seem to have trouble donloading a stream in a way so I have the very same stream for further use.. Mar 03 23:14:01 oh hum at least I managed that Mar 03 23:19:13 I create a notification with a PendingIntent, and when the user touches the notification the corresponding Activity is created… however, that Activity is never made visible, and is not in the history stack Mar 03 23:19:13 when registering an onClickListener for a recyclerview, is there an easy way to know which view sent the event other than casting and comparing types? Mar 03 23:19:18 what might cause this? Mar 03 23:23:53 it may be caused by a concurrency bug Mar 03 23:55:24 dagger2 question: if i have an @Inject annotation in a Fragment, will dagger do the wiring if the activity gets created with new XyzFragment()? Mar 03 23:55:31 i'm not sure how the wiring would work Mar 03 23:58:17 wireing is pretty much triggered by you Mar 03 23:58:28 like, you more or less call doTheWireing() Mar 03 23:58:31 not that it's called that Mar 03 23:58:42 iirc it's called inject() Mar 04 00:02:20 hmm.. but how does that work for dynamically generated fragments? Mar 04 00:03:11 you can call inject your activity's lifecycle Mar 04 00:04:11 oh, i see Mar 04 00:04:20 like, hook onCreate and inject it then? Mar 04 00:04:58 p much Mar 04 00:05:03 where were you doing it before? Mar 04 00:05:23 also, *fragment's lifecycle Mar 04 00:06:25 i wasn't, this is my first time trying to use this :) Mar 04 00:06:48 prince: you should've changed your name to "Formerly known as prince" :) Mar 04 00:10:31 Anyone else have the problem when you run from AS you get unable to start activity component, i feel itslike from the hotswap failing Mar 04 00:17:56 Can I force from a custom viewgroup children added to be a specific height and size without layout params, eg in onMeasure of the parent viewgroup? Mar 04 00:20:21 if the parent selects wrap_content on you, then you define what that size is in onMeasure Mar 04 00:20:24 so yes Mar 04 00:23:00 no that's the thing, i don't want to use layout params Mar 04 00:23:14 basically i want to create a table, with the cells all being of equal width and height Mar 04 00:23:21 based on the parents width and height Mar 04 00:23:39 ie, i add the parent view, and it populates the child cells, based on dividing its own width and height into equal segments Mar 04 00:24:38 so does this mean in the parent i determine the cell width and height, then call ? passing in the calculated width and height from what method in the parent? Mar 04 00:27:56 ugh hotspot keeps replacing my new activity with my old activity Mar 04 00:29:11 hmpf.. now I got the image and even the actual headers.. but I still cannot have BitmapFactory read them *sigh* Mar 04 00:30:25 s73v3r, eh, rebundling an app with a different appId shouldn't be difficult at all, just dex2jar the apk, aapt package resources and fixup the manifest to have the desired application id Mar 04 00:30:37 * pfn reads old scrollback Mar 04 00:33:21 hotspot? instantrun? Mar 04 00:33:39 hotswap is what he means I think Mar 04 00:34:46 instantrun Mar 04 00:34:55 yeah i hit play and it reverts to some old version i was working on Mar 04 00:35:26 until i forceably kill the app on the device Mar 04 00:35:34 instantrun is awesome Mar 04 00:35:38 I keep reading everywhere that instantrun still does not work as supposed .. so people should turn it off upon encountering problems.. I am lucky I could fix my issue, cause I like it Mar 04 00:36:02 (last it = instantrun) Mar 04 00:37:12 given i have the width and the height in onMeasure in a customviewgroup, what call do i make to set the width and height for each child from the parent custom viewgroup? Mar 04 00:38:00 hi, experiencing oddity with a color selector Mar 04 00:38:02 here's the selector: Mar 04 00:38:02 http://hastebin.com/hosucowafa.xml Mar 04 00:38:25 I'm not seeing the state_pressed="true" Mar 04 00:39:46 here's how I'm actually setting the tint selector: http://hastebin.com/abosuhafob.axapta Mar 04 00:40:07 it's in the constructor of the custom view and uses a custom arg "tintList" that just points to the color resource Mar 04 00:42:12 looks like this guy had the same problem: http://stackoverflow.com/questions/34293880/android-togglebutton-not-reliably-receiving-state-pressed# Mar 04 00:44:02 Hello. I'm trying to load the Android Wear Round Chin display type for developing watch apps. However, the face for the "Wear Round Chin" is a blocky and horribly looking square device. Anyone know why? http://i.imgur.com/qm0dvB1.png Mar 04 00:44:59 I wonder what is the point of unwrapping the drawablecompat Mar 04 00:45:11 rager: your probably missing a state.. like focused and pressed Mar 04 00:45:19 what's annoying is that disabled/default works fine Mar 04 00:45:23 hm Mar 04 00:45:40 I'll add a state for just focused, just pressed, and both focused and pressed just to be sure Mar 04 00:46:07 i cant remember but i think the toggle buttons have a checked state Mar 04 00:46:31 I'm just using ImageButton Mar 04 00:47:53 Would anyone know why the Android Wear Round Chin designer device is incorrect? http://i.imgur.com/qm0dvB1.png Mar 04 00:49:54 noahd319: what's that? Mar 04 00:50:48 noahd319: neat! Mar 04 00:51:22 noahd319: is that one of the choices in the view preview screen, or is it something that just dresses up your window in the emulator? Mar 04 00:52:11 I wouldn't take *too* much stock in the preview screen - it's nice to get an idea what you're making Mar 04 00:52:24 but it's not good enough for pixel pushing Mar 04 00:58:33 nope... combined state didn't do it Mar 04 00:58:48 it's like something else is eating the click state Mar 04 00:59:02 what's odd is that a selector for the drawable obeys the click state Mar 04 01:13:23 is there a way I could try to debug this out? Mar 04 01:13:41 like... setting breakpoints for when the actual element's state changes and seeing what states are active at any given time Mar 04 01:24:17 I've overridden View#onTouchEvent, and even when View#getPressed returns true, the element still doesn't have coloration from the ColorStateList Mar 04 01:34:00 oh my god .. finally.. after so long.. I am starting to see images... Mar 04 01:34:26 the effort is nuts, but it's funny.. BitmapFactory couldn't help me after all, but Bitmap.createBitmap could Mar 04 01:35:25 I am pretty sure no one needs to read ICO files with android, but maybe once I handled all the other things, too, I can publish my solution Mar 04 01:56:11 aaaaah 4 days in a row of working late Mar 04 01:56:23 just need to create two daily builds and I'm done Mar 04 01:57:43 had a meeting at 7:30 and it is now 8pm Mar 04 01:59:20 Holy fuck it's working first try Mar 04 01:59:59 gotta love when that happens Mar 04 02:00:30 yeah. thats a rarity lol. Mar 04 02:02:14 the_bob then you release it to Play, and realize .. nope Mar 04 02:02:22 lol right Mar 04 02:02:31 I might actually release this to play Mar 04 02:02:38 It's a conway's game of life widget Mar 04 02:02:49 cant wait til im able to do that. still have an issue or two before i consider mine stable lol. Mar 04 02:03:23 the_bob: thats called a prograsm Mar 04 02:03:58 basically the best feeling in the world Mar 04 02:05:06 I gave up Mar 04 02:05:18 the solution is to give up, open GIMP and just make a stupid tinted png Mar 04 02:05:24 and call it a day Mar 04 02:05:44 take that, designer who didn't want to make a darker arrow for me! Mar 04 02:08:47 rager why not just tint the icon by xml Mar 04 02:09:18 because it doesn't wanna Mar 04 02:09:26 bastard! Mar 04 02:09:47 http://stackoverflow.com/questions/35786201/pressed-state-not-being-selected-in-imagebutton-tint-list < see issue Mar 04 02:10:45 rager: still not got it working? Mar 04 02:11:01 there might be some issues with other views stealing touch events, but even then Mar 04 02:11:03 that Sucks rager Mar 04 02:11:42 I put breakpoints into the onTouchEvent method on the view class, and "pressed" does show up from time to time Mar 04 02:11:47 but not as often as I think it should, still Mar 04 02:12:16 in the end, I went with a drawable selector and 3 distinct images instead of a color selector and a white image to tint Mar 04 02:12:41 for some reason, the color selector doesn't ever get to show the "pressed" state, but the drawable selector does Mar 04 02:14:42 is there a place to report issues with the compat lib? Mar 04 02:15:05 if nobody answers the SO post in a few weeks, I'll chalk it up to a bug in the compat libs and file a ticket Mar 04 02:15:12 rage Mar 04 02:15:13 rager Mar 04 02:15:21 are you extending a default view? Mar 04 02:15:28 is this custom view Mar 04 02:15:39 or simply tag? Mar 04 02:20:47 rager: ^ Mar 04 02:57:37 cool https://support.google.com/googleplay/android-developer/answer/6295281?rd=1 **** ENDING LOGGING AT Fri Mar 04 02:59:58 2016