**** BEGIN LOGGING AT Sun Feb 12 03:00:02 2017 Feb 12 03:01:10 this isnt #keyword-discussion its #android-dev Feb 12 03:01:15 please stay on topic Feb 12 03:03:08 sasser: was that a joke? Feb 12 03:04:50 all of twitter's mobile traffic is going to node.js now Feb 12 03:06:03 oh, sasser is black91. That explains it all. Nevermind Feb 12 03:23:28 who is black91 Feb 12 04:33:50 who is vault 7? Feb 12 04:45:38 who is the shadow? Feb 12 04:46:42 melatonina, do what sasser orders, he's a nop Feb 12 04:55:03 heh, meant an op, but a nop is funny right there Feb 12 05:11:21 capella univerity, where you learn about capella? :/ Feb 12 05:18:03 acapella Feb 12 05:18:18 that's only if you get an A Feb 12 05:32:46 if I get an A you bet I'll sing by myself Feb 12 05:35:47 and fyi sasser, Capella is my last name irl, thought I'd stand behind it in tech channels vs using a fakey nick Feb 12 05:41:28 What's in your .gitignore for android studio projects? Feb 12 05:42:44 I was looking at this and wondering, is it sufficient? https://github.com/github/gitignore/blob/master/Android.gitignore Feb 12 08:24:15 what are my options when working with really *large* views? Feb 12 08:25:01 looks like there is support for prividing clipping rectangles to invalidate and then using them in onDraw Feb 12 08:25:12 but then again ScrollView doesn't seem to care and just renders the entire thing Feb 12 08:41:37 how can I achieve a similar look to http://gph.to/2l6Wzd0 --> specifically the way button press animations are handled? It seems the animation for my buttons ends abruptly at the edges... Feb 12 09:14:37 Hey guys Feb 12 09:15:28 I'm working on a note taking app, should I use SQLite for notes or are there better options? Feb 12 09:18:13 :\ Feb 12 09:20:35 this is a slow channel - just wait for someone who knows about it... or search the interweb if you prefer Feb 12 09:28:37 do you need to be proficient in java in order to develop android app? Feb 12 09:29:05 in practice, to make non-trivial apps, yes Feb 12 09:29:36 what about trivial apps development? Feb 12 09:29:56 then you can probably bluff your way through as long as you understand OOP in general Feb 12 09:30:03 I see Feb 12 09:30:10 but still OOP is in java Feb 12 09:30:45 I made an infix calculator with no prior java experience Feb 12 09:31:09 I am required to make an app for delivery guys Feb 12 09:31:30 someone is paying you to make it? Feb 12 09:31:51 not yet, after they see my prototype, they might. Feb 12 09:31:59 or progress Feb 12 09:32:12 by the way, if anyone is interested, I found the answer to my question: XML: android:background="?selectableItemBackgroundBorderless" Feb 12 09:32:22 I wouldn't expect to get paid for something 'trivial' written in a language I didn't know... Feb 12 09:32:58 depends what you mean by trivial Feb 12 09:33:34 "can be written by someone who doesn't know Java or OOP" would be a good start :) Feb 12 09:33:58 Leeds, delivery app wouldn't make it to trivial I suppose Feb 12 09:34:00 would it? Feb 12 09:34:33 * raoul11 Leeds Leeds Feb 12 09:34:36 I wouldn't say it was trivial, no Feb 12 09:34:49 so I should be expected to get paid right? Feb 12 09:35:08 not necessarily if you're doing it on spec Feb 12 09:35:35 don't write an app for a company unless the company has agreed a scope and payment... Feb 12 09:36:02 so what can I do to get them pay me. they hired me as a "trainee" to avoid paying Feb 12 09:37:10 a well-designed app which fulfils its intended purpose is almost sufficient to charge a price Feb 12 09:37:23 are they training you, or using you? Feb 12 09:38:12 if you're an unpaid trainee - which would be illegal in many places, depending on details - they should be teaching you, not relying on you to do work they can't do Feb 12 09:38:39 a delivery app doesn't seem too difficult for a beginner Feb 12 09:38:51 Leeds, they are not training me. I am learning all by myself Feb 12 09:39:04 then you're not a trainee, and they haven't hired you Feb 12 09:39:15 the hardest part would be dealing with non-Android API Feb 12 09:39:50 Leeds, so what should I do. Feb 12 09:39:58 codfection: get a real job? Feb 12 09:40:06 no experience :| Feb 12 09:40:15 or get a scope and commitment to pay? Feb 12 09:40:43 just a degree in IT and some internship experience. I accepted this offer as it could provide me some experience in resume Feb 12 09:41:07 again, unpaid trainee 'work' is illegal in many places Feb 12 09:41:32 true, and they are not even training me Feb 12 09:41:40 so its not even "trainee" Feb 12 09:42:02 I am planning to go for freelancing but again they require experience Feb 12 09:42:18 freelancing requires experience? Feb 12 09:42:37 I think it's dumb, but the standard question nowadays is "what's on your github?" Feb 12 09:42:42 yea. I cant get clients without experience, thats what I have tried Feb 12 09:43:04 where are you? Feb 12 09:43:17 UAE Feb 12 09:43:57 more supply than demand. very tough to get a job in here Feb 12 09:44:01 as a programmer Feb 12 09:44:11 especially without experience Feb 12 09:44:45 doesn't everyone just live on oil money there? :P Feb 12 09:44:56 yea exactly lmao Feb 12 09:45:28 but I ain't one of them. (Unfortunately :P) Feb 12 09:46:19 unfortunately, I wouldn't imagine it's a great place for labour laws... Feb 12 09:46:46 so should I leave this "trainee" job or go ahead and learn java and develop app for them for free. Feb 12 09:46:51 Leeds, very true Feb 12 09:47:27 it doesn't sound like a difficult thing to develop Feb 12 09:47:35 I'd be tempted to say learn Java, develop the app, then start negotiating with them how much they'll pay for it... assuming you're good for rent and food in the meantime Feb 12 09:47:53 I wouldn't be concerned about being "used" Feb 12 09:47:59 * raoul11 thepooshes thepoosh Feb 12 09:48:32 Leeds, how long will it take for that? Feb 12 09:48:44 since they can probably find a developer to do it (for almost nothing) anyway Feb 12 09:48:49 if they won't pay, you walk away, at worst you've lost a reference Feb 12 09:49:04 hi raoul11 Feb 12 09:49:12 Leeds: are you at the holyland already? Feb 12 09:49:19 thepoosh: May! Feb 12 09:49:26 NOOOOO Feb 12 09:49:31 I'm waiting already now Feb 12 09:49:35 no reference means no experience. Leeds Feb 12 09:49:51 booked it this week, will be there just before Shavuot Feb 12 09:50:01 hi thepoosh Feb 12 09:50:09 whats the score Feb 12 09:50:13 codfection: nope, you still get the experience, you can still show potential employers what you did, you just can't give a reference Feb 12 09:50:17 Veruso, yea, how easy it has become to find free programmers these days Feb 12 09:50:23 raoul11: still 2 vs 2 Feb 12 09:50:34 \: Feb 12 09:50:35 but in the end of this week I'm moving to the losing party Feb 12 09:50:52 we are always on the losing party Feb 12 09:51:03 codfection, It's not that hiring programmers is cheap, but I imagine an experienced dev could whip that sort of thing up in a few hours without many issues Feb 12 09:51:39 * Leeds has very limited experience in UAE - passing through Dubai airport a couple of times, once held by the police, threatened with Islamic law and forced to sign some document in Arabic... wasn't a great experience Feb 12 09:51:51 haha Feb 12 09:51:55 sorry for you man. Feb 12 09:52:08 Leeds, where are you from? Feb 12 09:52:19 Leeds, its common practice in middle east Feb 12 09:52:24 thepoosh i have been fixing leaks all weekend Feb 12 09:52:36 codfection: not in my usual part of the Middle East :D Feb 12 09:52:41 am serisouly h8ing google maps atm Feb 12 09:54:17 codfection: I'm going to sleep on thepoosh's sofa, don't expect much trouble at the airport there... Feb 12 09:55:17 Veruso, then how do beginners get opportunity to penetrate into android development market? Feb 12 09:55:47 codfection, is this not an opportunity for you? Feb 12 09:55:48 if an experience dev could whip that sort of thing up in a few hours. Feb 12 09:56:41 thats more like a personal project :P Feb 12 09:58:32 codfection: when you say a degree in IT - does that mean non-programming? Feb 12 09:59:22 it includes programming as well as non programming modules Feb 12 09:59:32 I have done OOP in Java but not at advanced level Feb 12 09:59:51 and almost forgot most of its syntax Feb 12 10:00:28 if you did OOP in Java at university level, even if it wasn't advanced, you should be able to find your way through this... the Android APIs on top of Java make things more complicated though Feb 12 10:03:22 yes Leeds. I wanna learn Android APIs Feb 12 10:03:43 they often confuse me. Feb 12 10:03:47 XML too Feb 12 10:03:57 work the tutorials... Feb 12 10:05:02 I have Big Nerd Ranch guide in my shelf Feb 12 10:05:06 reading that atm Feb 12 10:05:35 getting confused from page 25 Feb 12 10:05:36 lol Feb 12 10:06:30 if I have my android-tools within /opt, what should the permissions be? Feb 12 10:07:28 patience, young grasshopper, do not try to run before you can walk Feb 12 10:09:50 I wanted to develop this app in a month but now, I dont think so. Feb 12 10:10:06 developing the app in a month, probably easy... Feb 12 10:10:20 you might be surprised by how long a month is Feb 12 10:10:21 learning how to develop apps, and developing a useful app in a month... probably not Feb 12 10:10:55 anyone on linux? Feb 12 10:11:00 so android developers change their jobs after every month? Feb 12 10:12:31 er... what? Feb 12 10:12:59 if they finish a project in a month, sure? Feb 12 10:13:01 I mean if devs can develop an app in a month for a company. Feb 12 10:13:54 actually, I find android development easier than standard java - there is a ton of documentation and backend already done Feb 12 10:14:17 an experienced developer can develop a basic usable single-purpose app in a month... doesn't mean they then walk away Feb 12 10:14:48 Leeds, how much time would be input each day? Feb 12 10:14:50 Veruso, I see. so I should take the backend from github ? Feb 12 10:15:19 ok, these questions are getting weird now, so it's time for me to go do something else... Feb 12 10:15:20 codfection, what? - no... the android API is a part of the SDK and build environment Feb 12 10:15:52 Leeds, How is my questions "weird"? Feb 12 10:16:28 if you specify "X" days to do task "Y", that begs the question - how much time per day? Feb 12 10:17:16 this StreetViewPanoramaView leak is anoying Feb 12 10:17:27 Hi Feb 12 10:17:43 I've built a homescreen widget Feb 12 10:18:05 raj, yes why?/ Feb 12 10:19:56 I've written my widgetprovider clss overriding onUpdate method Feb 12 10:20:28 I'm trying also overriding onReceive method Feb 12 10:20:33 *class Feb 12 10:21:52 my widget is a power control button widget Feb 12 10:22:38 and my widget layout xml builds it with lights turned off Feb 12 10:22:48 codfection, should android-sdk be installed to /opt or /usr/local ? Feb 12 10:23:08 which distro? raj. Feb 12 10:23:16 arch Feb 12 10:23:21 usually its in /opt/ Feb 12 10:23:35 I'm installing it without the package mangaer Feb 12 10:23:44 AUR? Feb 12 10:24:13 I've set an onclickpendingintent to hw widget Feb 12 10:24:13 It can be installed wherever. Feb 12 10:25:07 codfection, I'd rather ensure I can run the latest greatest version as necessary Feb 12 10:25:11 so, I'd like to turn lights on when I click on the widget and turn lights off when I click on thw widget again Feb 12 10:25:13 and so on Feb 12 10:25:28 raj, manjaro or ?. Feb 12 10:25:44 what method could I follow in order to get that result? Feb 12 10:25:50 Any ideas? Feb 12 10:27:00 cristian_c: please don't split your questions up over 10 messages Feb 12 10:27:22 SimonVT: I've added them, then Feb 12 10:27:47 but I'll try to join them together Feb 12 10:28:29 codfection, nope regular linux Feb 12 10:28:32 i mean arch Feb 12 10:28:37 If you can't properly state your question in one or two lines it's properly better to link a stackoverflow post Feb 12 10:28:56 (including relevant code, etc) Feb 12 10:29:07 codfection, does it matter whether I put it in /usr/local or /opt btw? I thought /usr/local is for manually installed applications Feb 12 10:29:22 and I'm manually installing from the android website Feb 12 10:29:43 btw, I don't have a stackoverflow account Feb 12 10:30:27 If only there was a way to get one Feb 12 10:30:58 SimonVT: that's just crazy talk!!! Feb 12 10:31:56 Various paste sites work as well, but then you're limited to help from this channel instead of the entire stackoverflow community Feb 12 10:32:30 I know, right :d Feb 12 10:39:32 is it unethical to ask stack-overflow for help if its for a job? Feb 12 10:55:05 no Feb 12 11:41:41 https://github.com/Coinomi/coinomi-android in this code how would i remove http://prntscr.com/e7plrs so it doesnt show because currently it does not work Feb 12 11:45:38 i dont mind leaving most of the code just as long as i can remove that from the side bar :D Feb 12 12:04:23 why doesn't the security team of Android make use of facl or group permission for some directories? why do they just open it all together to bunch of apps? I know that they at least divide it 2 parts, internal storage and the chaotic storage. Feb 12 12:05:08 why should users stand this Feb 12 12:05:28 huh? Feb 12 12:05:34 Android heavily relies on ACLs. Feb 12 12:05:58 Mavrik: can you set permissions of each directory? Feb 12 12:06:08 It's set and managed automatically. Feb 12 12:06:15 You just need to store data in proper locations. Feb 12 12:06:39 by automatically you mean just 2 bulks, internal and chaotic outer one Feb 12 12:06:42 ? Feb 12 12:07:38 It's more nuanced by that. Feb 12 12:07:43 But yeah. Feb 12 12:07:54 What exactly do you need? Feb 12 12:08:05 (There's sevedal advanced mechanisms of handling files if you need it.) Feb 12 12:08:24 facl or group permission settings for each directory, freely by users. Feb 12 12:09:00 and if I go with group permission settings, I need to join a specific number of apps into a group Feb 12 12:09:28 You can do the second. Feb 12 12:09:41 And no, setting permissions freely by users won't happen. Feb 12 12:10:05 oh, you can group apps? Feb 12 12:11:13 Yes, you can share userId between apps (as long as they're signed by a single key IIRC) Feb 12 12:11:30 And then you can access their private storage via Context.createPackageContext() Feb 12 12:11:39 's a shame Feb 12 12:11:44 it's Feb 12 12:11:47 Usually it's not someting you want to do tho. Feb 12 12:11:58 no it's not Feb 12 12:12:00 :-( Feb 12 12:12:24 I'm a google fanboy but Google is missing an important aspect Feb 12 12:12:25 security. Feb 12 12:12:39 huh? Feb 12 12:12:50 Based on what? O.o Feb 12 12:13:01 yeah, they should really add some security to Android in O Feb 12 12:13:32 Yes, 4kg of security :P Feb 12 12:13:38 I'd like to divide the security domain into several and delicately control them. Feb 12 12:13:51 And you can do that. Feb 12 12:14:03 You're just trying to reason about Android like it's a desktop Linux distro. Feb 12 12:14:04 It's not. Feb 12 12:14:09 It' very much not. Feb 12 12:14:19 It has a different security model which you can control via different mechanisms. Feb 12 12:14:25 (See Android For Work and other MDMs) Feb 12 12:14:42 (+ Marshmallow permission model) Feb 12 12:15:21 ok, I will Feb 12 12:20:51 well, can you just gain some storage security without using some enterprise solution? Feb 12 12:22:46 Nicho1as, use Android 6 or newer. Feb 12 12:23:03 It's locked down by defaut. Feb 12 12:23:04 I'm using, and love the fine control Feb 12 12:23:20 but I can't set the permissions on directory level Feb 12 12:23:26 You won't be able to. Feb 12 12:23:28 by grouping apps Feb 12 12:23:37 But apps can't access outside their sandbox either. Feb 12 12:23:48 Unless you explicitly allow them to or use the file dialog to approve it. Feb 12 12:24:25 I know but when it comes to collaboration I somehow have to share the data to a specific apps though Feb 12 12:24:44 s/a specific/some specific/ Feb 12 12:25:15 Yes, and you either use the sharing system (which grants temporary access to that file) Feb 12 12:25:26 Or use the system file open dialog (which is also temporary and limited to selected file) Feb 12 12:25:42 anyuone Feb 12 12:25:48 Of course, some apps demand full FS access but you can't do anything about that. Feb 12 12:25:49 anyone * got any idea how i could haha Feb 12 12:26:00 haha? Feb 12 12:26:02 many apps don't care about my security concern, but some do by approving sharing(so they copy the files to their internal storage; but it can be a waste of storage space) Feb 12 12:26:34 Because. i need to remove it mostly from my app i've forked off it Feb 12 12:27:11 I have no idea how to do it im not skilled in java / android coding :| Feb 12 12:28:30 I'll look up system file open dialog and sharing system. Feb 12 12:29:08 I'm just a USER but a little security sensitive one :-q Feb 12 12:33:32 just a user meaning you're not writing code? Feb 12 12:33:54 Mavrik: Thank you very much :) I like the content open dialog (ACTION_GET_CONTENT) Feb 12 12:34:26 Leeds: I don't write Android code, I did it for 1.5 years several years ago though Feb 12 12:34:42 I was in a android app development firm Feb 12 12:36:10 :| Feb 12 12:36:21 Idk how to remove it from displaying on the UI Feb 12 12:36:21 xD Feb 12 12:36:24 but with many app developers not giving a shit to some security sensitive users... I should root the devices Feb 12 12:37:00 and setfacl or use group permissions Feb 12 12:37:08 :-| Feb 12 12:39:41 wonder what Apple does about the filesystem security Feb 12 12:41:14 I'd think iOS apps are pretty much completely sandboxed Feb 12 12:43:52 Yep. Feb 12 12:43:58 You get a container and that's it. Feb 12 12:44:15 Basically same as Android if you disable external storage access. Feb 12 12:44:32 iOS is considerably more secure than android Feb 12 12:44:46 although android 7.0 is better (with SELinux too) Feb 12 12:44:53 its still nowhere near iOS Feb 12 12:46:25 I fail to see what iOS does "considerably" different. Feb 12 12:46:38 Considering that security models are pretty much the same, just different kernel. Feb 12 12:46:50 iOS does data isolation within an app better. Feb 12 12:47:01 And has guaranteed hardware keystore which appeared only in 6.0 on Android. Feb 12 12:47:22 But with 7.1... there's no major differences besides the fact that Android can also step out of the model when needed to make it useful. Feb 12 12:47:31 Without the nasty hacks that are iOS extensions. Feb 12 12:48:21 (Those are awful in so many ways and love to crash other apps. :) ) Feb 12 12:50:57 for the record, I have to cancel my statement and aim my arrow to other direction, the careless Android app developers. Feb 12 12:52:46 Can i please have some guidance xD Feb 12 12:53:46 because the past 1hr and i've made no progress on what im trying to do Feb 12 12:54:36 and its starting to get on my nerve Feb 12 12:56:41 so all my leaks are originating from anonymouse listeners Feb 12 12:56:43 hypermist: no. You have to suffer like every other Android developer Feb 12 12:56:50 hi mela Feb 12 12:56:55 Melatonina, true but i dont need this in the app i forked from Feb 12 12:57:03 so its like how does one remove it :( Feb 12 12:57:13 Giving me a headache Feb 12 12:57:19 hi raoul11! Feb 12 12:58:41 even just a little bit of info on how i could remove it Melatonina xD Feb 12 13:00:09 codfection: care to elaborate on your claims? Feb 12 13:01:33 snapfractalpop, default config of android is not as secure as iOS. sure android can be made just as secure after hardening the system Feb 12 13:01:50 but I am talking about default android out of the box of any android device. Feb 12 13:02:25 codfection: I think it's hard to compare the hardware, since many phones on both platforms are probably affected by rowhammer Feb 12 13:02:34 (which is basically game over) Feb 12 13:02:39 hypermist: I read your past messages and I can't understand what you are talking about. Feb 12 13:02:51 hypermist: I suspect I'm not the only one Feb 12 13:03:05 codfection, can you explain more what's missing in defaut configuration on Android? Feb 12 13:03:14 but I think statements that put one platform on a pedestal are not really wise Feb 12 13:03:20 (I can list those things, but I'm wondering what are you talking about :P ) Feb 12 13:03:43 Mavrik, android 7 is improved. I am talking about older releases such as kitkat till 6.0 (M). Feb 12 13:03:52 Which parts? Feb 12 13:03:55 codfection: what specifically Feb 12 13:03:59 hypermist: if you expect people to download, build and a run an application they don't care about just to understand your question, you are not likely to get any help Feb 12 13:04:02 Melatonina, well basically do you see the thing that says Exchange / Services i need to remove that show it doesnt show up in the side bar Feb 12 13:04:09 * Leeds feels a need to mention that earlier codfection was asking for advice on whether he had to learn Java in order to write an app for a company that's 'hired' him as an unpaid trainee... strong opinions Feb 12 13:04:16 snapfractalpop, sandboxing f.e. Feb 12 13:04:26 Leeds, XD Feb 12 13:04:36 because currently it doesnt work thats why i need help on removing it Melatonina :D Feb 12 13:04:41 Leeds, security != development Feb 12 13:05:25 codfection: if we are talking absolute terms, neither android nor ios is secure. Feb 12 13:05:29 hypermist: please, re-read what I wrote Feb 12 13:05:31 if it is binary, they both lose Feb 12 13:05:44 they both have known and unknown exploits Feb 12 13:06:10 in fact, ios installs backdoors by default Feb 12 13:06:22 Also both use same sandboxing models. Feb 12 13:06:23 snapfractalpop, definitely. I never said that either of them are secure. I just said one is more secure than another with its default out of box config Feb 12 13:06:29 Melatonina, i gave image of what i needed help with Melatonina what else i dont expect people to download and build a app they wont use to give me help im just wondering how i could remove such a thing from a side bar so it wouldn't show up in the finished app :| Feb 12 13:06:30 they just supposedly refuse to hand the keys to the government Feb 12 13:06:31 iOS sandboxing model is actually a bit weaker. Feb 12 13:06:44 Mavrik, how so? Feb 12 13:06:45 Since it hosts binaries from one app into another apps process. Feb 12 13:06:50 codfection: I know, but I'm asking how specifically Feb 12 13:07:14 Also the fugly hacks about how they assure you're not using private APIs is utterly whacked. Feb 12 13:07:21 (But that's an ObjC limitation) Feb 12 13:07:27 android didnt even have "Allow or not allow" before 7.0 Feb 12 13:07:36 lol Feb 12 13:07:41 codfection: I take it you started with ios Feb 12 13:07:48 permissions issues. snapfractalpop Feb 12 13:07:49 codfection, 6.0. Feb 12 13:08:02 codfection: the permissions models started out entirely different Feb 12 13:08:06 i dont know what else you want me to supply because i have nothing else i can supply Melatonina Feb 12 13:08:07 codfection, and that has nothing to do with sandboxing :P Feb 12 13:08:07 one was not "better" than the other Feb 12 13:08:08 Mavrik, but in iOS its there since like forever Feb 12 13:08:17 hypermist: have you ever programmed anything at all? Feb 12 13:08:23 Mavrik, so you would ignore permissions? Feb 12 13:08:35 codfection: I think y ou should learn what the permissions system was on android before Feb 12 13:08:37 Melatonina, no not particularly :D Feb 12 13:08:38 codfection, permissions were always there and enforced. Feb 12 13:08:39 it's better to ask forgiveness than permission Feb 12 13:08:46 lol Feb 12 13:08:48 codfection: I think you have been lead astray Feb 12 13:08:52 hypermist: it shows up Feb 12 13:08:58 codfection, just the way how they're exposed in UI changed (and I agree, for the better) Feb 12 13:09:09 thats why im being a newb and asking for a little bit of help Melatonina :D Feb 12 13:09:12 Still, nothing to do with "sandboxing" Feb 12 13:09:17 snapfractalpop, why does the US government enforces their VIP's to use Iphones instead of androids? Tell me Feb 12 13:09:36 Because Apple paid them to get a huge government contract. Feb 12 13:09:36 Mavrik, browser cross origin policies in android 4.4 were a disastor Feb 12 13:09:41 Same reason they used Blackberries :P Feb 12 13:09:42 codfection: in security, the human is the weakest link Feb 12 13:09:50 the President of the USA uses a Samsung phone Feb 12 13:09:51 hypermist: last time: you are asking what I wrote in my earlier message. Feb 12 13:09:52 snapfractalpop, definitely. Feb 12 13:09:59 codfection: if you are not savvy, go with ios then Feb 12 13:09:59 Leeds, hehe. S3. too old Feb 12 13:10:10 * raoul11 is debuggin on s3 Feb 12 13:10:16 codfection, dude, we CAN debate about security if you stop using retarded arguments like that from government Feb 12 13:10:20 there ARE issues with Android security Feb 12 13:10:23 codfection: the default for a non-savvy user might be debatable Feb 12 13:10:32 it just seems like you don't understand the basics and are just repeating some BS Feb 12 13:10:46 Melatonina, what ? Feb 12 13:11:02 the key storage and data separation subsystems on iOS are significantly better than on Android Feb 12 13:11:13 when early android had lists of permissions that some users ignore, that is an issue Feb 12 13:11:22 guys, if you were feeling really good, you could stop the security talk and teach hypermist lots of good things about coding... Feb 12 13:11:24 also the whole FDE debacle was sad. Feb 12 13:11:24 hypermist: good luck Feb 12 13:11:27 but apple's policy was to not even tell the users the permissions Feb 12 13:11:38 Mavrik, playstore was garbage and full of malwares just a few years ago and I believe it still has malwares inside of it. Feb 12 13:11:43 .... Feb 12 13:11:53 codfection: now we're talking ecosystem Feb 12 13:11:56 yes Feb 12 13:12:00 codfection, so is AppStore Feb 12 13:12:03 nop Feb 12 13:12:15 I was working for a company stealing personal data on iOS a few years ago, those holes are still there. Feb 12 13:12:18 codfection: you have a choice as a consumer of apps Feb 12 13:12:26 Apple didn't give a shit. Feb 12 13:12:48 I think they actually secured the PasteBoard now I think. Feb 12 13:12:51 I hope. Feb 12 13:12:54 codfection: that is not the same argument. make claims about the ecosystem, if that is your argument. Feb 12 13:13:21 codfection: if you have exploits on android, many people would love to know Feb 12 13:13:28 snapfractalpop, 0 days? Feb 12 13:13:59 and thats the reason i dont ask for help Melatonina because im not smart like the rest of people in the coding stuff so i get stuffed under a rug Feb 12 13:14:15 codfection: android is by far the most popular mobile os in the entire world. it is bound to have exploits, and will likely be targeted specifically because of its popularity Feb 12 13:14:15 hypermist, people aren't just going to do your job for you :/ Feb 12 13:14:45 Mavrik, i wasnt asking people to do the job for me i was asking for help on how to do it like what things should i be looking for sort of deal ... not going oh here's some code do my job Feb 12 13:14:46 hypermist, if you had an actual coding question then yes, you'd get help. But noone is really going to be your personal tutor to do your job for you or teach you what Android developer books do. Feb 12 13:14:47 windows ecosystem is not secure for similar reasons.. Feb 12 13:15:06 snapfractalpop, the crappy update policies don't help tho -_- Feb 12 13:15:18 but that doesn't mean macs are secure.. just that they've been less of a target Feb 12 13:15:28 Which is a significantly more valid criticism than anything that codfection said :P Feb 12 13:15:29 Mavrik: yes.. there are tons of other issues with windows Feb 12 13:15:29 snapfractalpop, windows phone suck balls. lets just not bring that crap into our debate Feb 12 13:15:45 codfection: I'm making an analogy to the desktop Feb 12 13:15:56 I meant windows vs mac on desktop Feb 12 13:16:00 i just needed some guidance on what i should be looking out for i dont want things handed to me being completed i want some basic help on what i should be looking out for... not throwing code at people and expecting a product back Feb 12 13:16:11 alright. then windows 10 is way more secure than ubuntu as per recent vulnerability report Feb 12 13:16:22 Linux has issues too, but has been lucky in that it's not as popular, thus not as much of a target Feb 12 13:16:29 exacctly Feb 12 13:16:45 this is not totally the case anymore due to servers.. but that's a whole different ballgame Feb 12 13:17:11 codfection: I doubt windows 10 is secure at all Feb 12 13:17:22 snapfractalpop, from privacy point of view? nope. Feb 12 13:17:29 just because you don't know of the bugs doesn't mean they're not there Feb 12 13:17:43 yea but thats a rare case Feb 12 13:17:45 codfection: privacy, windows is shady as fuck Feb 12 13:17:56 0 days are being sold rapidly and revealed too Feb 12 13:18:05 I agree with you on that point Feb 12 13:18:11 also, it should be noted that ms has had a history of disgruntled employees leaving holes behind and selling the exploits Feb 12 13:18:45 snapfractalpop, from your point of view, would you rather classify macOS as secure or linux? Feb 12 13:18:48 the point of all this is to realize that cheerleading gets people nowhere Feb 12 13:18:57 macos vs which linux Feb 12 13:19:15 current gnu/linux distros Feb 12 13:19:18 the navy uses linux.. Feb 12 13:19:30 and windows :P Feb 12 13:19:35 it really depends Feb 12 13:19:39 President is required to use iphones. if thats your point Feb 12 13:19:40 lol Feb 12 13:20:00 codfection: what did he have prior, blackberry? Feb 12 13:20:07 one big issue at that level is hardware Feb 12 13:20:34 codfection: do you know that there are lots of "flavors" of linux? Feb 12 13:20:54 there isn't a simple way to describe one as being more or less secure than mac Feb 12 13:21:02 which is based on freebsd, btw Feb 12 13:21:17 omG you are totally wrong. its darwin kernel Feb 12 13:21:38 freebsd uses bsd kernel which is just... Feb 12 13:21:39 codfection: what are it's roots? Feb 12 13:21:52 are you saying they rewrote it from scratch? Feb 12 13:22:08 doubtful Feb 12 13:22:15 why not Feb 12 13:22:30 hahahha Feb 12 13:22:32 lol jk. I know its based on freebsd but its not freebsd which makes a big difference Feb 12 13:22:33 read up then Feb 12 13:22:51 yeah, but the big difference that you can't see Feb 12 13:23:03 security based on faith is unwise Feb 12 13:23:06 the way iOS gets security updates, android can only dream of. Feb 12 13:23:11 unless its a pixel device Feb 12 13:23:15 or nexus Feb 12 13:23:20 (5x to 6p) Feb 12 13:23:34 codfection: are you referring to boot sigs? Feb 12 13:23:50 pixels and nexus are android, btw Feb 12 13:23:59 yes but they are not all android devices Feb 12 13:24:05 codfection: you sound a little fan-boyish.. no offense Feb 12 13:24:07 samsung has more market share for android than them Feb 12 13:24:13 just for example.^ Feb 12 13:24:31 snapfractalpop, no I dislike iOS. I just speak neutrally. Feb 12 13:24:38 codfection: the cheaper android phones comprise the vast majority of the market, and have weaker security in general Feb 12 13:24:41 but thats for some other reason Feb 12 13:25:13 they have bloatware from OEMs that is closed source, and probably riddled with bugs Feb 12 13:25:41 snapfractalpop, you are right Feb 12 13:25:49 they come preinstalled with crap that is basically malware masquerading as feature-rich apps Feb 12 13:26:05 but when I think of android, I'm thinking of vanilla Feb 12 13:26:22 either AOSP, or a derived rom Feb 12 13:26:42 then its much improved in security Feb 12 13:27:07 but when you look at the devices around the world, only half or even less than half are vanilla Feb 12 13:27:12 codfection: I think android is thrown around as an all encompassing term Feb 12 13:27:21 I'd say far less than half Feb 12 13:27:25 yup Feb 12 13:28:48 I think it's nice, though, that people can afford and android phone at the low end of the price spectrum, but just wish it was easier for people to wipe the crap off it and switch to vanilla Feb 12 13:28:55 many vendors make this difficult Feb 12 13:29:09 its very difficult now as compared to few years back, which is very sad Feb 12 13:29:21 it's all about control Feb 12 13:29:38 but with apple, it's unfortunately the same old story Feb 12 13:29:49 only vanilla iOS ;) Feb 12 13:29:56 unless its jailbroken Feb 12 13:29:57 :P Feb 12 13:30:02 I had a nano 2nd gen that was capable of video, but the apple firmware wouldn't permit it Feb 12 13:30:16 so I got rockbox on it, and bing bang boom, video Feb 12 13:31:09 heh Feb 12 13:31:11 also, rockbox introduced a virtual center channel which mixed a little left channel into the right and vise-versa, so stereo songs sounded like coming from speakers in a room Feb 12 13:31:20 nice Feb 12 13:31:39 very nice for certain classic rock albums that make heavy use of stereo Feb 12 13:32:19 it kind of disgusted me a bit that apple was preventing me from fully utilizing the hardware that I paid for when I got the device.. (actually it was a gift.. but the same idea applies) Feb 12 13:32:40 but it's all about control Feb 12 13:34:12 anyway.. the main thing is, there aren't too many unqualified statements that can be made with regard to superior security of any of these underlying platforms Feb 12 13:34:24 the most secure phone would be one that is air-gapped Feb 12 13:34:34 wouldn't be very useful though Feb 12 13:35:37 the security conscious folks should really be more demanding of better hardware. Feb 12 13:35:58 rowhammer is scary as fuck, and nothing can be done about it. or .. not much anwway Feb 12 13:36:49 guten tag misterli Feb 12 13:37:36 Hi, just saw your stack post bantu Feb 12 13:41:04 misterli Oh yeah i thought id look for you here. Is it okay if i send you a private message. Feb 12 13:41:29 yes. But i dont have time right now. I can help you in 2 Hours Feb 12 13:41:34 Hello, im using android studio on ubuntu but my computer does not support vt-x. I went to install HAXM but it says not compatible with Linux. What i can do to run virtual machine on ubuntu without vt-x support, thank you. Feb 12 13:42:41 thats okay Feb 12 13:53:28 wendico: how ancient is your computer? Feb 12 13:55:07 wendico: do you have an android device to test on directly? Feb 12 13:55:09 Leeds: HP 620. Pentium(R) Dual-Core CPU T4500 @ 2.30GHz × 2 and 4GB Ram running Ubuntu 14.04 LTS 64Bit Feb 12 13:56:22 snaptractalpop: I have my only main phone LG e460 rooted but no custom recovery compatible Feb 12 13:56:25 yup, that's 7 years old... Feb 12 13:56:44 im afraid to brick my phone Feb 12 13:57:02 wendico: you won't brick your phone with an app.. Feb 12 13:57:06 why would you brick your phone running apps on it? Feb 12 13:57:10 at least, I'd think that would be very hard to do Feb 12 13:57:21 oh i dont know hehe, im new on this Feb 12 13:57:32 so should i just try to connect my LG? Feb 12 13:57:41 wendico: try just running the app with shift-f10 while the phone is plugged in via usb Feb 12 13:57:46 wendico: you' Feb 12 13:57:47 (first enable usb debugging) Feb 12 13:58:03 youi're talking about app development, not rooting/OS/recovery/etc stuff, right? Feb 12 13:58:08 yes Feb 12 13:58:12 only app development Feb 12 13:58:38 wendico: become a "developer" on the phone (press the android version number several times) Feb 12 13:58:48 then, from that menu, allow usb debug Feb 12 13:58:51 done, and usb debug enabled Feb 12 13:59:14 gonna go ahead plug in and hit shit-f10 Feb 12 13:59:17 ok, while phone is plugged in, in android studio, from the run menu, choose run Feb 12 13:59:25 or shift-f10 is the shortcut Feb 12 13:59:40 it should show you a list with your phone in that list Feb 12 13:59:53 click ok to run the app on that device Feb 12 14:00:10 also, re vt-x, you may be able to enable it in bios.. depends on the mobo Feb 12 14:00:31 my proccesor does not support vt-x Feb 12 14:02:58 hi, can i ask a question Feb 12 14:03:05 awesome! it works, thank you! Feb 12 14:03:57 sift+f10 did the job :) Feb 12 14:04:09 edi_: you don't need to ask if you can ask - just ask! Feb 12 14:04:39 wendico: nice Feb 12 14:04:45 glad to hear it! Feb 12 14:04:56 wendico: you can also debug the app. Feb 12 14:05:09 that will be more useful as you go further Feb 12 14:05:27 from the run menu.. there is also a keyboard shortcut, but I forget what it is Feb 12 14:05:34 how can i debug it snapfractalpop? Feb 12 14:05:43 ok, looking at run menu Feb 12 14:05:51 wendico: from the run menu in AS, there should be other options Feb 12 14:05:58 is there a debug option? Feb 12 14:07:01 with debug, if you have breakpoints in your code, you can step through code carefully Feb 12 14:07:12 to see what is happening Feb 12 14:07:12 Leeds, thank you. I am having some issues with an EditText, in this pic you can see the problem:http://imgur.com/a/rJvx3 Feb 12 14:08:13 and if there is a bug (exception), it will trigger the debugger, so you can try to determine the state of things.. if there is anything out of place, etc. Feb 12 14:20:15 snapfractalpop, yes i have a debug option, everything is cool with my LG plugged, im working on my program! thank you very much Feb 12 14:20:28 the only hadycap is that i only have android 4 for testing Feb 12 14:20:43 but should be ok for some months until im a better codder hehe Feb 12 14:20:44 wendico: no problem! glad you got it working Feb 12 14:21:47 wendico: anything you make on android 4 should work on newer versions too Feb 12 14:22:10 you just won't be able to take advantage of some of the newer features.. Feb 12 14:22:36 but if you want to support more devices, being on an older phone isn't so bad Feb 12 14:23:12 if you coded only for the latest devices, you'd have a smaller target audience (albeit a less thrifty one) Feb 12 14:23:35 yes i see that. android studio says if i use android 4 i reach more than 95% of the used devices, thats more than enough hehe Feb 12 14:23:51 potentially (: Feb 12 14:24:00 lol, potentially of course Feb 12 14:24:13 any help please for my problem Feb 12 14:24:14 shoot for the moon Feb 12 14:24:20 but if choose android 6 or + goes doen to potentially about 40% Feb 12 14:25:20 edi_: what's the issue? all those 'fffff's? Feb 12 14:26:16 I am having some issues with an EditText, in this pic you can see the problem:http://imgur.com/a/rJvx3 Feb 12 14:27:02 edi_: I saw the pic, but I don't understand the full problem Feb 12 14:27:04 is that your app? Feb 12 14:27:11 what caused it to be in that state? Feb 12 14:27:28 yes Feb 12 14:56:09 there is any dev that has experience with constraint layout Feb 12 14:56:42 how to make chatting apps in android? Feb 12 15:00:16 same way you'd do in any app: layout your ideas, do your research, code, debug, debug, debug, die, debug, deploy Feb 12 15:00:34 coding part Feb 12 15:00:50 what i need to learn to make this kinda app Feb 12 15:00:58 i know about layouts Feb 12 15:01:06 realtime db, proper api calls Feb 12 15:01:08 networking Feb 12 15:01:34 do a research, mayb have a look in telegram source code Feb 12 15:01:44 more importantly, you need to learn how to search efficiently Feb 12 15:01:59 o/ adq Feb 12 15:02:11 \o> hi Feb 12 15:02:20 http://i.imgur.com/Zwz2YXR.jpg Feb 12 15:02:52 thanks :) Feb 12 15:03:26 sub_zero: look into how secure chat apps like signal and telegram have implemented their chat apps Feb 12 15:03:38 sub_zero https://github.com/DrKLO/Telegram Feb 12 15:03:52 go rip it off, not as if we have enough chat apps atm Feb 12 15:06:07 oh ok Feb 12 15:59:20 what are my options when working with really *large* views? looks like there is support for prividing clipping rectangles to invalidate and then using them in onDraw, but then again ScrollView doesn't seem to care and just renders the entire thing Feb 12 16:34:07 anyone Feb 12 16:46:44 Hello, I'm having issues returning via callbacks JSON object from Volley, this is my callback class http://pastebin.com/unmE6XgB and this is where I used it overriding: http://pastebin.com/BRgMMEx7 however it gives an error: is not abstract and does not override abstract method onErrorResponse(String) in VolleyCallback . Please help Feb 12 16:47:50 Hey, trying to figure out Scroller/OverScroller for flings on custom views. When calling scroller.fling(...) it gets the surface size data and velocity. how does the scroller supposed to let the view know the new scroll position... i've seen solutions that require polling the scroller, doesn't seem right... Feb 12 17:24:25 https://hastebin.com/oxumakufav.swift anyone know why this wont run... i get the following msg on simulator and there is no error msg in android monitor "OpenCVTests has stopped" Feb 12 17:28:00 FeatureDetector test = FeatureDetector.create(FeatureDetector.FAST); <- this line causes it Feb 12 17:29:04 hmm found Feb 12 17:29:11 so thx anyway =) Feb 12 17:56:02 is there documentation on how to use scrolling in a custom View? Feb 12 18:13:01 Look at how e.g. ScrollingView does it Feb 12 18:18:11 you mean ScrollView Feb 12 18:31:13 hello! I'm quite new to ndk, so bare with me... I'm trying to use the native-audio-jni Feb 12 18:32:05 which means opensles es Feb 12 18:32:29 my tool generates 5 seconds of audio every time in the callback when a buffer playback ends Feb 12 18:32:44 but i get clicks all over the place Feb 12 18:33:21 i’m not sure if the callback is locking so the playback stops (it seems so because in the example is thread_mutex_unlock(&audioEngineLock)) Feb 12 18:34:40 but what also can happen is that the callback is too late; i.e. calling the callback and adding new audio when the buffer is empty is ofcourse too late Feb 12 18:35:23 so i tried to add 2 buffers before starting, so the callback would be called after the first one is done and the second one is this playing Feb 12 18:35:56 but then the order of the audio is weird, i can’t find out what’s going on Feb 12 18:36:21 anyone in here has experience with this stuff? Feb 12 18:57:42 hey all Feb 12 18:57:46 misterli: hey Feb 12 19:06:17 hey guys quick question is there a way to remove certain default apps from a stock rom? Feb 12 19:13:11 Play Services has essentially bricked my Nexus 5 -.- Feb 12 19:49:31 raoul11: you da man! Feb 12 19:50:26 when you do oauth on mobile do you still need to setup a server as the redirect/callback url? Feb 12 19:58:55 no Feb 12 20:12:51 thepoosh Feb 12 20:12:59 u cominh on tuesday? Feb 12 20:13:08 nope Feb 12 20:13:12 ): Feb 12 20:13:20 wife is expecting, not going anywhere Feb 12 20:13:24 thepoosh do u leakcanary? Feb 12 20:13:34 a bit here and there Feb 12 20:13:42 also do StrictMode Feb 12 20:13:48 eww Feb 12 20:13:48 which is amazing Feb 12 20:14:39 fixed like 5 leaks thepoosh Feb 12 20:14:46 iSuck@lyfe Feb 12 20:14:52 you should write better code... Feb 12 20:14:54 :P Feb 12 20:15:00 not my fault Feb 12 20:15:03 well it is Feb 12 20:15:11 mainly anonymous listeners Feb 12 20:15:32 oh noez Feb 12 20:15:37 also thepoosh, fragments being silly Feb 12 20:15:55 there is a good talk by Jake from Realm called "the hidden costs of Java" I suggest watching Feb 12 20:16:01 getContext returns null when switchin between activities like a maniac Feb 12 20:16:48 that guy deserves a medal thepoosh Feb 12 20:17:05 he's here, you can give it to him Feb 12 20:17:13 also, whoever made leakcanary (french dude me thinks) deserves one as well Feb 12 20:17:33 unchaining us from seeking bad refrences via mat Feb 12 20:18:04 yep, entire square peeps are good peeps Feb 12 20:18:37 any good tuts/talks about networking queuing thepoosh ? Feb 12 20:19:15 control of queues is done by Volley Feb 12 20:19:17 me fraid am overloading the network with requests, and while i do keep an eye over the network tab, am not sure Feb 12 20:19:25 iretrofit Feb 12 20:19:29 not so sure about Retrofit Feb 12 20:19:57 USUCK Feb 12 20:20:00 y u no retrofit Feb 12 20:20:07 all the cool boys use it.. Feb 12 20:20:13 raoul11: https://github.com/square/retrofit/issues/820 Feb 12 20:20:24 i bet yer mentor friends from tlv academy use retrofit /: Feb 12 20:20:27 i started with volley and the move is too damn expensive Feb 12 20:20:44 i will use it (probably) in the next project Feb 12 20:20:51 i only use asyncs Feb 12 20:21:02 can i ask an opencv question here? it has to do with its android sd k Feb 12 20:21:03 but theres also maps/streetview hoggin the network, login actions Feb 12 20:21:05 glide.. Feb 12 20:21:22 Retrofit: does not support setting priority, although there are hacks available; supports cancellation since v2 (which is in late beta now); supports manual request retries. Feb 12 20:21:24 a fuckton of network actitivies i gotta make work well with each other Feb 12 20:21:46 http://vickychijwani.me/retrofit-vs-volley/ Feb 12 20:22:05 think this suffice thepoosh? okHttpClient.dispatcher().cancelAll(); Feb 12 20:22:12 when am binnin an activity Feb 12 20:22:31 and i wanna cancel all its okhttp/retrofit requests Feb 12 20:22:40 https://github.com/square/okhttp/issues/2550 Feb 12 20:22:43 raoul11: ^ Feb 12 20:23:16 aye Feb 12 20:23:18 nice stuff Feb 12 20:23:20 tags Feb 12 20:23:42 thepoosh: u shud see the apiclient i built Feb 12 20:24:13 send me le-code Feb 12 20:24:57 ull laugh at it Feb 12 20:52:05 hello! I’ve made some progress with my opensles es experiment… Feb 12 20:52:26 good, tell us more about it niekniek Feb 12 20:52:55 in the c code, i create an extra thread to enqeue previously generated audio and generate some more Feb 12 20:53:20 have you tried to play with superpowered boilerplate, it's pretty decent for opensl Feb 12 20:53:44 then, when the buffer playing is done the callback is executed Feb 12 20:54:07 all in do in there is notify the thread to do it’s thing Feb 12 20:54:18 but when i use buffers from 2 seconds, i still get glitches Feb 12 20:54:23 anyone use opencv here? Feb 12 20:54:37 niekniek, producer -> consumer, be sure you always produce faster than it consumes Feb 12 20:54:51 if it's the case, your glitch are coming from something else Feb 12 20:55:53 adq: I THINK it is Feb 12 20:56:10 i generate a 5 second buffer and then a 2 second buffer Feb 12 20:57:52 2 seconds of buffer is a lot, at a regular samplerate like 44100Hz Feb 12 20:58:03 i enqueue them both Feb 12 20:58:09 but that does not explain why with a bigger one you don't get glitch, without much details we cannot really guess Feb 12 20:58:18 so the first callback is at the end of playback of the 5 second buffer Feb 12 20:58:22 what kind of audio are you generating? Feb 12 20:58:29 there i generate more audio and enqueue it Feb 12 20:58:51 adq: https://github.com/digital-sound-antiques/libkss Feb 12 20:58:53 and what kind of glitch are you talking about (like minor clicks/tick sound?) Feb 12 20:59:14 adq: yep, those Feb 12 20:59:21 or very slight repeats of stuff Feb 12 20:59:32 wow then you're not properly enqueuing the buffer Feb 12 20:59:44 you seem to have a discontinuity Feb 12 21:00:02 adq: i was expecting that answer, but it just happens sometimes Feb 12 21:00:14 the click is because it's such a high freq when two samples are not subsequent as they should that the resulting frequency is far above nyquist Feb 12 21:00:52 if it repeats stuff, this is a strong indication your samples inside your buffer are not properly ordered and sequential Feb 12 21:01:33 or something get mangled somehow, resulting in the same issue Feb 12 21:02:08 or your cpu is pegged maybe? Feb 12 21:02:20 Hi, i'm having trouble with Android Studio on Linux Feb 12 21:02:25 adq: how would i see that? Feb 12 21:02:26 when it goes too hard, producer slower than consumer, you have also this kind of glitch (buffer underrun) Feb 12 21:02:47 adq: are you sure it’s not about the locking thing? Feb 12 21:02:53 i have no idea man Feb 12 21:03:05 just giving you some more or less generic things to investigate Feb 12 21:03:06 I'm getting libGL errors, saying it's unable to load drivers Feb 12 21:03:11 but the files it's looking for exist Feb 12 21:03:56 the general idea is that there’s always one buffer being generated before starting playback of the last buffer available Feb 12 21:04:09 so how can there be underrun Feb 12 21:04:58 if your one buffer being generated in advance takes too much time, the consumer still wants to "eat" something and if there is nothing, unpredicatble behavior Feb 12 21:05:03 maybe you could try with a circular buffer Feb 12 21:05:17 but still, you should know if you produce much faster than it consumes Feb 12 21:05:29 which should not be a problem if you just feeding raw pcm samples Feb 12 21:05:45 because it costs far less than generating audio in real-time like with virtual analog oscillator & other audio dsp stuff Feb 12 21:06:40 you could make a test case (don't hear it) with know values/samples sequentially incremented in your buffer Feb 12 21:06:44 adq: i’ve tested a bit, it’s possible to generate 45 seconds of audio in 1 second, so that should be ok Feb 12 21:06:47 so you could test if you indeed get the correct order in the output Feb 12 21:07:15 it's a bit more complicated than that, imagine the cpu is under a huge load because of other stuff happening in the os or in your app Feb 12 21:07:38 even if in the average or best cases, there is no issue, it might from time to time suffer or being frozen because of gc or who knows what Feb 12 21:07:45 but again, you have ot investigate that Feb 12 21:07:57 or if bad locking Feb 12 21:08:45 this is rarely trivial when it comes to audio dsp anyway, and i strongly recommend you look at what superpowered sdk Feb 12 21:09:00 they really make something decent as a boilerplate for openSL Feb 12 21:09:06 (among other things) Feb 12 21:09:44 adq: i was just looking a that, thanks!! Feb 12 21:10:20 good luck niekniek Feb 12 21:10:58 adq: one more question: do you know about Enqueue causing this by locking something? Feb 12 21:11:22 nope, but i never enqueued so much as like 45seconds Feb 12 21:11:31 i usually take in account the min buffer size supported, twice it Feb 12 21:11:46 and feed it with blocks lower than that but power of 2 Feb 12 21:12:14 i prefer to constantly feed little amount Feb 12 21:12:30 it's the only way you can achieve lower latency, but you might not be interested in that in your use case Feb 12 21:13:01 i’m asking this because the problems seems to get worse with 2 seconds then with 20 Feb 12 21:13:13 yeah but you said sometimes it repeats it Feb 12 21:13:25 which is a strong indication same bunch of samples are read twice Feb 12 21:13:36 no not like that Feb 12 21:13:44 only like the first 0.05 seconds Feb 12 21:13:54 ah the first start is very weird, depending on the device Feb 12 21:13:59 it's known as "cold start" Feb 12 21:14:21 best you can do is feed few amount of samples with silence first (0.0) Feb 12 21:14:27 wow Feb 12 21:14:29 and then start to feed the content you want Feb 12 21:14:53 if it only happens for the first buffers you play, i would not worry that much then Feb 12 21:14:58 i thought it happens regularly Feb 12 21:15:05 maybe i misunderstood Feb 12 21:15:06 i’ve been listening to this chiptune for abount 10 minutes now and it still happens most of the times Feb 12 21:15:37 so like every 2 seconds there’s an artifact or something Feb 12 21:15:45 be sure to test your output is indeed what you feed as input Feb 12 21:15:46 btw i’m logging to android studio Feb 12 21:15:58 does this take a lot of performance from ndk? Feb 12 21:16:02 uhh, if you dump Log.* regularly Feb 12 21:16:06 this will cripple your performance Feb 12 21:16:18 try without logging Feb 12 21:16:45 building without it... Feb 12 21:16:57 but if you just have logcat opened and you don't yourself dump very often log, this should not be a problem at all Feb 12 21:17:38 i have to go afk, so have fun! Feb 12 21:18:06 nope Feb 12 21:18:15 still clicking and stuff Feb 12 21:18:35 adq: well thanks a lot for the info!!! Feb 12 21:24:15 does jack compiler support data binding api yet? Feb 12 21:31:27 http://stackoverflow.com/questions/42193388/opencv-and-android-feautre-making-with-flann Feb 12 21:37:44 my android emulator with the android studio on linux is now segfaulting with no message Feb 12 21:38:06 I set LIBGL_DEBUG=verbose and didn't get any errors Feb 12 21:40:12 ok so GDB gave me something Feb 12 21:40:29 Thread 52 MainLoopThread received SIGSEGV Feb 12 21:40:44 from /usr/lib/x86_64-linux-gnu/dri/nouveau_dri.so Feb 12 21:41:50 I have no idea how to fix this Feb 12 21:50:00 is Kotlin worth learning? Feb 12 22:19:43 hm. i have to uses-permission BILLING, include IInAppBillingService.aidl, and answer "Yes" to Feb 12 22:19:46 Does your application have ads? Feb 12 22:20:09 if i want to have a single free app, with in-app purchase to disable ads Feb 12 22:20:22 otoh i could have a free version and a paid version Feb 12 22:41:21 adq: I removed all data and just add empty buffers now in the function that enqueues audio, but i hear cracks on my headset ~40% of the time! Feb 12 22:41:49 uh Feb 12 22:41:49 i don’t even calculate audio Feb 12 22:41:59 are you flushing the buffer with 0? Feb 12 22:42:11 tried it too Feb 12 22:42:23 because 0 is pure silence without any DC offset Feb 12 22:42:30 let me try Feb 12 22:42:35 have you noticed AS saves build.gradle on every keystroke? Feb 12 22:42:40 i know Feb 12 22:43:02 0.0 in float, if your buffer is short or byte, you need to convert it properly (might be signed or unsidnged int i don't remember) Feb 12 22:43:54 in all cases, you really need to inspect the output and see its content if you still hear crack Feb 12 22:45:19 bitkiller, not sure it saves it, but one keystroke will trigger "gradle files have changed..blablabla sync now" Feb 12 22:45:33 which is dumb af, especially when you add an empty space, or undo/redo Feb 12 22:46:31 i've just seen lots and lots of local history entries Feb 12 22:47:34 adq: i’ve been checking the values in the array, everything seems to be in order, first until last value in array have some value Feb 12 22:48:09 have made the array longer, to see if more data comes in when i calculate a second Feb 12 22:48:11 nothing there Feb 12 22:48:43 really difficult to find something back in time using the local history Feb 12 22:49:02 niekniek, well i don't really know more :x Feb 12 22:49:26 adq: I feel exactly like that emoticon... Feb 12 22:49:28 bitkiller, i rarely use the local history because it does not survive invalidate cache & restart (which is needed after half a day of heavy coding on AS lol) Feb 12 22:51:47 niekniek, keep digging, since you can reproduce it with empty buffers, you will find the cause sooner or later Feb 12 22:55:08 hello. I currently have qt creator ide installed for developing c++ programs and I was wondering if I can continue to use just this for android development and just install the required sdk files or if I will need to install android studio as well Feb 12 22:55:16 this is on linux Feb 12 22:55:36 adq: got any tips on how to create an array with 48000 16 bit values playing just one tone? Feb 12 22:56:05 yep, you need to generate a sin wave at like 440Hz or any other audible frequency Feb 12 22:56:21 it's pretty trivial, you just need to adjust the phase properly so it takes in account the samplerate and the frequency Feb 12 22:56:25 you will find many examples online Feb 12 22:56:40 adq: tried this one: http://stackoverflow.com/questions/17217829/sending-sine-wave-values-from-array-to-audio-output, don’t hear anything.. Feb 12 22:56:42 and of course, be sure to fill the array with the corresponding type (i like to work with float) Feb 12 22:57:02 (but usually array are short (16bits) or byte (8bits) Feb 12 22:57:03 ) Feb 12 22:57:28 between -32k and 32k here Feb 12 22:57:50 so you're at 48kHz 16bits and your array are short Feb 12 22:58:02 be careful with signed Feb 12 22:58:13 usually your short array will go from 0 to 64k if unsigned Feb 12 22:58:23 so you have to shift it properly, just be sure to handle properly your conversion Feb 12 22:58:53 you have to take in account the expected audio format Feb 12 22:59:00 for (i = 0; i < 96000; i++) wavebuf2 [i] = sin(2*3.1415*440/48000*i) Feb 12 23:00:15 also be sure to handle channels (in mono, every inc, in stereo it's interleaved for left & right) Feb 12 23:03:00 wavebuf2 [i] = sin(2.0*pi*phase); and make your phase increment at every sample with like phase = phase + x where x = 1.0 / (samplerate / 440) Feb 12 23:03:15 and wrap your phase when it goes beyond 1f, with if (phase > 1) phase = 1 Feb 12 23:03:31 i decomposed it a bit so you can understand better what's going on Feb 12 23:04:42 be careful with auto cast, always force floating, i had few surprises, so use 2.0 instead of 2, same for 440, use 440.0 Feb 12 23:05:02 because sometimes it does integer division instead of float, and because of that you don't get what you want Feb 12 23:05:55 and for perf reason, you can compute the phase increment only once, outside of the loop Feb 12 23:06:02 Java waits until the most critical time to determine everything should be an integer and hand you a shiny new zero. Feb 12 23:06:05 add is cheap Feb 12 23:06:18 it's not java but cpp ndk Dagmar atm Feb 12 23:06:27 but same apply, sometimes surprises Feb 12 23:06:40 It _is_ Java, although I'm being sarcastic Feb 12 23:06:54 this can really go bad, NaN is worst than cannot divide by 0 Feb 12 23:07:12 because it propagates like hell everwhere, and sometimes it's hard to find the cause Feb 12 23:07:29 adq: btw, i just realised my enqueuing is not the way i expected Feb 12 23:07:37 i just added another buffer in advance Feb 12 23:07:47 so calculate 3 audio blocks, enqueue them all Feb 12 23:07:51 well, if it's blocking that should not be an issue Feb 12 23:08:02 but still, good finding if that helps you Feb 12 23:08:08 well, the audio is not playing in that order Feb 12 23:08:20 i told you earlier to verify input versus output ;) Feb 12 23:08:39 adq: :) Feb 12 23:08:53 adq: but you said that’s the cold start thing? Feb 12 23:09:04 i said there are some known glitch, cpu lag at cold start Feb 12 23:09:08 oh by the way i said something wrong Feb 12 23:09:14 with if (phase > 1) phase = 0 Feb 12 23:09:19 ofc, not phase = 1 Feb 12 23:09:23 sorry Feb 12 23:09:29 because i’m suspecting it’s skipping the enqueued stuff Feb 12 23:09:33 how would i know that... Feb 12 23:10:04 well, it does not do it on all device, it's very weird Feb 12 23:10:16 i just remember i had this issue Feb 12 23:10:43 so feeding first 1 or 2 buffer with silence helped to avoid this cold start glitch Feb 12 23:10:57 and since my buffers are really tiny, usually, it's not a big deal Feb 12 23:11:09 if it’s skipping the queue the hickup can be caused by realtime calculating..... Feb 12 23:11:32 you really need a strong model between your consumer and producer Feb 12 23:11:48 it's a classic in audio dsp Feb 12 23:11:50 can i see the queue size left? Feb 12 23:12:05 i don't know, but you should not need it Feb 12 23:12:21 you should just feed the consumer as fast you can Feb 12 23:12:43 if you have a non blocking consumer, this is too difficult for me Feb 12 23:12:54 because everything must be synchronized properly Feb 12 23:12:59 adq: i’m trying to feed it but i’m not sure i am Feb 12 23:13:13 then start with a very simple example as you were doing, like playing a simple tone Feb 12 23:13:22 then later on replace it by what you want Feb 12 23:13:31 my goal is to have some buffers in place and add 1 more if the first one is played Feb 12 23:13:38 playing a pure sin will allow you to inspect the output and see any discontinuity too Feb 12 23:13:45 so i have 2 waiting in line already to be played Feb 12 23:14:11 but i’m not sure if it’s working.. Feb 12 23:14:28 you could use a blocking collection of buffers for that Feb 12 23:14:44 like a fifo Feb 12 23:15:09 everytime the consumer wants to eat a buffer, he pick one in a fifo Feb 12 23:15:22 and everytime the fifo is not full, you compute and add a buffer into it Feb 12 23:15:45 or a circularbuffer, or etc.. there are too many data structure it's up to you to choose Feb 12 23:16:13 if you're new to this, it will not fly but you will learn and at some point it will work Feb 12 23:16:25 adq: yeah, afaik that is what SLAndroidSimpleBufferQueueItf does Feb 12 23:16:41 but i have no evidence... Feb 12 23:17:12 eheh cannot help you more sorry, also i think i said all i had too, it's in your hand now Feb 12 23:18:36 W/libOpenSLES: Leaving BufferQueue::Enqueue (SL_RESULT_BUFFER_INSUFFICIENT) Feb 12 23:18:52 adq: no problem, going to sleep anyway… figth on tomorrow Feb 12 23:19:01 adq: once again thanks a lot Feb 12 23:19:12 no worry Feb 12 23:19:58 someone use opencv? Feb 13 00:00:18 how expensive is StaticLayout Feb 13 00:00:21 in terms of memory Feb 13 00:02:45 say, can I keep 30000 of them around Feb 13 00:23:10 mniip, profile and measure, but 30000 seems stupid Feb 13 00:26:46 I suppose I could store only the heights, but then I'd have to create actual layouts during drawing Feb 13 00:28:02 Perhaps you should describe what you're actually doing, because the approach you're taking seems insane Feb 13 00:28:10 We can probably tell you a very simple way to do it. Feb 13 00:31:17 Dagmar, really trying to draw a load of text Feb 13 00:31:55 i don't see how you can feet 30000 "text" in a one screen Feb 13 00:31:58 fit* Feb 13 00:32:14 it scrolls Feb 13 00:32:25 then you probably want a recyclerview Feb 13 00:32:46 it will only display what is needed, and you can have easily more than 30000 "text" in memory Feb 13 00:33:02 hmm Feb 13 00:33:32 and if text grows even bigger, you can always back it with on disk storage and pull what you need Feb 13 00:35:02 it does management via SIS doesn't it Feb 13 00:35:46 as in, disposed views are saved and recreated from SIS Feb 13 00:36:04 what is SIS? Feb 13 00:36:21 anyway it's agnostic to it i believe, just read about it Feb 13 00:37:18 savedisnstancestate Feb 13 00:37:49 hmm Feb 13 00:37:56 that does look good Feb 13 00:38:07 where's the catch Feb 13 00:38:51 ah, v7 Feb 13 00:45:24 I need to interact with a restful API as a part of a project I'm working on. Part of that project will be interacting with said API from android. Do any of you recommend a particular library or manner of interacting with RESTful APIs from Android? Feb 13 01:02:50 scott_tams: retrofit Feb 13 01:14:09 http://imgur.com/a/gz8mI having fun with canvas and putting the cpu on its knees :x Feb 13 01:15:45 nifty! awesome color scheme Feb 13 01:26:51 Hey all. Feb 13 01:28:09 I'm trying to get started with NDK and downloaded a sample.. gradle never finishes. Feb 13 01:28:46 In AS it let me use a sample, but it seems to not work? Feb 13 01:29:15 Has anyone encountered this, and if so, does anyone know how to fix it? Feb 13 01:31:54 anyone use OpenCV? **** ENDING LOGGING AT Mon Feb 13 03:00:01 2017