**** BEGIN LOGGING AT Wed Apr 15 02:59:58 2015 Apr 15 03:00:22 Start here - https://github.com/square/picasso/tree/master/picasso/src/main/java/com/squareup/picasso Apr 15 03:08:48 Hey all, can someone confirm the functionality of the new mipmap folders? Should we put drawable assets in those, or just icons? Apr 15 03:09:24 joetoday_, launcher and some animation assets Apr 15 03:10:46 pfnQ: ok cool, so then we just create our own drawable folders for diff dpis? android studio doesn't seem to add them anymore Apr 15 03:14:58 because generated projects only have launcher icons Apr 15 03:15:10 of course they won't generate stuff that is unused Apr 15 03:15:38 cool, play books update - maybe they made it 100x faster for epubs Apr 15 03:16:20 hi, i have develop a list of feed, image and video. i must replicate facebook video behavior so video starts automatically without audio Apr 15 03:16:50 how can i know when video is visible in feed Apr 15 03:17:41 ahh ok, that makes sense, so now since default icons are in the mipmaps, no more drawables get made, thanks for the clarifcation! Apr 15 03:23:54 must i upload an apk and create a merchant account just to test IAB? Apr 15 03:27:13 Hi all. Would anyone mind taking a look at my XML file? I'm trying to get my listview to display above an ad fragment. But it's not working correctly Apr 15 03:27:55 http://pastebin.com/5FNyM0Jv Apr 15 03:28:42 why is your drawerlayout not your topmost view Apr 15 03:29:07 that whole layout seems a bit messed up Apr 15 03:29:16 I want the Toolbar to be above the navigation drawer. couldn't figure out another way to do it Apr 15 03:30:06 thats wrong Apr 15 03:30:15 well, according to material design spec anyways Apr 15 03:30:28 the nav drawer should slide over the toolbar, under the status bar Apr 15 03:30:35 yeah but a lot of apps do it (like fitbit, beyondpod, etc) Apr 15 03:30:39 and it looks a lot nicer in my app like that Apr 15 03:31:42 i disagree but ok Apr 15 03:33:55 liuwenhao: its probably because of your heights and widths on the children of the relativelayout Apr 15 03:48:47 alright thank you desmin. I got it working now Apr 15 03:51:23 Hi all. How many different ways are there of running code on multiple processors under Android? There are Worker threads, AsyncTask, Background Processes/Services/RPC, Native threads and JNI. Have I missed any? Apr 15 03:52:20 DarkCthulhu: aeen't they all just threads with various levels/layers of abstraction mon top? Apr 15 03:52:50 asynctask just uses threads, for example... Apr 15 03:52:58 myke: Yeah, I guess so. I'm just looking for classes that the Android API offers for this purpose to draw a comparison. Apr 15 03:52:59 LoaderManager, or does that count as asynctask? Apr 15 03:53:53 liuwenhao: Looks interesting! Does count :) Apr 15 03:54:16 Any others? I remember something that had "cycle" in the name but can't find it. How does one do pools of threads for example? Apr 15 03:54:18 LoaderManager is good for SQLite cursors. Not sure what else it would be useful for Apr 15 03:54:29 what is another way to say "you're competitively bidding with others?" Apr 15 03:54:31 but I'm sure you could find something Apr 15 03:54:50 Hmm.. ThreadPoolExecutor and Executors seems like another Apr 15 03:55:14 DarkCthulhu: thread pool executors, read the asymctask source for one way Apr 15 03:56:52 myke: I was trying to use traditional Threads with joins and when I did a systrace, the execution pattern seemed like there was no real parallelism. Why would something like this happen? Apr 15 03:57:02 Tegra 3 device (Nexus7 with 4 cores) Apr 15 03:57:25 For CPU intensive operations, are Android threads a good idea? Apr 15 03:57:38 I mean VM threads Apr 15 03:57:43 systrace may run threads serially? Apr 15 03:57:54 that's why debugging threads is tricky Apr 15 03:58:02 myke: :-o Ah.. Apr 15 03:58:12 vm thread? Apr 15 03:58:13 Well, then I have no real way to see execution pattnrns Apr 15 03:58:20 they are just all jvm threads... Apr 15 03:58:32 well you can instrument your code Apr 15 03:58:36 myke: The native variant? Apr 15 03:58:50 i vaguelynremember they did or werw adding something that would help Apr 15 03:58:57 need to dig up that videomagain Apr 15 03:59:18 Ah.. so, instrumenting could tell me which thread it is actually running on. I was really worried when I saw the systrace report :-| Apr 15 03:59:23 <_genuser_> dang, I spend too much time in my proof of concept project trying stuff out. Apr 15 04:00:29 anyway threads work, ifmthat's your concern Apr 15 04:02:03 myke: I see. ty! Apr 15 04:02:11 DarkCthulhu: i just print thread id , the tid() method Apr 15 04:02:31 myke: Hmm.. if I see races, that'll probably convince me. I still need statistics though, of speedup and scaling. Apr 15 04:02:38 I'll see what I can do about that. Apr 15 04:02:48 that's entirely dependent on your code Apr 15 04:02:55 myke: Embarrassingly parallel Apr 15 04:03:02 great! Apr 15 04:03:17 then it should be easy to see the difference Apr 15 04:03:45 Should I expect large differences between the JVM threads and native pthreads for example? Apr 15 04:04:12 no Apr 15 04:04:44 i'm guessing but - doesn't the jvm use pthreads? Apr 15 04:05:38 myke: Unsure, but I imagined there would be some VM overhead which can be eliminated with a call into native code. Will test this out anyway. Apr 15 04:05:52 I wish I could see core utilization as well somehow in a direct manner. Turning off cores selectively would be even better. Apr 15 04:06:25 But even with root, setting cores to inactive doesn't seem to stick with the Tegra device. Apr 15 04:06:37 dunno why there'd be very much overhead Apr 15 04:07:14 myke: For one thing, with native threads, I could set the affinity to a particular core. Apr 15 04:07:48 sure, but performance wise? i'd expect that to be the same Apr 15 04:08:09 <_genuser_> general question for you nerds. Apr 15 04:08:15 and yes you get less control Apr 15 04:08:19 myke: Hmm.. I guess if the setup time is far lesser than the computation time, that should be the case. Apr 15 04:08:40 ...and if that isn't the case, there isn't a strong case for threading in the first place. Apr 15 04:08:53 <_genuser_> should I go with storing a state var (modified in synchronized block) and check the state before initiating a task? Or should I just synchronize the task itself in a block? Apr 15 04:09:01 So,yeah, you're right myke. I still need real stats, so I'll run my tests. Apr 15 04:10:52 _genuser_: if you don't sync the task or lock what's to keep another thread from doing its work after you check the var but before you do your thing? Apr 15 04:11:11 DarkCthulhu: yup! Apr 15 04:11:56 <_genuser_> myke: once the var is flipped to "in_prog" in a sync'd block, any successive called will check the var and exit without initiating the task. Apr 15 04:12:48 <_genuser_> { sync{flip_var;} do_long_task; sync{flip_var_to_idle} } Apr 15 04:13:35 <_genuser_> basically, the object can be in multiple states and I was thinking I could just use that. however, now I'm thinking I should just sync the task block itself. Apr 15 04:14:37 it's easynto get wrong... Apr 15 04:14:53 aslo, android provides some higher level constructs for all that Apr 15 04:15:10 there's a free class on coursera about that, running right now Apr 15 04:15:17 might want to skim the slides, etc Apr 15 04:15:22 that's how i learned Apr 15 04:16:02 using a lock instead of synchronized, etc Apr 15 04:18:48 main takeaway, it's surpisingly easy to create subtle 1 in 100 runs bugs Apr 15 04:20:48 How am I supposed to work IAP into my app if I first must upload an apk with the billing permissions to set it up in the console Apr 15 04:22:24 desmin88 i think you can upload without activating Apr 15 04:22:40 upload the apk but don't publish it Apr 15 04:22:48 i think Apr 15 04:23:02 DarkCthulhu: best of luck! Apr 15 04:23:08 that's how you have to test apk extensions :( Apr 15 04:23:15 ty myke :) Apr 15 04:23:52 myke: What do you do? Student? Working on Android Apr 15 04:23:53 ? Apr 15 04:24:03 these guys are lik , "booo! get an Apple watch" http://i.imgur.com/YR4ygZY.jpg Apr 15 04:24:24 mr mcGrumpersons on the left there Apr 15 04:24:45 doh! g00s ^ Apr 15 04:25:18 DarkCthulhu: coder but learning android/java/etc for my startup Apr 15 04:25:40 myke: Whoa... A startup. That is very interesting! Apr 15 04:26:09 DarkCthulhu everyone that is unemployed has a startup :D Apr 15 04:26:17 DarkCthulhu: haha maybe...lots of that going around these days? Apr 15 04:26:24 anyway got to go for now... Apr 15 04:27:01 Are there any articles or write ups concerning the best practices for android app monetization? Apr 15 04:27:27 Concerning whats best, 1 app with IAP to remove ads, two apps one free w/ ads one paid w/o, etc. Apr 15 04:27:40 I'm at the point where I'm publishing soon and need to make the decision Apr 15 04:28:50 <_genuser_> myke: yeah, I thought about using locks, etc. I think I wanna run thru this carefully instead of introducing amazingly hard to find bugs. Apr 15 04:28:56 desmin88 there should be some good data out there, check out http://www.fiercedeveloper.com/story/report-iaps-will-overtake-all-other-monetization-methods-2018/2015-04-03 Apr 15 04:30:16 desmin88 check out https://www.developereconomics.com/reports/developer-economics-q1-2015/ Apr 15 04:30:55 thanks! Apr 15 04:33:35 i'm pretty sure im gonna go with one app w/ IAP but still gonna do some more reading Apr 15 04:34:00 i'm not comfortable with the IAP apis. Apr 15 04:34:23 yeah. Apr 15 04:34:29 What from I' Apr 15 04:34:51 damnit. What from I've been reading they are mess. I've looked at these two libs https://github.com/serso/android-checkout and https://github.com/anjlab/android-inapp-billing-v3 Apr 15 04:34:55 that might help Apr 15 04:39:37 JUnit tests are working in Android Studio but not from gradle command line, where they complain of missing R$raw... Ideas? Apr 15 04:40:23 what's your project structure like? Apr 15 04:41:11 standard module - src/main/res, src/main/java Apr 15 04:41:38 src/test Apr 15 04:41:47 same package for tests and classes Apr 15 04:42:12 it fails on a line that tries to access R.id.myresource, though I've mocked the actual resource lookup Apr 15 04:43:52 it sure would be a lot easier to search if they hadn't called the damn class R Apr 15 04:44:55 what framework (if any)? Apr 15 04:45:37 not sure what you mean... Junit - no other major framework Apr 15 04:47:53 running with gradle in android studio also fails, but not when using junit Apr 15 04:48:35 jw i've had similar issues with robolectric tests. ended being a missing classpath dependency in the module's build.gradle Apr 15 04:49:50 gradlew test also doesn't really work, doesn't seem to properly build the project so that seems in the same vein Apr 15 04:50:33 but not sure how I'm supposed to say "the tests depend on the project" Apr 15 04:52:36 you can add a test source set, ie resources.srcDirs = ['src/test/resources'] Apr 15 04:53:18 are you running the tests from a JUnit run config in studio? Apr 15 04:55:27 yes Apr 15 04:55:29 those work fine Apr 15 04:55:52 but not gradlew test Apr 15 04:57:06 the first thing i'd try is creating a couple gradle run configurations in studio, one to assembleDebugUnitTest, and then another one that calls the first and then runs 'clean test' Apr 15 04:57:16 will compileSdkVesion have any impact? I have 19 for that Apr 15 04:58:24 i'm not sure... but i usually build with the latest SDK version. currently 22 Apr 15 04:58:42 as in compileSdkVersion 22 Apr 15 04:59:25 ok, will go for that. Thanks Apr 15 04:59:58 np. good luck Apr 15 05:01:01 the fact that test target doesn't build the project seems like I must've made a mistake, but the gradle looks like all the working examples. Apr 15 05:02:37 huh, i thought i could have nested enums Apr 15 05:05:15 also, if anyone is interested, I forked an old Vagrant VM and updated it to install android studio: https://github.com/masterjefferson/android-vm Apr 15 05:07:48 djMax: does the prject build and run at all? Apr 15 05:08:11 yes Apr 15 05:08:23 ok Apr 15 05:09:06 and you're compiling junit with testCompile in build.gradle? Apr 15 05:09:42 yes Apr 15 05:10:39 gradlew build also fails the tests, but for a different reason - it can't find the classes under test Apr 15 05:11:21 it sure is strange how much of a second class citizen JUnit is for android. Apr 15 05:12:11 And don't get me started about TestNG Apr 15 05:12:36 JakeWharton i think a lot of people are scratching their heads now http://www.reddit.com/r/androiddev/comments/32mk29/rhyme_city_example_app_mvp_in_practice_with/ Apr 15 05:12:59 i just assumed 2 > 1 also, so then will they evolve separately ? Apr 15 05:13:11 square dagger, google dagger ? Apr 15 05:13:32 Hi all. Quick question: what's the best way to implement an in-app purchase? I found this library https://github.com/serso/android-checkout , just wondering if anyone has opinions on this Apr 15 05:14:02 Dagger 2 was written with little regard to Android or the advantages of v1 for development. People can scratch or do whatever they want. Apr 15 05:15:55 Use Cordova and a library :x Apr 15 05:16:59 Agamemnus build something amazing with cordova, then come back to talk about it :D Apr 15 05:18:10 Is RoboElectric likely to make this less painful than google? Apr 15 05:18:22 djMax: can you try running gradlew clean assembleDebug test Apr 15 05:18:48 djMax: Robolectric is just a JUnit test runner. Apr 15 05:19:08 If JUnit isn't working, you won't be able to get a JUnit test runner working. Apr 15 05:19:15 Junit is working, gradle is not. Apr 15 05:19:32 so the build fails with clean assembleDebug test Apr 15 05:19:41 because it can't find the class under test. Apr 15 05:21:20 (even though it did compile them) Apr 15 05:21:21 exit Apr 15 05:21:23 oops Apr 15 05:22:09 also, run gradlew dependencies Apr 15 05:22:26 I have this in sourcesets which I don't see in examples: debug.setRoot('build-types/debug') Apr 15 05:22:41 curious what it says for testCompile Apr 15 05:23:10 Task 'testCompile' not found in root project Apr 15 05:24:03 if I go into the class library module I get a bunch of output Apr 15 05:24:24 testCompile has junit and mockito as deps Apr 15 05:26:28 if you want to post your project and module build.gradle's i can take a look at them Apr 15 05:26:43 the file it's failing on (R.java) is not in src, it's in build/generated. Do I somehow need to point junit there? Apr 15 05:27:42 though I guess the class matters not the java source Apr 15 05:27:46 <_genuser_> anybody here work with IntentService Apr 15 05:27:47 <_genuser_> ? Apr 15 05:27:48 and that's in build/intermediates. Apr 15 05:35:27 the only thing i could think of is maybe adding a test{} task and adding the sourceSet there Apr 15 05:36:23 any custom roms that are like "man card"? Apr 15 05:42:51 <_genuser_> so interesting question. if ByteArrayOutputStream returns a byte[] via .toByteArray(), if that value is stored, does the entire ByteArrayOutputStream objet stay in memory since a value it returned is being referenced? Apr 15 05:43:39 _genuser_: no, tobytearray is a copy Apr 15 05:44:06 yey defect tracker spammed again Apr 15 05:44:29 <_genuser_> so toByteArray creates a byte[] returns it, and when it exits, the reference it held is gone. Apr 15 05:44:36 And the wrapper wouldn't stay in memory either since the array doesn't reference the stream, just vice-versa Apr 15 05:44:47 Yes Apr 15 05:45:03 <_genuser_> so referencing that returned value doesn't references any instance vars inside the ByteArrayOutputStream. that makes sense. Apr 15 05:45:08 <_genuser_> I knew I needed to talk it out here. Apr 15 05:45:43 <_genuser_> running into outofmemory exceptions quite a bit. so toning the app down. Apr 15 05:46:11 _genuser_, read some guides on java memory management and gc Apr 15 05:46:14 Ask yourself the question, how could I get the original stream from the byte array. You can't, and thus, no references are kept. Apr 15 05:46:56 just about all of it applies to android Apr 15 05:47:14 is anyone using AS 1.2 and having problems with xml resources not being visible from Java, whether R is misssing, or the new resource id is missing ? Apr 15 05:47:15 <_genuser_> yawkat: yeah, I think the putpose of the stream is much different from many object I write where internal data can be returned in various formats via .toBlahFormat(), while the object is meant to stay in memory. Apr 15 05:47:18 yawkat, old implementations of substring beg to differ Apr 15 05:47:29 <_genuser_> so it might return a reference to something it's actually using instead of making a copy. Apr 15 05:47:40 pfnQ: true but it's often the case :P Apr 15 05:48:21 <_genuser_> yeah, I think especially the purpose of many of these stream objects is different than what I might write as an object that's meant to stay in mem. Apr 15 05:48:21 _genuser_, just because you're using it means that it's using you Apr 15 05:48:34 hm, if the defect tracker is getting spammed i wonder if this is a bad time to submit a bug Apr 15 05:49:13 <_genuser_> pfnQ: amazing how we've come so far on desktops where you do'nt worry about any of this unless you're writing some server that's processing tons of requests per second. Apr 15 05:49:33 don't have to worry? Apr 15 05:49:37 wrong Apr 15 05:49:38 <_genuser_> pfnQ: but now that we're down to a phone with 64MB of memory, it's pretty amazing how resource conservation becomes important again. Apr 15 05:50:21 <_genuser_> pfnQ: well, normally I go super paranoid trying to not have memory leaks. but I'm sure you'll agree development community at large doesn't really worry about memory management when writing simple user apps. Apr 15 05:50:32 <_genuser_> pfnQ: exhibit A: android studio, lol. Apr 15 05:50:42 and I haven't really worried about resource conservation on android since 2.2 Apr 15 05:51:02 this smells like my problem... I should've specified the main module is a lib https://code.google.com/p/android/issues/detail?id=144573 Apr 15 05:51:12 <_genuser_> pfnQ: yep, I didn't either. now this one is different tho. dealing with bitmaps. loading a single bitmap unscaled can pretty much run out of memory. Apr 15 05:52:25 and the workaround there (android.sourceSets.test.java.srcDirs += "build/generated/source/r/debug") works like a charm! Apr 15 05:54:11 ah, good to know. bookmarked that Apr 15 05:54:42 _genuser_, nope Apr 15 05:54:55 (and I still need clean assembleDebug testDebug, test doesn't work as is) But at least now Jenkins can do it. Thx for all the help Apr 15 05:55:36 _genuser_, unless you're working with like 20 megapixel images Apr 15 05:55:55 noted. no problem, glad you got it working. Apr 15 05:58:00 i should submit an issue "this defect tracker sucks" Apr 15 05:58:14 fix defect tracker Apr 15 06:00:02 <_genuser_> pfnQ: 1920x1080 images or higher. I load 2 or 3 and it's done. now, you might say nope, but unfortunately, my device still can't handle that where total mem yis 64MB and available mem is 8MB after everything else is loaded. Apr 15 06:00:42 <_genuser_> pfnQ: I've solved _most_ of all that hassle via use of picasso. so most of it pretty fast. Apr 15 06:01:56 Hey, i'm trying to stack 2 full screen buttons on top of each other. I seem to have implemented it by nesting two relative layouts inside a linear layout and giving them both weights of 0.5, is that a good approach? http://pastebin.com/jH82b8wh Apr 15 06:02:47 <_genuser_> joetoday: one linearlayout with orientation of vertical and two buttons with weight to .5 will do Apr 15 06:04:10 _genuser_: got it, is nesting generally something to be avoided? Apr 15 06:05:11 <_genuser_> joetoday: if needed, you will have to nest. but in this case since assigning equal weight in a linearlayout (vertical) does the job, the rest of the stuff will just be extra stuff for you to manage with no benefit. Apr 15 06:10:43 is there a way to trigger AS to rebuild R file ? Apr 15 06:11:12 i see that things i add to res/ are not being reflected in R.java Apr 15 06:11:18 maybe it needs poking Apr 15 06:12:01 why'd they port that feature over Apr 15 06:13:48 i guess generateDebugSources task should do it Apr 15 06:14:19 i think i just need to downgrade to 1.1 Apr 15 06:18:56 <_genuser_> g00s: I lost the R file a few times. I did clean and rebuilt or make solution. that's about it. Apr 15 06:20:05 yeah, i just did a clean and it made things worse, R dissapeared completely Apr 15 06:22:35 <_genuser_> lol, I remmeber there was one time it was just acting weird. so I restarted and it was fine after that. those are the only two things I had to do to get the R file going. Apr 15 06:47:39 Is it possible to get the DOM from a WebView? Apr 15 06:54:55 you mean to parse the page source? Apr 15 06:59:54 hello Apr 15 07:00:26 Im trying to get eclipse+ADT working on a 32bit xubuntu Apr 15 07:03:40 eclipse is so last week. now is all about android studio Apr 15 07:03:47 my error: http://htmldp.com/p/ ?KUkC Apr 15 07:03:53 but 32bit... hmm how much ram it has Apr 15 07:04:04 http://htmldp.com/p/?KUkC Apr 15 07:04:06 2GB Apr 15 07:04:14 Asus eeepc 1201pn Apr 15 07:04:21 can't run android studio Apr 15 07:04:24 well Apr 15 07:04:27 I can Apr 15 07:04:37 are you trying to run app Apr 15 07:04:46 but it is useless because it works too slow Apr 15 07:04:48 yeah Apr 15 07:04:54 then I have this error Apr 15 07:05:03 tried the recommended solution Apr 15 07:05:08 well android emulator is slow on its own Apr 15 07:05:16 you could try real device or genymotion Apr 15 07:05:27 how? Apr 15 07:05:55 I would like to compile an apk Apr 15 07:06:00 do you have android device? Apr 15 07:06:02 in a debug mode Apr 15 07:06:03 yes Apr 15 07:06:23 you would just need to turn on developer options, turn on usb debugging and plug-in your laptop Apr 15 07:06:32 I know Apr 15 07:06:34 then when you hit run you should get this device listed Apr 15 07:06:39 OK Apr 15 07:06:50 I've already used adb on this device Apr 15 07:06:56 but never with Java Apr 15 07:07:08 I've been using the kivy framework for python Apr 15 07:07:17 the compiled .apk should be in bin/ in project path Apr 15 07:07:27 oh Apr 15 07:07:38 and if eclipse wont work, you could try adb install the_app.apk Apr 15 07:07:51 k Apr 15 07:08:02 I can even use Apache to download the apk Apr 15 07:08:33 :v Apr 15 07:14:44 Hi! I need some help with fragment manager back stack. I have a fragment A which I want as base fragment, ie, if someone goes A>B and pressed back, he goes back to A, and A>B>C>D also goes back to A on back press. How should I manage the back stack for this? Apr 15 07:16:39 astroduck, does anything go to b or c? Apr 15 07:17:06 Hello Apr 15 07:17:46 iprime: From NavDrawer Apr 15 07:18:21 I've got an issue: I'm using the Shell.SU.run call Apr 15 07:18:37 it should return a List of String Apr 15 07:19:23 I've converted the result in an array of strings and then in a single String Apr 15 07:19:52 finally, I've sent the string to logcat via Log.e call Apr 15 07:20:51 but when I read the messages in logcat , I see: [] Apr 15 07:21:07 it seems an empty array Apr 15 07:21:32 if i type the command directly in an android terminal emulator, I get a message Apr 15 07:21:44 I have heard a lot of people's apk's being ripped and distributed on non authorized websites. is there any way I can prevent this happening to my apps i release on play? Apr 15 07:22:07 but I can't see it in Shell.SU.run result Apr 15 07:22:24 I don't understand why this occurs Apr 15 07:22:26 Any ideas? Apr 15 07:22:55 njcomsec, without a bunch of checks and balances, your stuff will always get ripped. just a fact of life :) but you can make it harder for them, just gotta read Apr 15 07:22:59 *to Apr 15 07:25:37 i know that it would actually bring more publicity to my app... my main worry is google might find it suspicious and pull my app or the offending website might be doing something which violates the terms Apr 15 07:26:16 considering the fact they offer encrypted protection themselves Apr 15 07:26:22 together with API call verification, I find that unlikely Apr 15 07:26:32 they WILL NOT like it if you spy on your users without their consent though Apr 15 07:27:15 iprime: would popBackStack(String name, int flags) be useful for this? Apr 15 07:31:06 njcomsec, they can't copy your same package name and release on playstore, so google shouldn't have an issue with you Apr 15 07:32:15 Mavrik, what API call verification are you speaking of? is there something newer than LVL Apr 15 07:33:20 cool Apr 15 07:33:29 is it worth obfuscating my code? Apr 15 07:34:02 not that anyone else would be able to make sense of my code anyway lol Apr 15 07:35:13 njcomsec: not really, I used to remove license verification calls from obfuscated APKs :D Apr 15 07:35:36 ahhh Apr 15 07:36:12 IMO people will pay the most if they believe it's worth it Apr 15 07:36:23 (and paying doesn't involve problems) Apr 15 07:36:29 hey, do I need to use the zipalign tool anymore? Apr 15 07:36:41 phix: yes Apr 15 07:36:43 or does Android Studio take care of this now? Apr 15 07:36:58 p_l: zipalign 4 ? Apr 15 07:37:02 phix: hmm... check the gradle build script, I suspect it calls zipalign Apr 15 07:39:28 hmmm ok, it looks like the Build, Generate Signed APK does this, how can I test if a apk has been zip aligned properky? Apr 15 07:39:44 and that are the implications if it hasn't? Apr 15 07:44:30 phix, you can read what zipalign does, and inspect it yourself, what's the issue of worrying about it not happening? it's been an accepted action for awhile, so for it not to happen seems like user disabled it Apr 15 07:47:11 hello Apr 15 07:47:41 i have a few questions about ads in android apps Apr 15 07:48:02 cool story Apr 15 07:48:09 how much do i earn for 1 click on a banner? Apr 15 07:48:27 do i have to pay for this service? Apr 15 07:48:31 as much wood as a woodchuck could chuck if a woodchuck could chuch wood Apr 15 07:48:51 hTmXXX, your ad partner should be able to tell you Apr 15 07:49:19 any good articles in the web? Apr 15 07:49:27 most likely Apr 15 07:49:33 tried to google Apr 15 07:49:43 that's good Apr 15 07:49:46 i need a kind of a how to guide Apr 15 07:49:47 what happened Apr 15 07:49:56 for using what? Apr 15 07:50:39 or for using the what of the who Apr 15 07:51:00 hi! as anyone seen an emulator-5666 offline, without running anything but adb devices? Apr 15 07:52:05 parmegv, if so, is there a reward? Apr 15 07:52:08 is admob free for developera? Apr 15 07:52:16 developers? Apr 15 07:52:21 hT, go check Apr 15 07:52:32 seems you are in the lazy stage Apr 15 07:53:41 whatitis-: not really hahaha. But in the future I'll setup a bitcoin account (when I'm wealthy enough hehehe) for this cases Apr 15 07:54:48 parmegv, what's the issue, are you running an emulator and trying to adb shell in from a command prompt, and getting it as offline? Apr 15 07:55:10 no Apr 15 07:55:15 whatitis-: I used to have to do it as a seperate process for Eclipse, since i am using ANdroid Studio I am not sure if it does it automagically Apr 15 07:55:43 parmegv, so what's the issue Apr 15 07:55:43 the issue is that as soon as I start the computer and run adb devices, I see an offline emulator Apr 15 07:56:00 ah, do you have any other emulators besides AVD? Apr 15 07:56:10 besides AVD? Apr 15 07:56:15 no, that I'm aware of Apr 15 07:56:40 what other kinds of emulators are there? Apr 15 07:56:57 genymotion, bluestacks(maybe?) Apr 15 07:57:06 oh, no, not at all Apr 15 07:57:15 did you google it? Apr 15 07:57:19 yeah Apr 15 07:57:25 and nothing? Apr 15 07:57:29 even close? Apr 15 07:57:50 no Apr 15 07:58:03 doing a netcat | grep 566 shows nothing Apr 15 07:58:09 not sure if sarcasm or really cannot google Apr 15 07:58:13 phix, but AS is an upgrade from eclipse, and it is specific to android, do you think it'd not zipalign by default? Apr 15 07:58:31 and in theory, there should be a socket in 5665 or 5666 Apr 15 07:58:35 localhost, of course Apr 15 07:58:39 but there is nothing Apr 15 07:59:20 Syzygy: hey! did you find the solution to your problem? Apr 15 07:59:37 hmm OK I know something about AdMob pricing Apr 15 07:59:56 uuh,... it's kind of early and I haven't really slept that much... what was my problem again? Apr 15 08:00:18 good morning then hehehe Apr 15 08:00:28 but can't find if a developer has to pay anything Apr 15 08:00:35 devices not connecting? Kinda, I installed some more drivers and got some more working Apr 15 08:00:37 the problem was that AS didn't detect your devices Apr 15 08:00:56 parmegv, actually 5666 is not some kind of default, think 5554 sounds more realistic, so the 5666 seems user set or something rouge, but i can be wrong a lot Apr 15 08:01:33 whatitis-: for sure. there can be 16 concurrent emulators, starting from 5554, so 5666 should not be there Apr 15 08:01:49 hTm, goto admob, and signup and check the process, or just read about it, it's free to signup and use ads, you have to pay to promote yourself Apr 15 08:01:49 whatitis-: I don't know how complete Android Studio is Apr 15 08:02:09 I have recently switched Apr 15 08:02:16 I don't know how google coded adb so that it detected an emulator outside their own range Apr 15 08:02:31 So yeah, I kinda fixed it Apr 15 08:02:34 Syzygy: more drivers apart from Samsung's? which ones? Apr 15 08:02:35 but why are you worrying, what did googling "does android studio zipalign" show? Apr 15 08:02:55 whatitis- I don't want to promote myself Apr 15 08:02:56 google drivers from sdk manager... I thought they were installed, guess I was wrong Apr 15 08:03:07 oh, nice... android studio crashes Apr 15 08:03:09 whatitis- I want to earn money on ads Apr 15 08:03:14 hTm, ok then it's free to show their ads in your app Apr 15 08:03:25 Awesome! Apr 15 08:03:36 but this is simply explained from their site Apr 15 08:03:40 Syzygy: ok, thanks! good to know Apr 15 08:03:44 which seems you have not visited Apr 15 08:03:48 I have Apr 15 08:04:10 was even registering an account Apr 15 08:04:11 lies, unless they presented a website not in your native tongue, so confusion set Apr 15 08:04:24 time to restart, hopefully that will fix my android studio closing without displaying an error message -.- Apr 15 08:04:34 I wish the Android docs had gifs to demonstrate widgets, like this https://github.com/wasabeef/awesome-android-ui Apr 15 08:15:02 Well, my android stuido is still crashing. Apr 15 08:15:06 hmmm can google play pay me through PayPal Apr 15 08:15:36 ? Apr 15 08:15:44 does it make any sense? Apr 15 08:15:48 hTmlDP stop asking dumbass questions Apr 15 08:15:55 google it Apr 15 08:15:59 I am Apr 15 08:16:37 Syzygy welcome to the club; 1.2 is buggy as hell :( Apr 15 08:16:40 Hi all. If I have a phrasebook/dictionary type app, do I need to have a mature rating for my app because it will have swear words? I have one specific category dedicated to swearing but it's more educational than anything. Apr 15 08:17:08 g00s, to be fair, I'm on windows 10 tech preview Apr 15 08:17:18 Syzygy how do you like windows 10 ? Apr 15 08:17:18 on admob doesn t accept PayPal anymore :[ Apr 15 08:17:32 any alternatives? I don't have a bank account. Apr 15 08:17:39 and don't want to Apr 15 08:17:48 except for that... I like it. some things I was missing from previous versions. wish i was using cortana more. Apr 15 08:18:18 Syzygy i'll be keeping a close eye on their universal app thing Apr 15 08:18:31 i'm interested in writing desktop/tablet/mobile Apr 15 08:19:16 official admob info " checks, electronic funds transfer (EFT), wire transfer, Western Union Quick Cash, EFT via Single Euro Payments Area (SEPA), and Rapida. PayPal is no longer supported." Apr 15 08:19:24 g00s: and what do you think about ubuntu phone? it seems a good target for that kind of goals Apr 15 08:19:29 hTmlDP: You are kind of screwed, Google won't ever support paypal because it is a direct competitor Apr 15 08:19:48 kind of dislike that cortana text queries default to web instead of system, also, cortana useses bing with no way of changing it (yet?). Same for the standard search engine of project spartan. Apr 15 08:20:26 any idea where android studio crashlogs (not android, but actually of android studio) are located? Apr 15 08:20:58 how can I use admob without a bank account? Apr 15 08:21:09 Use someone elses? :) Apr 15 08:21:18 any suggestions? Apr 15 08:21:25 haha =d Apr 15 08:21:35 There really is no other way, unless I'm missing something Apr 15 08:21:51 you should just register a checking account, if you are planning on making money on your app it's good to have anyways Apr 15 08:22:02 Is having a bank account an issue? Apr 15 08:22:07 the problem is that I'm 16 Apr 15 08:22:20 you can still have an account. just has to be a joint account with an adult Apr 15 08:22:23 and my parents don't let me make a bank account Apr 15 08:22:32 you should still be able to have a bank account afaik. or parents. Apr 15 08:22:56 your parents dont want you to make money? Apr 15 08:22:57 tell your parents that you need to make money off your app Apr 15 08:23:17 if it's joint account they can see all of your transactions so there is nothing for them to worry about Apr 15 08:23:35 try to reason with them, this is a fairly responsible reason to get one. Apr 15 08:24:34 that would be great if ubuntu touch would take off, but i have little hope Apr 15 08:25:02 yep Apr 15 08:25:04 agree Apr 15 08:25:25 they shipped something ... but it didn't have convergence, which was their most interesting feature Apr 15 08:25:49 not sure if they have any HW partners at all Apr 15 08:25:55 they can't even get their desktop OS to take off... it's going to even harder for mobile Apr 15 08:26:14 linux still only has 1% market share :( Apr 15 08:26:44 g00s, tried ARC yet? Apr 15 08:26:51 guys my keyboard overlaps my edittext and button,if im not wrong it must be automatically re located according to keyboard Apr 15 08:26:58 Syzygy no i haven't Apr 15 08:27:39 Hello, How can I detect when the application goes to background? Apr 15 08:28:04 soomsoom,what have you tried? Apr 15 08:28:12 onPause/onStop Apr 15 08:28:19 onstop() on MainActivity Apr 15 08:28:47 but its not good, because onStop() called when I opening a new activity Apr 15 08:29:09 I'm dumb, are there any good primers on writing custom RecyclerView.LayoutManagers? Also, is it worth using lucasr's TwoWayView? Apr 15 08:29:31 Estel check dave smith's blog Apr 15 08:29:32 soomsoom, what are you trying to accomplish? Apr 15 08:29:47 g00s: thanks Apr 15 08:30:19 To show a notification when app goes to background Apr 15 08:31:04 Estel http://wiresareobsolete.com/2014/09/building-a-recyclerview-layoutmanager-part-1/ Apr 15 08:31:08 parts 1,2,3 Apr 15 08:31:15 probably even more :( Apr 15 08:31:25 good luck! :D Apr 15 08:31:30 thanks ;) Apr 15 08:31:36 HOW HARD CAN IT BE? Apr 15 08:31:44 ahahha Apr 15 08:32:18 whatitis-: To show a notification when app goes to background Apr 15 08:32:31 I'm still surprised google released code as convoluted as recyclerview... it works really great when it's completed but still Apr 15 08:32:43 the amount of boilerplate is astounding Apr 15 08:33:05 first time that I don't have a solution to a problem on my app :\ Apr 15 08:33:41 soomsoom: well, it's a bit of a weird pattern. Android is very Activity-centric Apr 15 08:35:42 Estel: I just trying to fix an issue on the Instant Messaging part of my application, when user pressing home, it should pop a notification like if the user kills the app Apr 15 08:35:45 http://stackoverflow.com/questions/4414171/how-to-detect-when-an-android-app-goes-to-the-background-and-come-back-to-the-fo Apr 15 08:35:52 check out Gnawer's answer, it might help you Apr 15 08:35:58 I was just about to link that :( Apr 15 08:36:02 or maybe it won't, I don't know Apr 15 08:36:10 good luck ;) Apr 15 08:36:47 Martin Marconcini's solution looks promising too. but api 14+ Apr 15 08:37:06 liuwenhao: my app supports from api 17, its fine Apr 15 08:38:36 I can't imagine developing for Android without StackOverflow. the google documentation is... something Apr 15 08:38:54 Fantastic? Apr 15 08:39:01 Illuminating? Apr 15 08:39:10 all of the above? Apr 15 08:39:12 liuwenhao: it's the same on the iOS front I think :) Apr 15 08:39:18 also don't forget about our pal IRC Apr 15 08:39:41 liuwenhao: Google documentation is hard to understand :\ Apr 15 08:40:01 Yeah. It's really bad Apr 15 08:40:04 and yet it's one of the best ones around. Apr 15 08:40:12 as far as I've seen. Apr 15 08:40:34 capella: I mean to get the DOM element, and be able to read it... Apr 15 08:40:42 true, such opinions also depend on what experience a developer generally has with software documentation :) Apr 15 08:40:43 capella: (from Java) Apr 15 08:41:07 anywho, guys, last time I did something with Android was around a year ago, on Eclipse Apr 15 08:41:16 can someone tell me where android studio crash logs are stored? Apr 15 08:41:18 now I read a lot about Android Studio Apr 15 08:41:39 which is the way to go now, if I'm very good with Eclipse as I use that platform also for other things besides Android Apr 15 08:42:07 Kanalia: Android Studio is definitely the way to go Apr 15 08:42:07 is it worth it to install another IDE just for Android dev? Apr 15 08:42:16 Syz: are you windows? Apr 15 08:42:19 Kanalia: yes Apr 15 08:42:22 yes Apr 15 08:42:25 or has the Eclipse plugin been axed by Google and there's no going back to that Apr 15 08:42:29 Estel: OK Apr 15 08:42:30 you can import Eclipse hotkeys into Android Studio Apr 15 08:42:54 liuwenhao: Every solution I tried to implement for this problem doens't help, even in this StackOverFlow post that you gave me Apr 15 08:42:55 The eclipse plugin isn't being actively updated anymore, and you'd gain from switching to AS for even one small side project imo Apr 15 08:42:59 cool, good to know Apr 15 08:43:49 ah, that's the killer right there, that the Eclipse plugin isn't being developer anymore ie. if not now, I'd have to change to AS later anyway, to support new hardware and features Apr 15 08:44:04 liuwenhao: Even I watched telegram source code to see how they implement this, no Idea... Apr 15 08:44:24 better to switch to IDEA ;) Apr 15 08:44:35 how much ram does android studio usually require? Apr 15 08:44:37 Syz: I think I found it. It should be AndroidStudio/System/log/ Apr 15 08:44:48 Kanalia: I think they're still doing some occasional updates, but they're much less frequent and there's no new feature development Apr 15 08:45:04 Syz: Around 1-2GB Apr 15 08:45:12 Estel: OK Apr 15 08:45:15 Kanalia: once you use gradle you can't go back Apr 15 08:45:23 It's very easy and nice once you learn it Apr 15 08:45:25 I've used gradle and maven Apr 15 08:45:28 np :) Apr 15 08:45:37 Syzygy: I'm using 700MB at the moment Apr 15 08:45:37 soomsoom: sorry, I don't know, just thought that StackOverflow post could help Apr 15 08:45:57 liuwenhao, and freaking slow... Apr 15 08:46:09 Gradle? Or Android Studio Apr 15 08:46:19 Hmm, when starting it uses up about 90% cpu time and goes up in ram pretty fast, until it crashes around 600mb ram Apr 15 08:46:25 gradle Apr 15 08:46:27 ok guys, seems like everybody recommends AS so I'll give it a go before starting my next project Apr 15 08:46:38 If you select Offline Work in gradle settings it goes very fast, in my experience Apr 15 08:46:49 yeah gradle can get slow, depends on the setup and settings Apr 15 08:46:51 liuwenhao: :\ Apr 15 08:47:07 I've started on a new project recently, and it's very nice to have 5 second builds rather than 2 minute builds Apr 15 08:47:10 I don't recommend AS! Apr 15 08:47:11 ... i deleted all old logs so that I'll only see that particular crash and now it's working -.- Apr 15 08:47:12 Syz: what version are you on? Apr 15 08:47:27 AS 1.1.0, and windows 10 tech preview Apr 15 08:47:45 doesn't seem to crash anymore though Apr 15 08:47:54 Syzygy: sounds like bleeding edge :) Apr 15 08:47:58 try upgrading to 1.2 if it crashes again, might help (but I have no idea) Apr 15 08:48:04 just guessing Apr 15 08:48:09 minus AS 1.1.0 Apr 15 08:48:12 Zharf: why not ? Apr 15 08:48:32 Kanalia, well, it really seems more like an AS issues than a windows issue Apr 15 08:49:31 and I usually prefer crusty edge to bleeding edge... although recently I'm kinda going for bleeding for some reason Apr 15 08:50:02 I'm the kind of guy that waits for the system to be released instead of going through betas :) Apr 15 08:50:51 At least you're not on XP Apr 15 08:50:52 Kanalia, do you atleast read the beta release logs? Apr 15 08:51:38 why would he when he doesn't use betas? Apr 15 08:51:48 Kanalia, it's the retarded brother of IntelliJ IDEA Apr 15 08:51:59 they've stripped down way too many things Apr 15 08:52:23 and still managed to bloat the hell out of it Apr 15 08:53:52 you can use IDEA with Android though, right? Apr 15 08:54:03 sure Apr 15 08:54:22 either one is better than eclipse in my opinion... Apr 15 08:55:12 for android specifically, sure I guess... but if you do anything else even a little bit, android studio doesn't make any sense Apr 15 08:55:12 android:windowSoftInputMode="adjustResize" doesnt work for me. I put a scroll view and now my keyboard comes below to edittext but i want it below button instead edittex Apr 15 08:55:17 what should i do Apr 15 08:59:02 Zharf, well, it's called android studio for a reason, otherwise it would just be called ... studio. Apr 15 08:59:41 they should just focus on the IDEA plugin and not mess around with IDEA processes Apr 15 09:00:08 whatitis-: nah I haven't read the release notes, just am contemplating between Eclipse and AS, coming from doing Android Dev on Eclipse before Apr 15 09:00:16 go to bed g00s ;) Apr 15 09:00:32 ok Apr 15 09:01:10 Is there an keyboard with just numbers (and a decimal point) without brackets and operation symbols (like brackets, +, -, *, /) for tablets? Apr 15 09:03:35 ok, I'll read up some more on the topic, thanks for the comments guys Apr 15 09:05:19 Using software which was deprecated and isn't developed anymore just because you don't want to buy 8GB of RAM is... ludicrous. Apr 15 09:05:53 I've got 8 gigs ;) Apr 15 09:05:56 using Eclipse and not wanting to use Android Studio cause its heavy? Apr 15 09:06:06 * Odaym is a palm reader Apr 15 09:06:14 :)) Apr 15 09:06:25 * Mavrik -s current heap size usage of AS for a large project is 450MB Apr 15 09:06:31 AS is heavier than Eclipse? ouch Apr 15 09:06:39 not on this computer Apr 15 09:06:43 depends Apr 15 09:06:48 ok Apr 15 09:07:10 even my phone has several gigs of RAM these days, why is it a problem that a tool that does a lot of things for you to use 450MB of RAM? Apr 15 09:08:38 8G ram isn't enough! Apr 15 09:08:40 On the other side, the new permanently on Mem/CPU monitors eat CPU like cake Apr 15 09:08:40 I don't know either Apr 15 09:08:47 I barely manage with 16G Apr 15 09:08:48 :P Apr 15 09:08:49 And can't be disabled :/ Apr 15 09:08:58 Zharf, stop using RAM for pr0n storage Apr 15 09:09:12 I don't store porn locally, who does that? Apr 15 09:09:28 then you ain't dedicated Apr 15 09:09:43 still apprentice Apr 15 09:09:59 fast internets Apr 15 09:10:14 interwest Apr 15 09:10:51 anyway, I do video editing and music production as well as software development... I don't like to close my applications :P Apr 15 09:10:56 What does java.lang.RuntimeException: Parcel android.os.Parcel@536a2690: Unmarshalling unknown type code 6750305 at offset 592 actually mean? Apr 15 09:11:19 means you have something in the wrong order in your writeToParcel method Apr 15 09:11:19 Zharf, what kind of job requires all of that :D Apr 15 09:11:30 or the readParcel Apr 15 09:11:32 SneakerXZ, you messed up the marshal/demarshal order Apr 15 09:11:38 SneakerXZ, it's failing to parse your parcelable, you probably forgot to call a base method or something Apr 15 09:11:41 Mavrik, hobby Apr 15 09:11:43 SneakerXZ, so now when the bytes are being unmarshaled they can't be read :) Apr 15 09:11:56 because the position isn't right :) Apr 15 09:12:22 Zharf, ah. Sadly no 32G option for MacBooks :/ Apr 15 09:12:37 Zharf: it does not make sense, because I am passing this parcelable through multiple activities and it works when I pass it for first time but gets broken when passed to next activity Apr 15 09:14:19 Zharf: this explains the high RAM usage :) Apr 15 09:14:51 Could it be related to polymorphic type? Apr 15 09:15:06 I am passing interface through activities and then I recreate it with interface class loader. Apr 15 09:18:47 which would be better, installing AS or setting up IDEA and adding the Android SDK plugins to that (if that's even possible, not sure) ? Apr 15 09:19:31 Kanalia: install AS Apr 15 09:19:42 ok Apr 15 09:20:42 IDEA :p Apr 15 09:20:57 ok... Apr 15 09:20:58 :d Apr 15 09:21:21 IDEA has the same stuff as AS plus more, you just need to install the SDK and point IDEA to it Apr 15 09:22:19 but it has a lot of things that you do not need Apr 15 09:22:57 IDEA is several steps behind AS for features anyway Apr 15 09:23:11 usually you have to either wait for awhile for AS features to make into IDEA or run the unstable EAP Apr 15 09:23:21 so depends really what do you wnt Apr 15 09:23:22 ok Apr 15 09:23:23 *want Apr 15 09:23:34 AS can, of course, be a bit less stable due to faster dev cycle Apr 15 09:24:54 I want a bottle of good whiskey, a tall chick with big boobs and a brain + I want a nice Anroid IDE Apr 15 09:24:59 that's all I ask Apr 15 09:25:02 ;) Apr 15 09:25:15 yeah, the first one will be easier Apr 15 09:25:19 but ok guys, all jokes aside, I'll give it a whirl Apr 15 09:26:22 What would be explanation, I pass some extra data to intent and they are not in the activity that I have launched? Apr 15 09:29:06 <_genuser_> man, pulling together the entire app for my project is getting harder and harder. Apr 15 09:29:20 <_genuser_> too many static vars, and too many things referencing each other/ Apr 15 09:29:25 <_genuser_> spaghetti-ness Apr 15 09:31:25 any explanation why would passing string into intent extra would cause demarshal problem? Apr 15 09:37:30 Mavrik, I don't use gradle so I guess I'm not affected by IDEA being a bit behind in terms of new bloat they put in Apr 15 09:38:43 well Apr 15 09:38:51 any explanation why I can pass only one extra through intent? Apr 15 09:38:52 if you want to be bitchy about it Apr 15 09:39:00 you can reduce eveyrthing to bloat that's not "ed" from 1971 Apr 15 09:39:10 :) Apr 15 09:39:13 and even there you can bitch about copy support Apr 15 09:39:28 SneakerXZ, I think we pretty much explained it to you Apr 15 09:39:32 I'm only really bitchy about AS's non-support for non-gradle projects Apr 15 09:39:36 you're messing up marshaling or unmarshaling Apr 15 09:39:38 it messes up all legacy projects Apr 15 09:39:43 I am calling putExtra Apr 15 09:39:44 SneakerXZ, and now it's up to you to find out where. Apr 15 09:39:48 how can I mess with unmarshaling? Apr 15 09:40:01 and if I call only one putExtra it works Apr 15 09:40:05 does not matter which Apr 15 09:40:50 you are putting one extra but that one extra is an object, many things have to be writeToParcel'ed and readFromParcel'ed in order to make this high level luxury work for you Apr 15 09:40:53 if someone wants to use android studio with an old project that has other developers as well, you'll have to fight with people to convert the project... it's just a crappy IDE for not supporting things it's superior brother can Apr 15 09:41:36 Zharf, hrmf, we had no problem using Maven and Gradle projects with IDEA/AS people Apr 15 09:41:41 frankly I think this is because google is catering newbie developers... and they shouldn't do that :p Apr 15 09:41:48 of course projects without a proper build system didn't work Apr 15 09:42:00 but people doing that deserve all the pain :P Apr 15 09:42:49 using IDEAs own build is factor of 10 faster than gradle :p Apr 15 09:43:05 Odaym: you write right, but I am suprissed it did crash just with one object… when that object was messed up Apr 15 09:43:19 one object with many properties Apr 15 09:43:24 no surprise Apr 15 09:43:30 *were Apr 15 09:43:39 also I really don't like the default directory structure... with maven it's fine but gradle takes it to a retarded level Apr 15 09:43:40 Zharf, doesn't matter if you can't automate it Apr 15 09:44:05 I don't use CIs anyway, I don't care about automation Apr 15 09:45:00 yeah, Gradle running a few seconds longer then isn't your major time sink. Apr 15 09:45:19 try 6 minutes longer than my regular build :p Apr 15 09:45:41 but I don't see how a lack of CI would be a time sink Apr 15 09:45:44 huh Apr 15 09:45:48 what the heck are you doing Apr 15 09:46:04 our full CI build with NDK compilation and full test suite is 4min Apr 15 09:47:13 I don't know, gradle's just motherfucking slow Apr 15 09:47:42 (I didn't bother looking into it, I'm not actively working with that project anyway - yet at least) Apr 15 10:22:25 Hey guys is the SharedPreferences the right place to save application settings? Apr 15 10:32:16 Almis90: usually Apr 15 10:34:58 Estel ok thanks Apr 15 10:49:09 is there any free library to display and read a QRcode in order to share a secret between two phone ? Apr 15 10:51:08 I think there's no ready made library for that Marlinkski, you'd need to developr your solution Apr 15 10:51:21 but for reading and creating QR codes then sure, I guess there are some :) Apr 15 10:51:34 without relying on online services ? Apr 15 10:51:54 Any idea why FLAG_ACTIVITY_NEW_TASK set name in recent apps to activity name? Apr 15 10:52:46 Marlinski: I guess so, why would you need online access for making or reading a QR code? it's a standard, same as barcodes and what not Apr 15 10:53:26 there's ZXing Apr 15 10:53:30 good library for that Apr 15 10:54:17 will look at it Apr 15 10:54:18 thanks Apr 15 10:56:06 anybody knows if there is a workaround for hamcrest equalTo type checking? Apr 15 10:56:12 I am testing a method that returns a long Apr 15 10:56:24 I just would like to use an integer on my test for readability, if possible Apr 15 10:58:09 I have the same problem with the method stubbing Apr 15 11:10:03 I've managed to use ExifInterface to read EXIF tags/attributes (meta data) from a JPEG on my phone, and I can apparently also set attributes + saveAttributes. The strange thing is, if I do set+save on an image file, my app is able to get the attribute and display it. I can also verify in another app (Image Editor) that the EXIF-data is indeed written. But if I comment out set+save, and just do get, on the same image, my app fails Apr 15 11:10:34 so, if I write the tag, I can read it. If I Apr 15 11:10:36 *dsorry Apr 15 11:11:28 so, if I *write* the tag, I can read it. If I *don't* write the tag -- in the same image -- I can no longer read the tag. But, the other app verifies the tag is indeed "still there" Apr 15 11:12:57 I'm doing: ExifInterface exif = new ExifInterface(path_to_image); String x = exif.getAttribute("UserComment"); exif.setAttribute("UserComment", "testtest"); x= exif.getAttribute("UserComment"); Apr 15 11:13:27 then, x contains "testtest". But (sorry for the repeats), if I comment out the setAttribute() call, x = null Apr 15 11:14:17 oh, and I also do exif.saveAttributes() after setAttributes(); :-) Apr 15 11:18:52 Hi. Apr 15 11:21:12 Hello Apr 15 11:21:31 In my app I want to record video using the phone camera and I want it previewed. This I know how to do. But I want the preview to be a square, 1:1 aspect ratio without distorting the recorded image, so I need to only display part of an offset of the preview texture. Apr 15 11:21:51 Any idea how to do this? Apr 15 11:26:04 do you check if a square preview size is available? Apr 15 11:28:54 i have created xml dir in res, but every created .xml in xml dir is being automaticaly created in values directory - do you know why? Apr 15 11:45:03 Is there a way to get a number only keyboard on tablets? Apr 15 11:46:10 InputType.TYPE_CLASS_NUMBER doesn't work, it adds extra symbols like (, ), +, -, *, / etc Apr 15 11:47:28 iprime: no, I should do that first... Apr 15 11:48:28 I get this error when trying to run the app: Caused by: java.lang.IllegalStateException: The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 7095000 but found 6587000. You must have the following declaration within the application element: this is the manifest file: http://pastebin.com/M4TNACz Google maps isn´t working. Apr 15 11:48:44 I don´t really understand why i am getting such an error. Apr 15 11:48:53 I have a viewpager inside a fragment, its pages are loaded fine at first but if the fragment is replaced and again added, the viewpager's pages are not displayed on screen, their UI ie. They work as usual (making HTTP request on scrool etc) the third page is loaded when I scroll to it and then first is loaded as well when I scroll back, but they are not loaded correcrly initially. Any idea? Apr 15 11:49:13 I have searched online but couldn´t find anything helpful. I found other people who had a similar problem. Apr 15 11:49:51 Syzygy: I think the keyboard layout depends on which keyboard you are using, I am going to make a random guess, you use Swiftkey? Apr 15 11:50:06 astroduck, defaultkeyboard. Apr 15 11:50:34 Syzygy: Default like, Google Keyboard or some other one? Apr 15 11:50:55 the default for nexus 7 android 5.0 Apr 15 11:51:03 I assume that's google. Apr 15 11:51:26 Syzygy: You can try setting inputType to number, if you haven't tried that Apr 15 11:51:53 didn't I literally just say that InputType.TYPE_CLASS_NUMBER doesn't work? Apr 15 11:52:42 Syzygy: missed that part, oops. Setting type number works for me Apr 15 11:52:52 it adds math operation character that I don't need. only on tablets though Apr 15 11:52:52 At least for my native keyboard Apr 15 11:53:01 Some kayboards still show all other symbols Apr 15 11:54:14 Try numberPassword Apr 15 11:56:51 does any one have an opinion about this.. or may be i am doing something wrong. Please help. ? Apr 15 12:01:21 hello Apr 15 12:01:59 astroduck, thanks for the tip, that works Apr 15 12:02:34 is there anyone who knows situation that cardview occurs few padding under kitkat? Apr 15 12:03:26 my dynamic measurement of layout is broken under kitkat because of cardview Apr 15 12:03:54 very silly padding Apr 15 12:04:20 hey guys Apr 15 12:05:11 zerous, your paste has been removed Apr 15 12:05:26 cardview occurs a few padding under kitkat Apr 15 12:05:32 can anybody help me? Apr 15 12:06:19 anyone with a oneplus here? Apr 15 12:07:12 iprime: No square preview size exists. Any idea how I should "crop" a 16:9 TextureView to fit inside a square FrameLayout? By "crop" I mean something like center it in a way that the parts of the TextureVIew not fitting inside the square Frame. The heights already match. Apr 15 12:07:20 any oneplus users?!! Apr 15 12:07:47 LittleBish, not since you last asked. Apr 15 12:08:07 iprime: * By "crop" I mean something like center it in a way that the parts of the TextureVIew not fitting inside the square Frame are not rendered at all or take up space on the screen. Apr 15 12:08:59 ok Apr 15 12:09:04 shiggy Apr 15 12:12:05 astroduck, any idea if i can get numbers with a decimal point somehow? Apr 15 12:13:07 Hi Apr 15 12:13:40 How can I use recyclerviewAdapter design with cursorAdapter ? Apr 15 12:13:48 Syzygy: Ummm no, I dont think that keyboard layout is available. Apr 15 12:13:57 Correct me if it is Apr 15 12:14:33 couldn't find any... non-tablets have the type of keyboard i want though Apr 15 12:15:09 Syzygy, why was it removed ? Apr 15 12:15:21 Did i do something stupid ? Apr 15 12:15:33 zerous, how would I know, maybe you set to to auto delete after 10 minutes? Apr 15 12:15:40 Syzygy: I think even on phones, the actual layout will depend on the keyboard user is using, some kayboards might show much more that just those symbols. Its upto your editText to not let user enter them Apr 15 12:16:04 Syzygy, No i can see my post up there. Apr 15 12:16:06 *keyboards Apr 15 12:16:25 zerous, for me it displays a message that it has been deleted. weird. Apr 15 12:16:41 I just post it again. Apr 15 12:16:57 Well i am trying to write an app which utilizes google maps. Apr 15 12:17:06 astroduck, hmm, IIRC there's no way for me to define my own keyboard. Apr 15 12:17:41 And i get this error that Caused by: java.lang.IllegalStateException: Apr 15 12:17:45 so, guess I'm f---d Apr 15 12:17:58 Hmmm, Maybe dont use the keyboard at all, maybe a numberpad on the screen itself? Apr 15 12:18:07 The meta-data tag in your app's AndroidManifest.xml does not have the right value. Expected 7095000 but found 4323200. Apr 15 12:18:14 are you able to see it now. Apr 15 12:18:15 Say guys, i found a microsd that looks like it's been a phone's sdcard for quite a while, and i would like to reunite the owner with the data. Where could i find the person's gmail address on the SDcard to send her the files? Apr 15 12:18:30 zerous, i read that before, but I can't see your manifest since it has been removed from pastebin Apr 15 12:18:40 oh.. just a moment Apr 15 12:20:11 Zta1, just cover it with some view :D Apr 15 12:20:16 astroduck, you mean, I basically build a number pad into the layout? Apr 15 12:20:25 psychuil: See if there is a contacts backup file on the SD card, and call someone that looks like a close one Apr 15 12:20:44 Syzygy, can you try it once more http://pastebin.com/M4TNACz4 Apr 15 12:20:53 I'm on the other side of the world, calling is gonna be abit complex :) Apr 15 12:21:02 Syzygy: yeah, that or let the keyboards decide how they are displayed Apr 15 12:21:11 I am able to get it from here. but i don´t know if my browser is using its cache. Apr 15 12:21:19 Also, what would be the path for such a file? Apr 15 12:21:38 astroduck, well, ugly as it might be, guess I'll leave it as is. thanks Apr 15 12:23:04 can anyone give point me in a direction ? Apr 15 12:23:13 psychuil: Good question, No Idea :P Apr 15 12:23:46 maybe its in a folder called pim Apr 15 12:24:37 zerous, do you know which meta-data tag has the issue? Apr 15 12:24:41 don't see one :) Apr 15 12:26:22 I am out of guesses then :P Maybe just poke around and open random files? Apr 15 12:26:24 psychuil, search through until you find something that could identify the user. Apr 15 12:27:05 Or write a script to open all files and grep for an email address like looking thing Apr 15 12:27:10 guys, just installed Android Studio for the first time Apr 15 12:27:14 gg Apr 15 12:27:20 I'm running Windows 7 64bit Apr 15 12:27:22 zerous, delete all metadata tags and reintroduce them one by one, see which one has the error and then play around with that. Apr 15 12:27:24 astroduck, i'm too lazy for that :P Apr 15 12:27:32 I had installed 32bit JDK before Apr 15 12:27:38 now when I try running AS Apr 15 12:27:43 it asks for 64bit java Apr 15 12:27:44 * astroduck facepalms Apr 15 12:27:53 do I need a 64bit JRE only or the full 64bit JDK ? Apr 15 12:28:34 JDK Apr 15 12:28:35 what keeps you from just going 64bit? Apr 15 12:29:18 ^For me its my 32 bit Linux, too lazy to setup a new OS again Apr 15 12:29:49 Syzygy: I'm also using Eclipse for Java work (not Android) and I often need the 32bit version, because of libraries and all that Apr 15 12:30:12 and using 2 jdks is a problem how? Apr 15 12:31:07 try setting 2 java home's in your environment, trying to work out dependencies between 32 and 64bit java later on Apr 15 12:31:10 good fun Apr 15 12:31:47 anyway, it's no problem, AS can run on either JDK, it just assumes that 64bit windows users has 64bit jdk so it points the default shortcuts to the 64bit exec Apr 15 12:32:42 thanks guys Apr 15 12:38:52 Hello! Apr 15 12:39:36 How would you monetize an app about artist? I'm getting a bunch of daily installs but the users doesn't click to like AdMob Apr 15 12:39:39 any suggestions? Apr 15 12:45:26 Wixy: users don't click on add, only small portion of them does Apr 15 12:45:31 Hey, anyone know a good way to only show a logo on the action bar when the resolution is big and show the icon if you are running for example on a small mobile device? The manifest is defined like this: http://pastebin.com/0QVaVTap Apr 15 12:46:09 set it programmatically? Apr 15 12:46:39 bergice: use different styles Apr 15 12:47:48 bergice: like values/barstyle.xml and values-sw600dp/barstyle.xml or something Apr 15 12:49:07 icedp, does sw care about resolution much? Apr 15 12:50:18 would writing as much of my game as i can in native code reduce battery life on the phone? Apr 15 12:50:35 because the java garbage collector etc must use some juice to run right Apr 15 12:51:24 bluey-, oh really? Apr 15 12:51:34 huh? Apr 15 12:51:42 err, blusky :P Apr 15 12:51:52 evil twin eh Apr 15 12:52:13 or probably i'm the evil twin since i'm an ios developer =/ Apr 15 12:52:14 how would you guys monetize an app about music? ads are not working Apr 15 12:53:14 iprime: I just don't believe he really needs resolution. but if he does could use like -mdpi Apr 15 12:54:07 icedp: Sorry, im a bit clueless. You mean I should define the android:logo and android:icon inside the styles? How do I do that? Apr 15 12:54:40 Everyone say hello to bluey- , or isn't this Developers Anonymous Apr 15 12:54:55 bergice: yes, like this probably https://developer.android.com/training/basics/actionbar/styling.html Apr 15 12:55:00 yeah, he wasn't quite clear what he wants, if he wants resolution the density qualifiers will not do Apr 15 12:57:08 hi Apr 15 12:59:20 Ah okay thanks, Ill try that out. Basically what I want is to only use the wide logo on the action bar if the width of the device can handle it without looking stupid, for example on tablet devices. Apr 15 13:12:40 Hey it worked :D Apr 15 13:13:42 hey mates, how can i start an activity for result and return to the "launcher" acitivity Apr 15 13:14:01 What would be the best way to do the following layout: https://i.imgur.com/S4ZHaIo.png The gray bars are the main list and when you click on it it needs to act as if it were an expandablelistview and expand (so ignore those borders) down into 2 lists. Apr 15 13:14:39 abara: what do you want to do with the result? Apr 15 13:14:51 Leeds: nothing Apr 15 13:15:19 Should I just have an expandablelistview that drops another view down that contains 2 listviews or recyclerviews or should I use something with cards? Apr 15 13:15:49 Think of it as a list of products and the green are the pro's while the red part are the cons of the product. Apr 15 13:18:14 abara: so you want to start an activity, then replace it with the launcher, and ignore the result? Apr 15 13:18:27 yeah Apr 15 13:18:35 that doesn't make sense Apr 15 13:19:13 Leeds: yeah, i think i got it. Apr 15 13:19:29 got... what? Apr 15 13:21:54 Anyone know about legality of open sourcing an app similar to for example Popcorn Time? Whats legal, whats not? Apr 15 13:22:23 i want to send the ParcelableArrayList from service through the notification intent to the activity, it doesnt always send it. i dont get why. it does sometimes and not the other. whats going wrong ? this is the code http://pastebin.com/2WRYW7Wg Apr 15 13:22:40 thnks in advance Apr 15 13:23:36 bergice: the licensing of the app doesn't have much to do with whether the app itself is 'legal' Apr 15 13:24:32 Leeds: i will start the activity (not for result) and than start the launcher activity with clear task flags on the intent Apr 15 13:27:10 java.lang.OutOfMemoryError: OutOfMemoryError thrown while trying to throw OutOfMemoryError; no stack available :| Apr 15 13:27:20 How can I set height for items in GridLayoutManager in RecyclerView? Apr 15 13:27:21 abara: Why are you starting the activity? Apr 15 13:27:45 this was shown in play console, can i shut down app sanely when out of memory happens or will it always crash? Apr 15 13:27:51 ktwo: An out-of-memory error worthy of the name. :) Apr 15 13:28:22 ktwo, it's very unlikely you can recover an app after OOM Apr 15 13:28:57 especially if you exausted memory to the point where a new exception can't be allocated Apr 15 13:29:02 TacticalJoke: it's logout flow. Apr 15 13:29:16 actually why does it even happen, shouldnt anadroid then close apps in background to free memory? Apr 15 13:29:30 usually my app needs about 50MB of memory Apr 15 13:29:34 abara: I don't get it. Apr 15 13:30:45 ktwo, Android isn't going to give you all system memory Apr 15 13:30:47 your heap size is limited Apr 15 13:30:55 when you run out of that (usually 64MB or 128MB on modern devices) it'll kill your app Apr 15 13:31:18 ah ok - and we cannot modify heap-size in the manifest or something? Apr 15 13:32:11 the point of that excercise is that a single app doesn't hog all the resources :) Apr 15 13:32:12 you can ask for a large heap Apr 15 13:32:58 but that will just hide the reason why your app is crashing Apr 15 13:33:26 I strongly suggest you figure out why you're leaking memory Apr 15 13:33:48 probably ill just monitor it, its just one crash up to now Apr 15 13:39:50 Leeds: So essentially it would be okay to open source software that breaks the law? Apr 15 13:40:37 bergice: "consult a lawyer" Apr 15 13:40:38 far as i'm concerned Apr 15 13:40:46 but i'm thot the law Apr 15 13:41:17 i could send jlaw an email and she wouldn't even respond Apr 15 13:41:24 jennifer lawrence Apr 15 13:43:53 Seems like kind of a gray zone. I want to open source an app which is basically Popcorn Time for E-Books. So its just a bittorrent protocol + e-book reader. Apr 15 13:45:16 I believe humble bundle uses bittorrent to distribute ebooks... Apr 15 13:46:27 in other words, there's nothing particularly illegal about BT+ebooks Apr 15 13:47:51 well ya guess there is, depends on the ebook Apr 15 13:48:20 i pirated billy idol's autobiography, nikki sixx's too Apr 15 13:54:22 Hey guys, how can I find an update to date information on Android market share. (mainly for U.S. and Canada)? Apr 15 14:01:47 android_sandwich: what exactly do you mean? Apr 15 14:02:47 Hi, I have a hardware accelerated webview and animations seem to perform fine while interacting with the page, but if I stop touching/scrolling all animations appear to pause. Anyone have any ideas how to get them to run indefinitely? Apr 15 14:03:22 If I disable the hardware acceleration the animations do run while I'm not interacting with it, but they're too slow to be usable Apr 15 14:07:04 android_sandwich: try this: https://developer.android.com/about/dashboards/index.html?utm_source=suzunone Apr 15 14:17:12 thepoosh, thanks I saw that page. but it's only for the last 7 days. I want atleast for this year. Hard to believe there's no resource I could find Apr 15 14:17:53 hg st Apr 15 14:17:54 Oops. Apr 15 14:18:00 Damn Alt+Tab hijacking. :D Apr 15 14:28:23 rip git, huh, TacticalJoke ) Apr 15 14:32:22 :D Apr 15 14:35:35 TacticalJoke: abort: no repository found in #android-dev Apr 15 14:49:19 If I disable the hardware acceleration the animations do run while I'm not interacting with it, but they're too slow to be usable Apr 15 15:00:06 Is there any good looking view that I could use to specify the amount of an item? Something like NumberPicker, but NumberPicker doesn't seem to be mentioned anywhere in the material design guidelines or anywhere else. Apr 15 15:03:01 Anyone here find zsh or fish any more useful specifically for Android development over bash Apr 15 15:04:21 used to use zsh just to fit in Apr 15 15:04:58 it has some advantages Apr 15 15:05:13 asking the wron guy far as details go Apr 15 15:05:28 Melvinov: I'm still just using bash just fine. Might try zsh just to try it Apr 15 15:05:55 i adopted fzf to deal with android project trees Apr 15 15:06:27 yiati, I'm using zsh. But what has it got to do with Android dev? Apr 15 15:07:55 some like korn Apr 15 15:08:32 ksh Apr 15 15:09:13 Muchoz: I don't know what it has to do with Android dev, I was asking if anyone finds any reason to recommend it over bash specifically for Android dev work Apr 15 15:09:19 probably not, just interested Apr 15 15:09:34 I'm going to try it out today though so I guess I will find out for myself Apr 15 15:09:43 I'm just using it to have a nice terminal, better autocomplete and more built-in functions. Apr 15 15:10:44 I wrote some scripts that I use during Android development. Apr 15 15:11:18 One to automatically connect to your device via Wi-Fi instead of USB (using adb commands) and one to take a screenshot from your device and if you want upload it to imgur. Apr 15 15:12:24 Has anyone had a run in with this android studio bug? (Frequent crashes without errors, presumably while loading or initializing files or tools) https://code.google.com/p/android/issues/detail?id=166377&thanks=166377&ts=1429110589 Apr 15 15:17:44 If I disable the hardware acceleration the animations do run while I'm not interacting with it, but they're too slow to be usable Apr 15 15:18:11 zsh has more inline compiler or something Apr 15 15:18:29 good command history, tho bash has that too Apr 15 15:18:51 Hi, I have a hardware accelerated webview and animations seem to perform fine while interacting with the page, but if I stop touching/scrolling all animations appear to pause. Anyone have any ideas how to get them to run indefinitely? Apr 15 15:20:30 iwuhfiwuehf: Are these flash animations, gif animations, android.animation.Animator animations, stop motion animations, pixar animations Apr 15 15:21:47 yiati: CSS animations Apr 15 15:24:16 iwuhfiwuehf: Does it perform differently in an Android WebView than it does it your browser on your desktop/laptop Apr 15 15:25:39 yiati: Any ideas? >.> Apr 15 15:25:49 Sorry... window didn't refresh Apr 15 15:26:22 yiati: Runs fine in Chrome on desktop, last time I check chrome on 4.2 wasn't too bad either Apr 15 15:28:02 iwuhfiwuehf: http://stackoverflow.com/a/13270702/1229735 Apr 15 15:29:17 iwuhfiwuehf: also https://bugs.webkit.org/show_bug.cgi?id=92591 Apr 15 15:29:31 iwuhfiwuehf: Don't know much more though Apr 15 15:30:44 anyone know how to change the timeout value of a picasso request? Apr 15 15:32:23 claint: Don't use the default http client, and set a custom timeout there Apr 15 15:32:54 claint: http://stackoverflow.com/a/25248420/1229735 Apr 15 15:34:43 is it possible to attach a preference screen to an existing layout? Apr 15 15:35:10 yiati: Mmk, thanks. Don't really think either of those are related though unfortunately. I've had similar setups work fine on other devices so I'll try testing on something else Apr 15 15:39:13 Is there any difference between dip and dp? Apr 15 15:39:41 SneakerXZ: http://stackoverflow.com/a/2025541/1229735 Apr 15 15:40:09 yiati: thanks Apr 15 15:40:11 so no Apr 15 15:40:47 SneakerXZ: nope, they are the same Apr 15 15:41:43 hello Apr 15 15:42:53 guys I am looking for some interesting articles about compressing multimedia for interactive apps for Android. I am interested in articles about sound and music compression, video compression and image compression. Thank you for suggestions and sharing your experience with me. Apr 15 15:45:11 karab44: You could look into lossy vs lossless data compression algorithms Apr 15 15:45:39 karab44: Music is something that lossy data compression can work for Apr 15 15:46:00 mp3 is a popular lossy data compression format Apr 15 15:46:01 what is your experience and feeling about that? Do you perform one methods above others? Apr 15 15:46:26 lossy is possible for things like music and video since our brains can fill in the blanks Apr 15 15:46:41 Losless is something you use when 100% perfect data in necessary Apr 15 15:46:49 which isn't necessarily true for media Apr 15 15:47:11 Nothing here specific to Android dev though Apr 15 15:47:14 fun topic Apr 15 15:47:17 though Apr 15 15:48:19 what if I have 2K or FullHD video and I want it to be displayed on many devices? Apr 15 15:48:31 I want to create a db and put data in it for my app, would I have to dump my data and place it in the oncreate? http://developer.android.com/guide/topics/data/data-storage.html Apr 15 15:48:50 Do I have to place scaled versions of my video with different resolutions and aspect ratios? Apr 15 15:49:42 How does it work? Apr 15 15:49:55 karab44: no reason for aspect ratio to change, and whatever is streaming is typically responsible for determing resolution. Are you trying to implement this? Apr 15 15:51:09 gavit: dump your data? Apr 15 15:51:28 so what if I place (1080p) video in my app and run it on screen 640x480 smartphone? (just a silly example) Apr 15 15:51:48 will it be rescaled both resolution and aspect ratio? Apr 15 15:51:53 yiati: well, 'insert into table blablabla' Apr 15 15:52:40 karab44: yes Apr 15 15:52:50 gavit: Are you asking where in the Android lifecycle you should add data to your db? Apr 15 15:53:31 ok, thank you. Apr 15 15:53:38 has anyone been successful with editing files on a remote system using eclipse? Apr 15 15:54:56 yiati: well, I want data in the db, and it'll be fairly static Apr 15 15:55:47 guys i have a meta question Apr 15 15:56:07 about making android apps Apr 15 15:57:28 yiati: it'll be data basically like how wireshark has a manufacturer database. Apr 15 15:57:32 https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob_plain;f=manuf Apr 15 15:57:50 it'll probably only change by the dev-side Apr 15 16:04:59 when restoring my app after destruction, I find that the Fragment onCreate gets called before the Activity onCreate has a chance to finish, in fact it gets called within the Activities super.onCreate(), but the Fragment onCreate relies on some stuff set in Activity onCreate so it crashes Apr 15 16:05:20 shouldn't the activity onCreate be allowed to complete before the fragment onCreate is called...like after a orientation change? Apr 15 16:10:57 pretty much every attribute in appcompat-v7:22.0.0/res/values.XML is giving me "attribute **** has already been defined" :( Apr 15 16:11:02 what causes that? Apr 15 16:11:15 so for android devving do i have to be super efficient? Apr 15 16:11:53 i made apps but i feel like my java file is not very efficient Apr 15 16:12:02 LittleBish: You need t3h super 1337s yes Apr 15 16:12:06 LittleBish: Apr 15 16:12:32 the super leets? Apr 15 16:12:42 LittleBish: aye Apr 15 16:12:54 what u talkin about? Apr 15 16:13:00 can someone serious answer my question please? Apr 15 16:14:00 Super efficient how? Apr 15 16:14:14 LittleBish: To be fair you don't have any specific question Apr 15 16:14:16 LittleBish: what is your question? I only see a 'sentiment' Apr 15 16:14:30 so for android devving do i have to be super efficient? Apr 15 16:14:34 that one ^ Apr 15 16:14:45 i code my apps my own way Apr 15 16:14:48 "specific", that's too broad to give any valuable answer Apr 15 16:14:53 LittleBish: if I answer yes, how will that change? if I answer no, how will that change Apr 15 16:14:55 but is there a developer way to make apps Apr 15 16:14:59 MooGoo: I wouldn't expect there to be any difference between the two, it's the same code that's executed Apr 15 16:15:08 if you say yes, i have to get educated on how to be more efficient Apr 15 16:15:18 You have to be efficient for any job Apr 15 16:15:22 Why else would anyone pay you? Apr 15 16:15:25 LittleBish: if I ask you are you strong, and I ask your mother the same thing about you, will those answers be the same? it's all relative Apr 15 16:16:07 LittleBish: you always need to get more efficient! Apr 15 16:16:12 LittleBish: Sure Apr 15 16:16:24 if you build a house in 1 month and you can do it in 3 weeks, go for it. Apr 15 16:16:33 SimonVT: it was because the fragment being recreated had setRetainInstance(true) set, so after an orientation change onCreate would not get called, but it does after being restored after destruction Apr 15 16:16:41 if you can do it in 1 week, even better Apr 15 16:16:46 I think the answer is pretty simple: if you develop apps on your own, do whatever you want. If you expect to ever work in a team, you'll have to be able to work within that team - even if how they do things isn't how you'd prefer to do things. Apr 15 16:17:16 :( Apr 15 16:17:26 what if i just got the job done and no one ever knew? Apr 15 16:17:49 MooGoo, btw, the fact that those two aren't synced is why onActivityCreated() exists in the fragment Apr 15 16:17:50 LittleBish: then, start by 'not getting fired' Apr 15 16:18:17 and get better, always get better! Apr 15 16:18:20 i'm a freelancer Apr 15 16:18:23 : ) Apr 15 16:18:27 LittleBish: That stuff happens all the time in industry Apr 15 16:18:36 s73v3r:so is it justified? Apr 15 16:18:38 lol Apr 15 16:19:07 unless you're the team lead or doing it independently, expect to have to conform to the teams way of doing it. and even if you ARE a team lead, expect to conform to the company standards. And if you're a freelancer, the more you follow best practices, the more valuable your deliverables are. Apr 15 16:19:27 If I have to spend a week deciphering what a contractor thought was a really clever way to do something, I'm not likely to hire that contractor a second time Apr 15 16:20:08 but if their code matches reasonable practices for doing something, matches the other code they were given to start from (if applicable), etc, then they're definitely on the list to get a call back. Apr 15 16:20:10 sorry got booted Apr 15 16:20:31 tl;dr - if you only do one-offs, do whatever you want. if you want repeat business, concentrate on doing stuff tht's maintainable and well designed Apr 15 16:20:53 And don't be slow Apr 15 16:21:09 or if you're slow at least be consistently slow and honest in your timelines :P Apr 15 16:21:27 if I'm paying per-project and someone tells me it's 2 weeks, i can probably deal with that - but not if they told me 1 week at the beginning :P Apr 15 16:21:30 And charge less per hour :P Apr 15 16:21:40 well, yeah. hourly is a different question. Apr 15 16:21:44 so, this seems to suggest I can "just comment out the lines": http://stackoverflow.com/questions/28928196/errorattribute-color-has-already-been-defined-update-appcompat-v-7 Apr 15 16:21:57 but this is almost every attribute from appcompat :( Apr 15 16:22:26 Then you probably messed up your dependencies somehow Apr 15 16:22:35 dragorn, that of course makes an interesting conflict Apr 15 16:22:38 that's what I was thinking Apr 15 16:22:44 dragorn:yeah i understand Apr 15 16:22:47 thank you for the insight Apr 15 16:22:51 When adding GCM, I am creating a server key on the Google Dev Console. I have to add my IP address for the key. The format is x.x.x.x/x Apr 15 16:22:51 i appreciate it Apr 15 16:22:52 dragorn, you can promise to do a project in 1 week and then be late for 2 months and piss the customer off Apr 15 16:22:57 What is the bit after the ? Apr 15 16:23:02 after the / Apr 15 16:23:06 its just i dont know how to start learning how to be more efficient in java Apr 15 16:23:08 dragorn, or you can promise the project in 2 months and not get business because someone else promised 1 week ;) Apr 15 16:23:11 i just sort of get the job done :) Apr 15 16:23:19 Anthaas|afk, network mask Apr 15 16:23:35 Anthaas|afk, https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation Apr 15 16:24:06 Mavrik, that's when you count on references/prior work I suppose Apr 15 16:24:34 Mavrik, and hope whoever is hiring has a clue how long the job should take. if I know it's a 2 month project I'm highly suspicious of someone promising 1 week Apr 15 16:24:41 Mavrik: Errr, ok I never used to have to do this (its been 2 years since I used GCM) - how do I know what my network mask is? Apr 15 16:25:45 Anthaas|afk, you specify the whitelisted IP range of your server Apr 15 16:25:57 so you set the mask according to which IPs you want whitelisted Apr 15 16:26:02 it's kinda network basics Apr 15 16:26:07 if you have a single IP, make a single-IP mask Apr 15 16:26:14 there's bunch of CIDR calculators on the web to help you Apr 15 16:26:31 dragorn, yeah, it's neat having to be in position where you can just say no to crappy clients Apr 15 16:29:37 Sorry, was scrolled up and saw the funniest question ever. Apr 15 16:29:41 "Is there a developer way to make apps?" Apr 15 16:29:58 I prefer to do it the pedicurist way, personally. Apr 15 16:30:12 SimonVT, see anything wrong here? https://bitbucket.org/drinfernoo/cuber/raw/14232d0835884bf54f73d392b4ee0783de6d0f07/app/build.gradle Apr 15 16:35:21 my app plays a sound every once in a while. i can only change the volume when a sound is currently playing. how can i tell android to always change the media sound when my app is open? Apr 15 16:36:38 fancy42, there's setVolumeControlStream method on Activity Apr 15 16:37:33 Mavrik, thanks, let me check Apr 15 16:37:44 i want to drag overlay which way i use ? Motion.event.ACTION_MOVE , or the other gesture detector with fling ? Apr 15 16:40:39 s9iper1: Either can work. ACTION_MOVE will give you more flexibility Apr 15 16:41:34 yiati, i also wanted long press with it.. its sometime didnt give the right result Apr 15 16:41:34 wait. Apr 15 16:41:39 code.google.com has gone? Apr 15 16:41:40 :O Apr 15 16:42:09 yeah Anthaas|afk try git Apr 15 16:42:35 Anthaas|afk: yep github wrecked them Apr 15 16:42:56 You'd think they could at least host their own projects... Apr 15 16:43:21 Never miiiiiind Apr 15 16:43:56 anyone see anything wrong here? https://bitbucket.org/drinfernoo/cuber/raw/14232d0835884bf54f73d392b4ee0783de6d0f07/app/build.gradle Apr 15 16:44:58 the password prompt. Apr 15 16:45:59 oh crap hold on Apr 15 16:47:01 Mavrik, http://pastebin.com/a6y9PxDX Apr 15 16:52:11 SimonVT, this one should work: http://pastebin.com/a6y9PxDX Apr 15 17:01:26 is is a viable method to disable debuggin via proguard? Apr 15 17:01:34 debugging* Apr 15 17:09:00 had anyone had that "attribute has already been defined" error? Apr 15 17:09:37 is is a viable method to disable debugging via proguard? Apr 15 17:10:14 any idea why an alarm wont be delivered to the app if it's not in the tasklist and in foreground? Apr 15 17:14:57 o/ groxx Apr 15 17:15:14 noahmg123: proguard doesn't do anything to disable debugging. Maybe just make it a bit more difficult, due to the class renaming, etc. Apr 15 17:15:17 \0 Apr 15 17:15:18 in java are nested arrays typical, or should i use some other data structure? Like two nested classes holding the separate data? Apr 15 17:15:52 can anyone see what I'm doing wrong here? groxx, does this look wrong to you at all? http://pastebin.com/a6y9PxDX Apr 15 17:16:02 haha idk about that paste Apr 15 17:16:08 but the link is good Apr 15 17:17:20 joetoday_: Can you give an example? It's not 100% clear how you're defining 'nested' here. Apr 15 17:17:36 JesusFreke: Apparently it does. A guy in tutorial is showing me how. Maybe he is mistakrn? Apr 15 17:17:42 mistaken* Apr 15 17:17:48 Shameless Plug : any idea why an alarm wont be delivered to the app if it's not in the tasklist and in foreground? Apr 15 17:17:49 :P Apr 15 17:18:08 drinfernoo: dunno. what should we be looking for? Apr 15 17:18:57 idk? I'm getting "attribute has already been defined" for pretty much every attribute from appcompat-v7 Apr 15 17:19:15 TacticalJoke, when i drag a surface view it does not drag it from that specific position instead it bring itself to center.. how can i make it to drag at that point where i touch and drag. ? Apr 15 17:19:31 I'm assuming something is wrong with my build.gradle, because R isn't resolving either Apr 15 17:19:41 I don't know, s9iper1. Better to ask everyone. :) Apr 15 17:19:42 405 errors lmao Apr 15 17:19:55 TacticalJoke, hmm Apr 15 17:20:03 when i drag a surface view it does not drag it from that specific position instead it bring itself to center.. how can i make it to drag at that point where i touch and drag Apr 15 17:20:11 #Everyone Apr 15 17:20:31 drinfernoo: Hm. do any of the other libs/projects have a different appcompat they're including? Apr 15 17:20:45 drinfernoo: I'm kinda guessing here, unfortunately Apr 15 17:21:56 frickin internet Apr 15 17:21:58 s9iper1: you'll probably have to be more specific. drag how? center how? Apr 15 17:22:06 any ideas groxx? Apr 15 17:22:30 just this, in case you missed it: 10:20 drinfernoo: Hm. do any of the other libs/projects have a different appcompat they're including? Apr 15 17:22:45 I have no idea lol Apr 15 17:22:59 TacticalJoke: i have two sets of similar string data, but I want to be able to access them separately, not all in a one dimensional array Apr 15 17:23:23 drinfernoo: there's a gradle command to spit out dependencies, iirc. I don't remember what it is tooth Apr 15 17:23:30 though. lol autocorrect Apr 15 17:23:39 groxx, drag like i drag a picture and when i click on left-top corner to drag but it comes to center automatically. Apr 15 17:23:43 I've never had this problem before, but updating appcompat is when it happened I think Apr 15 17:24:32 s9iper1: "drag a picture" is not an atomic unit in android. how are you trying to move it? Apr 15 17:24:36 joetoday_: Could you have use two arrays? Apr 15 17:24:37 -have Apr 15 17:24:55 TacticalJoke: yeah, that works too Apr 15 17:25:03 s9iper1: there are way too many possibilities still, I'm not even sure what's happening or what you want Apr 15 17:25:52 groxx, i think i have found my answer on stack thanks Apr 15 17:34:45 so, if one of my dependencies has a dependency on appcompat, how do I need to be treating that differently? Apr 15 17:36:03 anybody can point me to some documentation about how to make your application automatically update itself? thanks Apr 15 17:36:32 drinfernoo: found it. `./gradlew androidDependencies` Apr 15 17:36:53 and iirc there are a few ways to override declared dependencies Apr 15 17:36:57 groxx, how do I use that? I'm not really very familiar with gradle Apr 15 17:37:05 just declaring dependencies basically Apr 15 17:37:30 drinfernoo: that would be from the command line. dunno if there's a way to do it from android studio... Apr 15 17:37:52 zalg: is your application on the play store? Apr 15 17:38:00 if so, you don't :) Apr 15 17:38:05 JesusFreke: it will be Apr 15 17:38:11 other than publishing an update to the play store, and letting the play store update it Apr 15 17:38:24 oooooooooooooh Apr 15 17:38:26 drinfernoo: ah, good, that gradle task is in the gradle side-panel in AS Apr 15 17:39:03 JesusFreke: so what you are telling me is that, by publishing an updated version of my app on google play, google play will update it automagically ? :D Apr 15 17:39:20 zalg: yep! Apr 15 17:39:22 \o/ Apr 15 17:39:38 zalg: if there are no new permissions (and the user hasn't disabled the feature), it will get installed automatically Apr 15 17:39:55 if there are new permissions (or rather, a new permission group, I believe), then the user will be prompted to update the app Apr 15 17:40:00 via a notification Apr 15 17:40:12 that's pretty neat Apr 15 17:43:01 zalg: also relevant: "An app downloaded from Google Play may not modify, replace or update its own APK binary code using any method other than Google Play's update mechanism." - https://play.google.com/about/developer-content-policy.html Apr 15 17:45:31 JesusFreke: good to know Apr 15 17:45:49 thanks for the info ! :) Apr 15 17:46:14 zalg, keep in mind that updates aren't instantaneous Apr 15 17:46:33 after you publish, it CAN take 24hrs to propagate to all devices Apr 15 17:46:40 usually mine take about an hour Apr 15 17:47:31 fair enough Apr 15 17:50:24 JesusFreke: it's still ok to download separate dex files, or has that changed? Apr 15 17:51:43 herriojr: not sure :) Apr 15 17:51:49 just out of curiosity (sorry, other than the last couple months, haven't done android in about 2 years) Apr 15 17:52:48 that's what people used to do before they started supporting some form of it in the store Apr 15 17:53:38 yeah, before the APK Expansion Files existed Apr 15 17:54:35 I've never run into the issue myself, I just remember some of this stuff from back in the day Apr 15 17:58:58 you could always package multiple dex files in an apk Apr 15 17:59:26 and as far as I'm aware, google has never blocked apps on the basis of downloading additional dex files Apr 15 18:02:39 Why oh why have I never learned the wonders of a sparse array before Apr 15 18:02:52 Fixes up so much of my janky code Apr 15 18:03:51 yiati: SparseArrays are just optimized HashMaps for the most part Apr 15 18:05:20 herriojr: They help a lot when index is important Apr 15 18:06:21 because the main use-case for sparse arrays was resource optimization Apr 15 18:06:30 and since android 2.x, it's become far less of a concern Apr 15 18:08:30 Is there any API calls to hook network requests? I want to know what network requests my application is making without having to extend/modify existing API. Apr 15 18:08:41 no Apr 15 18:10:38 lasserix: In that case, is it possible to specify a application specific proxy? Apr 15 18:12:33 bashed: depends on the networking library you use, but usually yes. Apr 15 18:13:05 bashed: or, personally, I run mitmproxy on my computer, and change my wifi settings to use my computer as a system-wide proxy. Apr 15 18:13:29 groxx: Thats a neat idea. Thanks, I'll try that out. Apr 15 18:19:18 bashed: that'll also let you watch other applications, which is kinda fun :) there are plenty of alternative proxies, but I like mitmproxy, and it has some decent android instructions on the site Apr 15 18:23:41 groxx: Thanks, I think I can use ProxySelector to specify application specific proxy and use mitmproxy with that. Thanks for the mention. Its exactly what I want. Apr 15 18:25:22 Anyone have a good recoemendation for a developmenmt stand for n5? Apr 15 18:25:24 n5 Apr 15 18:26:32 Silly putty! :D Apr 15 18:26:47 I use my sofa arm rest as a Tesco Hudl 2 stand. Apr 15 18:26:48 is there a way to define an onTouch listener in XML? Apr 15 18:27:38 s73v3r: no and thats a terrible idea Apr 15 18:27:51 hi guys, are there any tips for debugging NDK Apr 15 18:27:55 "Native method not found" errors? Apr 15 18:28:12 like can i inspect my shared object to make sure the symbols look right? Apr 15 18:28:13 I simply want to put some touch feedback on some of my common views. I don’t want to handle touches Apr 15 18:28:41 "want to put some touch feedback" elaborate? Apr 15 18:28:43 sta Apr 15 18:29:01 Are any Droidcon talks online? Apr 15 18:29:07 like i want to fade the image when touched Apr 15 18:29:25 and unfade when released Apr 15 18:29:34 I can't really find any. Apr 15 18:30:07 however, these are all images fetched from the network Apr 15 18:30:31 Hello folks! Apr 15 18:31:54 what’s a good strategy for implementing a simple thing, be it a fade, highlight, whatever, throughout the app without having to define it in every activity/fragment/view where these images are used? Apr 15 18:32:06 I am getting the text from a EditText and adding to a ArrayList shared from two Activities but I finish one just after a button is clicked. I wonder how to update the previous Activity in order to show the new item? Could someone help me please? Apr 15 18:32:35 s73v3r: you need to use touchlistener Apr 15 18:32:39 just subclass imageview Apr 15 18:32:46 add a touch listener or intercept touch event Apr 15 18:32:57 ondown activate fade on up activity fade out Apr 15 18:33:00 s73v3r: if it's touch based, you can do most of that with drawables, and you can animate the state changes iirc Apr 15 18:33:01 creeper:~/goatloot/workspace% grep -i goat **/*.java | wc Apr 15 18:33:01 441 3400 61815 Apr 15 18:33:06 *oh yeah Apr 15 18:33:08 can something have multiple onTouchListeners? Apr 15 18:33:08 has this goaten out of hand?? Apr 15 18:33:17 s73v3r: sure just chain them Apr 15 18:33:23 I’ve been having bad luck with state drawables, but I’d be willing to look again Apr 15 18:33:28 myke: Apr 15 18:33:29 :) Apr 15 18:34:00 s73v3r: oh hey i am mistaken, using selector states you can probably do what you want without touchlisteners: http://stackoverflow.com/questions/9221535/animate-selector-state-transitions Apr 15 18:34:40 ircfox: you can return data with setResult() before you finish(), and get the result in onActivityResult (as long as you startActivityForResult) Apr 15 18:35:11 groxx: ok, let me try it, thank you! Apr 15 18:35:39 ircfox: otherwise, use some kind of shared storage that both can safely read/write, and reload the data when the "bottom" activity comes back into view (e.g. onStart) Apr 15 18:35:42 What I expect the launch of my new application on google play http://i.imgur.com/FIX6ZIf.gif Apr 15 18:36:47 groxx: the second alternative is the one I am taking. But I was using a different method (onRestart). Apr 15 18:37:12 zalg: or maybe http://www.gifbin.com/988996 Apr 15 18:37:27 selector states can probably work. Apr 15 18:37:33 groxx: most likely Apr 15 18:37:34 ircfox: that works too :) Apr 15 18:38:00 groxx: but this is somehow duplicating the contents Apr 15 18:38:38 zalg: no wait, I found a much better one http://is.gd/OwsKP2 Apr 15 18:39:59 ircfox: which probably means you're doing `for (a : b) { addView(makeView(a)) }` ? you probably want to remove the ones you're currently displaying, or use a ListView and notifyDataSetChanged() or something. Apr 15 18:40:48 zalg: my vision of myself and my first users riding toward a bright future: http://cdn.bulbagarden.net/upload/a/a7/X_Gogoat_Adventures.png Apr 15 18:42:00 groxx: yes, I think this is where I got into problems. Apr 15 18:42:46 groxx: how would I remove the ones currently displaying? Apr 15 18:43:11 groxx: BAM! "...meant to do it!" Apr 15 18:43:35 ircfox: if it's a linearlayout or something, probably layout.removeAllViews() Apr 15 18:43:44 any money that cat ran another 10 feet then sat and licked itself cooly as if nothing happened Apr 15 18:44:48 groxx: let me test it. Apr 15 18:45:22 myke: I just get visions of this when I look at that image http://giphy.com/gifs/cat-scary-uW3g79HMG6sg Apr 15 18:47:04 groxx: wow. Apr 15 18:47:26 Hi Apr 15 18:47:36 I am able to animate something by calling animate() on the view but I am unable to start it by calling startAnimation() Apr 15 18:47:46 In general, is it recommended to use just code to implement custom views, or to use XML as well? Apr 15 18:47:54 in other words, the xml animation does not work while the code animation does work Apr 15 18:49:44 Papipo: whatever float your boat i'd say Apr 15 18:52:10 Papipo: whatever makes the most sense in your case Apr 15 18:52:23 i actually tend to use xml more than code Apr 15 18:52:58 don't listen to myke, using more code than xml is the way to go Apr 15 18:53:07 xD Apr 15 18:53:18 probably Apr 15 18:53:18 same as myke, here. less typing, and most of our view stuff is in xml anyway, so it's a bit more familiar. Apr 15 18:53:30 I try to feel bad about it though, because it's a bit of a weird blend Apr 15 18:53:34 yes, and you can use the layout viewer in your ide Apr 15 18:53:47 android overall is a bit of a weird blend Apr 15 18:59:32 changing the seekBar's color for progressbar and thumb is big headache, I guess I'm going to make 2 seekbars and show and hide them accordingly instead Apr 15 19:01:43 Hi all. I have a question. I set up Google Analytics in my app yesterday. It isn't released and I'm the only dev. Yesterday no sessions were shown for Google Analytics. But today, it says I have 13 new users in 10 different countries. It even shows one of the users was from iOS (impossible since my app and Analytics are Android only). Any ideas? Apr 15 19:01:58 http://i.imgur.com/0pCbcTs.png Apr 15 19:02:22 liuwenhao you are probably receiving analytics spam Apr 15 19:02:44 try deleting your property and creating another one with -2 or -3 suffix Apr 15 19:02:59 How is that possible? Do you think someone is using the same key? Apr 15 19:03:01 i got the same thing Apr 15 19:03:20 well they key is pretty easy to guess its just UA-1234567-1 usually Apr 15 19:03:28 These questions: http://www.reddit.com/r/androiddev/comments/32oy0v/what_steps_do_you_take_when_adding_a_new_feature/ Apr 15 19:03:29 you know what i mean Apr 15 19:03:42 Yeah. I guess that makes sense Apr 15 19:03:47 yeah i dont understand, they should use GUIDs or something Apr 15 19:03:49 but what's the point in using someone elses analytics key? Apr 15 19:03:51 hmm, you can't change the background image of the compat CardView, which sucks (I need to change the shape of it) Apr 15 19:04:02 liuwenhao not sure if anyone knows really Apr 15 19:04:40 g00s: !!! Apr 15 19:04:45 hey thepoosh ! Apr 15 19:04:47 http://venturebeat.com/2015/04/15/glides-apple-watch-app-telegraphs-a-future-with-live-video-conversations-on-the-wrist/ Apr 15 19:05:31 thepoosh impressive! is there an android version ? Apr 15 19:05:48 there is but it didn't get too much product attention Apr 15 19:05:56 because of technical limitations Apr 15 19:06:36 thepoosh so is glide on apple watch doing video decoding ? Apr 15 19:06:40 on the watch ? Apr 15 19:06:44 no Apr 15 19:06:47 ahhhh Apr 15 19:06:49 hehe :D Apr 15 19:06:51 they were REALLY against it Apr 15 19:06:57 our PoC did Apr 15 19:07:13 and they said they would never approve this Apr 15 19:07:23 huh, because of battery ? Apr 15 19:07:28 yep Apr 15 19:07:38 http://i.imgur.com/ca8Cm5P.png What the hell. hahaha Apr 15 19:07:39 that means the next apple watch will have that feature Apr 15 19:07:45 but probably now, because of the product efforts of that we might dedicate a sprint for wearables Apr 15 19:08:15 I guess I know where the spam is coming from Apr 15 19:08:19 probably not until they find a way to get better battery Apr 15 19:08:41 liuwenhao: lol Apr 15 19:08:55 so that site is using my analytics key. I suppose Apr 15 19:09:45 liuwenhao all somebody has to do is send an http request to GA with your key and some values; it doesn't even have to be a website Apr 15 19:10:13 you can do itwirh curl Apr 15 19:10:39 so just delete the property and update my app with the new code? Apr 15 19:10:47 yeah Apr 15 19:11:12 Hi guys Apr 15 19:11:13 Man that's annoying. Thanks for the help though g00s Apr 15 19:11:16 quick question about playstore Apr 15 19:11:26 I have an app out there and everything's all groovy. Apr 15 19:11:33 liuwenhao yeah, at first i thought somebody got into the account heh Apr 15 19:11:34 now i want to update the app in the next version Apr 15 19:11:46 mantas322: read the docs Apr 15 19:11:56 before (4-5 years ago) I was able to define a version number in the manifest file Apr 15 19:11:57 and then cahgne your versionCode and versionName Apr 15 19:12:00 thepoosh: so if it's not doing video decoding, are you just pushing a bunch of frames as quickly as possible from the phone? how fast does that run? Apr 15 19:12:08 yes Apr 15 19:12:11 but now it appears it's no longer in there. Apr 15 19:12:12 it shows a gif Apr 15 19:12:28 mantas322: it's now in your build.gradle Apr 15 19:13:11 oh, I see Apr 15 19:13:12 thanks Apr 15 19:13:53 interesting gradle (/ groovy) / intellij mismatch. http://cl.ly/image/3v31061O1y0N Apr 15 19:15:16 thepoosh any news on the google side for being featured ? Apr 15 19:15:33 reading an email as we speak Apr 15 19:15:36 just got it Apr 15 19:16:02 :O Apr 15 19:16:20 congrats Apr 15 19:17:07 g00s: 5 minor issues in feedback Apr 15 19:17:19 thepoosh so you fix, and resubmit ? Apr 15 19:17:27 any conflicting ones? :) Apr 15 19:17:30 like missing shadows, navDrawer not covering toolbar Apr 15 19:17:35 nah Apr 15 19:17:47 material style swiping Apr 15 19:17:51 all is good Apr 15 19:17:57 ejkkjw Apr 15 19:17:58 :w Apr 15 19:18:01 ah, i dont have most of that wither Apr 15 19:18:13 Sorry. Wrong tab. Apr 15 19:18:30 *either. too lazy - i keep waiting / procrastinating for google to beef up their appcompat; and then i will use whatever they give liberally Apr 15 19:18:39 until then i work on features Apr 15 19:22:20 groxx you used mqtt right ? Apr 15 19:22:27 g00s: just looked at Apr 15 19:22:42 groxx this was just posted in /r/androiddev https://www.ouralabs.com/ Apr 15 19:22:43 evening fellow Android victims Apr 15 19:23:09 g00s: mqtt based? interesting Apr 15 19:23:29 i don't know if it uses mqtt, but i did exactly this (for my app) using mqtt - its very easy Apr 15 19:23:42 man, i should have pitched it to some VC i guess Apr 15 19:24:10 Mavrik lol Apr 15 19:24:20 any have experience with Quickblox? Apr 15 19:24:21 What are we complaining about today? :) Apr 15 19:24:50 Mavrik nothing yet, just waiting for you to come by :) Apr 15 19:25:08 Good good. Wouldn't miss a flamewar :P Apr 15 19:25:15 I did it. Apr 15 19:25:15 It could be "Greetings, Android victims, both those who accept their victimhood and those who fight against it". :D Apr 15 19:25:18 I versioned my app. Apr 15 19:25:31 thanks poosh Apr 15 19:25:39 yay! Apr 15 19:44:11 is it me or it feels like google just doesn't do anything interesting at all with android between I/Os Apr 15 19:45:29 I guess we get AS updates, but they're not so amazing. Apr 15 19:46:39 its like, whatever level of pain you are feeling - there is no hope of it changing betore I/O Apr 15 19:47:22 So is there an internet scavenger hunt going on for IO invite codes? Apr 15 19:47:32 or is Google doing something different this year Apr 15 19:47:38 I get the impression that hardly anybody is working on Android. Apr 15 19:47:44 Just a handful of people here or there. Apr 15 19:48:08 But that can't be the case, surely. Apr 15 19:48:22 TacticalJoke i think they have a whole building dedicated to android, but how resources are allocated between OS / apps, probably nobody knows Apr 15 19:49:10 but things are so glacial it does feel like it Apr 15 19:49:20 I'm trying to change the choicemode of a listview whenever an actionmode is destroyed in http://developer.android.com/reference/android/view/ActionMode.Callback.html#onDestroyActionMode(android.view.ActionMode) Apr 15 19:49:50 So that some rows in the listview won't be checkable Apr 15 19:50:05 when I'm not in my secondary action mode Apr 15 19:50:26 onDestroyActionMode doesn't seem to be the right place though Apr 15 19:51:04 The change of checkable state doesn't work in there when I do change the choicemode of the listview Apr 15 19:54:44 has anyone here been to an I/O? Apr 15 19:55:38 TacticalJoke: yeah, sometimes it does feel like the fireside chats show the _entire_ team... Apr 15 19:56:43 Pwnies: closest I can claim is that I've had to bike through the traffic, and fight off the hordes of attendees to get lunch Apr 15 19:57:14 * pfn_ has been to 1 io... Apr 15 19:57:21 never gotten tickets since Apr 15 19:57:26 didn't bother registering this year Apr 15 19:57:31 since the lottery system is bogus Apr 15 19:58:11 dunno, I think I prefer the lottery system vs "I have fast internet and free time at time X" Apr 15 19:58:59 "Apple Will Not Tolerate Selfie Sticks At WWDC 2015" Apr 15 19:59:09 haha Apr 15 19:59:11 for reals? Apr 15 19:59:37 groxx, the main problem is the venue is too small and the slots too limited Apr 15 19:59:48 groxx for real Apr 15 19:59:53 g00s: that's hilarious Apr 15 19:59:58 ""In addition, you may not use selfie sticks or similar monopods within Moscone West or Yerba Buena Gardens." Apr 15 20:00:13 g00s: and it probably means they'll be releasing an iSelfie stick at the conference Apr 15 20:00:49 I hope someone sets up a free selfie stick thing right outside their jurisdiction Apr 15 20:02:26 groxx yeah about fireside chats; i still wonder what happens to android if dianne H moved on like Andy Apr 15 20:03:00 well, then there'd be _nobody_ answering technical questions, _anywhere_ Apr 15 20:03:17 dianne doesn't answer questions any more, does she? at least not on google groups Apr 15 20:03:21 people might have to read the source code themselves D: Apr 15 20:03:34 dunno. could be Apr 15 20:03:43 yeah she hasn't been there in years Apr 15 20:05:13 she does make an appearance at IO at least Apr 15 20:06:56 i like the fireside chats the most; seems like the only time you get (non)answers about whats really on everyone's minds Apr 15 20:07:10 but i find the questions as interesting as the replies Apr 15 20:07:32 Yeah, I love the non-answers there. :D Apr 15 20:07:43 "we're aware of it" Apr 15 20:09:50 TacticalJoke i think they decomissioned google moderator Apr 15 20:10:17 which was kinds cool Apr 15 20:10:34 seems like a usefult tool for things like I/O Apr 15 20:11:04 :P looks like I want a ListActivity and to use onActionModeFinished http://developer.android.com/reference/android/app/Activity.html#onActionModeFinished(android.view.ActionMode) Apr 15 20:12:33 Android TV question: Does anyone know how to toggle the visibility of the title above a row in a BrowseFragment? Apr 15 20:14:55 hi folks Apr 15 20:15:21 let's say i have an service that spawned a Thread with a Runnable that never stops Apr 15 20:15:26 upgrading this app doesn't stop the thread Apr 15 20:15:36 nothing short of rebooting the phone stops the thread Apr 15 20:15:53 is there a way, from code inside this service, that i can look for and kill runaway threads such as these? Apr 15 20:15:54 really? Apr 15 20:16:05 yeah, it was... really dumb. Apr 15 20:16:10 Spoom i would expect upgrading the app to kill previous instances Apr 15 20:16:15 tried that Apr 15 20:16:22 i'm watching it in wireshark now Apr 15 20:16:29 the problem is that the thread is downloading a stream as if it was a file Apr 15 20:16:33 so the stream never stops downloading Apr 15 20:16:38 thats what happens to my app anyhow ;) Apr 15 20:16:40 handwriting input: interesting. results: #fail http://cl.ly/image/2A2F083T1M1E Apr 15 20:16:57 hmm sockets might be different Apr 15 20:17:08 so i need to somehow, from the context of the system, look for threads owned by my service and kill them Apr 15 20:17:20 have you tried to run endless loop with sleep and logging Apr 15 20:17:20 from the context of the service, rather Apr 15 20:17:54 Ashiren: what do you mean? Apr 15 20:18:49 new thread(new runnable(...) { while (true) {thread.sleep(2000); log.d("xxx","thread is alive"); }}} Apr 15 20:19:21 and see if it doesnt get killed also Apr 15 20:19:43 Spoom: don't suppose you're either a) using multiple processes, or b) using START_STICKY? (maybe start_sticky causes it to restart after upgrade?) Apr 15 20:19:45 might try that to confirm it's what's happening, though i'm pretty sure it is Apr 15 20:20:03 i am using START_STICKY since it's a mediaplayer service Apr 15 20:20:59 it shoudlnt be restarting after upgrade Apr 15 20:21:15 Ugh, design decision regarding posting a user to a REST api -.- Apr 15 20:21:19 I keep changing my mind. Apr 15 20:21:37 Spoom: settings -> force kill app will stop the thread Apr 15 20:21:53 lasserix: you'd think, right? Apr 15 20:21:57 no it has to Apr 15 20:22:01 it kills the process Apr 15 20:22:07 the thread can;t outlive the process Apr 15 20:22:07 well Apr 15 20:22:10 it didn't kill the download Apr 15 20:22:23 the thread was spawned from a service though Apr 15 20:22:24 Whats that REST API library called again? Apr 15 20:22:29 retrofit Apr 15 20:22:33 Im going to see if it has any features to make my decision easier Apr 15 20:22:39 spoom well stop the service in that menut hen Apr 15 20:23:01 Oh haha, look another square library in my app. At some point its going to just become their property. Apr 15 20:23:08 service doesn't show up there Apr 15 20:23:12 mac os is so stupid, can't extend a window outside bounds of a moniter wtf? Apr 15 20:26:22 lasserix: sure you can. just get a differently-sized external monitor, move it near the edges of the external, then disconnect it. you can move windows _entirely_ offscreen that way :) Apr 15 20:30:27 hiya Apr 15 20:30:33 hiya! Apr 15 20:30:52 I'm doing this android course right, and third week includes a lab called PermissionsLab Apr 15 20:31:09 there's some preset code and some preset unit tests, and they're supposed to run on the coursera servers to verify my answers Apr 15 20:31:19 I have a local project clone so I can run them myself Apr 15 20:31:42 two apps, one called DangerousApp aka the thing I am limiting access to, and one called PermissionsLab which has the permission DangerousApp defines Apr 15 20:32:06 the test instrumentation fails when it calls startActivity("course.labs.permissions.DANGEROUS_ACTIVITY") Apr 15 20:32:19 due to an ActivityNotFoundException Apr 15 20:32:42 the DangerousApp exists on my system, and has defined the same-named intent filter and permissions as the permissionslab Apr 15 20:32:48 is possibre to know if your application was uninstalled? Apr 15 20:33:07 zalg dev console :) Apr 15 20:33:27 zalg, check services like notiphy or betglide Apr 15 20:34:03 oki Apr 15 20:34:43 boxmein, no idea man Apr 15 20:35:44 let me attach a debugger Apr 15 20:39:00 is there a way to make Retrofit return List of size 0 or null when there is an connection or server error rather throwing exceptions? Apr 15 20:39:18 rxjava Apr 15 20:39:23 has error handling operators Apr 15 20:40:54 hey JacobTabak Apr 15 20:40:57 hello Apr 15 20:41:03 how art thou Apr 15 20:41:38 ok :) Apr 15 20:41:43 icedp: you should just handle the exception. Apr 15 20:41:47 wonder what OK is in OE Apr 15 20:42:29 icedp see something like this http://stackoverflow.com/questions/27229709/rxjava-network-requests-and-caching Apr 15 20:42:41 mr zsxwing Apr 15 20:44:08 desmin88: you mean I should catch RetrofitError in every place I call it? Apr 15 20:44:29 Does someone know an atlernative to Advanced RecylcerView for swiping to remove. I want it to be in one swipe and I will create a snackbar myself with an undo (it of course has to support undo) This is how Advanced RecyclerView implements the swiping part: https://www.youtube.com/watch?v=S7cSwMArjUQ Apr 15 20:44:38 why cant you hold down in as to repeat key entry, like seirousily wtf is up with that Apr 15 20:44:46 JacobTabak: g00s rx lobby is strong in this channel it's on my list :) Apr 15 20:44:56 icedp: handle it with rx i meant Apr 15 20:45:46 Imagine how many people would be fucked if Square and/or JakeWharton suddenly took down all their libraries hahah Apr 15 20:45:59 thats why you fork them Apr 15 20:46:19 or clone them! Apr 15 20:46:23 ...thats not necessarily a bad idea. Apr 15 20:46:25 git is such a neat thing! Apr 15 20:46:32 Am I allowed to just fork all their stuff? Apr 15 20:46:37 of course Apr 15 20:46:41 Hmm... Apr 15 20:46:43 Sweet Apr 15 20:46:46 Ill do that then Apr 15 20:46:49 just give them the good 'ol "fork you!" Apr 15 20:47:17 JesusFreke with the inevitable out-of-the-blue pun Apr 15 20:47:32 icedp: RestAdapter.Builder.setErrorHandler(ErrorHandler errorHandler) Apr 15 20:47:35 I aim to please Apr 15 20:47:44 you probably don't want to set an error handler for what he's doing Apr 15 20:47:55 if it's just for one request Apr 15 20:48:20 just use onErrorResumeNext Apr 15 20:48:55 it's for requests like in dozen different places Apr 15 20:49:29 Why does my share button display "SHARE" instead of that nice android share icon? Apr 15 20:49:30 errorhandler doens't let you swallow the error. Apr 15 20:50:03 Kake_Fisk your question doesn't have nearly enough detail to get an answer Apr 15 20:50:07 Kake_Fisk: needs more context Apr 15 20:50:10 beat me to it. Apr 15 20:50:30 I'm gonna assume its a toolbar icon and he has it show text if space is available Apr 15 20:50:55 JacobTabak: it seems it doesn't yep Apr 15 20:50:57 Kake_Fisk: displayAsIcon="always " ? Apr 15 20:50:59 Oh, that might be right Apr 15 20:51:06 I think that's the attribute anyway Apr 15 20:51:40 my android brothers :) Apr 15 20:51:44 Should I keep app:showAsAction? Apr 15 20:51:51 if you're using appcompat Apr 15 20:51:59 i assume you are Apr 15 20:52:00 I'm not Apr 15 20:52:06 I don't think so, at least Apr 15 20:52:08 then use android:showAsAction Apr 15 20:52:15 Right thats that forking done. Apr 15 20:52:19 siiiigh Apr 15 20:52:21 I can't debug the app Apr 15 20:52:28 All right, then I'm using appcompat Apr 15 20:52:33 Anthaas: That was a quick fork. Apr 15 20:53:11 Yeah, it doesn't take long. Not these days... Apr 15 20:53:11 TacticalJoke http://i.imgur.com/t8fzxkJ.jpg Apr 15 20:53:34 That's so nice. I hope it wasn't PSed. ;| Apr 15 20:53:39 Almost everything is PSed these days. Apr 15 20:53:56 I'm too lazy to type it. Apr 15 20:54:06 PSed? Apr 15 20:54:10 Photoshopped. Apr 15 20:54:15 ahh Apr 15 20:54:21 anybody knows if the picasso library can display animated gifs? Apr 15 20:54:28 Dont think so Apr 15 20:54:30 no Apr 15 20:54:35 Although I think g00s or someone knows a lib that can Apr 15 20:54:39 Shift or Swift or something Apr 15 20:54:39 zalg: Glide handles animated GIFs, though. Apr 15 20:54:46 so theres that Apr 15 20:54:48 Glide thats the one Apr 15 20:54:53 Know it was something movement related Apr 15 20:55:11 allright ill look it up Apr 15 20:56:10 anybody else find corgies adorable? Apr 15 20:56:30 lol Apr 15 20:56:34 If I want to post a User object through Retrofit to my REST API, is it best to send the object JSON encoded, and decode it the other end? Apr 15 20:57:06 They're adorable, but they do'nt support animated GIFs. Apr 15 20:57:08 don't* Apr 15 20:57:17 TacticalJoke that doesn't look PS'd to me Apr 15 20:57:18 heh Apr 15 20:57:36 It was just the water: it looked too perfect. But it might not be PSed. Apr 15 20:57:42 I get no resource identifier found for attribute 'showAsIcon' :( Apr 15 20:57:46 Im trying to work out how I should add users, update users, and if I should separate scripts to distinguish those actions Apr 15 20:57:53 TacticalJoke looking at the clouds, i dont see any crazy detail recovery or anything Apr 15 20:58:08 Yeah. Apr 15 20:58:22 TacticalJoke water is glaciel probably with minerals Apr 15 20:59:36 can anyone help D: Apr 15 20:59:38 "No Activity found to handle Intent { act=course.labs.permissions.DANGEROUS_ACTIVITY }" Apr 15 20:59:43 except there should be one Apr 15 20:59:47 when i was at lake louise in canada, it was like there was a hole in ground with sky underneath Apr 15 21:00:30 Nice. Apr 15 21:00:35 this does exist in dangerousapp's manifest: Apr 15 21:02:43 TacticalJoke: even if it's not PS'd, cameras do a fair bit of post-processing anyway. Apr 15 21:03:22 TacticalJoke: e.g. if you look at the edge of the mountain against the clouds, there's a consistent brightening. contrast boosting like that is probably automatic by the camera. Apr 15 21:05:02 groxx i see some chromatic aberrations but no brightening Apr 15 21:05:24 typically those are purple though, these are mostly blue/white Apr 15 21:05:38 think it depends on the optics Apr 15 21:06:12 ah, maybe not. perpendicular directions have purple edges. Apr 15 21:06:19 but yeah, cameras are doing tons of stuff anyhow Apr 15 21:06:19 didn't spot those before Apr 15 21:06:45 yeah. if nothing else, they capture in a larger color space than jpeg supports. so they do _something_ to compress. Apr 15 21:06:48 also anyone doing serious photography is going to shoot in raw and do some post processing Apr 15 21:06:54 and then export to jpeg Apr 15 21:07:15 i see some purple fringing along the edges of snow in the shade Apr 15 21:07:28 dragorn yeah Apr 15 21:08:11 and doing landscape stuff like that you're probably going to use a ND filter Apr 15 21:08:17 I've mostly fallen into the "I don't care" camp. as long as you don't see things like this claiming to be #nofilter http://funpxl.com/2011/06/day-118-the-promised-nightshot/central-hdr-night/ Apr 15 21:08:18 anyhow. this is android dev not photo nerds, I'll shut up :) Apr 15 21:08:38 lol no ndfilter, polarizer :) Apr 15 21:09:14 g00s, polarizer, or nd gradient filter, or both Apr 15 21:09:17 That looks like a city from the future. Apr 15 21:09:28 dragorn do you do any landscape ? Apr 15 21:09:36 g00s: my board works! Apr 15 21:09:48 just got it working and removed the filter last night, as i received it from OSHPARK Apr 15 21:09:51 congrats jareddlc ! lots of hard work ! Apr 15 21:10:03 g00s, I do. I think my favorite set is http://durandal.kismetwireless.net/~dragorn/digicam/rhodeisland/newtonsrock/index.html Apr 15 21:10:07 thanks Apr 15 21:10:14 jareddlc, nice. oshpark is magic Apr 15 21:10:45 yep, good for fast protos, but they are also very high quality Apr 15 21:10:54 dragorn sweet, these are very nice Apr 15 21:11:32 dragorn what sw do you use ? Lr / etc Apr 15 21:11:47 i like the top center one, simple composition purple / orange theme Apr 15 21:11:55 dreamy water Apr 15 21:12:04 g00s, lightroom usually. sometimes lightzone in linux, usually lightroom in a vm Apr 15 21:12:09 jareddlc, what did you make Apr 15 21:13:19 can anyone help me on this one? http://stackoverflow.com/questions/29658528/how-to-update-third-party-widgets-at-boot-completed Apr 15 21:14:25 How do you guys name your Retrofit classes and interfaces? Apr 15 21:14:35 XxxService Apr 15 21:14:36 Name + Service Apr 15 21:15:11 Ahhh, so if I have a User object that needs shifting about, I should do public interface User, and public class UserService implements User ? Apr 15 21:15:33 or UserInterface or something Apr 15 21:15:42 or UserServiceInterface Apr 15 21:15:56 Is this possible to get voice data from mic and stream it to a remote location? Apr 15 21:16:32 Voyage, as in, be a voip app? yes. look at anything that has an example recording program and go from there Apr 15 21:17:10 dragorn, no. its a security app. When phone is stolen it streams video and audio to remote server and shows it there Apr 15 21:17:13 the idea is that you group them logically by role Apr 15 21:17:18 e.g., AccountService Apr 15 21:17:25 or UserService would be fine Apr 15 21:17:50 dragorn, can I just grab mic/camera data/ use it while the phone is sleeping or on call? Apr 15 21:18:07 possibly while sleeping. I'd sure hope you can't while it's on a call. Apr 15 21:18:48 dragorn, ok. but how do call recording sofware work then? if you cant get mic / speaker data while user is on call? Apr 15 21:21:37 So often I see questions in here where you can't help but think the dev is doing something they shouldnt be haha Apr 15 21:24:08 well how the call recording apps work... Apr 15 21:26:41 what do you guys hate most about android dev? Apr 15 21:27:02 ikr, random uber-broad question Apr 15 21:27:05 xml :D Apr 15 21:27:09 gradle Apr 15 21:27:14 wut Apr 15 21:27:19 gradle? Apr 15 21:27:21 Pwnies: Java Apr 15 21:27:23 i understand xml Apr 15 21:27:28 lol, wtf java Apr 15 21:27:34 gradle doesn't make any sense to me Apr 15 21:27:35 why? Apr 15 21:27:40 well you asked... Apr 15 21:27:49 that's the beauty of it Apr 15 21:28:00 maybe I haven't eaten enough of those pills on my cupboard but gradle is in my opinion illogical and that makes me unable to work well with it Apr 15 21:28:02 no no, i understand why you'd hate xml Apr 15 21:28:33 hah. how long have you been devving boxmein? Apr 15 21:28:40 with other stuff? a while Apr 15 21:28:45 10 yearS? Apr 15 21:28:47 android? uh, I've dabbled, never anything decent Apr 15 21:28:52 other stuff, around 5 Apr 15 21:28:54 I'm 18 Apr 15 21:29:05 oic Apr 15 21:29:16 android? recent 1-2 years, now focusing a bit more because of the android app course I'm taking on coursera Apr 15 21:29:36 those recent years have mostly been me turning on ADT, starting something and then getting overwhelmed and moving on to greener pastures Apr 15 21:29:39 the "pills on my cupboard" comment gave me the impression you were like. maybe 40ish? Apr 15 21:29:40 * TheBunnyZOS realizes I have been a paid programmer longer then boxmein has existed Apr 15 21:29:47 I'm trying out the coursera reactive course to see what the hoopla is Apr 15 21:30:00 Bunny, how long have you been a programmer for? Apr 15 21:30:02 How would I wrap an onTouch listener? I’m trying to implement some stuff in my ImageView class, but I don’t want to prevent users of the class from setting an onTouchListener Apr 15 21:30:02 pfn_: poke me in its direction, I wanna read the tldr :D Apr 15 21:30:18 Pwnies: the comment was mostly about being high to understand gradle Apr 15 21:30:19 boxmein, https://class.coursera.org/reactive-002 Apr 15 21:30:24 i'm 23, not much older than boxmein Apr 15 21:30:28 21 years I think boxmein …. i forget Apr 15 21:30:32 Pwnies: Apr 15 21:31:02 hah, i was barely walking when you were getting owned by hello world Apr 15 21:31:16 now i'm getting owned by hello world... Apr 15 21:31:26 pfn_: reactive programming is just trendy and you can make a mess of it just like everything else ;) Apr 15 21:31:54 what about FRP Apr 15 21:31:56 TheBunnyZOS: what was your first language? basic? Apr 15 21:32:00 FRP is neat Apr 15 21:32:21 Hi guys, If there's a chrome app and I want to simply put it inside a android container, is there any easy way to do this? Apr 15 21:32:26 I might actually think about it Apr 15 21:32:37 is there an annotation that would tell your IDE (or just AS) that 'this method is used in class C method M' ? Apr 15 21:32:41 Are all the retrofit stuff generally kept in .java file, or separated? Seems like a stupid question perhaps, but examples I've seen don't make it obvious. Apr 15 21:32:44 Xtrivity: no easy way, but cordova might help you adapt Apr 15 21:32:45 dragorn, Anthaas what about camera control? Apr 15 21:32:58 Xtrivity: here's what I found https://developer.chrome.com/apps/chrome_apps_on_mobile Apr 15 21:33:00 Yeah I had a very cool basic compiler called Zbasic, it was modern and more like C, later I learned Pascal, then C++, java etc Apr 15 21:33:02 boxmein, that's basically what the course is, not java though Apr 15 21:33:04 * pfn_ shrugs Apr 15 21:33:08 Is all* Apr 15 21:33:12 pfn_: I'll think about it Apr 15 21:33:25 gotta get this one thing fixed beforehand Apr 15 21:33:28 Hey, what do you guys find yourself using more often: retrofit, or volley? Apr 15 21:33:34 retrofit Apr 15 21:33:43 volley Apr 15 21:33:45 retrofit:1 volley:1 Apr 15 21:33:47 Retrofit Apr 15 21:33:51 Why do we need to create a Bundle of arguments when creating a Fragment? Can't we just use object variables like so: https://gist.github.com/anonymous/1ddc7321fa46bc00b228 Apr 15 21:33:52 im trolling, retrofit Apr 15 21:33:52 (just started haha) Apr 15 21:33:56 R:2 V:1 Apr 15 21:33:57 lol Apr 15 21:34:00 no volley Apr 15 21:34:05 R:3 V:0 Apr 15 21:34:16 hm, never mind. seems AS does in fact realize that without telling it Apr 15 21:34:21 wtf, people told me to use volley for my app Apr 15 21:34:25 retrofit +1 Apr 15 21:34:28 the only people who use volley are people who haven't used retrofit Apr 15 21:34:31 i've been trolled.... Apr 15 21:34:40 JacobTabak: thrue that Apr 15 21:34:42 the is also Universal Image Loader and this new Facebook thing and something I forgot Apr 15 21:34:45 Are all the retrofit stuff generally kept in .java file, or separated? Seems like a stupid question perhaps, but examples I've seen don't make it obvious. (sorry to ask again) Apr 15 21:34:54 s/are/is Apr 15 21:34:56 anything volley can do, retrofit can do better? Apr 15 21:34:57 what are you even asking Anthaas Apr 15 21:35:02 nobodys responding bc your question makes no sense :E Apr 15 21:35:16 rohit7roy: because those variables won't be restored if your fragment is restored after your process dies Apr 15 21:35:23 uh. yeah, it's in a library somewhere anthraas Apr 15 21:35:25 rohit7roy: the arguments bundle will be Apr 15 21:35:39 JacobTabak: It does. The interface and rest adapter creation, are they defined within the same .java file, or not? When you are creating them. Apr 15 21:35:54 you forgot the word "same" in your question Apr 15 21:36:02 so it didn't make sense Apr 15 21:36:05 what can volley do that retrofit can't? Apr 15 21:36:08 Oops :P Apr 15 21:36:10 My bad Apr 15 21:36:10 volley can load images Apr 15 21:36:20 But there is Picasso for that. Apr 15 21:36:21 retrofit + picasso? Apr 15 21:36:28 Anthaas it depends. and it doesn't really matter Apr 15 21:36:44 boxmein, I'll take a look, most of the code is open source but i don't know java at all, so trying to see what alternatives I can do. Apr 15 21:36:53 most of my retrofit components are provided individually by dagger Apr 15 21:37:04 so i can swap them out Apr 15 21:37:16 Xtrivity: cordova's components are Java, but the code itself is web tech :D Apr 15 21:37:23 alright, wtf is dagger. I hear it being thrown around like crazy. dependency injection? might as well be chinese... Apr 15 21:37:34 boxmein, i know, but the chrome extension is done mostly in java Apr 15 21:37:45 this chat is such a can of worms lol Apr 15 21:37:50 you answer one thing and get 3 other questions Apr 15 21:37:54 yeah baby Apr 15 21:38:02 i'm bored and curious Apr 15 21:38:12 and the googs can't give me all the answers can it? Apr 15 21:38:17 dagger is a dependency injection framework Apr 15 21:38:47 yeah, i read THAT. but.. i.. don't see the point Apr 15 21:38:57 it allows you to swap dependencies. for example, in a debug build you might want a stetho intercepter attached to your http client Apr 15 21:39:02 but in production, you wouldn't want that Apr 15 21:39:18 so in this case the dependency is an http client Apr 15 21:39:30 and we're customizing the http client based on build type Apr 15 21:39:37 so just get rid of it on your production build? Apr 15 21:39:51 DI has nothing to do with debug, production ,or anything like that Apr 15 21:40:03 it allows you to declare your dependencies and then just grab them in your client code Apr 15 21:40:32 like rather than saying `myClient = new OkHttpClient()` you just have an annotated field, like `@Inject OkHttpClient myClient` Apr 15 21:40:47 so your client code doesn't need to chooose an implementation when you write it Apr 15 21:40:51 groxx: thanks. never thought about it. but what happens when a process dies Apr 15 21:41:03 the process dies and that's it Apr 15 21:41:20 sorry for the can of worms jacob, but what's the difference between client & source code? Apr 15 21:41:39 hm i use the term 'client code' meaning code that you write Apr 15 21:41:48 like in your activities, etc Apr 15 21:41:49 i mean when , what are the types of conditions Apr 15 21:41:52 wat. i always called it source code Apr 15 21:41:53 rohit7roy: try it. go a few steps into your app, then hit the home button, and click the 'x' in the Android tab in Android Studio to kill your process. then go back to the app from the recents list. Apr 15 21:42:29 Pwnies don't worry about that distinction Apr 15 21:42:30 rohit7roy: it'll get killed when the user is not using your app and e.g. 30 minutes have passed, or other apps have been launched and they need more memory, or because it feels like it, or because the phone rebooted (on Lollipop) Apr 15 21:42:34 maybe i'm too new to understand the point of DI Apr 15 21:42:50 " like rather than saying `myClient = new OkHttpClient()` you just have an annotated field, like `@Inject OkHttpClient myClient` Apr 15 21:42:50 so your client code doesn't need to chooose an implementation when you write it" Apr 15 21:42:55 Pwnies what i'm trying to say is that your dependency providers live outside of your day-to-day code that you write Apr 15 21:43:10 OH Apr 15 21:43:13 they're in your source code, but it's more of a configuration than actual imperative code Apr 15 21:43:14 it's notbaked in Apr 15 21:43:29 right? Apr 15 21:43:42 yes. Apr 15 21:43:47 the "module" is what provides dependencies Apr 15 21:43:51 rohit7roy: your task stack survives outside your process, and the system will restart your activities with the intents + saved instance state bundles that started them, as needed. e.g. say you have activities A, then B, then C, all on top of each other. if the process dies and they go back, C will be restarted, but A and B won't exist yet. Apr 15 21:43:54 and it's common to swap modules based on configurations Apr 15 21:44:02 IE a "debug" module and a "release" module Apr 15 21:44:05 so it goes hand-in-hand with the modular idea behind android Apr 15 21:44:10 Hmm Apr 15 21:44:17 I want to make my User object immutable. Apr 15 21:44:27 AutoValue Apr 15 21:44:40 hm. but why would you need two modules? why cant the debug module just be worked on until it's a production app? Apr 15 21:44:58 in our case, we have in-app debugging tools in the debug build Apr 15 21:45:06 that our QA testers (non developers) can use to do things normal users cant Apr 15 21:45:08 Pwnies: https://www.parleys.com/tutorial/architecting-android-applications-dagger Apr 15 21:45:17 there's no distinction between debug and release, you could create modules for different flavors as well Apr 15 21:45:20 thanks groxx Apr 15 21:45:33 Is it a good idea, do you think, to have it backed by a HashMap where I can do map.put("name", "Anthaas"); return this; (returns a User) Apr 15 21:45:34 Pwnies: https://www.parleys.com/tutorial/5471cdd1e4b065ebcfa1d557/ Apr 15 21:45:39 slides: https://speakerdeck.com/jakewharton/android-apps-with-dagger-devoxx-2013 Apr 15 21:45:43 And add more value by chaining Apr 15 21:45:55 srry for the question avalanche. I know a career developer who says dagger is mysterious nonsense to him Apr 15 21:45:57 that's all Apr 15 21:46:10 Pwnies the way you learn about DI is really just to hear about it over and over until you get super frustrated not understanding it and spend a week relentlessly trying to figure it out until you understand it Apr 15 21:46:23 it's a dependency injection framework. that's a bit more normal in Java-land than in other languages, but dependency injection is a normal thing. Apr 15 21:46:42 that has been my android learning journey so far JacobTabak Apr 15 21:46:51 i don't think i would waste too much time on this if you're learning Apr 15 21:47:31 would you say dagger is necessary for structured/coordinated software dev? Apr 15 21:47:37 no Apr 15 21:47:52 definitely not Apr 15 21:48:18 god I love this channel Apr 15 21:48:35 DI is really crucial for testing Apr 15 21:48:48 if you're not writing tests, DI is really not that important Apr 15 21:49:07 but Apr 15 21:49:18 you should understand that DI is a pattern not a framework Apr 15 21:49:29 and always favor composition over inheritance Apr 15 21:49:42 composition over inheritance? Apr 15 21:49:50 last question i swear Apr 15 21:49:54 Pwnies you may like this for DI-in-the-small http://java.dzone.com/articles/type-safe-dependency-injection Apr 15 21:49:59 am I stupid to ask, why DI is crucial for testing? (Im not a java guru, far from it) Apr 15 21:50:09 saapas because you need to mock dependencies for testing Apr 15 21:50:14 i'm pretty sure i'm worse than you saapas Apr 15 21:50:17 and if the dependencies are built into the thing you'er testing, you can't do that Apr 15 21:50:31 Pwnies, thanks, but I haven't read anything else what you've written dont worry :) Apr 15 21:51:00 Pwnies you know what inheritance is? like subclassing something and adding functionality? Apr 15 21:51:08 definitely Apr 15 21:51:20 JacobTabak, is that the same as making mock classes that implement an interface? Apr 15 21:51:48 rather than subclassing something and adding functionality, make another object that has a reference to the first object Apr 15 21:52:01 you can google 'composition over inheritance' for more on the topic Apr 15 21:52:11 what. I thought that was the norm? Apr 15 21:52:15 http://en.wikipedia.org/wiki/Composition_over_inheritance Apr 15 21:52:44 Any obvious reason my program should crash at mShareActionProvider = (ShareActionProvider) item.getActionProvider();? Apr 15 21:52:54 by personal experience I've begun to prefer composition over inheritance. :thumbup: Apr 15 21:52:59 isn't that kind of required when sticking to the single responsibility principle? Apr 15 21:53:00 Kake_Fisk read the topic of the chan please Apr 15 21:53:05 http://imgur.com/jacoj Apr 15 21:53:11 stacktrace Apr 15 21:53:20 haha Apr 15 21:53:24 i love that snippet Apr 15 21:53:48 saapas i don't think it's the same Apr 15 21:54:05 JacobTabak, then I have no idea what you mean :) Apr 15 21:54:10 stacktrace is logcat in this context? Apr 15 21:54:34 stack traces are created when an exception occurs Apr 15 21:54:48 they include the name of the exception, a description of what went wrong, and all of the method calls that lead to the exception Apr 15 21:55:07 think of the red block of text in logcat Apr 15 21:55:10 its probably not appropriate to ask in this channel for help if you don't know what a stack trace is Apr 15 21:55:13 ..and stack traces are visible in logcat, if they are called to be printed; e.printStackTrace(); Apr 15 21:55:16 we cant help you if you dont help yourself Apr 15 21:55:51 printStackTrace is the default for unhandled exceptions Apr 15 21:55:56 would be super useful for you to read some basic java tutorials or books Apr 15 21:56:11 Jacob, where'd you get introduced to java? Apr 15 21:56:18 groxx: u r awesome Apr 15 21:56:42 well I learned c++ in college and it's kind of similar Apr 15 21:56:48 CS major? Apr 15 21:56:49 "learned" Apr 15 21:57:06 yes Apr 15 21:57:37 w/e man, don't give me that "learned" nonsense. you still got a handle on tons of theory Apr 15 21:57:45 I kinda didn't get stacktrace reportings in logcat today. Do I have to run debug? Apr 15 21:57:55 aww when will we be able to use Java 8 in android development :/ Apr 15 21:58:01 Kake_Fisk logcat integration to the development environment is horrible and unreliable Apr 15 21:58:03 i won't tell you what I majored in, but it starts with a Apr 15 21:58:17 "p" and ends in "sychology" Apr 15 21:58:32 rohit7roy: another thing to try: go into developer options (on the device) and enable "don't keep activities". that'll remove your activities when they're no longer visible, which exposes some bugs like saved instance state failures. it's not _quite_ the same as killing the process, because static stuff will still be around, but it's similar and very quick Apr 15 21:58:32 to try. Apr 15 21:58:34 'Haha, okay. I'll see if I can get it to show up Apr 15 21:58:51 try unplug/replug if a device, restart adb (google that) Apr 15 21:58:53 groxx: i had no idea about this thanks a lot Apr 15 21:58:58 make sure you dont have filters on Apr 15 21:58:59 etc etc Apr 15 22:00:09 JacobTabak: Why android? Apr 15 22:00:47 first job out of college was at a mobile dev shop Apr 15 22:00:49 rohit7roy: np :) it's probably the most-unknown thing I see for new android devs, but it's pretty fundamental to the whole system. Apr 15 22:01:01 with c++ experience? Apr 15 22:01:04 i hated apple products at the time Apr 15 22:01:11 everyone learns c++ or java in college Apr 15 22:01:22 i was doing web dev part time / for fun Apr 15 22:01:48 rohit7roy: imo the docs don't do a very good job introducing the task stack stuff. it's legitimately _hugely_ complicated when you get deep and try to manipulate it, but the basics are not too bad. Apr 15 22:01:49 Okay, stacktrace kinda told me what was wrong. "This is not supported, use MenuItemCompat.getActionProvider()" Apr 15 22:01:50 what free frameworks are there that can be used to create iphone and android apps but with same code base (phonegap is one)? Apr 15 22:02:17 JacobTabak: why'd they pick you up? Apr 15 22:02:47 groxx: ok :) Apr 15 22:03:08 mobile dev shop? because i had experience/portfolio with the technologies they were using Apr 15 22:03:34 anyway i was doing web dev there and android looked fun and they didn't have an android dev so i learned it Apr 15 22:03:36 random question Apr 15 22:03:49 how long ago? Apr 15 22:03:50 random answer: of course not. Apr 15 22:03:51 why to use fragment transactions over just .addView(fragment.getView()) Apr 15 22:04:02 lol are you trolling with the questions or do you really want to know? Apr 15 22:04:19 i want to be a developer as a career choice. Apr 15 22:04:25 boxmein the view won't be created unless you put the fragment through its proper lifecycle Apr 15 22:04:39 i have the wrong major because I learned what I love doing too late. Apr 15 22:04:40 also you can't add a view to two viewgroups, so that would give you an error Apr 15 22:04:41 and the fragment manager does the lifecycle? Apr 15 22:05:01 boxmein: because fragment transactions are saved for you in saved instance state, but currently-visible views are not. so if you change fragments a few times, lose the process, and then restore, you'll go back to the state you left. addView() will go back to the _original_ state, unless you manage that yourself. Apr 15 22:05:08 yep. adding a fragment to an activity starts the lifecycle.. onCreate(), etc Apr 15 22:05:33 ah, lifecycle is also a good point Apr 15 22:05:48 views are automatically saved in instance state Apr 15 22:05:51 transactions it is Apr 15 22:05:54 groxx Apr 15 22:06:03 view _state_ is, views are not. Apr 15 22:06:04 ie, type some text into an edit text, and rotate the device Apr 15 22:06:20 it's restored by ID, if a view of the same type + id exists. Apr 15 22:06:28 same with fragments Apr 15 22:06:37 its not any different Apr 15 22:06:59 sure it is. setContentView() ... addView(x) ... process death -> resume -> X does not exist in the layout. Apr 15 22:07:12 same story if you addView within a fragment Apr 15 22:07:41 i get what you're saying Apr 15 22:07:50 not worth arguing over mundane details Apr 15 22:07:58 heh. agreed :) Apr 15 22:08:06 but it didnt seem like the right answer to his question Apr 15 22:08:35 he asked "why to use fragment transactions over just .addView(fragment.getView())".... the fragment.getView() is just not a valid idea Apr 15 22:08:36 yeah, lifecycle is a much better match, agreed. Apr 15 22:08:51 it would never work because the view would already have a parent Apr 15 22:09:43 Is this OK for an immutable object with method chaning or have I just got everything wrong? http://pastebin.com/WhQucq23 Apr 15 22:10:24 well, it's not really _immutable_ since you're mutating it. but that'll work. Apr 15 22:10:31 i hate it when the play store's statistics decide to not update for a couple days Apr 15 22:10:37 wait what Apr 15 22:10:57 though you probably meant `if (!displayName.isEmpty()) {` instead of `if (displayName.isEmpty()) {` Apr 15 22:11:04 Pwnies you may like http://www.ccs.neu.edu/home/matthias/HtDP2e/ Apr 15 22:11:12 Anthaas you should use AutoValue lol Apr 15 22:11:15 htdp was written to intoduce CS to liberal arts Apr 15 22:11:46 https://github.com/google/auto/tree/master/value Apr 15 22:11:47 xamarin and phonegap, appcelerator, titanium are free ? Apr 15 22:11:52 hey, i was a social sciences major; not much better :| Apr 15 22:12:04 Pwnies your degree doesn't matter in this day and age Apr 15 22:12:05 groxx: Oops, good catch. I just thought though. At the declaration, i am recreating the hashmap every time arent I? Apr 15 22:12:13 LOL OK JACOBTABAK Apr 15 22:12:15 JacobTabak: Whats that? Apr 15 22:12:17 We don't even look at education for applicants Apr 15 22:12:21 Voyage: Google Android SDK is free too Apr 15 22:12:24 what? Apr 15 22:12:29 Anthaas: "at the declaration"? Apr 15 22:13:02 groxx: private final HashMap map = new HashMap(); Apr 15 22:13:02 Anthaas its what it says it is - "Immutable value-type code generation for Java 1.6+ " Apr 15 22:13:12 Anthaas: each "this" instance will get a single hashmap that will never change. since you're returning the same 'this' each time, new Thing().setX().setY().setZ() is the same object at each step. Apr 15 22:13:13 yiati, :) Apr 15 22:13:19 The android version is called "AutoParcel" Apr 15 22:13:24 yiati, it just works on androids Apr 15 22:13:25 JacobTabak: portfolio and coding tests i assume? Apr 15 22:13:35 Ahhhh Apr 15 22:14:08 Voyage: It's works well on Android Apr 15 22:14:18 yeah Pwnies. github profile. Apr 15 22:14:25 we don't hire based on github profile Apr 15 22:14:34 final (basically) just means you must assign it exactly once. since you do, with "new HashMap()", you can never change the reference. its contents can change, but not the actual hashmap instance. Apr 15 22:14:38 but you can get an interview with no credentials if you have an impressive github profile Apr 15 22:14:49 Voyage: xamarin is the only non-native solution that seems worthwhile Apr 15 22:14:55 yiati, ya. it doesnot works on any other phone Apr 15 22:15:20 JacobTabak: when did you start learning android? Apr 15 22:15:22 yiati, xamarin is free? and what about phonegap? isnt that worthwhile/goood? Apr 15 22:15:35 Voyage: No phonegap is not worthwhile/good Apr 15 22:15:41 yiati, hm Apr 15 22:16:12 its a silly question Pwnies. i thought about doing android, downloaded the sdk, and didn't do much with it right when android was released Apr 15 22:16:24 when did i start devoting every waking hour to it? maybe 3 years ago Apr 15 22:16:24 yiati, can you elaborate a bit Apr 15 22:16:26 Voyage: native android + native ios development time is also roughly equal to non-native solution, and outperforms non-native solution Apr 15 22:16:50 when did you feel solid with it? Apr 15 22:17:02 because I started about two months ago Apr 15 22:17:21 dunno, maybe after a year Apr 15 22:17:23 and am getting thrashed daily Apr 15 22:17:58 a year after devoting every waking hour to it? Apr 15 22:18:17 Voyage: Any of the JavaScript/HTML solutions like phonegap are not going to be worthwhile unless you have the most trivial of apps Apr 15 22:18:25 a year after working full time on it, yeah Apr 15 22:18:42 i'm always reading about how if you're exposed to android "it just clicks", was it the same way with you? Apr 15 22:18:56 i dont know, what are you having problems with? Apr 15 22:19:13 atm loaders Apr 15 22:19:23 thats your problem Apr 15 22:19:25 don't use loaders Apr 15 22:19:29 ^^ Apr 15 22:19:31 what. Apr 15 22:19:34 Loaders-- == sanity++ Apr 15 22:19:42 hah Apr 15 22:19:54 ive never implemented a loader or a content provider in a production app Apr 15 22:19:58 * g00s uses Loaders :D Apr 15 22:19:59 they're just kinda weird and not very reusable. Apr 15 22:20:00 yiati, s73v3r how do they call native things of a phone like database, push notifications, alarm manager, etc? Apr 15 22:20:02 wtf Apr 15 22:20:14 what do you use in place of a content provideR? Apr 15 22:20:16 they go through the WebView. Apr 15 22:20:22 direct methods? Apr 15 22:20:32 Hey can someone with a samsung phone or a removable sd card test out my app thanks. https://play.google.com/store/apps/details?id=com.dylanredfield.agendaapp2 Apr 15 22:20:51 s73v3r, oh so all the app made by such products run inside a webview? Apr 15 22:20:52 Pwnies: content providers are (primarily) meant for _other_ apps to request data from your app. in your app, they're just a hell of a lot of boilerplate and indirection that's unnecessary. Apr 15 22:20:55 DadFoundMy why did you change you package name ? Apr 15 22:20:58 DadFoundMy: in an hour or so, i'll have both. i have a call to jump on in 5 minutes, so i can't right now. Apr 15 22:21:04 Pwnies, asking or telling? Apr 15 22:21:15 lewellyn: thanks, mind if i msg you in an hour or two? Apr 15 22:21:19 pretty much. Apr 15 22:21:20 asking Apr 15 22:21:28 dont know my self Apr 15 22:21:36 feel free. no guarantees on availability, but i'm going to try to poke back here in about an hour. :) Apr 15 22:21:53 g00s: well i tried converting agendapp to gradle and the whole thing got fucked, and i didnt use any source control Apr 15 22:21:58 uh. in the android udacity course, they were like "lol always use content providers" Apr 15 22:21:59 so agendaapp2 was spawned :D Apr 15 22:22:03 and "loaders are awesome" Apr 15 22:22:26 yeah, I'm not too fond of the udacity course :( they introduce lots of unnecessary stuff as if they're normal. Apr 15 22:22:28 DadFoundMy :| Apr 15 22:22:31 you can use dat syncadapter doe Apr 15 22:22:35 some good parts, some bad, some misleading. Apr 15 22:22:42 i cant figure out why but on my mom's s3 the camera function wont work. On every single other device it works perfectly Apr 15 22:22:43 ack. Apr 15 22:23:10 welp groxx, what's a good resource to learn from then? Apr 15 22:23:10 I understand critic against ContentProvider. but Loaders? what wrong with them? you can use it w/p ContentProviders with pure db or network task Apr 15 22:23:31 Pwnies android is like JS frontend developmen, fads changing daily, lot of opinions ;) Apr 15 22:23:37 s73v3r, oh so all the app made by such products run inside a webview? yiati so how a specific native thing is called? can I do anything in xamarin or phonegap that can be done in a native app? if so, I would definitily want to go with that Apr 15 22:23:41 maybe in an ideal, 100%-reusable-code world, everyone would use content providers, and everything would hook up to content providers. but that world doesn't exist, and they're unnecessary work and wasted performance. Apr 15 22:24:01 I am a bit confused on when data is received back from an onActivityResult method the correct form of receiving data from is using onActivityResult() or onRestart() method? Apr 15 22:24:14 g00s: i havent been in the game long enough... :/ Apr 15 22:24:25 DadFoundMy: S5 with removable SD works fine Apr 15 22:24:41 DadFoundMy: your Fab menu could use some animation. Little abrupt Apr 15 22:24:43 Voyage: The browser exposes most of those things. Xamarin is different than the others, as it packages a runtime and runs the apps closer to native Apr 15 22:25:01 icedp: mostly that Loaders are hard to control or reuse. they work off activity lifecycles, not fragments. they're unusable outside of activities. they are restricted to numbers for IDs. etc. Apr 15 22:25:11 oh my god. implementing my content provider took like. a weeks worth of effort Apr 15 22:25:18 unusable outside of fragments? Apr 15 22:25:20 which is why nobody sane does so :) Apr 15 22:25:22 DadFoundMy: https://github.com/futuresimple/android-floating-action-button Apr 15 22:25:23 g1bbs: thanks, curious is your sd in or out? Apr 15 22:25:27 s73v3r, so xamarin is better? Apr 15 22:25:28 hah Apr 15 22:25:31 DadFoundMy in Apr 15 22:25:37 g1bbs: and agreed i am working on a animation Apr 15 22:25:37 however, I would echo the others and say that your best results will be from going fully native on both platforms. If you need a logic/data layer shared, use C++ to write one that both will use Apr 15 22:25:43 Pwnies thing about content provider, if you use it - 2 years from now, the code will still be as relevant and understandable to anyone doing android; if you use some flavor of the month library, 2 years from now you're probably going to rewrite it Apr 15 22:26:01 g1bbs: hmmm im totally stumped. Works on my m8 with sd card out, works on yours with sd in Apr 15 22:26:03 that goes for many things, not just providers Apr 15 22:26:25 DadFoundMy that library I linked has a neat animation. Looks like it would suit your needs fine Apr 15 22:26:31 does the s3 do something different with pictures i should know of Apr 15 22:26:34 i see g00s. Apr 15 22:26:38 i prefer to use what the platform gives me, but i know i'm in the minority ;) Apr 15 22:26:57 what libs do you use then? Apr 15 22:26:59 Hi all. Quick question about coding style. Is there such a thing as too much commenting? If code seems relatively simple to read should I skip commenting it, or comment it anyways for future reference? Apr 15 22:27:07 groxx: can u refer me some sites for newbie like me Apr 15 22:27:25 g1bbs: when i first saw that lib it didnt work an api 22 but it seems it does now, ill check it out Apr 15 22:27:33 Pwnies hm, support library, rxjava, play services mostly Apr 15 22:27:37 well, yeah, but 2 years from now you'll be able to rewrite your not-content-provider (already less than half the size of a content provider) into something half the size of what it was. Apr 15 22:27:43 s73v3r, my app would talk to APIs , https calls, store info in local database, use alarm manager and service forground, use gps, agps, wifi. on android, iphone, blackberry, windows phone Apr 15 22:27:45 no retrofit/picasso/okhttp? Apr 15 22:27:46 liuwenhao: Code should mostly self document. It's a matter of preference but generally I comment at a method level Apr 15 22:27:49 liuwenhao: of course there's a thing as too much commenting... minimal commenting and logically named methods/classes :) Apr 15 22:28:16 Pwnies i dont have any http Apr 15 22:28:27 what about apis then? Apr 15 22:28:28 all of that is possible with phonegap, xamarin, and fully native Apr 15 22:28:30 groxx: I use them in fragments. no problems. Apr 15 22:28:43 you’re going to have the best outcome, though, if you go fully native on each platform Apr 15 22:28:49 icedp: they work _in_ fragments. but if you get rid of the fragment, the loader stays around, because it's not tied to the lifecycle of the fragment. Apr 15 22:28:51 there’s a reason why most of the big apps do it Apr 15 22:28:57 Alright, thanks for the opinions g1bbs and bankai_. I wasn't sure if I was going overboard or not. I'm just afraid if I come back to my code a year from now I won't remember how any of it works Apr 15 22:28:59 groxx: they are not restricted to ID. you can pass args or any class as data Apr 15 22:29:16 but not for creating different instances. those are ID based. Apr 15 22:29:23 but when I look at it right now it seems easy to understand just from method/string names Apr 15 22:29:26 liuwenhao: maybe write a high level document explaining the architecture to yourself Apr 15 22:29:27 facebook, evernote, amazon, et al. are all native? Apr 15 22:29:30 groxx: well you can removeLoader in fragment Apr 15 22:29:52 not a bad idea g1bbs, I never thought of that Apr 15 22:29:53 groxx: other solution requires management too I suppose Apr 15 22:30:17 groxx: public Loader onCreateLoader(int id, Bundle args) Apr 15 22:30:25 groxx: id and args based Apr 15 22:30:41 icedp: does that unconditionally remove it, so e.g. it'll cause a new instance if a config change happens (or if you add a new fragment that would use it), or does it act like the activity lifecycle where it's a bit "lazy" about removing the? Apr 15 22:31:09 s73v3r, so xamarin or phonegap seems to be a shorter path for all plateforms. no? Are you sure that I would have to code once in one piece of package and it will handle all platforms? I wonder how would ios handle {alarm manager} of android while ios doesnot hav a {alarm manager} Apr 15 22:31:53 icedp: args are passed to the loader identified by the ID. if you initLoader(0, args1) and initLoader(0, args2), you don't get two separate instances. (as I remember. let me know if I have that wrong). Apr 15 22:32:23 Voyage: If you want to know how they do it, do your research on the solutions. Most of them have some kind of abstraction over the native things. While iOS doesn’t have something called AlarmManager, they most certainly have a notion of alarms. Apr 15 22:32:25 s73v3r, best outcome? you mean UI experience or is there a dangeur of errors / unexpected things to happen if we use xamarin/phonegap? Apr 15 22:32:35 I mean best user experience Apr 15 22:32:38 groxx: you can. and then onLoadFinished get this by loader.getId Apr 15 22:32:41 icedp: also, say you have two fragments which would use the same loader. now you can't removeLoader() in either, because you may toss it unnecessarily. Apr 15 22:32:49 (two at the same time, that is) Apr 15 22:33:17 s73v3r, k Apr 15 22:33:24 groxx: don't not about your lifecycle question above Apr 15 22:33:31 groxx: s//know Apr 15 22:34:01 "onLoadFinished get this by loader.getId"? Apr 15 22:34:42 s73v3r, so it seems like if I type lets say {alarm manager}. xamarin / phonegap wont auto implement related alarms for all platforms. i might have to be explicit like if(iphone){ notion of alarms} if(android){alarm manager} Apr 15 22:35:15 again, you’re gonna have to look up how they do them yourself, but I don’t think that’s how it works Apr 15 22:35:27 s73v3r, k Apr 15 22:35:35 s73v3r, whats your vote to use? Apr 15 22:35:36 they’ll likely have their own alarms class which abstracts away the platform specific ones Apr 15 22:35:39 fully native Apr 15 22:36:06 s73v3r, I dont care much about GUI user experience. I can beautify with html /css too Apr 15 22:36:16 s73v3r, is there any other factor? Apr 15 22:36:24 groxx: as I see it initLoader(id, args) just will call your fragments's onCreateLoader. there you can manage it. But I'm not sure. Didn't needed it. Apr 15 22:36:35 Could someone help me figure why the list itens I am adding are not being updated please? Code is here : https://gist.github.com/anonymous/fedd37ca0ad7033a8694 Apr 15 22:36:38 s73v3r, is there any other factor for user experience? Apr 15 22:36:50 my vote is still fully native. You’re not dependent on anyone else, you don’t have to pay for anything else, and you’ll have an easier time finding people to help you Apr 15 22:37:21 I already checked the List itself and itens are being added to it. Apr 15 22:37:33 icedp: as I read it, that'll only happen the first time. I don't even know what happens the second time :| Apr 15 22:37:38 s73v3r, hm. ya, but paying and maintaining for all platforms is tough Apr 15 22:37:41 and costly Apr 15 22:37:53 groxx: I guess you can specify type of loader in args, but id should be unique Apr 15 22:37:59 nobody said apps were easy Apr 15 22:38:14 hm Apr 15 22:38:51 s73v3r, ok. I will look into it. thanks! xamarin is non-free almost. phonegap is free I guess. Apr 15 22:40:40 icedp: ok, so say you want to have a loader for (data related to) user X and a loader for user Y. how do you go about it? use different IDs? what if you want more fine-grained differences? you can pass args, but you can't _change_ them, so you _must_ use a different ID. so you use the User ID, easy. now what if you want to show two things related to X, Apr 15 22:40:40 but with different args? now you have to _avoid_ IDs that would match user IDs, and somehow differentiate them. Apr 15 22:40:49 s73v3r, thanks for the help! Apr 15 22:42:04 groxx: restartLoader(id, args, ...) Apr 15 22:42:21 icedp: thus killing the previous one, meaning you can't show both at the same time. Apr 15 22:43:15 Loaders are horrible. Apr 15 22:43:34 don't understand the question then. two loaders with two ids. can change args groxx Apr 15 22:43:56 Mavrik everything in android is horrible Apr 15 22:44:05 but you can't change args on the same ID. and there's no generic safe way to make unique IDs based on the args, if you want to run two in parallel. Apr 15 22:44:18 gotta just learn to love it all ;) Apr 15 22:44:31 sorry, not "can't change args on the same id", can't have two simultaneous arg-bundles. Apr 15 22:44:44 It's like fighting which is the best miley cirus song Apr 15 22:44:52 Is iOS programming completely different from Android? Apr 15 22:44:54 why I can't change? I can restart loader of some id with new args Apr 15 22:44:56 it's not the way you apply Loaders that's the problem Apr 15 22:45:02 hell, if they'd just have used an Object that's Comparable, you could easily avoid the whole ID issue. Apr 15 22:45:09 g00s, it's not Apr 15 22:45:16 g00s, and remind me to slap you for that next time :P Apr 15 22:45:21 heh Apr 15 22:45:34 Q about Google Wallet, what time do you guys usually get paid? Apr 15 22:45:41 really, we always talk about terrible apis - but nobody ever says anything about nice android apis Apr 15 22:45:42 ircfox, not really, the language is different a bit Apr 15 22:46:07 the lifecycle of iOS apps is quite different, if that counts Apr 15 22:46:14 Mavrik: cool Apr 15 22:46:26 g00s, Intents and everything built on them have always been praised and now even copied :) Apr 15 22:46:52 notification system is also very nice to the point Apple took it :) Apr 15 22:46:55 yeah, the intent system is pretty nice. Handler/Message is pretty nice. Apr 15 22:47:33 groxx: Integer is Comparable Apr 15 22:47:36 contentproviders are awesome in theory but somehow they're ass to implement Apr 15 22:47:40 and noone exposes them Apr 15 22:47:43 icedp: but the ID isn't a Comparable, it's an integer. Apr 15 22:47:53 or long. I forget. Apr 15 22:47:54 intent late-binding redirection is not new though; you can read about that in enterprise integration patterns. its just that instead of being part of the OS, that responsability is delagated to some middleware Apr 15 22:47:58 10 years ago every app would export data to ContentProvider Apr 15 22:48:12 then I guess we decided hiding data is the coolest thing to make devices more useful -_- Apr 15 22:48:38 Mavrik: well, also we got Agile™, and that meant never having a stable API (or even product focus) Apr 15 22:48:51 groxx: all men are mortal. Socrates is a man Apr 15 22:49:00 groxx: loader is Comparable Apr 15 22:49:05 groxx what you talking about, you can still use AbolsuteLayout :P Apr 15 22:49:06 s//loader id Apr 15 22:49:30 g00s: :P I mean publicly-accessible, like ContentProvider Apr 15 22:49:58 I think it is not a good time now for gueting a support, then I will be back latter. Apr 15 22:50:12 Thank you guys! Apr 15 22:51:44 icedp: I think we're talking past each other. I mean to say: you cannot make a generic, always-safe integer-based ID system to run multiple loaders in parallel that differ based on args. _because_ they use integer as the ID. It's a finite space. if it were a Comparable id instead, you could, trivially. Apr 15 22:53:16 the closest you could get is to make an incrementing-integer thing that always ensures a safe new ID, and hope you don't exceed integer space (pretty reasonable). but then you just broke the whole point of having IDs. might as well manage loaders by hand instead. and then why use loaders? Apr 15 22:54:18 s73v3r, titanium seems to be a great option as it produces native apps and uses javascript (easy) and still is opensource http://www.cygnet-infotech.com/media/577863/PhoneGap-or-Titanium-or-Xamarin_499x615.jpg Apr 15 22:54:54 they’re native in that you download them from the app store. they’re not really native in the same way that regular apps are Apr 15 22:58:48 you guys got me thinking, what's the definition of a "native app"? Not the programming language because Kotlin and Swift can produce a native apps. Apr 15 22:59:09 can I inherit a view’s declare-stylable declaration in my custom subclass, add a field to my new declaration, and then pass it to the parent class? Apr 15 22:59:11 Maybe using the UI components? Apr 15 23:00:05 groxx: well you are right, but I still don't get why would you need a hell lot of loaders. Apr 15 23:01:08 groxx: I used them for only simple cases though. just tie a db to listview and have another one to perform web search and so on. Apr 15 23:01:26 anyway you loader haters, what do you use then? Apr 15 23:01:32 any particular pattern I can read on? Apr 15 23:02:41 if I need something to lazy-init and be reusable, I make a small static storage, and manage it by hand. like everything else. Apr 15 23:03:24 or something less-than-static, like you can provide through Dagger or a variety of other tyings Apr 15 23:03:25 things* Apr 15 23:03:29 s73v3r, hm Apr 15 23:04:00 So, to send a response back to my retrofit caller, from say PHP, do I just need to echo whatever it is I want to return? For example, if my method is String createUser and I want to return the String representing their ID, can I just do (in the PHP script) echo $id; ? Apr 15 23:04:40 groxx: if it's also updated periodically? Apr 15 23:05:00 icedp: the contents you want to display? Apr 15 23:05:21 or something else? Apr 15 23:05:25 groxx: yes, the data which you pull from somewhere Apr 15 23:05:48 have it register on whatever change-notification-producer exists for whatever may change. an event bus, a DataSetObserver, etc. Apr 15 23:06:17 usually I just let it push updates to the UI whenever they occur. Apr 15 23:07:00 ^ all of which needs to be done for Loaders too Apr 15 23:08:08 the difference is that having something outside the Activity lifecycle means I can use it _anywhere_, and know if it'll stay around when I need it, and keep some instances around longer than others, and do whatever. Apr 15 23:12:56 Does anyone know if it is possible to get the banner icon (1024x500) for another app? I checked 42matters API and the unofficial market API and they both don't support it. Webscraping wouldn't help since the banner is only shown in the app. Apr 15 23:13:40 apps were easy. Apr 15 23:13:49 groxx: hmm it seems LoaderManager is tied to fragment or activity, but a loader - not necessary. I wonder if you can get loader singleton and supply it to fragment/activity where you need it Apr 15 23:13:50 damnit! I was scrolled up Apr 15 23:13:53 ignore my quip :p Apr 15 23:14:28 hmmm... does the Amazon App Store make you provide a banner image like Google Play does? Apr 15 23:17:15 icedp: afaik you could `new MyLoader()` and call the methods on it yourself. but your instance won't be reused by anything using LoaderManager, of course. Apr 15 23:17:41 I assume there's nothing important in there that's package scoped, anyway Apr 15 23:18:12 sup lasserix Apr 15 23:19:28 also! I forget, are you exposed to raw cursors in the CursorLoader? doesn't that mean DB access on the main thread if e.g. you exceed the window size? Apr 15 23:31:16 groxx: main thread? no no no. in background Apr 15 23:33:19 icedp: the initial query is, because it explicitly calls count() in the background. but if you just pass that to a CursorAdapter of some kind, unless it makes sure to never exceed the window when getting the item at location X, it may exceed the window size and force the cursor to load the next page of results Apr 15 23:33:53 I don't think it's that smart Apr 15 23:36:18 em.. by exceeding the windows size you mean what? groxx Apr 15 23:36:19 yeah, definitely not that smart. this line can cause disk access: http://androidxref.com/5.1.0_r1/xref/frameworks/support/v4/java/android/support/v4/widget/CursorAdapter.java#247 Apr 15 23:37:00 icedp: cursors can only hold something like 4mb of data before they stop loading, which will be the Nth row of results. when you try to go to the N+1th position, it goes back to the database and loads more, synchronously. Apr 15 23:38:53 but how do you load something from sqlite without the cursor? Apr 15 23:40:52 icedp: personally? I exhaust the cursor on a background thread, and return typed objects. guaranteed to get the whole result set that way. if it's too much, then I paginate by hand, and start separate limit/offset (if appropriate) queries when I get near the end. Apr 15 23:42:13 you can even find cases where the DB was changed while a cursor was being read, and when it moved past the window, it threw an exception because the row count changed. Apr 15 23:42:35 manual pagination is the only safe way, and _how_ depends on your data. Apr 15 23:46:14 So I got the banner image by scraping web time machine. Bad idea? http://pastebin.com/YqRaCA6r Apr 15 23:47:44 groxx: haven't heard of this problem. interesting. seems like the cursor/sqlite problem thought not a loader's Apr 15 23:49:11 it's a "use a cursor directly when populating views" / adapters problem. but yeah, not unique to Loader. Apr 15 23:49:52 personally I wish they'd do away with the windows. if the result set is too big, I'd rather OOM than crash at some unknown time later. Apr 15 23:53:20 Just a thought Apr 15 23:53:35 Do libs like retrofit take care of there being no internet connection available? Apr 15 23:53:39 Or do we handle that? Apr 15 23:53:41 no Apr 15 23:53:44 on you Apr 15 23:53:47 Cheers Apr 15 23:53:52 no on your whole family! Apr 15 23:54:05 on your children! and your children's children! Apr 15 23:54:13 on your cow! Apr 15 23:54:23 on your honor! Apr 16 00:05:05 Hey guys, having trouble installing SuperSU on my oneplus with CM12. eom unlocked (only way to install it since no OTA from CyanogenMod). Trying to install using the cyanogen recovery. Fails with: 'failed to verify whole-file signature'. This is with SuperSU from http://download.chainfire.eu/696/SuperSU/UPDATE-SuperSU-v2.46.zip Any idea why that step would fail? Apr 16 00:06:41 Redownloaded.. md5 is the same. Apr 16 00:06:50 wrong chan Apr 16 00:06:52 grazfather, please read the topic.Root/custom ROM, head to #android-root Apr 16 00:07:00 yup sorry Apr 16 00:07:05 Okay, np Apr 16 00:12:10 Sup TacticalJoke Apr 16 00:15:03 "Microsoft Starts Working On an LLVM-Based Compiler For .NET" Apr 16 00:19:06 :/ because they can't add support for it _to_ llvm? Apr 16 00:21:19 maybe they are, kinda vague http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-April/084459.html Apr 16 00:22:47 sounds like just the beginning anyhow Apr 16 00:28:07 groxx how is your camera stuff going :D Apr 16 00:29:44 g00s: dramatic re-creation: http://is.gd/1iHBqa Apr 16 00:29:48 re-enactment* Apr 16 00:30:33 groxx lol Apr 16 00:31:12 didja know that setDisplayOrientation does nothing on some devices? <3 the camera. **** BEGIN LOGGING AT Thu Apr 16 00:33:47 2015 Apr 16 00:37:48 where can i find some solid open source apps with good documentation? Apr 16 00:38:24 possibly the google IO apps? I haven't looked at them, actually, but they're open source for that reason. Apr 16 00:40:10 can you link them? Apr 16 00:40:30 https://github.com/google/iosched Apr 16 00:49:13 my app is open source, but I would hardly hold it up as a shining example of an android app :p Apr 16 00:49:42 what does it do? Apr 16 00:49:57 prints "hello world"? Apr 16 00:50:03 penrose tiling live wallpaper Apr 16 00:50:04 with Dagger! Apr 16 00:50:32 ah, right. is that released? /me forgets Apr 16 00:50:53 yeah, it's been on the play store for a few years Apr 16 00:52:40 matias? Apr 16 00:53:08 Pwnies: no, the other one Apr 16 00:53:53 oooo, mr 4.2 stars Apr 16 00:54:00 wow [ is a cool nick Apr 16 00:54:09 <[> yes :D Apr 16 00:54:09 somebody neeeds to grab ] Apr 16 00:54:09 hah Apr 16 00:54:25 someone apparently got [ already Apr 16 00:54:45 also [ is uppercase { iirc. Apr 16 00:54:51 (yay national ascii!) Apr 16 00:55:06 {[()]} Apr 16 00:57:18 doh! ☻ :Erroneous Nickname Apr 16 00:57:45 :'( Apr 16 00:58:04 probably means ಠ_ಠ is erroneous too Apr 16 00:58:10 yup Apr 16 00:58:29 does anyone have a copy of IInAppBillingService.java? lol Apr 16 00:59:12 my project won't build, and i think its because of bad imports from that one lol Apr 16 01:00:32 btw groxx, I do like your idea from earlier. I was a little distracted, but I think it would work well as a subscription service, possibly with a companion app Apr 16 01:01:26 yeah, unfortunately I think it would require a native app if it were to be mobile :| less modern JS stack, less memory available Apr 16 01:02:13 drinfernoo: oh, right - I tried your 'compile ""' lines, no problems. if it's caused by conflicting versions, it's probably coming from the other projects. Apr 16 01:03:12 groxx, makes sense. I'll try and figure out this dependency thing Apr 16 01:03:46 so I would need to look at the other projects build.gradle's, then? Apr 16 01:04:32 drinfernoo: probably / possibly. if you pastebin me their dependencies I can try adding them too Apr 16 01:04:38 If I have a column in MySQL with the attribute set as "on update CURRENT_TIMESTAMP", this value is set whenever the table is changed, right? Not that field specifically? Apr 16 01:04:48 k hang on Apr 16 01:04:51 Having a "I really should go to sleep" moment here. Apr 16 01:05:19 * g00s sends Anthaas some spicey bacon Apr 16 01:05:26 Wait, thats a thing? Apr 16 01:06:05 yeah with brain enhancing nootropics Apr 16 01:06:14 does anyone know how to get the string id of a button? the getId() method returns an int, i'm trying to get the stringId name set in the activity Apr 16 01:06:22 I know what I would have for breakfast Apr 16 01:06:32 g00s: Sounds Laboratoire Garnier-ish. Apr 16 01:06:58 this is happening when the button is clicked, so from the View v object Apr 16 01:07:35 joetoday_: why? Apr 16 01:07:37 Hey guys Apr 16 01:07:46 What method is called when the back button is clicked on the device Apr 16 01:07:51 Like the physical back button Apr 16 01:07:54 joetoday_: if you really need it just R.id.name == v.getId() Apr 16 01:08:03 Anthaas: hm. is that part of the column definition, with a foreign key reference? Apr 16 01:08:49 drose379: onBackPressed() Apr 16 01:08:51 Anthaas: or are you trying to recreate that feature in sqlite? Apr 16 01:08:56 icedp: i want to pass the id as an argument to another method.. maybe there is a better technique Apr 16 01:08:56 groxx: Part of the column definition yes, foreign key reference no. No need. I am 99% sure I am right, whenever a row updates in any way, the value for that column on that row updates to current timestamp. Apr 16 01:09:05 Nah, MySQL. Apr 16 01:09:08 joetoday_: why? Apr 16 01:09:10 thanks shomooz Apr 16 01:09:18 d'oh. missed that part initially. Apr 16 01:09:48 icedp: becuase the other method does something depending on what button gets pushed Apr 16 01:09:50 useful for things like "last_updated" because it allows you to select only data you need to update on the device. Apr 16 01:10:45 Where is the source code for all these methods? Apr 16 01:10:49 Anthaas: "An auto-updated column is automatically updated to the current timestamp when the value of any other column in the row is changed from its current value." Apr 16 01:10:57 Anthaas: from http://dev.mysql.com/doc/refman/5.6/en/timestamp-initialization.html Apr 16 01:11:15 Yeah, that confirms my 99% certainty :D Apr 16 01:11:18 Thanks Apr 16 01:11:25 groxx: Anthaas in sqlite probably trigger would do Apr 16 01:11:34 I really need to go to sleep, but if I stop where I am now I know Ill probably bbe confused come tomorrow evening. Apr 16 01:11:40 joetoday_: you can set different onClickListener for each button Apr 16 01:11:55 joetoday_: if your way is easier.. then just compare as I wrote above Apr 16 01:12:50 Anthaas: leave a note to your self Apr 16 01:13:30 joetoday_: you should _probably_ reconsider what you're doing, because it's unlikely you need this, but to answer your question: http://developer.android.com/reference/android/content/res/Resources.html#getResourceEntryName%28int%29 Apr 16 01:14:11 joetoday_: ah, checking based on the button pressed. you can compare `btn.getId() == R.id.some_button` to check that. Apr 16 01:14:24 groxx, so it looks like I have a few dependencies using 21.0.3, a few using 22.0.0, and a couple using nineoldandroids lol Apr 16 01:14:53 drinfernoo: progress! Apr 16 01:15:09 so I just have to wait for those others to update? Apr 16 01:15:12 lol Apr 16 01:15:16 groxx: thanks, i'll try that, or go back to separate listeners Apr 16 01:16:07 drinfernoo: you can selectively override: http://gradle.org/docs/current/userguide/dependency_management.html#N1542D Apr 16 01:17:32 icedp: Nearly done - I do have a nice little book given to me for this sort of situation. Apr 16 01:18:30 Creating a PHP Script to link to my REST API to test that the Retrofit that I added to my app earlier works as expected (it wont, I will have cocked up somewhere, but at least its a definitive point to stop at. When I get back, fix errors rather than finish task) Apr 16 01:18:30 drinfernoo: I've used the 51.44 technique, otherwise http://gradle.org/docs/current/dsl/org.gradle.api.artifacts.ResolutionStrategy.html might help. Apr 16 01:21:02 groxx, 51.44 is for file dependencies? likes jars? Apr 16 01:21:10 51.4.4* Apr 16 01:21:20 drinfernoo: that's primarily for maven. not sure off-hand how to replace jars... Apr 16 01:21:28 I think, anyway. Apr 16 01:21:36 maybe I'm in the wrong section Apr 16 01:28:09 can you modify the other project's dependencies to remove some of them? I get the feeling that project X can't modify the stuff from project Y, possibly because it's already in a single jar by that point (if not actually, then conceptually). there are jar-modifying tools out there, but I don't think gradle is trying to be one. Apr 16 01:52:27 groxx that must have been from some situtaion whart was expected to take place in some ceremony wearing drag or something un-klingon-like Apr 16 01:54:11 *Wharf Apr 16 02:07:26 g00s: *Worf :) Apr 16 02:09:52 g00s: dunno why but i thought you might be interested in this: http://www.brisbanetimes.com.au/digital-life/consumer-security/why-keeping-your-keys-in-the-freezer-can-stop-thieves-breaking-into-your-car-20150415-1mm25p.html Apr 16 02:10:29 bankai_ cool thanks ! nobody wants my old dodge haha Apr 16 02:11:01 " remote keyless systems common to new cars are a security vulnerability" yeah .. .many years after my vehicle Apr 16 02:11:11 haha yeah ditto Apr 16 02:11:45 the tldr for anyone who cares: Danev said that when the teenage girl turned on her device, it amplified the distance that the car can search, which then allowed my car to talk to my key, which happened to be sitting about 50 feet away, on the kitchen counter. And just like that, open sesame Apr 16 02:13:12 so any little faraday cage thingy should be fine Apr 16 02:13:33 so y'all are telling me I could be driving a Prius right now Apr 16 02:13:42 there's nothing in my car and there's so few people out there who can drive a manual these days, i'm safe ;) Apr 16 02:15:14 Chainfire wait, i thought you would be one of the android success stories, driving around in a $US100,000 BMW X5 Apr 16 02:15:42 do I look like a douchenozzle Apr 16 02:15:56 BMW X5 :X Apr 16 02:16:01 lol Apr 16 02:16:04 sorry :) Apr 16 02:16:05 bankai_: heh. nice, that's a good simple way to tackle those proximity keys :) Apr 16 02:16:17 I can mostly be found on my bicycle, actually Apr 16 02:16:26 a deathmobile? Apr 16 02:16:34 i'm sure it will only get better once android is in the car Apr 16 02:16:54 well yeah. then every app under the sun is going to request "unlock car" permissions. Apr 16 02:16:58 right, because I'm sure android will be handling the door locks :p Apr 16 02:17:19 if they outlawed cars and everybody was forced to ride unicicle like JesusFreke , i'd be ok with that Apr 16 02:17:28 bear suit required ? Apr 16 02:17:39 "unlock car" permission will also be required to detect "is in car mode", of course. Apr 16 02:17:56 g00s: https://www.kickstarter.com/projects/189084529/litelok-lightweight-flexible-and-super-secure-bike/posts/1199116 - skim the post, then read the comments :p Apr 16 02:17:58 Chainfire probably Didgeridoo required Apr 16 02:18:43 I thought it was pretty funny Apr 16 02:18:54 heh Apr 16 02:19:31 come on you know , systems of systems even if android doesn't handle door unlocking directly, something connected to something connected that does :) Apr 16 02:20:19 boaflexicord. I wish I had thought of that name. Apr 16 02:20:20 JesusFreke ah, i see you have 2 comments ! Apr 16 02:21:33 you make the android system in the car play a high pitch sound which makes the dog go crazy and start barking, which makes their barkless dog collar go off, which creates an EM resonance with the key fob and unlocks the car Apr 16 02:21:43 hiya folks. I've got a yoga 3 and I'm trying to figure out how to get hidpi support. Apr 16 02:22:04 I've seen something about adding 'is.hidpi=true' to idea.properties, but it isn't working. Apr 16 02:23:42 JesusFreke: interesting lock. I wonder how well it works against the "stick a crowbar in it and twist" attack though Apr 16 02:23:54 JesusFreke: are you getting one, or just trolling? :) Apr 16 02:24:02 groxx: yeah, I backed for one Apr 16 02:24:03 or the "lets club him on the head, and steal his keys" attack Apr 16 02:24:16 after having had 2 unicycles stolen at the movie theater Apr 16 02:24:16 JesusFreke: let me know how it works out :) Apr 16 02:24:27 i've just been using a pretty crappy cable lock Apr 16 02:24:39 well yeah, the lead pipe to head technique defeats most physical security systems Apr 16 02:24:40 but I recently ugraded my unicycle, and am more than a bit nervous Apr 16 02:24:48 JesusFreke: like, to gas-powered? Apr 16 02:24:57 groxx: geared hub Apr 16 02:25:01 $$$ Apr 16 02:25:07 fancy Apr 16 02:25:19 planetary gears, that can go between 1:1 and 1:1.5 (e.g. 50% faster) Apr 16 02:25:43 upgraded unicycle? new .. wheel ? Apr 16 02:25:55 oh nice Apr 16 02:25:55 g00s: ^ hub Apr 16 02:26:10 how much $$$? one of the gearless nuvincis is ~$360, which doesn't sound too crazy Apr 16 02:26:56 groxx: I wish :) Apr 16 02:27:02 not cheap, obviously, but bikes cost about that much at a minimum unless you hunt craigslist Apr 16 02:27:34 we're talking a hand-made, low production volume precision part. Apr 16 02:27:39 JesusFreke are you allowed to take a unicycle indoors most places ? Apr 16 02:27:44 $360 would be amazingly cheap Apr 16 02:27:52 JesusFreke oh that swiss thing i bet Apr 16 02:28:10 g00s: take, or ride? Take usually isn't a problem. I don't usually ride though :) Apr 16 02:28:19 yeah take Apr 16 02:28:42 http://krisholm.com/en/gear/component/kh-schlumpf Apr 16 02:29:48 aah, one of those. oddly enough I was just looking at that a couple days ago, though I don't unicycle :| Apr 16 02:30:00 haha Apr 16 02:30:18 JesusFreke: seems like one of these would work too though? http://www.amazon.com/NuVinci-N360-rear-hole-silver/dp/B003RLDDQM that's 1:2 through 1.8:1, looks a similar size. Apr 16 02:31:01 groxx: unicycle hubs don't freewheel :) Apr 16 02:31:15 aah, true. dunno if you can disable that. Apr 16 02:31:33 and are symmetrical (no gears on the side) Apr 16 02:31:34 seems like allowing freewheeling is strictly more complex than not, though Apr 16 02:32:59 and the cranks are mounted directly on the hub Apr 16 02:34:14 so they have to be pretty beefy, especially to be able to stand up to big drops (lots of torque on the hub, from sudden impact on both cranks at once) Apr 16 02:34:36 so it's definitely a different space than bike hubs Apr 16 02:35:42 "drop" in this case meaning when you land after riding off of a ledge or something Apr 16 02:35:48 finally found a price. yeah, that's definitely $$$, wow Apr 16 02:36:04 yeah.. not something I want stolen. heh Apr 16 02:36:23 maybe get one of those GPS modules you can stick in the frame of bikes? might fit in the main tube. Apr 16 02:36:47 Yeah, I've been looking at getting one. Apr 16 02:37:37 hm .. if i was locking up a bike, i'd just use something cheap Apr 16 02:37:46 maybe save the nice one for other occasions Apr 16 02:38:06 i have a motorbike lock on my bike haha it was the only one i could find Apr 16 02:38:22 depends on the bike... my bike is almost as expensive as my car, so... Apr 16 02:38:22 then again my mtb got stolen off my porch the day before a race, while i went inside to eat a piece of pizza after working on it Apr 16 02:39:02 putting a $10 lock on it isn't going to help and then the insurance won't cover either Apr 16 02:39:18 yeah, someone ganked my $500 bike, so I got a $100 one. the $100 one has lasted longer :) Apr 16 02:40:08 there's no theft deterrent like minimum-possible value :) Apr 16 02:40:49 Chainfire either your bike is very expensive ... or your car is like mine :D Apr 16 02:41:08 gold old hyundai accent, huh? ;) Apr 16 02:41:39 a dodge, that lasted this long only because it was spared the ravages of time in AZ away from salt Apr 16 02:42:02 yeah, that'll make them last longer Apr 16 02:42:20 it's sorta amazing how rusty cars can get in the midwest Apr 16 02:48:39 Chainfire maybe this year at i/o somebody will have thought of grandfathering paid users to IAP Apr 16 02:49:14 insert snarky comment about Google Apr 16 02:50:08 I will construct a hat out of edibles and proceed to eat it, if such is the case, though Apr 16 02:50:26 I'm not going anyway. Didn't get a ticket. Apr 16 02:56:28 I _really_ hope someone has already made a bacon hat. if not, you could fabricate such a hat and eat it regardless of I/O's revelations Apr 16 02:57:21 * g00s gives groxx edible hat made from Kale Apr 16 02:57:35 which i always code to support the highest version of android Apr 16 02:57:37 groxx that might the best idea I've heard all day Apr 16 02:57:38 should* Apr 16 02:57:41 should i....* Apr 16 02:57:52 noooo! leafy greens! my weakness! aaaghblablabh Apr 16 02:58:08 I thought bullets were your only weakness Apr 16 02:58:30 does anyone here actually make reasonable income from doing android development Apr 16 02:58:51 aspire you generally work to support the lowest version of Android that still supports your time investment, not the highest Apr 16 02:59:02 Chainfire: untested. I'm much more likely to encounter leafy greens in my lifetime. Apr 16 02:59:31 mhmm **** ENDING LOGGING AT Thu Apr 16 02:59:59 2015