**** BEGIN LOGGING AT Wed Feb 20 02:59:58 2013 Feb 20 03:11:47 how can i obtain the numbers from a android:inputType="numberDecimal" Feb 20 03:11:49 type view Feb 20 03:12:08 Float.valueOf(text.getText().toString())? Feb 20 03:12:28 Or new BigDecimal(text.getText().toString()) Feb 20 03:12:37 would the string inlude the decimal and numbers? Feb 20 03:12:45 yes Feb 20 03:13:26 achuinard: If i wanted to pass it through a shared property would I have to convert it to a long using putLong? Feb 20 03:13:34 and then Feb 20 03:13:34 Double.doubleToLongBits Feb 20 03:13:49 and i would retrive the converted bits later? Feb 20 03:14:49 store it as a string Feb 20 03:14:52 keep it simple Feb 20 03:15:17 achuinard: yeah but im doing math using what i got through the textview. should I make a for loop converting the string characters one by one to a double? Feb 20 03:17:11 agy2154: Double.parseDouble(string) Feb 20 03:18:22 Double being the name of the variable which is a double? completenewbee Feb 20 03:19:32 no Double being a framework method http://developer.android.com/reference/java/lang/Double.html#parseDouble(java.lang.String) Feb 20 03:27:08 hello Feb 20 03:27:21 anyone here experienced with sqlite? Feb 20 03:27:38 most of us Feb 20 03:27:46 awesome Feb 20 03:28:04 so i'm working with a large database, and i'm implementing search functionality out of that database Feb 20 03:28:14 when I execute a query say for the pattern "a" Feb 20 03:28:35 there are several hundred entries, which results in a very long wait time as the query executes Feb 20 03:28:50 I've implemented it in such a way right now that I use LIMIT and OFFSET Feb 20 03:29:02 can you pastbin your code? Feb 20 03:29:07 several hundered isn't a lot Feb 20 03:29:20 and how long is a very long time? Feb 20 03:29:22 but my observation is that say, if i use LIMIT 30 OFFSET 0, the query takes 9 seconds, if I use LIMIT 30 OFFSET 30 it takes 19 seconds, and so on Feb 20 03:30:03 what I'd like to do is execute the query for ALL results, but while results are being returned, update the corresponding listview every 30 items it finds Feb 20 03:31:12 dmalice: i think it has to find, and skip over, any rows that limit says to skip Feb 20 03:31:26 so the cpu half of the problem gets worse the more you skip Feb 20 03:31:36 right clever, that's exactly what I think is happening, which is how it's supposed to work Feb 20 03:31:56 the c level api runs the query in parts, each call to fetchrow will run a portion of the query Feb 20 03:32:07 so the cpu/io usage is spread evenly over the entire run Feb 20 03:32:17 sure Feb 20 03:32:24 but from what you said, it sounds like the java api is trying to get the entire result set before returning even 1 row Feb 20 03:32:51 yeah that's what I suspect is happening as well Feb 20 03:33:02 php and mysql do the same thing with the old api Feb 20 03:33:03 but 30 rows shouldn't take 9 seconds Feb 20 03:33:20 even on some huge data sets Feb 20 03:33:20 ive even seen a mysql_query call eat 2gig of ram, when memory_limit is set to 128mb Feb 20 03:33:30 it's searching through a ton of data to get those rows alex_PP Feb 20 03:33:34 the mysql lib doesnt obey the memory_limit Feb 20 03:33:38 the database is 190MB Feb 20 03:33:42 wow Feb 20 03:33:56 yeah, unfortunately i'm not in control of the database Feb 20 03:34:00 dmalice: what is the query? Feb 20 03:34:04 are you grouping and sorting? Feb 20 03:34:09 *or Feb 20 03:34:17 http://pastebin.com/6fQukm9X Feb 20 03:34:20 no grouping/sorting Feb 20 03:34:46 it's a select on a number of columns from a join on 3 tables Feb 20 03:35:28 dmalice: about all i can think of, select the rowid(sqlite provided) or _id(android provided) for every row all at once, no limit clause Feb 20 03:35:40 dmalice: and then insert those into a second table (possibly in a second db) Feb 20 03:36:01 then you have an index Feb 20 03:36:15 unfortunately i'm working with databases that also aren't the best maintained, so they haven't set certain foreign key constraints and other things properly, which means i also have to RTRIM(LOWER()) on every comparison, but i'm not sure if that uses a lot of cycles and is part of the problem Feb 20 03:36:38 can you clean up your data so you don't need to do 4 lowers and 4 rtims per row? Feb 20 03:36:40 clever, wouldn't that still require the initial query to run which could potentially take several minutes? Feb 20 03:37:00 infact, more than that Feb 20 03:37:02 yeah, it could be done just once in the background Feb 20 03:37:03 alex_PP I wish I could, but i'm the third-party android dev on this Feb 20 03:37:12 depends on how complex the queries are and how they change Feb 20 03:37:22 and i've asked that they clean up their DBs, but I can't rely on it actually getting done Feb 20 03:37:31 dmalice: if you dont have a primary key auto inc, then sqlite creates an invisible int auto_inc column called rowid Feb 20 03:37:35 i think that's your bottle necj Feb 20 03:37:41 infact, it's worse than that Feb 20 03:37:51 dmalice: if you do tell it to make an int auto_increment, it just becomes an alias for rowid Feb 20 03:37:56 clever: unfortunately the search must be run at user request since it's searching for the corresponding input phrase Feb 20 03:38:05 you could select from that table , do the trims and lowers, and store it Feb 20 03:38:12 dmalice: whole word or partial word? Feb 20 03:38:13 that should be most of that 9 seconds Feb 20 03:38:29 then use the new table for future operations Feb 20 03:38:45 has to be a %search_term%, ie match some part Feb 20 03:39:11 dmalice: so you want it to find 'ap' in things like 'i have an APple' ? Feb 20 03:39:18 alex_PP - the 9 seconds is only if I want only the first 30 results, there are likely in excess of 1000 results Feb 20 03:39:25 yes clever Feb 20 03:39:33 cant make a word based index then Feb 20 03:39:42 yeah, hence my dismay right now lol Feb 20 03:39:57 my point is, this will be faster with propper data, and you can create that propper data in a one off Feb 20 03:40:18 yeah, you could have a 5 minute 'loading db file' phase when you first add it to the system Feb 20 03:40:25 which repairs all the brain-dead damage Feb 20 03:40:25 og, no, that'll take ages as well Feb 20 03:40:37 if 30 rows == 9 seconds Feb 20 03:40:59 thats when doing a like '%abc%', it has to read each row, and do strpos() on it Feb 20 03:41:11 yeah alex_PP, then 60 rows == 18 seconds, 90 rows 27 seconds, etc. Feb 20 03:41:14 if you are just reading every row and processing it, it may go much faster Feb 20 03:41:52 see how fast a simple select * from tbl limit 0,1000; is Feb 20 03:42:38 clever, the bottleneck is the lower and trim in the join Feb 20 03:42:45 it has to do them over and over again Feb 20 03:43:06 yeah, the loading phase can repair that, and it would probly be faster if your not searching things on the way Feb 20 03:43:26 ah, you mean when loading the database, just go through and lower-case and trim everything? Feb 20 03:43:40 yeah, and similar fix-ups Feb 20 03:43:53 the problem with that is, ultimately when the results are returned, they must be in the correct case as they appear in the DB Feb 20 03:43:54 copy it to your own db file and repair all the mess as you do Feb 20 03:44:23 ah, then you would need to keep both versions, which then doubles your disk usage Feb 20 03:44:30 folks, is it possible to program a new dialer app? and if so is the android developer site the best place to learn? Feb 20 03:44:40 yeah there doesn't seem to be a great solution Feb 20 03:44:52 dmalice: one sec... Feb 20 03:45:58 dmalice: where nick like '%foo%' finds Foo, are you sure you need to lower things first? Feb 20 03:46:22 and you have a % on both sides, so rtrim seems pointless Feb 20 03:48:10 hmmm, good point with the RTRIM not being necessary on those cases Feb 20 03:48:40 I just looked up something and it seems like I can add COLLATE NOCASE ASC to my query and that will ignore cases? Feb 20 03:49:17 ah yeah, the comparisson will depend on the collate currently set, i guess my sample db is defaulted to a case insensitive one Feb 20 03:49:30 i havent delt with that much in sqlite, it 'just works' Feb 20 03:49:38 mysql is where the stuff gets messy for me Feb 20 03:51:38 testing without the RTRIMs and without the LOWERs with COLLATE NOCASE set Feb 20 03:51:38 dmalice: use ILIKE instead of LIKE Feb 20 03:51:46 ILIKE? Feb 20 03:51:54 dmalice: case-insensitive comparison Feb 20 03:52:39 uh Feb 20 03:52:44 LIKE is case-insensitive Feb 20 03:52:53 no it isn't Feb 20 03:53:05 are we talking about sqlite? Feb 20 03:53:07 well, maybe it is for sqlite :D Feb 20 03:53:18 hi Feb 20 03:53:20 it also is in mysql Feb 20 03:53:22 canadiancow: my mistake, you're correct Feb 20 03:53:24 pabs: i just tested it on one of my db's, and it was insensitive Feb 20 03:53:28 can anyone help me in rooting my galaxy nexus? Feb 20 03:53:31 canadiancow: it isn't in postgres Feb 20 03:53:35 i thought it was in mssql too Feb 20 03:53:41 i think postgres is the exception then :P Feb 20 03:54:01 but yeah, your comment definitely made me go check to be sure :P Feb 20 03:54:55 shaun413: #android-root Feb 20 03:55:05 noone is responding there Feb 20 03:55:11 I have a peculiar question. There is an app that is connecting to my site using a web view and I really really don't like that huge security hole. My question is, is there a way to detect the app other than through the header user-agent? Feb 20 03:55:11 canadiancow: it is in postgres (case-sensitive), i just checked Feb 20 03:55:12 thought someone here may know Feb 20 03:55:16 ok, but that isn't for here shaun413 Feb 20 03:55:18 anyway sorry! Feb 20 03:55:32 wordToDaBird, not really Feb 20 03:55:33 ok Feb 20 03:55:35 why dont you want it connecting? Feb 20 03:55:38 how is it a security hole? Feb 20 03:55:40 it's just a browser Feb 20 03:55:48 because, shouldoverload Feb 20 03:55:49 well Feb 20 03:56:01 heh, so like is case-insensitive Feb 20 03:56:03 nice Feb 20 03:56:06 someone here may be able to help me install the proper android dk Feb 20 03:56:20 and you can do the connection and then pass the cookies to the webview Feb 20 03:56:21 shaun413: http://d.android.com has the getting started stuff Feb 20 03:56:39 ok Feb 20 03:56:44 sqlite> create table foo (a text); insert into foo values ('Hi'), ('hi'), ('ah'), ('aH'); Feb 20 03:56:46 httpurlconnection handle the connection yourself, you could detect whats being typed into the webview Feb 20 03:56:48 sqlite> select a from foo where a like '%h%'; Feb 20 03:56:50 Hi Feb 20 03:56:53 hi Feb 20 03:56:54 there are just tons of things I don't like about it. Feb 20 03:56:55 versus Feb 20 03:56:56 pablotron=> create table foobar (a text); insert into foobar values ('Hi'), ('hi'); select a from foobar where a like '%h%'; Feb 20 03:56:59 CREATE TABLE Feb 20 03:57:01 hi Feb 20 03:57:04 INSERT 0 2 Feb 20 03:57:15 (the former is sqlite and the latter is postgres) Feb 20 03:57:54 I want to block them on the back-end but the only option it looks like right now is block all of android which I definitely don't want to do. But, any solution that involves checking the header is very temporary since they can be faked so easily. Feb 20 03:58:35 ok, well it seems the RTRIM and LOWER functions weren't doing anything to affect the processing of the query anyway, my problem remains =/ Feb 20 03:59:24 hmm... Feb 20 04:00:07 wordToDaBird: its the users fault for using a nasty app with a webview, when they should have just used a normal browser Feb 20 04:00:24 what about javascriptEnabled(true) would that let me present anything to the user letting them know it is inauthentic? Feb 20 04:00:32 clever, users are always stupid as shit. Feb 20 04:01:00 end-users by definition don't know shit and you have to treat them like babies or they will get their identity stolen and blame you. Feb 20 04:01:04 wordToDaBird: if you can find the app on the play store and can find evidence its doing nasty things, it would be simpler to just report it to google Feb 20 04:01:31 block the app directly at the store Feb 20 04:01:39 I don't actually have proof that it's doing nasty things yet. I am going to have to dive deeper for that. Feb 20 04:02:15 canadiancow or pabs, do you know of a way to better execute a query on a very very large database and return results gradually? Feb 20 04:02:32 with setjavascriptenabled, I couldn't present like a pop-up to the user? Feb 20 04:02:33 no, sorry Feb 20 04:02:38 since using LIMIT and OFFSET simply linearly increases query execution time Feb 20 04:02:43 wordToDaBird, an app with a webview is a browser Feb 20 04:02:45 blast =( Feb 20 04:02:46 period. Feb 20 04:02:51 dmalice: *looks* Feb 20 04:02:54 unless you want to block browsers, yo ucant block it Feb 20 04:03:03 becuase i can change the user agent as eaisly as you can block it Feb 20 04:03:15 ?ea thats the problem that I hate. Feb 20 04:03:21 it is literally one line of code Feb 20 04:03:56 not even code just conn.setRequestProperty ("User-Agent" "I have a big dick"); Feb 20 04:04:03 does anyone here have a "new" samsung phone on a gsm network and would be willing to run an app of mine that requires no permissions? Feb 20 04:04:09 wordToDaBird, let's try to keep it clean ;) Feb 20 04:04:21 i thought that was clean? but k Feb 20 04:04:44 dmalice: if you don't need the results sorted then limit is quite a bit faster Feb 20 04:04:49 dmalice: not that that helps you Feb 20 04:05:08 (the sorting is what takes forever) Feb 20 04:05:37 is there a way to specify in query to only start looking past a beyond a certain row#? Feb 20 04:06:03 dmalice: rowid might work, would need to do tests Feb 20 04:06:21 dmalice: if you dont specify order by, then i think it sorts by rowid automaticaly (thats the order it searches in) Feb 20 04:06:24 so rowid is created automatically when you join a bunch of tables? Feb 20 04:06:38 rowid is a hidden column on all rows, auto_increment integer Feb 20 04:07:07 so you could use it with a where clause to skip rows in an efficient manner, if you know what rowid you stopped at Feb 20 04:07:09 and, in theory, if the exact same join is executed several times, will the resultant table always be the same or could it change? Feb 20 04:07:18 it's a hidden column in all tables, if you're joining it'll be ambiguous unless you refer to a specific table Feb 20 04:07:35 sorry, it's a hidden column in each table Feb 20 04:07:38 mysql refuses to run the query if it isnt sure which rowid you want Feb 20 04:07:52 not sure on sqlite, its more lax Feb 20 04:07:53 right, i'm saying sqlite will do the same thing Feb 20 04:08:43 dmalice: hmmmm, let me read the java source for SQLiteDatabase Feb 20 04:09:44 sqlite> create table a (t text); create table b (t text); select rowid from a join b using (t); Feb 20 04:09:47 Error: no such column: rowid Feb 20 04:10:15 versus this (with a table reference) Feb 20 04:10:16 sqlite> select a.rowid from a join b using (t); Feb 20 04:10:16 sqlite> Feb 20 04:11:21 hmmm i feel like we are onto something with rowID Feb 20 04:11:47 dmalice: have you considered indexing the lowercased text? that might speed up your queries Feb 20 04:11:58 if i select rowID, and then save the last rowID of the last result returned with my limit, then instead of picking offset, specify rowID > lastRowID Feb 20 04:12:17 in the where clause... Feb 20 04:12:51 yeah, then it can skip to the right spot using the fast rowid, then start a slow LIKE clause Feb 20 04:12:55 until it finds x rows Feb 20 04:13:13 yeah Feb 20 04:13:29 then at least in theory, each query will take the same amount of time, rather than a linearly increasing amount of time? Feb 20 04:13:45 well, roughly the same amount of time, depending on # of records it has to go through to find 30 Feb 20 04:13:51 pretty much, the rowid is much faster Feb 20 04:13:55 i think its going thru a tree Feb 20 04:14:08 sir, you may have solved a huge problem for me, will implement and test and report back Feb 20 04:14:13 so it will usualy be a fixed number of pages needed to find any row Feb 20 04:14:26 ive also gone overboard with my sqlite performance testing Feb 20 04:14:29 that's going to change in the future, not that you care Feb 20 04:14:40 i made a sqlite app in c, that implements a custom FS driver for sqlite Feb 20 04:14:51 letting me trap and count every single io call Feb 20 04:15:04 so i can run a query 1, 5, 10, 100 times, and measure how much io its doing Feb 20 04:15:13 and compare stuff to death Feb 20 04:15:40 as for the android sqlite api, it appears to route all querys thru http://privatepaste.com/c7a67a3296 ... Feb 20 04:16:31 i think the key is inside SQLiteCursor Feb 20 04:17:33 HUZZAH Feb 20 04:17:41 clever: there's a rawquery too i believe Feb 20 04:17:41 rowid made it tons faster? Feb 20 04:17:53 pabs: rawQuery calls the code in the pastebin Feb 20 04:17:54 yeah, no longer a linear growth in query time Feb 20 04:18:11 pabs: and everything else probly leads there as well Feb 20 04:18:46 now each call to get the next 30 results is roughly 9-10 seconds consistently Feb 20 04:19:18 do you have a smaller sample of the db i could download? Feb 20 04:20:47 are you asking me clever? Feb 20 04:20:51 dmalice: yeah Feb 20 04:21:25 unfortunately i do not, it's client data that i don't think my contractor would want me to share Feb 20 04:21:31 ah Feb 20 04:21:33 the database is a total mess Feb 20 04:21:42 dmalice: let me get you a copy of my sqlite profiler Feb 20 04:22:00 this is not the first database formatting related problem i've had to deal with Feb 20 04:22:26 dmalice: http://privatepaste.com/cbc7c989a6 Feb 20 04:22:34 earlier the client was reporting errors because there were duplicate entries in the databases except in the duplicate entries, key columns were reversed Feb 20 04:23:07 something like, ITEMNO = abcd corresponds to MANITEMNO = defg Feb 20 04:23:17 dmalice: basicaly, edit this code (near line 141), compile and link against sqlite3 Feb 20 04:23:29 dmalice: and you can run a query against your 160mb file Feb 20 04:23:30 but there would also be an entry in the table where ITEMNO = defg and MANITEMNO = abcd even though there wasn't supposed to be Feb 20 04:23:39 and it will print various stats, like how many io reads you had to do Feb 20 04:23:43 so you can compare 2 queries Feb 20 04:24:15 a lot of the stats and config are hard-coded, no cmd line args Feb 20 04:24:51 the code in the pastebin will run a query 160 times, then avg the stats over them, and sqlite should cache reads after the first pass Feb 20 04:25:00 but all of it can be tweaked if you know waht the code does Feb 20 04:27:50 are you suggesting i build this into my app as native code for testing on the device or just run this desktop side Feb 20 04:27:58 just run it desktop side Feb 20 04:28:03 to compare different queries Feb 20 04:28:08 then put the best one into the app Feb 20 04:28:34 ah ok, i will do that when i get a chance, thanks Feb 20 04:28:44 i have a couple more bug fixes i need to get out to the client tonight though Feb 20 04:28:51 i can see that 'select count(*) from bases' (returns 98393), required 86 read calls, totaling 2.5mb Feb 20 04:28:54 the db itself is 59mb Feb 20 04:28:55 query optimization is my least favorite thing Feb 20 04:28:55 lol Feb 20 04:29:07 and thats running the same query 160 times in a row Feb 20 04:29:47 mmm i see Feb 20 04:30:12 i'll definitely take a look at it probably tmrw night Feb 20 04:30:14 if i try select sum(randomcol) from bases, it took 1.6 seconds on the first pass, then the cache took over, and the next 159 calls took 0.1 sec Feb 20 04:30:20 and it did a total of 269 reads Feb 20 04:30:30 in any case, thanks a lot celever and pabs Feb 20 04:30:52 clever* Feb 20 04:31:21 and as always, god bless the android community Feb 20 04:31:51 dmalice: i wrote that c app to optimize queries in a firefox extension, using js Feb 20 04:32:03 the api in that is much closer to the c one, doesnt run the query all at once Feb 20 04:34:06 ahhh ok Feb 20 04:34:21 should still give a good indication of how many reads are being performed though Feb 20 04:34:33 dmalice: hmmm, from what i can see in the java code, its filling the cursor in 'windows' Feb 20 04:34:51 not sure, but im guessing its fudging with your limit clause, to fetch things in smaller chunks (of an unknown size) Feb 20 04:35:02 to balance the tradeoff between getting 1 row at a time, and getting it all at once Feb 20 04:35:32 the windowing is to make sure no more than 1meg is read at a time Feb 20 04:35:33 at a glance, the Cursor api appears to use that for everything Feb 20 04:35:53 g00s: yeah, ive seen the mysql lib in php do horrid things Feb 20 04:36:06 g00s: it ate 2gig of ram once, because i did select * from tbl, on 2gig of data Feb 20 04:36:16 :) Feb 20 04:36:28 it completely ignored the memory_limit in php, because the allocation was done purely in the mysql lib Feb 20 04:36:42 but mysql_unbuffered_query fixed it, and improved thruput massively Feb 20 04:37:29 g00s: do you happen to know what the window size is? Feb 20 04:37:38 the way this used to be implemented, maybe it has changed, is that if the selection was more than 1 meg, the first meg would be loaded - and when you crossed the boundary it would load the next meg. but this loading was a major pause Feb 20 04:37:49 i'm pretty sure its 1 mb Feb 20 04:38:24 iterating backwards over a window boundary was worse than iterating forward over one Feb 20 04:38:26 dont see how it knows what 1mb is, it appears to simply give fillWindow row positions Feb 20 04:38:39 there is some native code there, i can't remember Feb 20 04:38:47 it gave me a headache, honestly Feb 20 04:38:53 yeah, it eventualy leads to nativeExecuteForCursorWindow for sqlite Feb 20 04:39:23 which actualy does the raw sqlite3_step calls Feb 20 04:39:58 hmmm, its not resetting or preparing at all, just calling step Feb 20 04:39:58 but i always wondered. the implications of this, was that you could do all the right things and query on a non-ui thread, move to the first row to fill the window - but once you crossed the boundary, that pause would screw you anyhow Feb 20 04:40:31 oh, but public int executeForCursorWindow makes a new statement for each window fill Feb 20 04:40:58 g00s: yeah, it looks like you would need to copy everything from cursor->ArrayList, in the bg Feb 20 04:41:01 then pass that to fg Feb 20 04:41:17 android memory can get pretty fragmented when you do that a lot Feb 20 04:41:28 the GC is not generational, so , gotta be careful Feb 20 04:41:35 non-compacting Feb 20 04:41:54 which then increases memcpy calls, due to loading sqlitecache->c vars->java->cursor->array Feb 20 04:42:31 it would be better to skip the cursor, and just load the rows directly into my own array Feb 20 04:42:39 more like the c (and mozilla xpcom) api Feb 20 04:43:17 but my current code is much much worse, Adapter.getItem does a SELECT * FROM tbl LIMIT 1 Feb 20 04:43:33 g00s: you know how bad that can get? Feb 20 04:44:44 can someone here hop on android-root and helop me? Feb 20 04:45:10 clever: the fragmentation can get bad enough you oom Feb 20 04:45:23 the window refills can pause more than 5 seconds Feb 20 04:45:25 it gets bad Feb 20 04:45:51 g00s: in my case, it should be making an entirely new cursor for every row in a ListView, so i dont see how it would be refilling windows Feb 20 04:46:09 oh, not for your case specifically - i just meant in general Feb 20 04:46:21 but now that i see the cursor code, i have to wonder, could i just make a single Cursor, select * from tbl Feb 20 04:46:36 and just .requery it when data changes, and use .moveTo() to fetch rows Feb 20 04:46:45 then fillWindow may grab things in bulk for me, and speed things up Feb 20 04:47:10 would that work? Feb 20 04:47:41 requery i think is deprecated, right ? Feb 20 04:48:54 *looks* Feb 20 04:49:31 g00s: yep, since api 11 Feb 20 04:50:19 g00s: the docs imply that requery runs the query and may block, but from what ive seen in the source, it just nukes a cache Feb 20 04:50:33 and nothing happens until you try to access a row it hasnt cached, and has to fill the window Feb 20 04:56:22 g00s: i should probly run my sqlite profiler code on the db Feb 20 04:56:39 dont remember all the specifics Feb 20 04:57:53 hmmm, select count(*) causes 872 reads totaling 0.850mb Feb 20 04:58:40 which doesnt make sense, select count(*) on a 98k row table (made by something else) took 86 reads Feb 20 04:58:51 but on a 12k row table from android, 872 reads! Feb 20 04:58:57 i think select count just has to read all the rows Feb 20 04:59:22 i mean, all the nodes in the btree Feb 20 04:59:33 not like it loads all the data from each row Feb 20 04:59:51 yeah, but why would android get 14 rows per read() and the desktop db count 1144 rows per read call? Feb 20 05:00:03 something is clearly different between the 2 db files Feb 20 05:00:22 the desktop db got 2.5mb in 86 read calls, while android got 0.85mb in 872 Feb 20 05:00:29 its making tons of smaller reads Feb 20 05:01:00 you may want to take a look at the sqlite / android makefile to see what special flags they compile with Feb 20 05:01:31 i actually liked H2 better, but their performance was slightly worse Feb 20 05:01:36 it appears to be config within the db, copying the file to the desktop and using stock sqlite3 builds is showing the 'bad' performance Feb 20 05:03:35 g00s: if i'm reading this right, the desktop db with good performance, has 32kb pages in sqlite (hard upper limit) Feb 20 05:03:51 the android app has pages that are 1024 bytes large Feb 20 05:04:06 so to get the same ammount of data (exact same rows), it has to do 32 times as many reads Feb 20 05:04:57 "Java Virtual Machine Specification, Java SE 7 Edition, The, 3rd Edition" just released; always fun stuff when you're bored ;) Feb 20 05:05:00 and the math agree's (mb read/read calls) Feb 20 05:05:24 so the reason for such a drastic difference, is purely page size, which i can set when i create the db Feb 20 05:05:57 but i'm not sure i would want to read 32kb pages on a mobile device, and all writes are likely to be in page size Feb 20 05:06:04 so id wear the flash out faster, in theory Feb 20 05:07:05 that reminds me, samsungs' F2FS was included in the mainline kernel 3.8 Feb 20 05:07:20 g00s: doh! Feb 20 05:07:32 i didnt have the index in SQLiteOpenHelper.onCreate, only upgrade Feb 20 05:07:39 so the reinstall lacks an index on the table Feb 20 05:07:41 doh, indeed ! Feb 20 05:07:53 doing a select with a where clause, took the exact same 872 reads Feb 20 05:08:00 no performance improvement Feb 20 05:09:43 g00s: after fixing the index, its down to 92 read calls with an empty buffer Feb 20 05:09:54 0.85mb -> 0.088mb Feb 20 05:10:32 much better Feb 20 05:11:36 ui still hangs a bit if i scroll too fast, but its better then it was before Feb 20 05:14:37 g00s: hmmm, FROM ChatLogs WHERE tag = "@A" LIMIT 10000,1 shows signs of what dmalice was seeing Feb 20 05:14:51 g00s: the more rows i skip, the more pages it has to read Feb 20 05:15:24 peaking at 88 pages for 8000 skipped, when 0 skipped was only 9 Feb 20 05:15:38 and it will only get worse as the db grows Feb 20 05:18:00 only solution i can see, is to use the same rowid trick, which will require a seperate table for each tag, so the id's match position Feb 20 05:20:31 bbl Feb 20 05:33:14 anyone used phonegap? Feb 20 05:34:28 tetradev: #phonegap Feb 20 05:35:05 thanks Feb 20 06:06:53 StingRay_: you'd probably like this http://www.youtube.com/watch?feature=player_embedded&v=p6NNQ3VAb3w Feb 20 06:06:59 mind boggling Feb 20 06:12:13 g00s: mind boggling ? Feb 20 06:12:26 to my small mind :) Feb 20 06:12:42 :) Feb 20 06:12:53 i was impressed with all the photos they had to take Feb 20 06:13:14 I went on the piss and got stoned around amsterdam with ILM TD for all the star wars films Feb 20 06:13:20 quite amusing Feb 20 06:14:46 g00s, cool movie Feb 20 06:14:58 I mean trailer (movie I havent watched) Feb 20 06:15:06 :) Feb 20 06:15:32 but for the new york, it must be about 999th time someone makes digital model of new york Feb 20 06:16:01 not so efficient to be honest Feb 20 06:16:03 squ: you know it's copyrighted too Feb 20 06:16:13 as in you have to pay new york Feb 20 06:16:32 really? :) Feb 20 06:16:35 there is a skyline , silhouette copyright Feb 20 06:16:39 no way Feb 20 06:16:48 I know cause I've worked on new york digital model too Feb 20 06:16:49 wuuut O.o Feb 20 06:16:52 :) Feb 20 06:17:06 you pay the "city of new york" Feb 20 06:17:16 nice Feb 20 06:17:17 stupid Feb 20 06:17:32 how much? Feb 20 06:17:46 dunno, I wasn't the bean counter Feb 20 06:18:00 it must be symbolic price, like 1 cent Feb 20 06:18:11 I was the dude that was responsible for any or all art production mistakes Feb 20 06:18:15 squ: no Feb 20 06:18:16 because a penny ain't worth a cent Feb 20 06:18:23 I remember it being a fair fee Feb 20 06:18:30 if I recall Feb 20 06:18:31 or individual, as for movie it is bigger Feb 20 06:18:37 others less Feb 20 06:19:07 writing a messaging system seems so much simpler b4 I stated Feb 20 06:19:09 :( Feb 20 06:19:32 StingRay_: re-inventing middleware :) ? Feb 20 06:19:43 nope Feb 20 06:19:49 doing something diff Feb 20 06:19:51 :) Feb 20 06:20:05 tis not for your run of the mill socialite Feb 20 06:20:22 or what I like to call "13 year old girl syndrome" Feb 20 06:20:29 not for them at all Feb 20 06:20:31 :) Feb 20 06:22:04 do you guys have a work offer for starting android developer (me) ? Feb 20 06:24:20 squ: what's your native language? Feb 20 06:26:38 well, guess you're not interested in the job I might potentially have for you. Feb 20 06:28:06 pragma-, I need a full-time which might replace my current Feb 20 06:28:16 not a task :) Feb 20 06:29:07 do you mean spoken lang? Feb 20 06:44:59 any intelliJ users here ? Feb 20 06:52:05 If I say me, are you going to ask hard questions? Feb 20 06:52:19 well I would hope they would not be all that hard Feb 20 06:52:30 just I dont want to invest time in learning/setting up Feb 20 06:52:45 Oh, setup is easy, very similar to eclipse Feb 20 06:52:55 well no, can I have this Feb 20 06:53:11 http://dl.dropbox.com/u/80096154/monitors.png Feb 20 06:53:17 3 monitors Feb 20 06:53:26 nice layout across all Feb 20 06:53:47 cause if the answer is no, then not worth me even starting to look at it Feb 20 06:53:58 holy crap ! heh - not sure off the top of my head ... lemme look Feb 20 06:54:05 :) Feb 20 06:59:18 nothing obvious jumps out - how do you even wire that third one? Feb 20 07:00:01 well it's just views from ddms Feb 20 07:00:15 you should see the debug views :) Feb 20 07:00:58 the space on the far right is normaly an AVD or 2 Feb 20 07:01:04 or this chat :) Feb 20 07:01:11 a browser with porn Feb 20 07:02:14 I see.... window switching is just too complex :p Feb 20 07:02:22 well no Feb 20 07:02:34 just I like to see everything Feb 20 07:02:46 and this is my rig for highend compositing neways Feb 20 07:02:48 :) Feb 20 07:03:05 there is another monitor and a broadcast deck that is not enabled in that shot :) Feb 20 07:03:23 but only need 3 for android dev stuff Feb 20 07:05:37 capella: ff 19 is even more broken then before on d.android.com, at least for me :) there is no way i can scroll the leftmost panes - mouse wheel or gestures Feb 20 07:05:53 chrome works fine Feb 20 07:06:20 and safari work fine too Feb 20 07:07:05 Odd ... though I've lost track of realease dates, I thought 19 was coming out as we speak ... Feb 20 07:07:33 :) nice release otherwise Feb 20 07:08:15 https://wiki.mozilla.org/RapidRelease/Calendar Feb 20 07:08:53 (if thatll open for you) Feb 20 07:09:23 yeah Feb 20 07:09:51 So you just got the release? What OS? Feb 20 07:10:06 19, OS X 10.7 Feb 20 07:10:43 OS X ... oh yah - we spoke before Feb 20 07:10:50 actually, it seems like the same behavior. in all honesty, i think after google redesigned the d.android.site (from the really old one) those left panes with scrolling stuff acted kinda weird in chrome too Feb 20 07:11:09 Also, best I can tell Australis is being phased in not as one big release Feb 20 07:11:10 but, seem ok now and nobody else complains Feb 20 07:12:25 Yah, have you tried our irc developers channel? I had someone tell me last time he coupldnt repro your issue ... Feb 20 07:12:27 have you installed with a clean profle and tested? (No addons etc) Feb 20 07:12:41 yes, i always install from clean profile ;) Feb 20 07:13:11 no worries, i;ll try there maybe. thanks capella Feb 20 07:13:21 Ok ! Feb 20 07:14:03 http://irc.mozilla.org/ try #developers Feb 20 07:14:23 yup thx Feb 20 07:14:42 surprised they aren't on freenode Feb 20 07:15:01 mozilla developers? Feb 20 07:15:26 Hey, so I got a new computer, and I just installed eclipse on it. What's the best way to transfer all my android stuff onto it? Should I manually install the android sdk and adt? or can I just transfer those? Feb 20 07:16:24 I don't know IRC maintenance but mozilla probably doesnt want 1000 people chatting about cats Feb 20 07:16:38 Does anyone know if it is possible to unlock a LG Lucid vs840? Feb 20 07:17:32 try #android-root or xda-developers Feb 20 07:18:23 been here with this question a couple of times and never got a good answer. is there any argument against passing variables to activities through some static object instead of passing them through bundles Feb 20 07:19:11 like passing a list to some other activity by setting a static object and getting it when the target activity has started Feb 20 07:19:41 sure is, its basic lifecycle stuff in the docs Feb 20 07:20:21 can you elaborate Feb 20 07:20:32 hint: they didn't inflict us with that stuff (parcelable & bundles) for the hell of it Feb 20 07:21:37 sure, well, lets say activity A starts B and prior to start, sets your so called static object. if the user presses home, and the process gets killed, and then user goes back to your app - B will be recreated but that static object will be null Feb 20 07:21:50 this is all in the docs under activity lifecycle Feb 20 07:25:41 as a non android user myself. how is he supposed to go back to activity b if the process is killed and its gone from the active app list Feb 20 07:29:33 balls2thewall: you should read that intro stuff Feb 20 07:30:20 its also hard relating when you aren't a user ;) Feb 20 07:30:55 afaik its impossible to terminate an app by yourself and it might get "killed" by the os but if thats done its gone from the app list. Feb 20 07:31:19 so what way is there, in your example, to start off from ativity b again Feb 20 07:37:41 Hi all, is it normal to add a horizontal ScrollView to an Actionbar? Feb 20 07:38:13 hello guys I need to wait for several responses shall I put the requests in an AsyncTask or what ? (http) Feb 20 07:38:50 thepoosh, i wouldn't call it normal Feb 20 07:39:21 that's what the action overflow is for Feb 20 07:40:03 tagrudev: yes Feb 20 07:40:04 there is a chatroom, Feb 20 07:40:22 and in that chatroom, in the actionbar, there is a list of all the users is the room Feb 20 07:40:27 jeppy' Feb 20 07:40:28 If anyone wants to collect some preciouz karmaz: http://stackoverflow.com/questions/14969506/facebook-session-singleton-usage Feb 20 07:40:36 jeppy` Feb 20 07:40:42 what Feb 20 07:41:14 [09:40] there is a chatroom, Feb 20 07:41:14 [09:40] * etcetera (~etcetera@about/csharp/regular/etcetera) has joined #android-dev Feb 20 07:41:14 [09:40] and in that chatroom, in the actionbar, there is a list of all the users is the room Feb 20 07:41:20 ^^ Feb 20 07:41:40 the issue is, that I want to create this design with ABS Feb 20 07:41:55 'cause I support 2.3 and up Feb 20 07:42:39 why would you use a horizontal scrollview for that? Feb 20 07:44:21 well, I need a ListView that scrolls horizontaly, for now I'm using Gallery but it has been deprecated Feb 20 07:44:35 but I'm also not using an ActionBar Feb 20 07:44:57 no it has been decided to integrate an action bar and the issues just started Feb 20 07:45:18 the ABS examples show you how to add custom views to the action bar. Feb 20 07:45:55 I'll take a look Feb 20 07:49:16 thepoosh, it may cause terrible usability Feb 20 07:49:28 from the sound of it anyway Feb 20 07:55:19 jeppy: the product manager is pretty sure this is what he wants Feb 20 08:51:14 I have an issue which annoys me a lot spending two days try to fix it by i couldn't , also i don't expect my self a newbie in android development. So i am getting mad with it. please help me. the issue is while trying to get the location of my HTC One X device using CdmaCellLocation Feb 20 08:52:53 I am able to get it when i am using GSM network and i can get the exact cell ID and Lac ID, but when i turn my device to use CDMA and change my code to cast the CellLocation object to CdmaCellLocation object, and exception is thrown saying ClassCastException cannot cast GsmCellLocation to CdmaCellLocation ???? Feb 20 08:55:21 devsherif: it's because of the cast. You should instead get a fresh CdmaCellLocation Feb 20 08:56:44 CdmaCellLocation and GsmCellLocation are different types and have different interfaces Feb 20 08:57:57 Is 1.33 usually the smallest aspect ratio we need to take into account? Feb 20 08:58:36 apple741: doesn't Xperia Mini have 1.0? Feb 20 09:00:28 Just checked its 1.5 Feb 20 09:00:38 So I think 1.33 is the smallest? Feb 20 09:03:19 If anyone wants to collect some preciouz karmaz: http://stackoverflow.com/questions/14969506/facebook-session-singleton-usage Feb 20 09:05:06 apple741: seems so, it was X10 Mini that I was thinking about, but it had 240x320 Feb 20 09:07:01 p_l: I tried a lot to get a fresh CdmaCellLocation but i could, can you give me a tip how to get it Feb 20 09:09:32 oh i like android 4+ much, and developers should really care to not piss of users with notifications. again an app blacklisted for notifications, because it didn't gave me (easy) ability to switch its notification of (and they are with sound!) Feb 20 09:09:36 how similar is c++ to java ? Feb 20 09:09:53 Baning my head to the wall with this one. Please help me stop => http://stackoverflow.com/q/14962490/927408 Feb 20 09:09:53 StingRay_: c++ is a bit "harder" since you have to take care about all the memory management yourself Feb 20 09:10:05 no garbage collector (usually) which cleans up Feb 20 09:10:08 timroes you can go to settings -> apps and disable notifications on a per app base, I think Feb 20 09:10:13 StingRay_: not much Feb 20 09:10:13 timroes: eww Feb 20 09:10:16 Chainfire: thats what i said :D Feb 20 09:10:26 i just blacklisted the app for notifications :) Feb 20 09:10:30 StingRay_: also, C++ is an exercise in byzantine design Feb 20 09:10:31 oh haha Feb 20 09:10:36 I interpreted it as you blacklisted the app Feb 20 09:10:43 i.e., deleted it and will never install it again ;) Feb 20 09:10:55 StingRay_: and you have something called pointers, which uses stars. So if you fancy stars, c++ is the language for you Feb 20 09:11:08 StingRay_: in java you have primitive variables: stack / everything else pointer to heap. in c++ you can decide where to put, but ofc need to make difference between pointers (String*) and variables on stack (String) Feb 20 09:11:11 devsherif: you need to separately implement support for Gsm and Cdma, that's all Feb 20 09:11:44 jmaister thanks for that description.. I'm going to try and remember that one Feb 20 09:11:46 StingRay_: I'd say learn C well first, then consider how much of C++ you actually want to know Feb 20 09:11:58 and go at it without thinking about Java at all Feb 20 09:12:00 Chainfire: :D Feb 20 09:12:02 false friends et al Feb 20 09:12:16 StingRay_: and you will have a lot of funny syntax, since you also have to take care when calling something you are not trying to call it on the pointer (that actuall is just an address) but on the actuall object. so you can end up with statements having a lots of * and & in them :) Feb 20 09:12:36 p_l: I understand, but I cant get any CdmaCellLocation Object, i want to know how and then i will implement it separately. But i just want to know how to get a CdmaCellLocation Object Feb 20 09:12:54 was just a bit worried over the ubuntu platform ... and wondering since it's been quite a ride learning java Feb 20 09:13:00 StingRay_: (*(void(*)())0xff)(); Feb 20 09:13:05 thats a valid c/c++ statement :) Feb 20 09:13:20 pretty stars Feb 20 09:13:28 but more for embedded area, since it calls the function at location 0xff :) Feb 20 09:13:37 void(*)? Feb 20 09:13:52 cast it to a function pointer Feb 20 09:14:07 for afunction taking no arguments and returning nothing Feb 20 09:14:08 will the ubuntu sdk not have many c++ api/helpers etc for doing the brunt of UI/function though ? Feb 20 09:14:16 ah yes Feb 20 09:14:32 p_l: do i have to use TelephonyManager and get it using getSystemService(Context.TELEPHONY_SERVICE) as i did to retrieve GsmCellLocation ? or there is another way to retrieve CdmaCellLocation ? Feb 20 09:14:43 devsherif: first thing - why do you need GSM/CDMA cell locations? Feb 20 09:14:59 i must admit it was kind of an 'extreme' example, but would give a good clue with what you could end up in c++ :) Feb 20 09:15:27 templates is where C++ loses me - not enough experience yet Feb 20 09:15:42 StingRay_ C(++) is as hard and complicated as you want it to be. Clean C++ code looks clean and is easy to work with. Most real C++ code is a horrible mess nobody can make any sense of. All in all, if you code clean, it's not all that difficult Feb 20 09:15:44 devsherif: also, CdmaCellLocation loc = new CdmaCellLocation(); loc.requestLocationUpdate(); // should be all Feb 20 09:16:01 just make sure to dealloc what you alloc at the right time (memory management) and don't dereference null pointers... :) Feb 20 09:16:15 p_l: i am working in a telecom company and i am developing an application to get the customers cell_id and the signal strength the send it anonymously to the server to analyze and fix the weak points in the network Feb 20 09:16:16 so a little like objC Feb 20 09:16:19 Chainfire: don't forget "C++ actively works towards getting you to write that convoluted mess, or you end up with a spruced up C" Feb 20 09:16:27 Chainfire: and take care about all the other snares :D Feb 20 09:16:39 StingRay_: ObjC is saner, IMO Feb 20 09:16:42 you guys are so encouraging ! Feb 20 09:16:48 :) Feb 20 09:16:55 ObjC is not saner Feb 20 09:17:13 and opinionated :) Feb 20 09:17:14 it is perfectly possible to write clean C++ that is a boatload less weird than ObjC Feb 20 09:17:37 you just need to avoid all the weird things you *can* do, and stick to what you *should* do Feb 20 09:17:38 StingRay_: in our embedded lecture we had some chapter about C and the lots of lots of stuff you can do wrong :D Feb 20 09:17:40 StingRay_: I program in Lisp. It comes naturally ;) Feb 20 09:17:52 we had to find errors in seemingly very short and right c programs Feb 20 09:18:08 somearray[i++] = x; <--- see that i++? you're fired. Feb 20 09:18:47 hm? Feb 20 09:18:56 you can do your stuff wrong already with the simplest macros: `#define quad(x) (x*x) ` <-- bam error :D Feb 20 09:18:57 http://underhanded.xcott.com/ is fun for C Feb 20 09:19:43 in fact already two large errors in that short macro :D Feb 20 09:20:02 in embedded: *ptr1=1; *ptr2=2; // Now you should hope the fuck that you don't require those two writes to be in-order Feb 20 09:20:15 (and that's without Out-of-Order Execution in CPU) Feb 20 09:20:54 timroes they had me do that when I interviewed for ARM... twas fun. Feb 20 09:20:59 One word that will make all other languages seem great: PHP Feb 20 09:21:03 i believe that ;) Feb 20 09:21:07 jmaister: AMEN Feb 20 09:21:22 jmaister: although VBScript made me reconsider it Feb 20 09:22:07 p_l: I've never tried much microstoft stuff Feb 20 09:22:15 Fun read http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ Feb 20 09:22:20 StingRay_: if you want to make c++ right, you should be able to see why `#define quad(x) (x*x)` is wrong and in what ways it can fail :) and thats really a mess, since this is a very very easy example :D Feb 20 09:22:24 and yet so wrong Feb 20 09:22:29 ok , whats wrong with |#define quad(x) (x*x)| ? Feb 20 09:22:44 what do you get by quad(4+1) ? Feb 20 09:22:47 and what would you expect? :) Feb 20 09:23:13 in fact you get 4+1*4+1 = 9 Feb 20 09:23:16 but you would want 25 Feb 20 09:23:27 that's why macros based on text substitution suck Feb 20 09:23:33 so first step would be #define quad(x) ((x)*(x)) Feb 20 09:23:37 * p_l is a smug weenie Feb 20 09:23:45 but now what would you get by quad(i++) :) Feb 20 09:23:46 oh - so macros ubstitution Feb 20 09:23:47 myeah thats why you avoid macros unless there's no other sane way to solve something Feb 20 09:23:58 you wouldn't expect to have i incremented for 2 afterwards and not for 1 :) Feb 20 09:24:13 * StingRay_ things asking questions in here to simplify ones understanding is probably not a realistic goal Feb 20 09:24:18 thinks* Feb 20 09:24:19 so a beginning right macro should be Feb 20 09:24:38 static int _tmp; Feb 20 09:24:38 #define quad(x) (_tmp=(x), _tmp * _tmp) Feb 20 09:24:48 and i guess that can fail if you have a a lot of multithreading :D Feb 20 09:25:37 not sure Id call that an error, vs. a hard to understand macro behaviour Feb 20 09:25:41 Hi, suddently I get "Installation error: INSTALL_FAILED_UID_CHANGED" if I try to install my app via eclipse Feb 20 09:25:47 i only caught glimpses of a recent talk, but found it interesting that herb sutter thought ARM basically sucked Feb 20 09:25:53 capella: but its not only macros you have that kind of problems a lot in c Feb 20 09:25:57 hi there, when I delete bunch of files on sdcard within intentservice, the UI is blocked, why? Feb 20 09:26:20 StingRay_ well the thing is, C(++) just isn't simple. It can do very complicated things. Macros are one of those over-used things you can mostly live without Feb 20 09:26:23 meh - i code in C... though I've fallen in love with Java for it's simplicity Feb 20 09:26:26 luoluoluo: do you do the work in onHandleIntent? Feb 20 09:26:41 capella: yeah then you know what i mean :D Feb 20 09:26:52 appel1: yes Feb 20 09:26:57 though to be honest, I also code in assembler so I seem to enjoy pain Feb 20 09:27:14 Chainfire: thanks, so java (to) c++ is not joyful ? Feb 20 09:27:15 Logcat says "No content provider found for permission revoke" Feb 20 09:27:16 assembler can be real fan Feb 20 09:27:21 *fun Feb 20 09:27:28 i guess coding in assembler maked you a bit more aware of you are doing really dangerous stuff right now Feb 20 09:27:29 I used to do it for fun long ago Feb 20 09:27:34 g00s: I'll say this - after putting his name to google, I got images results that reminded me of Borat Feb 20 09:27:35 assembler ... macros required ! Feb 20 09:27:49 c gives you somehow the feeling: we have a solid language, what could go wrong with that kind of easy statement Feb 20 09:27:54 capella: a good macro assembler... I think is more enjoyable than C++ :> Feb 20 09:28:09 MASM and I go way back :D Feb 20 09:28:11 timroes: then you learn that as much as possible is left as "undefined behaviour" :D Feb 20 09:28:18 :D Feb 20 09:28:28 StingRay_ joyful would not be the word I use to describe it. It's easy to produce problems that are hard to find, especially if you're new to it. Java is much easier, really Feb 20 09:28:46 and PDP-8 assembler, and S370 assembler, and 6502 assembler ... Feb 20 09:28:55 6502 ftw ! Feb 20 09:29:05 heheh Apple II Feb 20 09:29:06 StingRay_ on the other hand, getting some C(++) experience never hurts, and you might learn some new things that are useful in other areas. Feb 20 09:29:10 Chainfire: well is it that far of a stretch to think java/dalvik would not feature on ubuntu platform ? Feb 20 09:29:16 oh one of my favorit c fails Feb 20 09:29:17 actually, 68k was nices to hand assembl ;) Feb 20 09:29:19 luoluoluo: there must be something more going on your code Feb 20 09:29:27 int i; int a[12]; Feb 20 09:29:27 for (i=0; i <= 12; i++) a[i] = 0; Feb 20 09:29:27 printf(“Ende\n“); Feb 20 09:29:46 but since so many ppl did that wrong it doesn't produce an endless loop anymore in the most compilers i know :) Feb 20 09:29:51 o please i used to front panel toggle code into a pdp-8 :D Feb 20 09:29:56 but earlier a lot of systems would end up in an endless loop with that :) Feb 20 09:30:06 12 bit word by 12 bit word Feb 20 09:30:08 * p_l likes MMIX assembly Feb 20 09:30:40 appel1: so it shouldn't block my UI, right? I'll check the code Feb 20 09:30:51 StingRay_ well we don't know yet (nor have I really investigated), but I think it unlikely that Ubuntu will support Dalvik / Android apps, at least right now. It might support "normal" Java, though Feb 20 09:30:52 Alpha is otoh !FUN! Feb 20 09:32:14 timroes, how's that an endless loop? Feb 20 09:32:26 ahh Feb 20 09:32:28 now i see Feb 20 09:32:31 memory bounds error Feb 20 09:32:40 one too many = Feb 20 09:33:43 i dont think that goes endless, just corrupts in an unpredictable way Feb 20 09:34:19 depends how your memory is laid out Feb 20 09:34:24 luoluoluo: well, if you're doing a whole lot of IO you're bound to block the UI thread another way Feb 20 09:34:52 luoluoluo: ie, if the flash is busy and the UI thread reads something synchronously from it Feb 20 09:39:15 i think ubuntu mobile is gonna get flooded with silly web/html5 apps neways, there should be labels on apps like that, you know, the food industry is forced to use "ingredients" so should any mobile apps! Feb 20 09:40:04 android would have gotten flooded with html5 apps too - if it had a decent browser :D Feb 20 09:40:25 instead they flooded with native apps :) Feb 20 09:41:03 MDijkstra: thanks for the point, I'll check it out Feb 20 09:41:03 g00s: case in point, someone recently asked why his 15MB HTML + 8MB of CSS + 8 MB of JS didn't load Feb 20 09:41:14 i dont see what matters if an app is made from html5 or not Feb 20 09:41:39 matt1982_: the effect is like enjoying a Java 1.1 AWT app that fits your system not at all\ Feb 20 09:45:29 if i connect via adb sheel, how do i obtain root? su doesn't work Feb 20 09:46:40 maxmc: you need rooted device first Feb 20 09:46:58 p_l: ah, i suspected that Feb 20 09:47:02 thnaks Feb 20 09:52:40 Hey! When i'm using ActivityA (which has field int x=0 (0 by default) and i am setting later x=4;), then i'm calluing another ActivityB, then i'm calling ActivityA, the x variable will be default(0)? Feb 20 09:53:09 mikeyMike: time to read the activity lifecycle docs Feb 20 09:53:28 i know that onCreate is calling then Feb 20 09:53:38 but... the whole class 'resets'? Feb 20 09:54:19 you seem surprised Feb 20 09:54:35 you wouldn't be, if you read the docs ;) Feb 20 09:54:57 if read tutorial... Feb 20 09:55:26 but ok, you convinced me :) i read it again;p Feb 20 09:58:28 g00s: ok, it resets. Feb 20 09:58:47 so i have to pass it in Bundle to ActB then return it to ActA? Feb 20 09:59:51 mikeyMike: yes Feb 20 10:00:35 or make classC Feb 20 10:00:58 with field which i wanna 'not change' Feb 20 10:02:15 appel1: thanks, you are right. I did lots of commiting after removing keys to SharedPreference Feb 20 10:03:07 i mean 'do not reset' Feb 20 10:05:24 I have trouble implementing adwhirl. Anyone have any experience? Feb 20 10:06:29 valiolap: propably yes. just ask the question Feb 20 10:07:59 LogCat tells me i get adrequests and it "shows" ad. I'm adding the adwhirllayout to my mainview but its not showing. Feb 20 10:08:25 i used millenialmedia admob and flurry earlier and had no problems at all. AdWhirl just confuses me Feb 20 10:11:05 i am using gradle to build an app, in dependencies i define "compile fileTree(dir: 'libs', include: '*.jar')" but those classes are later not in the apk, switching like docs says to runtime results that the compiler cant find the classes in the jars. someone have a hint for me please? Feb 20 10:22:53 can I use e.g. @android:id/background in my apps or is that reserved for the system? Feb 20 10:24:12 I dont know but you would find out if u tested it Feb 20 10:24:53 valiolap: i did and it worked. i'm just wondering if maybe it only works in 80% of the cases and i'll regret not using my own id later Feb 20 10:24:55 Does anyone has any extensive experience with the Facebook SDK? http://stackoverflow.com/questions/14969506/facebook-session-singleton-usage Feb 20 10:26:21 msch I think it works on all cases then. But if I was you I would change it so I wouldnt lose my good night sleep. Feb 20 10:26:36 valiolap: k, thanks. Feb 20 10:28:40 hello Feb 20 10:28:55 is there a guide to understand the android repo tree ? Feb 20 10:29:13 from the device boot to run applications.. Feb 20 10:42:34 If I'm working on a project that has all the images done in 1280*720 does it make sense to scale them up in photoshop to something like 1920*1080 so that way I try and blur any artifacts that could appear on larger resolution devices? Feb 20 10:43:17 probably not Feb 20 10:43:44 i don't know what scaling algorithm android uses, but it does use interpolation Feb 20 10:44:08 it would be better to do the images in 300 dpi though :) Feb 20 10:44:22 and assume, say, a 11" screen Feb 20 10:44:41 apple741: what ? Feb 20 10:45:04 it makes no sense at all tbh Feb 20 10:45:35 best is if you could do as much as possible in a vector based program such as inkscape Feb 20 10:45:38 or illustrator Feb 20 10:45:49 then you render all the resolutions you need Feb 20 10:47:10 * g00s is sad the inkscape team seems to have abandoned mac Feb 20 10:47:30 StingRay_: Sorry, I was just trying to decide if I should scale my images up manually or allow android to do it on larger devices ( as all my art work has been done but I still want to try and support new devices) Feb 20 10:47:37 strange considering mac is popular among designers Feb 20 10:47:45 flodin: So you think I should trust android to do the scaling? Feb 20 10:47:47 designers use adobe ;) Feb 20 10:47:56 yeah Feb 20 10:47:58 Next time I will use vector :) Feb 20 10:48:02 apple741: what is the subject/context/use of these images ? Feb 20 10:48:12 apple741: yes if that's your only choice. It would be better to scale the images down than scale them up Feb 20 10:48:30 StingRay_: They will be full screen, for a story books kids app Feb 20 10:48:37 i'm using jfeinstein10/SlidingMenu and i'm wondering how to set a behindOffset/Width that looks good on all devices? is there an easy way to do that or do I just have to calculate based on the screen width? (like I'd do on iOS) Feb 20 10:48:50 apple741: and what is the "content" like pictorial stuff > Feb 20 10:48:51 ? Feb 20 10:48:53 apple741: keep in mind different devices have different aspect ratio Feb 20 10:49:10 apple741: so you'll need something like a padding border to avoid squashing the image Feb 20 10:49:55 StingRay_: Yeah, they are all basically full screen pictures, so I was thinking if I scale them up myself I can see where distortion may occur and try to 'repair' it as much as possible? Feb 20 10:50:11 how simple are the images Feb 20 10:50:13 ? Feb 20 10:50:23 cause like flodin said, aspect will be a problem Feb 20 10:51:05 oh and "blur" is not a relevant fix to scale artefacts ;) Feb 20 10:51:05 flodin: Good point I was just going to allow a scale to the height to maintain aspect ratio and allow the sides to be slightly cut off as the main content is within a 'safe region' in the middle of the image Feb 20 10:51:47 I would if i had to concentrate more on the up-scale algorithm/method in PS Feb 20 10:52:02 and choose that based of the image characteristics Feb 20 10:52:20 Guys, I'm creating an application which I need to use at a public location. It run's on my tablet. Someone uses my tablet, to surf (eg. go to facebook).. After he is done, he hands over the tablet to me, and I will hand it out again to another person. I need to make sure that if that new person goes to facebook, he isn't logged in as the other person if he didn't logout.. I know I can go the the browser and then clear cache, but Feb 20 10:52:30 So is there a way to do this? Feb 20 10:53:17 basically clearing the cookies is enough.. I also only need this to work for the stock android browser.. Feb 20 10:53:45 tofra: So your application is a facebook application? Feb 20 10:54:06 or did it uses facebook api for login Feb 20 10:54:32 StingRay_: So you would scale them up in photoshop? To what resolution? Feb 20 10:55:33 apple741: well no, I'm primarily an artist, and would value quality above all else, so I would re-draw them :) Feb 20 10:57:00 http://stackoverflow.com/questions/14665729/what-is-the-default-time-out-of-httptransportse Feb 20 10:57:10 ah ok :) I hired someone , they did a good job it just took me too long to start putting things together and devices keep improving so fast StingRay_ Feb 20 10:57:14 For your app, you can detect if the user leaves your app, then call FB.logout() to logout from facebook. Feb 20 10:57:46 What resolution would you draw full screen 'story' images at StingRay_ being an artist? Feb 20 10:58:12 apple741: that would depend on style Feb 20 10:58:28 I use http://code.google.com/p/ksoap2-android/ library and I want to know What is the default time out of HttpTransportSE ? when initiating it with HttpTransportSE aht = new HttpTransportSE(WebServiceURL); Feb 20 10:58:29 but if just cell/line art, the res would be infinate Feb 20 10:58:37 infinite* Feb 20 10:59:07 @fairuz: no it's a native android app.. Feb 20 10:59:42 the same count's for if the user login at another website.. Feb 20 10:59:45 StingRay_: I don't think I'm allowed to show the actual images at this stage but its along these lines: http://screencast.com/t/uoBzOGRyC Feb 20 11:00:42 apple741: my god, I would expect even a programmer to be able to "trace" them with spline/curves and fill, to produce any res they want Feb 20 11:01:25 the characters neways Feb 20 11:01:37 background would need replacing etc Feb 20 11:01:41 :) Feb 20 11:01:58 cell shading is easy to re-trace Feb 20 11:02:10 i doubt the artist would be happy if tracing it introduces artifacts... they would probably prefer some blurring due to scaling Feb 20 11:02:12 and then you have splines/curves/paths Feb 20 11:02:33 flodin: I think your missing the point Feb 20 11:02:45 or commenting on a different thing :) Feb 20 11:03:24 could be, i ran off to clean some dishes and just came back to the discussion :) Feb 20 11:03:55 apple741: neways what I just said is what I would do as a CG "artist" if faced with that task Feb 20 11:04:25 either in illustrator, PS, SketchBook almost anything that can have resolution independent components/canvas Feb 20 11:04:49 and like I said, tracing/filling that kind of cell style should be also in the domain of most programmers :) Feb 20 11:05:00 inkscape can do tracing too Feb 20 11:05:31 http://www.chinavasion.com/china/wholesale/Cheap_Mobile_Phones/Cell_Phone_Watch/Cellphone_Watch_with_Touchscreen_and_Bluetooth - Which operating system they used? Better then Android??? Feb 20 11:05:34 tracing is not a tool or method, tis a user action :) but yeah inkscape supports curves/splines/shapes too Feb 20 11:05:50 i wish there was something like Pixelmator but vector, for the mac. point being, a good vector drawing app for about $40 Feb 20 11:06:14 * g00s can't afford CS / Ai Feb 20 11:06:15 g00s: that supports splines Feb 20 11:06:24 and fills etc Feb 20 11:06:31 what else you after ? Feb 20 11:06:32 :) Feb 20 11:06:33 g00s: surely it is possible to run inkscape on some emulation layer, if not natively? Feb 20 11:06:46 So what size would I want my images at roughly? Device resolutions keep getting better all the time so its difficult to keep up. Feb 20 11:07:12 i am using gradle to build an app, in dependencies i define "compile fileTree(dir: 'libs', include: '*.jar')" but those classes are later not in the apk, switching like docs says to runtime results that the compiler cant find the classes in the jars. someone have a hint for me please? Feb 20 11:07:20 apple741: they're currently at 300dpi which is imo near the limit of what makes sense Feb 20 11:07:22 apple741: well ideally with those you wouldn't use bitmaps at all Feb 20 11:07:25 flodin: i tried running it in a linux vbox, it sucked Feb 20 11:07:34 apple741: higher than that and the eye can't really tell a difference Feb 20 11:08:02 apple741: I would probably implement a svg lib Feb 20 11:08:16 and trace > output so dont have to worry Feb 20 11:08:20 g00s: what sucked about it? Feb 20 11:08:31 svg draw will not be all that bad with simple things like that Feb 20 11:09:10 well, my machine is lame so running linux in a vm to run inkscape was terrible; and inkscape is really slow drawing anyhow with filters Feb 20 11:09:31 g00s: yeah, but isn't there something like cygwin for mac Feb 20 11:09:47 Thanks guys I think I'm going to look in svg sounds like my best option. Really appreciate all the time :) Feb 20 11:09:51 oh, i could use the ports version - but that was reportedly crashing too Feb 20 11:09:57 ok Feb 20 11:10:04 g00s: Got my nexus yesterday! Feb 20 11:10:04 basically, the inkscape team is incompetent / doesn't care Feb 20 11:10:14 g00s: you can get inkscape via macports cant you? Feb 20 11:10:21 or don't have a mac :) Feb 20 11:10:26 bobsapp: yeah, but 0.487.4 crashes a lot Feb 20 11:10:29 0.48.4 Feb 20 11:10:34 if I was working on inkscape I wouldn't buy a mac just to make it work Feb 20 11:10:57 apple741: awesome, how do you like it ? Feb 20 11:11:00 you might also try the macports version too Feb 20 11:11:10 though when i last tried that it wanted to install kde lol! Feb 20 11:11:14 yeah, thats what i meant Feb 20 11:11:31 now, i have to say i'm impressed with gimp on mac Feb 20 11:11:37 g00s: what features do you want ? Feb 20 11:11:38 they really did good Feb 20 11:11:55 im not. sure they've started to support the command keystrokes more but clipboard is broken Feb 20 11:11:55 g00s: Its really amazing, much less restrictions than on an iPad and I really like the plastic at the back I'm not worried I'm going to scratch when I put it down unlike with an iPad :) Feb 20 11:12:01 its a step in the right direction though Feb 20 11:12:25 bobsapp: do you have 2.8.4 ? Feb 20 11:13:07 StingRay_: i read through the inkscape book and was pretty good with the app; i also used pixelmator 2 at the time and there was no comparison in the vector drawing capabilities Feb 20 11:13:10 oh and g00s I have rEFIt on my macbook and have osx/win/linux mint as options Feb 20 11:13:23 2.8.2 Feb 20 11:13:26 * g00s googles rEFIT Feb 20 11:13:30 :) Feb 20 11:13:37 just a modded EFI loader Feb 20 11:13:46 with a few tweaks Feb 20 11:14:11 g00s: have you tried running inkscape in a lightweight linux vm? debian is really nice now. Feb 20 11:14:13 I was booting windows/osx/ubuntu but changed to linux mint Feb 20 11:14:31 bobsapp: between that vm and my android emu i have no more memory :| Feb 20 11:14:56 I really dont like the google android vm Feb 20 11:15:01 qemu Feb 20 11:15:10 yeah :/ Feb 20 11:15:15 the android-86 images are MUCH faster Feb 20 11:15:20 the haxm stuff works pretty well though Feb 20 11:15:22 on windows :\ Feb 20 11:15:29 on mac too :) Feb 20 11:15:40 but the lack of google apis is a pisser Feb 20 11:15:48 if i didnt need specific screen resolutions id use the android-86 stuff all the time Feb 20 11:15:54 that too. Feb 20 11:15:59 * bobsapp is on ML Feb 20 11:16:16 ML? Feb 20 11:16:21 mountain lion Feb 20 11:16:25 oh :) Feb 20 11:16:29 hey Feb 20 11:17:01 i can't understand the correct way to read android repo sources, is there a line guide? Feb 20 11:18:28 someone using my app is using a HTC one S but the html checkbox does not appear (its invisible on a grey background). Feb 20 11:18:49 Does anyone know how I can reproduce the HTC browser with the One S in an android emulator? Feb 20 11:21:23 * StingRay_ watches a "tumble weed" Feb 20 11:21:47 plenty of those here Feb 20 11:22:10 those things can be pretty scary when you're standing in a field and a bunch get blown your way Feb 20 11:27:09 StingRay_: I just emailed my artist she has her original artwork in 2000*1200 :) Feb 20 11:27:49 for that stuff it should just be vector/spline so res should be anything Feb 20 11:27:54 but happy for ya ;) Feb 20 11:28:29 Thanks, yeah I've definitely learned my lesson for the future though :) Feb 20 11:33:58 * bobsapp watches that tumble weed roll back the other way Feb 20 11:35:03 * StingRay_ spits the bit of straw out and shoots at the tumble weed (misses) oh well Feb 20 11:47:51 a server I'm talking with has a bunch of settings that I can adjust using IPC over IP, those settings are
. = pairs basically, would the preferenceactivity/fragment/whatever be useful for setting these? or is preferenceactivity (and friends) tied to SharedPreferences too tightly? Feb 20 11:48:41 I whipped up something really quickly last night for this, but it's pretty fugly :p http://eclipser.xmms2.org/xmmsclient-android/device-2013-02-20-020321.png (if that gives some sort of idea what I'm talking about) Feb 20 11:57:53 Any ideas for the following problem: http://stackoverflow.com/questions/14952171/how-do-i-get-my-android-widget-in-the-right-size-on-start Feb 20 12:03:50 Hi everyone, I have a technical question, does more internal storage make the Android run faster/smoother than less storage? Feb 20 12:04:19 not sure that qualifies as a technical question Feb 20 12:05:01 any of you port your app to the amazons kidneys? Feb 20 12:05:01 err kindles Feb 20 12:05:13 funkbox, ha, yes Feb 20 12:05:18 not much to it really Feb 20 12:05:21 unless you use IAP stuff Feb 20 12:05:27 Assuming you guys as developers know how Android works Feb 20 12:05:45 Zharf: did you make the design different at all? Feb 20 12:05:50 StingRay_, I mean if more internal storage makes the running OS run smoother/faster Feb 20 12:05:55 funkbox, or did you mean non-fire kindle? Feb 20 12:06:04 Pip: eh past a certain point no Feb 20 12:06:27 Zharf: i mean the design of your kindle fire app different from your android app Feb 20 12:06:27 Pip: I know what you ment Feb 20 12:06:27 does adding a bigger HDD in your computer make it go faster > Feb 20 12:06:37 since holo is very different from whatever amazon calls their design language Feb 20 12:06:40 StingRay_: +1 Feb 20 12:06:55 funkbox, no it's the same application... but then it's a game so... :( Feb 20 12:06:57 funkbox, I'm sorry ? Feb 20 12:07:08 Pip: or is it more the characteristic of that HDD that change the "possible" speed in ops that use it ? Feb 20 12:07:19 StingRay_, Somebody in #hardware who looks professional told me that Feb 20 12:07:22 StingRay_: only if it adds more fenwick trees to your RAMs Feb 20 12:07:27 That's why I'm curious about this "theory" Feb 20 12:07:33 Pip: well if someone on the internet told you that ... Feb 20 12:07:44 Pip: then that person maybe a little...erm.... Feb 20 12:07:47 Zharf: ah. did you split it up into different projects? Feb 20 12:07:48 Feb 20 12:07:54 err....... dense ? Feb 20 12:07:56 :) Feb 20 12:08:06 Swap, virtual pages stuff? Feb 20 12:08:15 I don't know, basically, it's just Linux underneath Feb 20 12:08:19 i'm thinking having a core project that doesn't need android, then a core android project then test android, test kindle, android and kindle Feb 20 12:08:25 negligible Feb 20 12:08:25 funkbox, there's a git branch with a couple of amazon specific things Feb 20 12:08:46 i got it running on BB10 pretty easily so curious Feb 20 12:08:57 now just have to find someone in NYC with a BB10 Feb 20 12:09:09 Pip: caches will normally be in a seperate partition and are almost always tied in with the amount of RAM Feb 20 12:09:24 Pip: the speed of the hard drive matters much more Feb 20 12:09:46 It's just flash memory, isn't it? Feb 20 12:09:48 funkbox, I have a kindle fire hd right here... I could test my own (non-work) application on it actually... Feb 20 12:10:04 the device isn't mine though, it's the company's :) Feb 20 12:10:14 Zharf: yeah i just ordered one Feb 20 12:10:27 I don't think they sell these around here... Feb 20 12:10:28 i've got like 7 boxes of tablets and phones in my office. it's crazy Feb 20 12:11:11 seems like holo works just fine Feb 20 12:11:15 of course it's not very kindle-like Feb 20 12:11:30 Okay, so last question, the 8G version of Google/LG Nexus 4 phonejust runs as fast as the 16G one, right? Feb 20 12:11:39 Pip: i'd get the 16g Feb 20 12:11:43 8g is too little space Feb 20 12:12:07 funkbox, But it works right? Feb 20 12:12:12 I mean the 8G one Feb 20 12:12:12 Pip: of course it does Feb 20 12:12:21 So it's not a broken product Feb 20 12:12:25 wonder if I should put my application in amazon store too <.< Feb 20 12:12:27 Pip: there are rumors of a new phone at google io so you may want to wait for that one Feb 20 12:12:46 X phone Feb 20 12:12:51 there's also Galaxy SIV but no doubt that'd come smeared in that turd they call touchwiz Feb 20 12:12:54 Could be very expensive when released Feb 20 12:12:55 Pip: as fast but 8GB is small Feb 20 12:13:16 funkbox, oh wait, I'm using ABS actually, so... <.< Feb 20 12:13:26 it comes with its own holo theme I believe Feb 20 12:13:31 yeah i'm using ABS as well. Feb 20 12:13:39 but you can swap out drawables Feb 20 12:13:43 .. i hope Feb 20 12:13:52 worst case just have the build do the swapping Feb 20 12:14:35 http://eclipser.xmms2.org/xmmsclient-android/device-2013-02-20-141241.png my app on kindle <.< Feb 20 12:14:44 it's not very tablet-y Feb 20 12:15:33 it's not too bad but yeah Feb 20 12:17:02 Zharf: foobar is the name? Any relation to foobar2000? Feb 20 12:17:12 flodin, no it's the name of the playlist Feb 20 12:17:29 flodin, the name is "xmms2 playground" Feb 20 12:17:38 i see Feb 20 12:17:41 *cough* it's in the store *cough* Feb 20 12:17:46 :P Feb 20 12:18:21 does it play .xm, .mod, .ym etc? Feb 20 12:18:40 never heard of .ym, but .xm and .mod yes, .it, .s3m and others too Feb 20 12:19:05 .ym is ym2149, atari st chip Feb 20 12:19:09 anyone seen an example of how to use google maps from a maven project? Feb 20 12:19:19 ahh foobar... I once wrote a plugin for that called minibar. oh the memories. Feb 20 12:19:51 foobar still kicks ass imo, but it's not on an OS I use any more Feb 20 12:19:59 flodin, I think libgme might support that, not sure Feb 20 12:20:10 Zharf: what engine does it use for .xm? Feb 20 12:20:11 but I don't have that compiled in (yet) Feb 20 12:20:13 modplug Feb 20 12:20:21 ok, cool... i'll check it out Feb 20 12:21:35 flodin, if you can point me to a lib that can play ym2149, I'll consider writing a plugin for it... but I'd need files to test too Feb 20 12:21:51 I'm also thinking of including sid support sometime soon :p Feb 20 12:21:53 only in C Feb 20 12:21:57 C is fine Feb 20 12:22:08 the core is all C with just a java wrapper on top to run it on android Feb 20 12:22:40 here's the library for .ym http://leonard.oxg.free.fr/download/StSoundGpl_1_42.zip Feb 20 12:22:57 i used it myself for a demo once, it only took about 30-60 mins to get it working Feb 20 12:23:02 that was from c++ though Feb 20 12:23:55 this is the home page http://leonard.oxg.free.fr/stsound.html Feb 20 12:25:12 ah it comes with samplefiles Feb 20 12:26:05 seems many of the archives I downloaded from are gone now Feb 20 12:26:50 .sid is tricky what with the multi-song support Feb 20 12:27:11 we already have a pretty good sid support Feb 20 12:27:16 with songlengths database and all Feb 20 12:27:20 (support for one that is :) Feb 20 12:28:57 my only concern with it on android would be how much cpu time it requires Feb 20 12:33:22 is there a way to scroll a scrollview in the layout? Feb 20 12:33:29 i mean, in the eclipse designer Feb 20 12:36:38 Styler2go: iirc, it only shows 3 dummy items Feb 20 12:36:48 no actual content to scroll Feb 20 12:38:01 flodin, if you're interested in writing us a plugin for the format, feel free to ;) ... it might take me a while, busy with a bunch of other stuff... you'll find help at #xmms2 and code with a lot of plugins to look at for samples at git.xmms2.org :) Feb 20 12:39:18 http://git.xmms2.org/xmms2/xmms2-devel/tree/src/plugins specifically Feb 20 12:49:09 hmmmm Feb 20 12:59:06 is anyone aware of an efficient FFT-implementation for android/java? Feb 20 13:00:35 How can I get the view of a Resource int item? for instance call getView on a menu item, like R.id.item.getView? Feb 20 13:01:43 freiform: there are a couple of java FFT implementations, but this is one of the things for which I'd use the NDK Feb 20 13:02:12 freiform: but if you want/have to use java, https://sites.google.com/site/piotrwendykier/software/jtransforms is probably the best Feb 20 13:03:06 someone good at mysql and could help me some? the guys in #mysql are unhelpful Feb 20 13:03:10 MDijkstra: I was just wondering. NDK was also my 1st idea, but somwhere in the docs, google states that it recomends to find solutions in java. for overhead reasons and teh like. Feb 20 13:03:51 freiform: you do have some call overhead, but this shouldn't be a problem for an FFT Feb 20 13:03:59 at least, real-time might be an issue Feb 20 13:04:03 if that's what you need Feb 20 13:05:31 Or can I define onClick attribute for a menu item in xml? Feb 20 13:05:39 MDijkstra: no, realtime is not required. but it should efficient nontheless. Feb 20 13:05:54 anyway, don't know about your precise requirements, usually this will suffice Feb 20 13:06:50 mahmoud__: no, and you really shouldn't use android:onClick in XML at all imo Feb 20 13:07:05 mahmoud__: http://stackoverflow.com/questions/8614293/android-get-view-reference-to-a-menu-item Feb 20 13:07:24 So how to respond to an ActionBar action item with passing the item's id? Feb 20 13:08:13 onOptionsItemSelected Feb 20 13:08:43 then you can simply query the item for its id Feb 20 13:08:43 in onOptionsItemSelected I have to call a showPopup(View view) Feb 20 13:08:50 that view has to be the menu item Feb 20 13:09:22 why Feb 20 13:09:23 MDijkstra, I have to convert this item ID to a View instance to call the method properlyy Feb 20 13:09:34 menu items aren't views Feb 20 13:09:39 ^ Feb 20 13:10:45 you could make a view containing the same drawable as the menu item and pass that Feb 20 13:10:56 but you can't convert a menu item into a view automatically Feb 20 13:11:17 MDijkstra, hmm..ok Feb 20 13:13:03 why would you need to do that anyway to show a popup? Feb 20 13:13:10 that doesn't make a lot of sense to me Feb 20 13:13:33 ^ Feb 20 13:14:03 Showing a popup without passing a view will make it appear wrt the whole activity. I want to show it right below the clicked item Feb 20 13:14:08 just like the overflow menu Feb 20 13:14:50 So I have to pass the clicked item view Feb 20 13:15:49 so it's like a submenu? Feb 20 13:16:17 how about http://developer.android.com/reference/android/view/SubMenu.html ? Feb 20 13:16:27 http://stackoverflow.com/questions/9344160/how-to-add-submenu-items-to-actionbar-action-in-code Feb 20 13:21:46 Zharf, thanks. That's it :) Feb 20 13:27:39 if i have a seekbar and i want to display the current value he is seeking while he is "ontouch", is there a function which is already doing this? Feb 20 13:31:21 Good afternoon Android dev room Feb 20 13:32:44 Hello guys, when I'm in a phonecall and I receive a message, I somehow don't hear the notification sound. Why? I can imagine such a situation can damage your ears, but is it possible to make notification sound possible even during phonecall? Feb 20 13:33:25 Number5: that a android app development question of a android user question ? Feb 20 13:33:25 haha "X can cause harm, how can I do X?" :D Feb 20 13:33:45 btw, I do hear the notification, but it's a very faint beep Feb 20 13:33:52 HTC Desire HD Feb 20 13:33:58 ^ same gnex Feb 20 13:34:03 StingRay_, I'm not sure, so I put it here anyway, cause it's my app that does notification sound Feb 20 13:34:04 i think i also get the notification but more silent Feb 20 13:34:16 HTC Sensation Feb 20 13:34:35 "more silent" Feb 20 13:34:37 :) Feb 20 13:34:48 silenter? :) Feb 20 13:34:56 quieter :) Feb 20 13:34:59 silentest Feb 20 13:35:01 :) Feb 20 13:35:07 no honestly what word to use there :D Feb 20 13:35:10 I think what timroes said would make sense if translated word by word into German. Feb 20 13:35:16 quieter Feb 20 13:35:25 timroes being German, iirc Feb 20 13:35:26 okay :) Feb 20 13:35:32 anyway, are there MORE answers? Feb 20 13:35:50 Sorry, I don't know. I don't even know if it's the Phone that's doing it or the App Feb 20 13:35:54 you cannot [whatsoever 'raise'] silent? Feb 20 13:36:30 kakazza: yeah i am, but I wouldn't rely on my sentence making sense in german :D Feb 20 13:36:31 I checked the Android's settings on HTC Sensation, but couldn't find something useful. Feb 20 13:37:18 Is there a recommended way to create an app that hosts fragments from other apk's Ie plugins? Feb 20 13:38:08 ClockworkAnt: not that i know, the developer would have to expose that fragment somehow Feb 20 13:38:35 At the moment I'm investigating using widgets Feb 20 13:39:36 timroes i have a question for you :) :D Feb 20 13:39:44 go ahead :) Feb 20 13:39:52 is it possible to "google translate" the app description to the missing languages? Feb 20 13:39:59 [automatically] Feb 20 13:40:08 I think this was available before :) Feb 20 13:40:11 spobat: yes, you'll get so called "dick-quality translation" ;> Feb 20 13:40:16 spobat: the user can do that now by themselfs Feb 20 13:40:21 p_l, :> Feb 20 13:40:33 timroes, what does that mean? Feb 20 13:40:35 he see a button translate in the play store, if the description is not in her native langauge Feb 20 13:40:44 spobat: seriously, it's often better to read the original language than the autotranslation Feb 20 13:40:45 timroes, ah, okay. Makes sense Feb 20 13:40:55 p_l, yeah, I guess you're right Feb 20 13:41:00 ok so, i have a seekbar, and on top of this seekbar should be a little textview which tells what value you are currently seeking to, and i now want to know if there is a function in the seekbar which already do exctly this Feb 20 13:41:22 spobat: better for the devs, user is able to get the very same translation than beforehand, but cannot complain you are doing shit translations Feb 20 13:41:31 because she know its google translated Feb 20 13:41:41 timroes, yeah, I fully agree :) Feb 20 13:42:25 timroes: and the quality of translation actually updates :P Feb 20 13:44:53 (: Feb 20 13:50:04 Styler2go if you read the docs Feb 20 13:50:06 no Feb 20 13:50:09 :) Feb 20 13:51:17 grr Feb 20 13:51:48 but it should not be that difficult, or? Feb 20 13:52:05 or ? <--- what ? Feb 20 13:52:25 you mean is it difficult ? Feb 20 13:52:30 no, well I did it Feb 20 13:52:31 StingRay_: 'but it should not be that difficult, shouldn't it?' :) Feb 20 13:52:34 so cant be Feb 20 13:53:11 he is also german, and in german you would add the 'or' at the end and not the negation of the auxiliary verb Feb 20 13:53:45 (or would you add 'should it' in that case in english, nevermind :D) Feb 20 13:56:13 timroes: how would my sentence be correct? Feb 20 13:56:16 is there any chance that my garbage collector at some point will go on a strike? ..because he's working really hard and I hardly pay him.. Feb 20 13:56:17 with this "or"? :D Feb 20 13:56:28 oh u wrote it Feb 20 13:56:30 thanks :D Feb 20 13:56:38 well just without the ,or? Feb 20 13:56:47 :D Feb 20 13:57:03 rather better if you imply you want a yes or no, then "is it difficult" Feb 20 13:57:12 or if you want to know what you should know Feb 20 13:57:32 onSeekBarChange listener or something like that Feb 20 13:57:51 to combine a textView with the returned seek value Feb 20 13:57:53 :) Feb 20 13:59:29 lime loves you too, eric Feb 20 14:03:23 can i add step "hints" to a seekbar? Feb 20 14:03:28 on the bottom of the bar? Feb 20 14:04:40 You can probably provide a custom background, or put the bar inside of a layout that would contain a custom background Feb 20 14:04:47 hmm, I'm using MediaRecoder to record videos and using 700Kb/s bitrate @ 640x480 all videos look really blocky. Is that expected? Feb 20 14:07:54 Mavrik: thats a bit of a odd question Feb 20 14:08:06 hmm, true Feb 20 14:08:10 on a vga screen I would expect it to look perfect Feb 20 14:08:11 maybe I wasn't clear enough Feb 20 14:08:12 :) Feb 20 14:08:33 usually 700kb/s H.264 videos don't look as blocky as those I'm seeing created by MediaRecorder Feb 20 14:08:35 projected onto a cinema screen..... no....not looking that great Feb 20 14:08:43 I can actually see macroblocks even on a small screen Feb 20 14:08:49 oh Feb 20 14:09:06 and I'm just wondering if the HW encoder is of low quality Feb 20 14:09:11 or there's something I'm missing :D Feb 20 14:09:14 dc by internet... Feb 20 14:09:16 shouldnt be Feb 20 14:09:36 use something that dont use mpeg blocks Feb 20 14:09:55 an see if the compression artefacts are just as bad (while being different) Feb 20 14:09:57 :) Feb 20 14:10:02 timroes can we talk private for a second? Feb 20 14:10:04 yeah well, my only option is H.264/H.263 really :\ Feb 20 14:11:16 Mavrik: hw encoders are hit'n'miss Feb 20 14:11:31 mhm... haven't thought the N4 one would be that terrible Feb 20 14:11:55 Mavrik: maybe some params needed? Feb 20 14:12:33 IGUAY Feb 20 14:12:33 http://pastebin.com/biXK26D3 Feb 20 14:12:40 what the hell is up with basic event driven stuff like timers? Starting a timer to call a function in an event loop should be one class and one interface, but no, instead we have this mess http://stackoverflow.com/questions/1877417/how-to-set-a-timer-in-android Feb 20 14:12:42 I think there's nothing much to set Feb 20 14:13:12 ambro718 - you know there is actually reasons for that right? Feb 20 14:13:32 ron_frown: mind you enlighten me? Feb 20 14:13:39 yeah Feb 20 14:14:02 those are for things like refreshing etc, when operations happen on the same thread. Feb 20 14:14:15 the reality is there are a whole lot of other things that happen in the background Feb 20 14:14:26 if you want to wake a device up to execute your events Feb 20 14:14:30 you need alarm manager Feb 20 14:14:59 I don't need to wake up, I just need a timer in the application event loop while the application is running Feb 20 14:15:01 (handler and runnable vs alarmmanager) Feb 20 14:15:13 so just create a handler and post runnable delayed that reposts Feb 20 14:15:20 if you want wrap that up in your own method Feb 20 14:15:34 java doesnt have *REAL* events, but more callbacks Feb 20 14:15:43 but *why*? Why isn't there a nice Timer class that *already* sends events to the ui thread? Feb 20 14:15:51 no Feb 20 14:16:00 and I think that makes perfect sense Feb 20 14:16:40 how does having to deal with threads for the most basic events make sense? Feb 20 14:17:04 ambro718: There is. It's called a Handler. Feb 20 14:17:05 welcome to android =) Feb 20 14:17:13 Create a Handler, call postDelayed onto it. Feb 20 14:17:16 bam, done. Feb 20 14:17:26 imo thats one of the biggest problems in android is that they dont wrap up common functionality Feb 20 14:17:40 they give you 101 ways to do things, and 101 ways to shoot yourself in the foot Feb 20 14:17:41 it's not done. It's a class with 50 lines or so. It should be as simple as new Timer, setCallback(), done Feb 20 14:17:44 can i let a seekbar value grow up not linear? Feb 20 14:17:55 so build the class Feb 20 14:17:59 I'm not really sure where I'm seeing 50 lines from. Feb 20 14:18:34 Messages can take arbitrary objects; you can always attach a Runnable to your message and post that, and have your Handler just cast it to a Runnable and call run. Feb 20 14:18:55 Handler h = new Handler(); h.postDelayed(new Runnable(){ public void Run(){//do some shit}}, delay); Feb 20 14:18:56 hell, Handler has a postAtTime method that accepts a Runnable Feb 20 14:19:03 ^^ Feb 20 14:19:18 thats it Feb 20 14:19:22 I mean that may not compile Feb 20 14:19:25 pseudo code Feb 20 14:19:26 btu thats the idea Feb 20 14:19:31 I agree Feb 20 14:19:38 theres a lot that would be better off wrapped up Feb 20 14:19:39 let me guess, I can't cancel the timer after I do a postAtTime? Feb 20 14:19:40 but get over it Feb 20 14:19:43 sure Feb 20 14:19:43 sure you can! Feb 20 14:19:48 amazing! Feb 20 14:19:50 h.removesomething Feb 20 14:19:55 I cant remember what its called Feb 20 14:20:09 use removeCallbacks for a Runnable in general, or removeMessages for an actual Message implementation. Feb 20 14:20:12 yeah Feb 20 14:20:22 thats the point Feb 20 14:20:34 this isn't brain science, it's just rocket surgery. Feb 20 14:20:42 the handler handles passing data between processing thread and UI thread Feb 20 14:20:54 effectively Feb 20 14:21:01 so yes you have to instantiate your handler in the correct place Feb 20 14:21:04 the secret you have to know is that the UI thread is itself a Looper Feb 20 14:21:23 or rather, uses a Looper to loop, etc. Feb 20 14:21:38 By default, Handlers will be instanciated to be run on the Looper of the thread that created them Feb 20 14:22:03 see that I agree should be something you shouldnt hAVE to know Feb 20 14:22:12 for Activities, Services, etc, the class is instanciated in the UI thread, which means instance variables declared as part of the class are instanciated on the UI thread. Feb 20 14:22:26 ron_frown: it's something most people just kind of happily stumble into Feb 20 14:22:34 apparently a lot of people hate nice event driven programming and prefer to deal with the threads mess... Feb 20 14:22:46 you have a couple complications Feb 20 14:22:52 java doesnt have real events Feb 20 14:23:01 just this weird interface/callback mechanism Feb 20 14:23:09 and android has to worry about a lot more Feb 20 14:23:34 the way that it handles threads, and memory / cpu processing in general just makes things tougher Feb 20 14:23:43 hello? am i here? Feb 20 14:23:47 no Feb 20 14:23:48 Styler2go: it's a value, so you can treat that value however you want ??? apply any interpolation you want to it Feb 20 14:23:49 you dead Feb 20 14:24:05 /msg chanserv op #android-dev lov; /k Styler2go not anymore! Feb 20 14:24:08 whoops Feb 20 14:24:23 fail Feb 20 14:24:24 lol Feb 20 14:24:32 assuming it wasnt a joke in the first place Feb 20 14:24:43 :> Feb 20 14:24:46 change ze password Feb 20 14:24:56 <3 Feb 20 14:25:09 * StingRay_ is surrounded by kids Feb 20 14:25:11 ugh Feb 20 14:25:15 :) Feb 20 14:25:23 ? Feb 20 14:25:30 considering that I had to hit ctrl-b twice to start a message with a / ... Feb 20 14:25:31 did you get my msg Styler2go ? Feb 20 14:25:37 anyway androids real aggressive about user interface response... so naturally you are going to end up threadings tuff anyway Feb 20 14:25:38 yes Feb 20 14:25:46 almost has a realtime guarentee system Feb 20 14:25:47 seems as i had some connection problems... Feb 20 14:25:51 and when your ui threads block Feb 20 14:25:57 your app go bye bye Feb 20 14:26:07 the solution to making things responsive is threads Feb 20 14:26:54 only when you're actually going to do something heavly, not "I want to blink this button" or whatever Feb 20 14:27:06 if you want to "blink" a button Feb 20 14:27:11 use animation framework for that =) Feb 20 14:27:18 ambro718: you really ought to be doing as absolutely little on the UI thread as possible Feb 20 14:27:26 sadly I actually have done that Feb 20 14:27:36 lov: I am, but it seems I can't do *anything* at all there Feb 20 14:27:47 animate opacity of a button from 20% to 100 and back Feb 20 14:27:48 you can do things, but you want to only do things which don't block Feb 20 14:28:01 remember; the UI thread is what handles the UI. When you block it, you block the UI including response handling Feb 20 14:28:09 I know lol Feb 20 14:28:10 hittin ga webservice? use callbacks and async stuff Feb 20 14:28:21 hiding a button or showing a linearlayout Feb 20 14:28:23 a tiny bit a processing that takes < 5ms to execute in total is fine. Something that hits the network or disk? No, get out. Feb 20 14:28:25 ui thread is fine Feb 20 14:28:38 actually network is now enforced in new versions of android Feb 20 14:28:46 so just do it the right way Feb 20 14:29:14 so, what is the best way to handle long-living network connections in android 3+? Feb 20 14:29:46 service and broadcast intents if its occasional data being processed Feb 20 14:30:02 if its its a lot of data back and forth, I use aidl+ and binder stuff Feb 20 14:30:30 eg, I have about 500 android devices that are basically upnp discoverable/manageable Feb 20 14:30:50 so I created service that posts broadcast intents when it gets message to reboot, or recalibrate screen etc Feb 20 14:30:52 Ge0rG: you should strongly consider having a Service to manage your things, but you'll always need to do these in background threads. Feb 20 14:31:05 then my app has broadcast receiver to respond to those events Feb 20 14:31:06 A service just helps to ensure that your threads will keep living even after the user navigates away from your UI. Feb 20 14:31:28 lov: I have a Service already, and I am still pondering how to communicate between the service and the bg thread (where calls to the smack library need to be made according to UI actions) Feb 20 14:32:07 Have your bg thread actually be a big boy class instead of an anonymous inner class, then create methods in that class that do things. Feb 20 14:32:07 you can use broadcast intents (you'd be surprised how much communication back and forth happens that way in AOSP) Feb 20 14:32:15 bahahahahaha Feb 20 14:32:20 Don't forget to make your methods threadsafe via synchronized/volatile Feb 20 14:32:50 even something as simple as a "stop running" method for your class can basically set a boolean value that your thread will poll. Feb 20 14:33:07 Honestly, this is more of a multithreading question in general, and isn't really Android specific Feb 20 14:33:07 lov: yeah, but I can't have booleans for all UI actions Feb 20 14:33:16 er Feb 20 14:33:20 right? Feb 20 14:33:46 You MAY want to set up some sort of MVC interface where your thread will inform your service to inform its listeners that something has happened and to update Feb 20 14:34:04 but as ron_frown mentioned it may be as simple as sending Broadcast Intents depending on your use cases Feb 20 14:34:09 lov: I see two inelegant ways to do what I need: an anonymous Runnable() for each function call, that I can post() from the UI thread; or a Message marshalling/unmarshalling mechanism in a huge ugly switch loop Feb 20 14:35:12 Ge0rG: We can split this problem into two parts. The first part is getting some message that a thing happened to your activity. The second part is having your activity do something with that message. Feb 20 14:35:22 While you can combine the two steps, it may make sense for you to handle them seperately. Feb 20 14:35:33 Styler2go: sorry had to explain someone here in the company something, you can PM me Feb 20 14:35:55 The first problem, callbacks from the service, you'll PROBABLY want to solve using listeners of some kind. Either registering a listener interface on the service itself, or using a BroadcastReceiver, or something else. Feb 20 14:36:13 That listener will itself understand what the event is, and will know how to translate it into something that the UI wants to do. Feb 20 14:36:27 You can, as mentioned, use anonymous runnables or a great big switch statement or however you want to do it Feb 20 14:36:33 lov: yeah, for service->activity I'm using a ContentObserver; but for activity->service->background_thread I need some async message calling magic Feb 20 14:36:41 oh uh Feb 20 14:36:45 you're bound to the service, right? Feb 20 14:36:48 lov: right Feb 20 14:36:59 lov: so activity->service is a no-brainer Feb 20 14:37:15 add some methods in your AIDL, call those methods. Have the implemention of those methods in your service do something to your BG thread. Feb 20 14:37:17 lov: but service->background_thread is a problem, as it basically calls network send functions that could block Feb 20 14:37:21 well Feb 20 14:37:25 you need to have a message handling system there Feb 20 14:37:46 lov: yeah, and I am looking for the least inelegant way to call methods asynchronously from the service on the bg thread Feb 20 14:37:55 you either have your BG thread use some sort of message queue that it checks, or you spin off an anonymous thread to do the call to your BG thread Feb 20 14:38:13 Personally, I'd recommend just adding a message to the queue for that thread. Feb 20 14:38:39 I don't really know what your thread actually DOES, so I can't give you better details Feb 20 14:39:15 however, at this point I would say that it's really a general java threading question than anything Android specific. Feb 20 14:39:16 lov: the thread is maintaining an XMPP connection via SMACK, calling smack methods to send messages or change settings Feb 20 14:39:25 lov: mainly yes Feb 20 14:39:50 frankly, you might want to go to ##java and cautiously redact mentioning that this is an Android problem. Feb 20 14:39:58 s/mentioning// Feb 20 14:40:05 hehe Feb 20 14:40:15 i have a basic question on communicating with a asyctask i started from a started service (unbound). i want so sent a single message to the thread, i.e. something like a boolean whether it should stop. is this realised with broadcasts? Feb 20 14:40:31 in j2ee, there is a mechanism to do what I want with reflection; but it is not available on android Feb 20 14:40:38 so I will probably end up in a dead-end Feb 20 14:41:40 * lov shrugs Feb 20 14:41:41 freiform: use AsyncTask.cancel(boolean) and in your doInBackground implementation check isCancelled() Feb 20 14:41:43 look for a J5SE solution. Feb 20 14:41:54 that will pretty much be correct for Android. Feb 20 14:42:24 ok, thanks Feb 20 14:43:11 appel1: thanks, i'll try that. Feb 20 14:43:26 Please can anybody help me with my problem: http://stackoverflow.com/questions/14952171/how-do-i-get-my-android-widget-in-the-right-size-on-start Feb 20 14:52:43 Quasimotto: not fixed that yet ? Feb 20 14:52:48 cant you cheat or something ? Feb 20 14:52:51 :) Feb 20 14:53:41 no i dont think so :) i really have no idea how to handle this Feb 20 14:54:01 well your widget is a collection of views ? Feb 20 14:54:38 or rather has a collection of views ? Feb 20 14:54:57 yey? ney? Feb 20 14:55:00 StingRay_ yes Feb 20 14:55:29 well how about in on of the parent views you stick a "view" in there with a minHeight ? Feb 20 14:55:48 or you set any of the view to have a minHeight Feb 20 14:57:42 StingRay_ hmm let me think about that :9 Feb 20 14:58:16 Quasimotto: try or try not, there is no think :) Feb 20 14:59:45 Could anyone help with this facebook program? http://stackoverflow.com/questions/14969506/facebook-session-singleton-usage Feb 20 14:59:49 problem * Feb 20 15:00:14 StingRay_ yes i now set the listview with a minheight and than i will see Feb 20 15:00:27 Silox|: the logout button is under the gear :) Feb 20 15:00:38 took me ages to work that out... Feb 20 15:01:25 The problem isn't the login or the logout, it's keeping the session state between activities Feb 20 15:05:32 Hello guys, I already posted this question, but once again. On HTC Sensation Android 4+ the notification sound gets muted when I'm in a phonecall. I use the RingtoneManager to play a notification sound. Sounds this familiar? Feb 20 15:05:54 How ironic. Feb 20 15:06:07 StingRay_ no that does not work :( Feb 20 15:06:28 then there is an overriding problem with the container ... as would be my guess Feb 20 15:06:50 never looked at widgets so cant really help Feb 20 15:07:01 StingRay_ but why does it not happend every time? Feb 20 15:07:04 Number5: why are you using RingtoneManager? That's possibly why it's muted. Feb 20 15:07:13 Just use a mediaplayer or something Feb 20 15:11:03 lov, while I guess that's what I found as one of the solution. Also I just wanted to play a standard notification sound without finding some audio files to play. Feb 20 15:11:49 Number5: get the notification sound uri from the system, then play it w/ a media player. Feb 20 15:11:51 But thnx for your answer, I'll check for a mediaplayer example and see what that differs. Feb 20 15:11:58 don't check for examples Feb 20 15:12:04 figure out what you're actually doing Feb 20 15:12:08 copy/pasting teaches you nothing Feb 20 15:12:14 lov, cool thnx man, didn't know that's possible Feb 20 15:13:05 It's not necessary copy/paste, it's I need something, try this solution, ooh it works, use it. Next problem. Feb 20 15:19:57 thnx lov, it works :) Feb 20 15:24:02 np Feb 20 15:26:15 Is there a 4.2 AVD image somewhere with a fix for the "Unexpected value from nativeGetEnabledTags" log spam? Feb 20 15:26:59 Is there a story behind three games called 4 pics 1 word? Feb 20 15:28:50 ah, http://code.google.com/p/android/issues/detail?id=39723 seems to indicate there's no fix yet :( Feb 20 15:29:13 tm604: fix is 4.1.2 binary Feb 20 15:29:15 :) Feb 20 15:29:29 or regex out of the logcat Feb 20 15:29:42 4.1.2 binary is better to do :) Feb 20 15:30:29 sure - for regular dev I've been sticking with the 4.1 version, as you say. just be nice to get this sorted since it's been this way for over 3 months, I think :( Feb 20 15:30:32 Estel i assume there is and count yourself happy if you don't know :D Feb 20 15:31:32 timroes: I like how whichever-the-knockoff-is didn't even try to hide the complete copy they did of the other. Feb 20 15:32:31 What do you think about start a new thread in BroadcastReceiver.onReceive() ? Feb 20 15:32:54 Estel: thats life as a coder.. Feb 20 15:33:09 every day you stand up late, get an immensive payment, and then someone steal your stuff... Feb 20 15:33:14 Sure Feb 20 15:33:23 such a shit life :D Feb 20 15:33:51 * lime hands timroes a semi-used tissue Feb 20 15:34:05 My main bemusement is that the knockoffs appear to have been released before the first one became successful, and two knockoffs were released simultaneously Feb 20 15:34:05 :D Feb 20 15:34:31 I wonder what your concept of a totally used tissue is. Feb 20 15:34:32 lime and actually i haven't only stand up late i am also already home again :D (16:30) Feb 20 15:34:45 hehe Feb 20 15:34:55 i never even left the appartment :) Feb 20 15:35:03 you guys all ill? Feb 20 15:35:39 only insane, but no, somehow it was too warm in my buro today so i went home early Feb 20 15:35:47 there are about 7 people in this office complaining about feeling ill, one girl actually looks re-animated. Feb 20 15:35:48 wasn't in the mood of working in that tempareture anymoew Feb 20 15:35:50 alright, alright.. so i'm dealing with a new fun problem; http://pastebin.com/GB8mkZn7 Feb 20 15:35:59 i'm not sure if i described it well enough in the pastebin Feb 20 15:36:09 but i can't figure out how to use regions properly Feb 20 15:37:01 it's mainly line 9 and 10 that is bugging me Feb 20 15:38:04 What do you think about start a new thread in BroadcastReceiver.onReceive() ? Feb 20 15:38:23 lime: private pastbin Feb 20 15:38:31 oh Feb 20 15:38:51 f5 now :) Feb 20 15:39:23 ech0s7: question is out there.... I think... huh Feb 20 15:39:49 StingRay_: ?? Feb 20 15:39:51 why ? Feb 20 15:40:23 what do you think about me eating crisps ? Feb 20 15:40:38 dont like it Feb 20 15:40:42 i dont have any atm.. Feb 20 15:40:47 :) Feb 20 15:40:51 <-- skips Feb 20 15:40:58 by every piece of crisp you eat, you lose 1 second of your life Feb 20 15:41:00 :o Feb 20 15:41:10 lime: thats bollox Feb 20 15:41:14 I would be dead Feb 20 15:41:14 lime: but counting against the calories you get by each crips.. Feb 20 15:41:15 yes Feb 20 15:41:18 what is that 1 s... Feb 20 15:41:43 didn't expect you guys to be so philosophical about crisps Feb 20 15:41:49 :) Feb 20 15:41:59 it takes you a second to eat a crisp? do you eat them with chopsticks or something? Feb 20 15:42:08 Hi!, can someone help in implementing a comunication between two glsurfaceview threads? i was trying to do sharing eglcontext between the two eglcontext but it doesn work for some reason, and thats why im trying now to communicate bewteen two glsurfaceview, so I can pass information between the two threads Feb 20 15:42:13 i'm personally a biscuit-guy Feb 20 15:42:33 now that i have your attention.. look at my pastebin :) Feb 20 15:42:38 :D Feb 20 15:42:38 tea and biscuits are my domain, and heritage !! Feb 20 15:42:42 attention fisher! Feb 20 15:42:45 yup :D Feb 20 15:42:52 crisps and gummybears (?) Feb 20 15:43:04 hob nobs or jaffa cakes? Feb 20 15:44:10 i know hob nobs.. can't be arsed googling jaffa cakes Feb 20 15:44:17 I'm using addPreferencesFromResource(R.xml.settings), but how can I then add a SeekBar to the prefrences? I've tried to do setContentView(R.layout.activity_settings); as well and create a in my activity_settings.xml, but it just overlaps the preferences from settings.xml. Feb 20 15:44:20 my god... Feb 20 15:44:25 but isn't jaffa a citrus drink? Feb 20 15:44:58 yeah its an orangey snack of the gods. Feb 20 15:45:02 very popular here in the UK Feb 20 15:45:08 ah, i see Feb 20 15:45:09 with tea especially. Feb 20 15:45:29 bobsapp: where in the UK ?? Feb 20 15:45:29 nothing good ever came out of binge drinking tea.. Feb 20 15:45:59 not popular in Yorkshire Feb 20 15:46:24 London. Feb 20 15:46:39 oh yeah Feb 20 15:46:43 what about Berocca? Feb 20 15:46:45 but they are not british Feb 20 15:46:47 :) Feb 20 15:46:52 wow really? what do they have in Yorkshire then? rich tea biscuits? Feb 20 15:47:06 ya :) Feb 20 15:47:09 eeeuuuwww Feb 20 15:47:18 :D Feb 20 15:47:26 jaffa cakes are made of pure win Feb 20 15:47:35 ^ Feb 20 15:47:38 with a hint of dreams Feb 20 15:47:54 Hi, how would I include a standard Java .class jar into my Android project? Do I have to use the dx tool? If so, how? (Its not working the way I did) Feb 20 15:47:59 Hi!, can someone help in implementing a comunication between two glsurfaceview threads? Feb 20 15:48:15 flan3002: using eclipse you just drop it into the libs folder Feb 20 15:48:23 right click, add to build path Feb 20 15:48:24 done Feb 20 15:48:41 (the second step usually isn't even necessary here) Feb 20 15:48:52 MDijkstra: Well, if that would work, I wouldnt be here :P Feb 20 15:49:11 well, that should work, and you provided zero details :p Feb 20 15:49:15 I get a VerifyError, that why I guess its about the class format. Feb 20 15:49:41 Ok when I put the tablet into sleep mode by pressing the power button, and I bring it back up using the power button again ('wake' it up), while I'm still in the lock-slide screen, the app changes orientation eventhough I told it not to... how do I prevent this? Feb 20 15:50:16 I'm using configChanges="orientation|keyboardHidden" and orientation="sensorLandscape" Feb 20 15:50:52 flan3002: which class/method does the verifyerror give? Feb 20 15:51:18 (you should be able to see it in logcat) Feb 20 15:52:08 MDijkstra: Give me a second, reproducing that error... Feb 20 15:52:50 hello? Feb 20 15:53:30 How do you know it's changing orientation when it's hidden behind the lockscreen? ;d Feb 20 15:53:35 anybody around using json.net / wcf and jackson android? Feb 20 15:53:45 SimonVT, because the app stops working Feb 20 15:53:49 and the screen goes blank Feb 20 15:53:55 when I come back in Feb 20 15:54:12 Now seriously though, anyone have experience with this? Feb 20 15:54:20 I found 1 stackoverflow entry with no real response Feb 20 15:54:23 SimonVT: thankyou for your menubar, tried a few libs, your was simplest to use :) Feb 20 15:54:29 \o/ Feb 20 15:54:33 menuDrawer* Feb 20 15:56:06 and I hate using any libs, so even more of a comp. :) Feb 20 15:57:04 Now you're just being weird :p Feb 20 15:58:05 MDijkstra: Okay, that problem resolved, I didnt know I had to add it to the buildpath, that made the Verifyerror vanish, but thats all... Feb 20 15:58:34 hi, where in eclipse can i find the md5-sum for the debug key the sdk created to sign the app while developing? Feb 20 15:58:37 seriously though ... no one is able to help? Feb 20 15:58:55 barque, you said that twice Feb 20 15:58:57 MDijkstra: Now I get 'dalvikvm(14098): Could not find method de.ruedigermoeller.serialization.FSTConfiguration.createDefaultConfiguration, referenced from method serialization.FSTSerializationHelper.' Feb 20 15:59:24 The app with orientation="sensorLandscape" seems to restart activity or something similar while the tab is rotated in lock-slide screen Feb 20 15:59:25 MDijkstra: That somehow means it didnt work, right? :D Feb 20 16:00:19 barque, are you trying to keep a fixed orientation for a particular activity always or just stop it rotating during unlock Feb 20 16:00:47 it has a fixed orientation... I'm trying to prevent the unlock screen from forcing it to rotate or to restart it Feb 20 16:01:23 try: setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE) in your onCreate Feb 20 16:01:23 it has orientation="sensorLandscape" and configChanges="keyboardHidden|orientation" and I do onConfigurationChanged() Feb 20 16:01:29 ok Feb 20 16:02:01 can someone explain me how to add a tab to a tabhost? i think i am doing something wrong but i dont know what... Feb 20 16:02:19 the function TabHost.newTabSpec... what "Tag" does it need? any random? Feb 20 16:03:18 didn't work Feb 20 16:03:31 I put it in onConfigurationChanged () Feb 20 16:03:34 would that work there? Feb 20 16:04:09 Styler2go: its an identifier. you can use that string in setCurrentTabByTag() to set that particular tab as active. Feb 20 16:04:30 barque, did you not put it in the oncreate? Feb 20 16:04:44 i am using eclipse with adt to develop my first android app. I try to use the maps api in this. http://developer.android.com/tools/publishing/app-signing.html#setup says, eclipse creates the debug certificate for me. But where do i get the md5sum i have to provide to the api-signup site? Feb 20 16:04:55 well I just did, let me try it again Feb 20 16:06:24 barque, also why are you doing sensorlandscape instead of just landscape Feb 20 16:06:29 Hello! I am trying to draw black circle (not filled, just a stroke) with shadow near stroke using setShadowLayer(). Is any alternative to setShadowLayer() because performance of this method of shadow creation is bad? Feb 20 16:06:34 in the acitivty manifest.. Feb 20 16:06:40 it's a requirement by the person I'm developing for Feb 20 16:06:43 Because there are two landscape orientations Feb 20 16:06:45 they require both Feb 20 16:06:58 reverse and normal Feb 20 16:07:34 btw it did not work Feb 20 16:07:43 not onCreate not onConfiguration changes... Feb 20 16:07:53 I'm not sure what is called ... but the activity goes blank Feb 20 16:07:57 it's a SurfaceView Feb 20 16:08:04 oic, I didn't know about sensorlandscape Feb 20 16:09:01 barque, wait. "seems to restart activity or something similar" Feb 20 16:09:08 after it goes to sleep... Feb 20 16:09:23 when I get back to lock screen Feb 20 16:09:28 unless I rotate the app Feb 20 16:09:30 everything's fine Feb 20 16:09:37 rotate the tablet Feb 20 16:09:43 because there's music playing in the background Feb 20 16:09:44 Hello! I am trying to draw black circle (not filled, just a stroke) with shadow near stroke using setShadowLayer(). Is any alternative to setShadowLayer() because performance of this method of shadow creation is bad? Feb 20 16:09:49 once I rotate it... everything goes to hell Feb 20 16:10:16 because rotating restarts the activity Feb 20 16:10:27 are you handling the saveinstancestate properly? Feb 20 16:11:10 also music playing should be implemented in a service if you want it to persist Feb 20 16:11:16 umm... but with sensorLandscape and onConfigurationChanged that does not cause trouble Feb 20 16:11:38 what doesn't cause trouble, the fact you haven't implemented the activity lifecycle functions? Feb 20 16:11:59 what have I not implemented? Feb 20 16:12:06 on you talking about saveInstanceState? Feb 20 16:12:13 yes, I asked that Feb 20 16:12:26 well no I have no implemented that... I'll see if that's the issue Feb 20 16:12:35 * preds is done Feb 20 16:12:44 :) Feb 20 16:12:57 it sounds like you should be working through the tutorials Feb 20 16:13:09 I have looked at Samsung's "tutorials" Feb 20 16:13:15 Maybe you should start by actually confirming what is happening when your app is backgrounded Feb 20 16:13:30 I know for sure onPause and onResume are called Feb 20 16:13:42 but I'll see what's happening with SurfaceHolder callbacks Feb 20 16:13:44 if any Feb 20 16:14:29 Might want to check onDestroy, onCreate and onConfigurationChanged as well Feb 20 16:14:56 no surface holder callback Feb 20 16:15:07 Since you seem to believe it's orientation related, check the orientation in some of these callbacks Feb 20 16:15:10 doubt the app is destroyed because other wrappers are working Feb 20 16:15:32 and do I have an implementation for Config changed Feb 20 16:16:14 let me log these calls Feb 20 16:16:30 would someone have time to explain TabHost? Feb 20 16:16:37 i dont know what i am doing wrong Feb 20 16:16:42 Debugging 101, write it down Feb 20 16:16:52 Styler2go: Well, for starters you're using TabHost Feb 20 16:17:03 when i use the new map api, will my app work on 2.2? Feb 20 16:17:03 super.onCreate(savedInstanceState); <== were you talking about this preds? Feb 20 16:17:21 yes, i am using TabHost, why? Feb 20 16:17:31 barque, yes, rotating an activity restarts it, ie. your onCreate() is called again Feb 20 16:17:32 "i dont know what i am doing wrong" - "you're using TabHost" Feb 20 16:17:40 yes, I've had that since the begining Feb 20 16:17:56 I've had that for so long I forgot I even had that Feb 20 16:18:02 It's basically a complicated way of adding a few buttons to a layout and setting some click listeners Feb 20 16:18:07 (imo) Feb 20 16:20:05 anyone used v2 of the google maps sdk? It looks like it's totally broken? http://android.cyrilmottier.com/?p=855 Feb 20 16:21:29 http://goo.gl/ToIXc Feb 20 16:22:40 onCreate () onDestroy () and onStop () are not being called Feb 20 16:28:31 Hi guys. Is there any way to register a callback if a user click on the notification? Feb 20 16:28:48 basically I should use the word KeyGuard instead Feb 20 16:28:55 since it's that screen that ruins everything Feb 20 16:29:56 I thought I was getting the hang of things-- then it all went to crap. Adding a text view seems to have broken, well, everything. http://pastebin.com/CccaTDW4 Feb 20 16:30:40 Where do I start googling. I am less interested in getting fed an answer and more interested in being able to solve this myself when I start doing this for real. Feb 20 16:30:55 "NetworkOnMainThreadException" Feb 20 16:31:06 What does that even mean. Feb 20 16:31:10 erm Feb 20 16:31:20 means it dont like networking on main UI thread Feb 20 16:31:36 and throws an exception to tell you so Feb 20 16:31:37 :) Feb 20 16:32:40 google "NetworkOnMainThreadException android" for the most results you will see without searching for porn! Feb 20 16:34:58 Got it. Fair enough. I did it without android and rule 34 kicked in, thanks for the heads up. Feb 20 16:36:33 I'm using addPreferencesFromResource(R.xml.settings) and I add a to R.layout.activity_settings. Thus, the SeekBar will be overlapping the other list objects defined in R.xml.settings. How can I have the SeekBar at the bottom of the list instead? Feb 20 16:38:13 I guess I can use android:layout_marginTop, but then it would probably look weird on different resolutions? Feb 20 16:43:10 hi, am i in the right chan to ask rom build questions ? Feb 20 16:43:17 nope Feb 20 16:43:59 thx ;) is android-root the right one Feb 20 16:44:06 goto android-root Feb 20 16:44:07 ish Feb 20 16:44:13 thx Feb 20 16:45:20 hmm, does Android have HW video encoding APIs? Feb 20 16:49:03 Looks like I need an "extends asycTask" or something to that effect. Gonna go find many ways that don't work until I find a way that does work. Thanks for the heads up. Feb 20 16:49:38 Mavrik> I've never played with this, but as I understand, there are encoding APIs just as there are decoding APIs. With both, they might be hardware backed, they might not. Feb 20 16:50:10 Chainfire, hmm, I just can't find the reference Feb 20 16:50:15 there's MediaCodec which is API 16+ Feb 20 16:51:09 so anyone able to help? Feb 20 16:51:19 Seriously how do I only resume app after keygaurd? Feb 20 16:51:34 onResume is called before keygaurd is opened Feb 20 16:52:34 barque: I dont even understand what your wanting to do ... you want to control lifecycle order ? Feb 20 16:52:45 I don't wanna control anything Feb 20 16:52:53 onResume is called when the keyguard is shown Feb 20 16:52:57 using async tasks in services -- good or bad idea? Feb 20 16:53:00 that screws up the application Feb 20 16:53:09 the problem is Feb 20 16:53:11 funkbox both iho Feb 20 16:53:17 I can force resume the application on SCREEN_ON Feb 20 16:53:38 but the orientation of the application is changed during *sigh* ... keygaurd Feb 20 16:53:43 i've got a bunch of code written that uses asycn tasks taht i'd like to leverage Feb 20 16:53:59 barque: just sounds like you need to handle config changes better Feb 20 16:54:02 with planning Feb 20 16:54:05 is there a way to supress intenservice exiiting after on handle intent? Feb 20 16:54:25 well if it's doing something it wont end Feb 20 16:54:37 i could have monitor or semaphore and wait on it but that seems weird Feb 20 16:54:39 or if your extending just service you can startService() Feb 20 16:54:41 You're just not experiencing the problem and giving me blanket statements Feb 20 16:54:42 and it wont end Feb 20 16:54:48 and have selfStop Feb 20 16:55:26 barque: you havent even given a proper problem yet Feb 20 16:55:36 I've described it several times Feb 20 16:55:50 your describing what we all have to learn about activity cycles Feb 20 16:55:52 onResume is called when the keygaurd appears ... that resumes my application : NOT good Feb 20 16:56:01 ok Feb 20 16:56:04 yes Feb 20 16:56:06 if I move this to SCREEN_ON Feb 20 16:56:07 same here Feb 20 16:56:13 same with anything Feb 20 16:56:16 that's half the problem Feb 20 16:56:16 StingRay_: you do not have the sufficient knowledge to answer my question, but thanks for trying. Feb 20 16:56:29 barque check USER_PRESENT Feb 20 16:56:35 (top of my head, may solve your problem) Feb 20 16:56:38 the other half is ... why is orientation of the application changing while it's only sensorLandscape and handles onConfigChanges() Feb 20 16:56:46 when inside keyguard screen Feb 20 16:57:02 barque: I have had that when I lock orientation Feb 20 16:57:12 but odly when it's not locked it dont Feb 20 16:57:13 lol Feb 20 16:57:21 only on my samsung tablets though Feb 20 16:57:25 funkbox I'd avoid AsyncTask inside a service... of course it depends on what you're building but often you want an IntentService instead. Or a service with a background thread Feb 20 16:57:31 I've seen this on Kindle Fire a well Feb 20 16:58:43 barque: but what is the exception that your getting ? Feb 20 16:59:00 no exceptions ... there are no exceptions ... just a giant blank screen Feb 20 16:59:10 non of the onCreate onStop onResume or onPause stuff is called Feb 20 16:59:23 as if the activity loses it's surface Feb 20 16:59:27 funkbox IntentService is like 20 lines of code (excluding comments), just copy/paste it from Android source and adjust it the way you want to, if it doesn't do what you want by default Feb 20 17:00:28 Chainfire: i have a ton of code that uses async tasks that i'd like to leverage. the pattern is usually sync this particular URL and then update a widget or do nothing Feb 20 17:00:56 i'd rather not refactor all that code to support the scenario, but i'll do what you said. thanks@ Feb 20 17:02:26 can't believe the Droid Razr Maxx HD doesn't come in white... idiots. grrr :/ so I'll have to order the "Droid Razr HD" instead... Feb 20 17:02:56 MAN! Feb 20 17:02:58 No white? Feb 20 17:03:03 I can't believe that Feb 20 17:03:08 you should burn down a verizon store Feb 20 17:03:14 actually you should do that anyway but w/e Feb 20 17:03:29 lmao Feb 20 17:03:31 exactly Feb 20 17:03:46 They have white in just about everything except for their best phone apparently. Feb 20 17:03:52 funkbox I'm not saying you *can't* use AsyncTasks, I'm saying I would avoid it. See if it works as expected, do some more research, and if it does, consider if it's worth your time to refactor it at all. Maybe it's more sensible to keep using the AsyncTask Feb 20 17:04:17 Chainfire: it's thousands upon thousands of lines of code with it's own execution and chaining and error handling and stuff Feb 20 17:06:33 only reason why I'm ordering a new one is because my MMS capabilities were fried. SMS/voice, etc... they all work.. no MMS. Probably happened about 8 months ago when I tried to get around their bullcrap OTC update which took my root/wifi away and I flipped from 2.3.3 to 2.3.5 and some settings got lost. Feb 20 17:07:50 pierpark: you use mms ? Feb 20 17:08:09 whatever sends pics via texts...yep Feb 20 17:08:21 I thought you states side get raped on almost everything, and even here in uk mms is quite pricey Feb 20 17:09:14 as much as 50 cents per mms Feb 20 17:09:26 fag online system is trying to tell me my plan is no longer available... and to pay $70 for 4GB... bahaha. No thanks, I'll go to the actual store and tell whatever poor sales rep that the only way I'm upgrading is if they ensure my plan doesn't change (the $40 for unlimited data). idiots. Feb 20 17:10:15 ok, well, watch the language and general bitching goes to #android soo Feb 20 17:10:28 I pay $20 for unlimited SMS/MMS/etc, and $40 for unlimited data. But they changed that unlimited data a few years back and want to totally rape you for a very small amount of data... if I change my plan, ever, I can't ever get my $40/unlimited back..so I make sure they dont screw with it. Feb 20 17:10:35 my bad Feb 20 17:12:19 general_bitching = null; Feb 20 17:17:25 hi is there a way to call requestRender from a different glsurface? Feb 20 17:21:55 ok is there any way to force the keygaurd to not change orientation? Feb 20 17:22:37 barque: is it your views are not getting re-created ? or is it 1 big surface view ? Feb 20 17:22:45 1 big surfaceview Feb 20 17:23:13 so your draw or surface callbacks are not triggered after this happens ? Feb 20 17:23:20 no Feb 20 17:23:28 I'll log them... yet again ..... Feb 20 17:23:33 to see if I see *anything* Feb 20 17:24:19 have you had a look at the dump view hierarchy to see if it's there and attached ? Feb 20 17:24:34 at the point of the screen been black obviously Feb 20 17:25:07 How do I do that? Feb 20 17:25:21 click on device in "Devices" Feb 20 17:25:29 and the little icon above Feb 20 17:25:35 on the tablet? Feb 20 17:25:37 like 3 phones stacked behind Feb 20 17:25:42 in ddms view Feb 20 17:25:48 not using eclipse Feb 20 17:25:51 if you're wondering Feb 20 17:25:53 oh Feb 20 17:25:57 no idea then :) Feb 20 17:25:59 using Tegra 2 NDK from nVidia Feb 20 17:26:07 but there must be something I can do similar to that Feb 20 17:26:21 fire up eclipse and do it ? Feb 20 17:26:23 :) Feb 20 17:26:43 good point Feb 20 17:27:02 or search for similar Feb 20 17:27:03 :) Feb 20 17:27:15 Everything works. It's a crummy app. But, hey I'll have something to show the group later. Thanks again. Couldn't figure out why my previously working app stopped working-- the networking on the main UI thread was the problem. The reason it stopped working was that I took care of a warning by setting minSDK=15 targetSDK=17 in the manifest. But, honeycomb and later need that extends AsyncTask... Feb 20 17:27:17 ...mumbo-jumbo. Feb 20 17:27:33 my SurfaceHolder callbacks are for sure not being called Feb 20 17:27:54 barque: i think the view is gone then Feb 20 17:27:55 :) Feb 20 17:28:36 oh wait wait Feb 20 17:28:39 when I rotate the screen Feb 20 17:28:47 surfaceDestroyed is called Feb 20 17:29:30 but not surface created or anything like that after wards Feb 20 17:30:23 barque: but when the screen black, and rotate again Feb 20 17:30:28 no sufaceDest. ? Feb 20 17:30:35 no Feb 20 17:30:39 gone then Feb 20 17:30:41 that's the last of the surfaceHolder callbacks Feb 20 17:30:48 check with the view thingy in eclipse Feb 20 17:31:00 but how do I prevent this? Feb 20 17:31:10 well 1st confirm it Feb 20 17:32:37 it's unable to work with the device Feb 20 17:32:39 unable to debug Feb 20 17:32:42 get hierarchy etc. Feb 20 17:32:49 hierarychyViewer Feb 20 17:32:59 no Feb 20 17:33:10 in the devices view Feb 20 17:33:28 click the dump view hierarchy thingy Feb 20 17:33:32 see if that works Feb 20 17:33:52 granted you dont get a nice node view, but you can see the views Feb 20 17:36:35 I'm in DDMS Feb 20 17:36:43 I just selected my device Feb 20 17:36:48 I don't see hierarchy viewer Feb 20 17:37:00 you see in that devices window Feb 20 17:37:06 icons on the top Feb 20 17:37:10 right of the camera icon Feb 20 17:37:57 UI automator requires a device with api level 16 Feb 20 17:38:08 ugh Feb 20 17:38:11 dammit Feb 20 17:38:23 but given what you know Feb 20 17:38:27 what is a possible remedy Feb 20 17:38:28 ? Feb 20 17:38:42 surface is destroyed and never returned Feb 20 17:38:47 after orientation changed Feb 20 17:39:17 well debug and check the return of the surface cause I think at the point of setContent it will be null Feb 20 17:39:21 but just guessing Feb 20 17:39:24 barque: you like the NDK? I realize the ADT preconfigured Eclipse/AndroidSDK is king. But, I've never been hurt by having alternatives available. Feb 20 17:39:29 <--- not really a coder Feb 20 17:39:45 StingRay_: Lies. Feb 20 17:40:01 I'm a VFX artist like 99% and a coder like 1% Feb 20 17:40:05 so not all lies Feb 20 17:40:05 I have to use it for my job so Feb 20 17:40:13 it's ok Feb 20 17:40:29 debugging native code is nice Feb 20 17:42:43 ok so for sure I know surface is destroyed Feb 20 17:42:54 how do you prevent this if possible? Feb 20 17:47:28 barque: no idea .. tie it to the application rather than activity ? <-- more a question that a statement btw Feb 20 17:48:01 You mean the "Application" class ? Feb 20 17:48:12 God I cannot possibly rework this entire application Feb 20 17:48:31 There's an enormouse amount of code Feb 20 17:48:32 well no I mean you can access the application from an activity no ? Feb 20 17:48:38 getApplication() Feb 20 17:48:42 right Feb 20 17:48:51 Tie surfaceHolder callbacks to that? Feb 20 17:48:54 btw these are all just speculative Feb 20 17:49:02 <-- 1% coder remember Feb 20 17:49:10 surfaceView.getHolder().addCallback(this); Feb 20 17:49:18 that's what I'm doing at the moment Feb 20 17:49:24 well not the callbacks Feb 20 17:49:31 I would think you want them in the activity Feb 20 17:50:34 So what do I have to do differently? Feb 20 17:50:44 tie the SurfaceHolder itself to the application? Feb 20 17:50:52 I get it from a SurfaceView Feb 20 17:51:42 ok well what if you detached it from the view hierachy and re-attach/re-find ? Feb 20 17:52:14 there must be some stuff on SO about this Feb 20 17:52:28 Nothing ... only 1 question I found with no answer Feb 20 18:09:00 Help. Feb 20 18:09:05 -_- Feb 20 18:10:28 hi all Feb 20 18:10:56 does anyone know how i can obtain a X509Certificate instance from the android certificate store of a root ca by its CN? Feb 20 18:29:51 hello all Feb 20 18:30:48 I realize this isn't the best place to ask but I'm desperately looking for any info on either changing the name of an app and how it reports it back to the OS or how to hide an app from a MDM server Feb 20 18:31:40 I'm sure this is all for perfectly legal reasons. Feb 20 18:31:47 Anyway, #android-root might be a better place to ask. Feb 20 18:32:03 so i can do . is there any way to do something similar with a List, like List ? Feb 20 18:32:06 I'm also sure yout IT department loves you Feb 20 18:32:14 s/yout/your/ Feb 20 18:33:03 canadiancow: can't you do List? Feb 20 18:33:23 no? Feb 20 18:33:48 i actually have never seen that notation, what does it do :D Feb 20 18:33:56 lov, you are correct, perfectlly legal Feb 20 18:34:03 http://docs.oracle.com/javase/tutorial/java/generics/bounded.html Feb 20 18:34:27 canadiancow: use an interface? Feb 20 18:34:47 that's the most vague question-answer i've ever seen :P Feb 20 18:34:52 is that supported since 1.5? Feb 20 18:34:59 yes Feb 20 18:35:20 crazy :D Feb 20 18:35:35 canadiancow: the most generic :) Feb 20 18:35:40 and List doesn't work? Feb 20 18:35:48 no Feb 20 18:35:49 (except ofc you couldn't add items to the list anyway :D) Feb 20 18:35:59 why couldnt you add items to the list? Feb 20 18:36:11 wait Feb 20 18:36:15 i guess i am tired and confused Feb 20 18:36:29 but thought you cannoot add items to List since it doesn't actuall know what type it has Feb 20 18:36:38 :| Feb 20 18:36:40 uhh Feb 20 18:36:58 List == List Feb 20 18:37:23 How do I recover a destroyed surface from ACTION_USER_PRESENT? Feb 20 18:37:54 or rather, it effectively lets you do anything you want to the list Feb 20 18:38:49 canadiancow: i think you are wrong :) Feb 20 18:38:54 Hello? Feb 20 18:38:56 wrong about what Feb 20 18:39:05 List l = null; l.add(new Object()); doesnt work for me here Feb 20 18:39:25 (also when i initialize l to ArrayList() Feb 20 18:39:33 because List is not a List Feb 20 18:40:04 List is a list from which the type is unknown, and since its unknown you cannot add anything to it, List is a list of any object so ofc you can do anything to it Feb 20 18:40:23 yeah you're right Feb 20 18:40:40 you'd need List to add an Object Feb 20 18:40:47 e.g. List l = new ArrayList(); you can put anything for XXX, but List l = new ArrayList you can only put Obejct for xxx Feb 20 18:41:09 canadiancow I'm missing something obvious no doubt, but how is "public void inspect(U u)" different from "public void inspect(Number u)" Feb 20 18:41:35 uhhh Feb 20 18:41:42 beats me Feb 20 18:41:56 in that case, it may not be? Feb 20 18:42:13 but it allows things like: public void inspect(U u) Feb 20 18:42:22 right Feb 20 18:42:34 then its possibly a bad example on http://docs.oracle.com/javase/tutorial/java/generics/bounded.html :) Feb 20 18:42:42 just wondering if I've gone mad. Feb 20 18:43:05 ok guys Feb 20 18:43:15 Chainfire: it is, using single bound type parameter as type of a parameter (not as generic type like List) afaik never makes sense Feb 20 18:43:23 if my app is running behind a keygaurd and the keygaurd rotates... my app's surfaceDestroyed is called Feb 20 18:43:26 i just want a list of objects that all extend View and implement my custom interface :( Feb 20 18:43:29 and I am never able to recover the surface Feb 20 18:43:36 any ideas how to deal with this? Feb 20 18:43:47 keyguard* Feb 20 18:45:12 anyone? Feb 20 18:45:20 Hi all Feb 20 18:45:29 how do i download this library? Feb 20 18:45:30 http://www.geog.leeds.ac.uk/people/a.turner/src/andyt/java/generic/dist/javadoc/uk/ac/leeds/ccg/andyt/generic/math/Generic_BigDecimal.html Feb 20 18:45:40 canadiancow: myMethod(List ..) ? Feb 20 18:45:48 it's not a method Feb 20 18:46:00 it's a field Feb 20 18:46:06 barque: I'm not really sure what your question is. You don't recover the surface, it's destroyed. Feb 20 18:46:09 You'll get a new surface./ Feb 20 18:46:37 canadiancow: ahh a field :D Feb 20 18:46:39 sounds like an MS support call that never happened Feb 20 18:46:39 but it's an optional field, so i dont want a type parameter required for all uses of the class Feb 20 18:46:39 Chainfire: btw, have you heard that they got USB working on N4? Feb 20 18:47:00 p_l powered ? Feb 20 18:47:15 lov, I'm not getting such a thing Feb 20 18:47:24 Chainfire: needs extra power, yes Feb 20 18:47:27 when the tablet is rotated and thus the keyguard on screen is rotated Feb 20 18:47:31 Chainfire: and a kernel hack Feb 20 18:47:33 the app's surfaceDestroyed is called Feb 20 18:47:36 when I get back in Feb 20 18:47:45 surfaceCreated or Changed are not called Feb 20 18:47:48 Chainfire: basically the required stuff was forcing of USB mode manually Feb 20 18:47:51 canadiancow: inside a method you can put the type argument to the method and use it inside like: void myMethod() { List .... } could that also work for class types somehow? Feb 20 18:47:53 app stays pretty much surface less Feb 20 18:48:05 timroes, maybe? :S Feb 20 18:48:13 it does at least compile :) Feb 20 18:48:21 p_l I'm not surprised, these hacks are available for a great many devices. But without device supplying power, it's not very practical usually Feb 20 18:48:42 public class JavaApplication9 { Feb 20 18:48:42 List test; Feb 20 18:49:13 doesnt give any compile error for me also instantiation that class does work at runtime Feb 20 18:50:08 k well im trying it Feb 20 18:50:23 Chainfire: I'm thinking of making a small "dock" (iPaq 3xxx sleeve style) with place for power for USB and maybe storage Feb 20 18:50:31 barque: that's pretty strange and unexpected. Try this using the emulator, see what happens. Feb 20 18:50:37 possibly also working as external battery for N4 Feb 20 18:50:50 if that doesn't work, ask on stackoverflow or something Feb 20 18:51:08 (apparently it charges while having USB host on, too) Feb 20 18:52:19 oh thats cool. We need kernel hacks to do that on Nexus 7. The OTG spec actually allows for host+charge, but a lot of devices have it disabled, or use non-standard resistor values Feb 20 18:52:56 Chainfire: well, in this case, the power distribution fuckup does that for us ;) Feb 20 18:53:34 I have some clients abusing that with a Nexus7 charging from host cables while connected to a powered USB hub that also runs webcams and several arduinos, all controlled from the N7. Fun stuff. Feb 20 18:53:46 so wait, this happens for no one else? Feb 20 18:54:24 timroes, i'm getting an error with my T object = new RealClass(); where RealClass extends Object and implements Comparable (to follow your example) Feb 20 18:54:33 Chainfire: http://forum.xda-developers.com/showthread.php?t=2151159 Feb 20 18:54:53 yeah I was just reading :) Feb 20 18:55:27 "Also this is based on Android 4.2.1, and if you have 4.2.2 you might not be able to make calls." Feb 20 18:55:39 good thing there aren't too many big issues :P Feb 20 18:56:05 canadiancow: different radio in 4.2.2, so possible memory layout conflict Feb 20 18:56:12 canadiancow: yeah right, initializing new objects to type parameters is somehow always a mess :D Feb 20 18:56:17 canadiancow: there's a video of someone getting it running with 4.2.2 Feb 20 18:56:19 canadiancow well if Google hadn't f'd it up in the first place ... :) Feb 20 18:56:39 Chainfire: you can also bypass some of the OTG power issues by throwing a power splitter and a powered hub in there Feb 20 18:56:44 Chainfire: which is the trick for moto devices Feb 20 18:56:44 Chainfire: more like LG ;P Feb 20 18:56:51 i gave it up last time and made my god damn list a raw list, what ofc isn't nice but i would have somehow needed 3 more inner classes to get ir working with wildcards Feb 20 18:57:00 dragorn: that's what is required for N4 Feb 20 18:57:14 timroes, in my case, even when i pull it out, it will be a pain Feb 20 18:57:15 p_l: right, we'd discussed that before Feb 20 18:57:25 p_l: I couldn't convince my friend with one to let me backfeed it Feb 20 18:57:44 i'd need like ((MyInterface) object).doSomething(); addView((View) object); Feb 20 18:57:49 yeah :) Feb 20 18:57:51 dragorn: it's just that N4 also lost autodetection of OTG mode Feb 20 18:58:21 i had the problem when i wrote an object mapper, so i actually didn;t know anything about the objects but need to intatiate them from types i get, and aahh Feb 20 18:58:22 p_l: usb host is in general so wacky it's hard to base products on it Feb 20 18:58:25 it somehow ate my brain Feb 20 18:58:35 p_l: s/wacky/unreliable between models and manufacturers/ Feb 20 18:58:35 barque: I think that's the case. It's just happening for you. It could be bogus hardware that you're using but I find that hard to believe. Feb 20 18:58:40 barque: try running some API demos. Feb 20 18:59:43 so my idea is to make a "sleeve" with a battery pack, SD slot, arduino, + kernel patch and a management app, with arduino running as host device in accessory protocol, informing you to handoff to OTG Feb 20 19:00:39 p_l: you could, i suppose. As soon as you're talking "kernel patch" it's worthless for productization though Feb 20 19:01:13 p_l: and while hacking on stuff is fun, if 90% of your potential userbase can't run it, I find it hard to get motivated to go that path Feb 20 19:05:00 dragorn: well, it could be pushed for real product... maybe I'll get someone to demo it at some googleplex ;P Feb 20 19:05:04 timroes, type parameters of java.util.List cannot be determined; no unique maximal instance exists for type variable T with upper bounds android.view.View,my.custom.Interface Feb 20 19:05:59 jhammi brainss Feb 20 19:07:01 given the commit that disabled USB OTG in framework sounded like "fuck, the hw we got doesn't do the work"... :D Feb 20 19:07:14 nah it wants me to specify a type when i instantiate the class that had the Feb 20 19:07:20 which i cant do Feb 20 19:07:36 thats funny and interesting and solving Feb 20 19:07:55 if i have i can instantiate the class without any types Feb 20 19:08:44 so i guess, java tries to find a unique "type" that expresses what you meant with your multiple boundaries Feb 20 19:08:45 http://developer.android.com/about/dashboards/index.html << something like this exist for processors? Feb 20 19:09:00 e.g. the compiler can behave for T to be Compareable Feb 20 19:09:11 because if its Comapreable its also Object Feb 20 19:10:05 hmm okay not the reason, it compile well for me if i change Object to some own class that doesnt implement anything or extend anything Feb 20 19:10:10 what java version are you compiling against? Feb 20 19:11:23 1.5 or 1.6 Feb 20 19:11:31 1.6 Feb 20 19:11:37 no i understand what my problem is Feb 20 19:11:41 it's just annoying Feb 20 19:11:57 http://pastebin.com/GZymtTsZ <-- works for me NewClass and NewInterface beeing just some random interface and class Feb 20 19:13:08 Hi, is it possible to execute something when the user click on the notification? Feb 20 19:14:16 fairuz_ http://developer.android.com/guide/topics/ui/notifiers/notifications.html#SimpleNotification just use the pendingIntent? Feb 20 19:15:07 ok timroes , can you do javaApplication9.add(something) ? Feb 20 19:16:26 yeah screw this im just goign to cast it to View when i pull it out Feb 20 19:20:29 timroes: I do use pengingIntent to launch an activity. Just wondering if we can hook a callback when activity is launched. Feb 20 19:20:41 p_l: once you're requiring kernel mods and custom hw, you're most likely in the territory where you either require or provide the android platform too. We're solving it with "get a n7 or a n10, those are the only supported platforms." Feb 20 19:21:05 canadiancow: actually i can also make add(new Object()) what shouldn;t be possible :D Feb 20 19:21:18 p_l: the additional $200 is nothing, if you're targetting 'real customers'. For a small hacker-y project, it's a big ask, but you have to sacrifice usability and stability for ubiquity Feb 20 19:21:32 p_l: or at least the appearance of ubiquity Feb 20 19:21:45 canadiancow: forget what i said, not from inside the class only from outside :D Feb 20 19:21:50 oh yeah java you do generics so right :D Feb 20 19:22:44 and no i cant! Feb 20 19:24:04 Is it possible to change the color of the ABS icons? For example, the sharing icon is dirty grey instead of solid white. Feb 20 19:24:15 " no suitable method found for add(testclass)... testclass cannot be converted to T by method invocation conversion where T is type-variable: T extends NewClass,NewInterface" (though testclass extends newClass and implements newinterface :D Feb 20 19:24:32 dragorn: I was thinking of getting it into official builds with "USB OTG manual mode protocol" :P Feb 20 19:24:56 p_l: I'd be interested in that Feb 20 19:25:16 p_l: it's still a pretty obnoxious cost to have to have a host chip just to kick client mode Feb 20 19:25:33 Hey, I'm trying to have a progress bar for an image upload but it looks like I just write everything to the urlConnection stream almost immediately, and then wait. Is this a buffer or something? Is there a way I can actually show upload progress? Feb 20 19:26:28 Silox: you can just change the asset files. Feb 20 19:27:09 jeppy: But I want to use the icon that's default on the platform: the solid white on ICS, and the dirty grey on -4.0 Feb 20 19:28:26 jayd16: * Feb 20 19:29:02 Silox: use different resource folders Feb 20 19:29:39 That's just an ugly solution. Feb 20 19:29:55 thats how you target different platforms Feb 20 19:31:24 hi. what will be de minimum android version required if i use the map api v2? Feb 20 19:31:50 or, will my app using this api run on version 2.2? Feb 20 19:32:25 silcox: there are already v11 and v14 drawable folders in ABS anyway Feb 20 19:50:48 ok I'm gonna ask again... Feb 20 19:51:04 when I have activity with a SurfaceView and using SurfaceHolder.Callback Feb 20 19:51:29 and I rotate my tablet in the keyguard screen, I get surfaceDestroyed from the app.... and the surface is never recovered again Feb 20 19:51:41 barque: did you try running this on an emulator like I recommended? Feb 20 19:51:48 I don't have an emulator Feb 20 19:51:53 .... Feb 20 19:51:55 yes, yes you do. Feb 20 19:51:55 I have 3 devices and they all behave the same way Feb 20 19:51:57 they're called AVDs now Feb 20 19:51:58 :D Feb 20 19:52:05 well then it's probably not a device specific issue, it's probably just you. Feb 20 19:52:07 I'm using nVidia Tegra2 NDK Feb 20 19:52:10 Go install the API demos and see what happens Feb 20 19:52:18 good for you? Feb 20 19:52:24 sigh Feb 20 19:52:34 seriously. Feb 20 19:52:48 Go install the API Demos app, pop into one of the surfaceview example activities, then lock and unlock the screen Feb 20 19:52:52 Ok it's probably just me .... but why the hell is sufaceholder.callback giving the call backs? Feb 20 19:52:54 or rotate or whatever it is you're doing Feb 20 19:52:56 THEN Feb 20 19:52:56 what am I doing so that this happens? Feb 20 19:53:01 take a look at what you're doing vs what the API demo does Feb 20 19:53:04 ok don't answer please. Feb 20 19:53:10 if you're not experiencing this Feb 20 19:53:11 rotating will destroy it Feb 20 19:53:12 don't answer Feb 20 19:53:18 I don't think anyone is experiencing this Feb 20 19:53:21 so fara nothing special but the non recreating is weird Feb 20 19:53:23 I guess no one should answer? Feb 20 19:53:31 no just you lov Feb 20 19:53:34 ok, will do Feb 20 19:53:42 * lov whistles and walks away Feb 20 19:54:14 I have orientation=sensorLandscape and onConfigChanges and configchanges=orientation Feb 20 19:54:21 it just doesn't happen anywhere else Feb 20 19:55:02 is there an maven archetype i can use for a new android app? Feb 20 19:55:31 I do realize rotating will destroy the activity and call onCreate Feb 20 19:55:33 that's understood Feb 20 19:56:08 However, that's why I have onconfigurationchanges () and orientation= and configuration= in place Feb 20 19:56:18 configchanges= Feb 20 19:56:20 * Feb 20 19:57:18 barque: so the onCreate of your activity is called? Feb 20 19:57:38 meaning your activity really gets recreated (like if you wouldn't have told it you want to handle configuration changes)? Feb 20 19:57:50 it is not called Feb 20 19:57:56 mattinahat: threads w a handler would do just fine for most things, just make sure to keep your thread in check so it doesn't stay persistent upon closing of app if not needed Feb 20 19:58:08 By doing all of the above , I've made it so that it is not called Feb 20 19:58:23 However, SurfaceHolder.Callback surfaceDestroyed() *is* called Feb 20 19:58:27 you are sure about that? Feb 20 19:58:31 that it's never called Feb 20 19:58:31 yes yes yes Feb 20 19:58:33 100% Feb 20 19:58:39 onCreate called once Feb 20 19:58:42 never again Feb 20 19:58:49 I'll check one more time Feb 20 20:00:40 *cough* on*cough*iguration*cough*nged Feb 20 20:01:12 So... what about it? Feb 20 20:01:20 How is it gonna save my destroyed surface? Feb 20 20:01:46 it's not, but you're not going to get a call to onCreate for rotation, just onConfigurationChanged Feb 20 20:02:10 Right.... Feb 20 20:02:12 and ? Feb 20 20:02:21 lov i am not sure if you see something we don't Feb 20 20:02:44 or perhaps everyone here is talking about something else :D Feb 20 20:03:07 but if he handles the changes of orientation himself, I would also assume android shouldn't destroy the surface for him? Feb 20 20:03:37 if android handles the configuration changes, it should destroy it and call oncreate again, but if not, why would it destroy the surface for what reason? Feb 20 20:04:15 I'm just about to run the build with onCreate logged like crazy Feb 20 20:04:19 giant log message in logcat Feb 20 20:04:22 hello Feb 20 20:05:05 what software is recommended or generally used for app-icon creation Feb 20 20:05:26 e.g. photoshop, illustrator Feb 20 20:05:44 Normally, I'd just hide keyguard screen and call it a day Feb 20 20:05:56 but Kindle Fire doesn't support disabling keyguard Feb 20 20:05:59 timroes: hi, Feb 20 20:06:04 which makes the problem persist on Kindle Fire Feb 20 20:06:07 and makes me very sa Feb 20 20:06:09 d Feb 20 20:06:14 under what conditions might one hit the following exception?: java.lang.IllegalStateException: Couldn't read row 0, col 1 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it Feb 20 20:06:32 setra: hi :) Feb 20 20:06:46 i meant for deriving different resolutions etc. Feb 20 20:06:49 barque: the app you are talking about is in the market? Feb 20 20:06:53 i tried searching for instances of similar errors, but they were all for col -1 (a non-existent column), which isn't relevant here Feb 20 20:06:55 timroes, no Feb 20 20:07:01 gimme a sec hold on need to recompile Feb 20 20:07:07 setra: the andriod asset studio online, or there is a plugin for photoshop doing that Feb 20 20:07:07 for reference, this is where it's happening: http://hg.mozilla.org/releases/mozilla-release/file/e80ee0ca41b9/mobile/android/base/db/BrowserProvider.java.in#l1464 Feb 20 20:07:36 does anyone know how I can display a SurfaceTexture? Feb 20 20:09:47 is asset studio something I can download or do I need to use it online Feb 20 20:10:30 setra: its online or in the ADT plugin in eclipse just google android asset studio Feb 20 20:10:33 timroes, on create is called only once Feb 20 20:10:39 and *only* once Feb 20 20:10:52 I placed a giant sign in logcat when it is called Feb 20 20:11:05 i have a few edittexts on my layout, after the user hits the enter button, i want to save the text into a variable, what is the easiest way to do that? Feb 20 20:11:09 is it possible that keyguard is forcing something onto the underlying app? Feb 20 20:11:27 so when you just use your app everything works compeltely fine? Feb 20 20:11:30 with rotating Feb 20 20:11:32 http://stackoverflow.com/questions/14988677/why-isnt-hashcode-an-interface#14988744 Feb 20 20:11:49 *vote to reopen* :P Feb 20 20:11:49 yeah absolutely Feb 20 20:11:53 How can you remove the border around the ABS share icons? Feb 20 20:11:57 if I don't rotate on keyguard everything is perfect Feb 20 20:12:06 but if I accidentally (or non-accidentally) rotate while keyguard is on Feb 20 20:12:18 the app just kills surface , calls surfaceDestroyed() Feb 20 20:12:21 if you rotate without keyguard it doesnt get destroyed? Feb 20 20:12:26 nope~! Feb 20 20:12:29 all perfect Feb 20 20:12:46 I only have sensorLandscape Feb 20 20:12:52 on which devices did you test it? Feb 20 20:12:54 so I support both reverse landscape and landscape Feb 20 20:13:07 Kindle Fire, Galaxy Tab 10.1 and Galaxy Tab 2 7.0 Feb 20 20:13:28 exact same behavior Feb 20 20:13:31 could you send me the app, so I could test it on my device? (apk would be enough) Feb 20 20:13:46 honestly I would if I wasn't working at a studio Feb 20 20:13:58 I'm under NDA and everything Feb 20 20:14:07 plus works are properties of these guys not me Feb 20 20:14:29 because IF everythign is like that, it sounds like a bug for me Feb 20 20:14:47 Could you try a SurfaceHolder.callback on an activity? Feb 20 20:14:55 and just check it out? Feb 20 20:15:08 have a SurfaceView inside your layout Feb 20 20:15:10 for the activity Feb 20 20:15:18 actually, i want to be able to catch if someone clicks on another edittext, i have a listener that see's when enter is pressed, but if someone touches another edittext, i need to account for that too. Feb 20 20:15:22 I could, but i am atm desingning :P but if you prepare some small example code that fails for you, i would ofc test it Feb 20 20:15:52 but ofc if i create something that might not even cause the failure, so would need you to give me something that really causes that bug Feb 20 20:15:56 (behavior whatsoever) Feb 20 20:16:09 if you don't notice the behavior it's a sigh of relief Feb 20 20:16:44 because then there might be something else I'm screwing up Feb 20 20:16:56 I can look into it deeper elsewhere Feb 20 20:17:04 what about WAKE_LOCK? Feb 20 20:17:09 will this be of use? Feb 20 20:24:57 the eclipse/adt/sdk bundle doesn't seem to generate R.java Feb 20 20:25:06 anyone had that issue or know how to force it? Feb 20 20:27:30 everyone Feb 20 20:28:57 use "clean" http://stackoverflow.com/questions/4085959/no-generated-r-java-file-in-my-project Feb 20 20:29:15 or get intelliJ :D Feb 20 20:32:42 tried that page already Feb 20 20:32:56 speakingcode-wor: try clean/rebuild. You may have an error in your project, go to window -> preferences -> android -> build -> build output: Verbose to force more output. Feb 20 20:33:08 there will be a nice red line at the console if that's the case. Feb 20 20:34:40 now i'm getting error executing app "no such file or directory" but it's cleary in the directory it outputs Feb 20 20:34:48 aapt* Feb 20 20:44:03 ok I found out what I was doing wrong Feb 20 20:44:15 just a note for whomever is going to have this problem in the future : Feb 20 20:44:45 Your public void onConfigurationChanged(Configuration newConfig) should only have 1 line (really) : super.onConfigurationChanged(newConfig); Feb 20 20:47:35 So 2 lines and it breaks? Feb 20 20:51:21 if you're just calling super, don't have the method at all. Feb 20 20:53:08 barque, were you the guy wtih the lock screen rotate issue? Feb 20 20:54:19 do you guys often get jumk email along the lines of: katie@tapfame.com "A client is looking to build an app similar to XXX. Did you work on it?" Feb 20 20:54:40 are you on linkedin? Feb 20 20:54:54 preds: me? yeah Feb 20 20:55:02 g00s: no, I just get assholes telling me that for $100 they can advertise my app or something Feb 20 20:55:21 grr. Feb 20 20:55:44 i'm still pissed my email is plain mailto:xx@xx on my apps's web page in play Feb 20 20:55:58 yeah, that's annoying Feb 20 20:55:59 oh well Feb 20 20:57:46 Is anyone have a tutorial on parsing RSS feed with Simple XML? Feb 20 21:01:52 i have an example but it doesn't use 'simple' Feb 20 21:05:20 speakingcode-wor: I need it to try Robospice :) Feb 20 21:05:21 is that even the right job for simple? i thought it was an object serialization lib, that happens to have a pretty result you can make hand write yourself Feb 20 21:07:40 bah ... what bright spark removed the volume key functionality from the lock screen in 4.2.2 >_< Feb 20 21:07:56 g00s: It seems to be used by Robospice like Gson or Jackson can be used when parsing content Feb 20 21:08:07 (Json) Feb 20 21:12:59 does the google analytics stuff require play services ? Feb 20 21:13:14 itslisted under Google Services , but it seems like its separate Feb 20 21:13:43 and, wondering what people's general impressions / usefulness of ga is Feb 20 21:13:59 Hey guys..!! I want to add SQLite func. to my app.. where do I create my contract class..? (if that's where I have to begin..) Feb 20 21:16:10 preds, yea Feb 20 21:16:18 ok I'm back Feb 20 21:16:54 but I was setting content view in that function. Completely unnecessary and causes weird issues like the one I was experiencing. Feb 20 21:19:26 http://www.whispersystems.org/blog/spring-break-of-code/ sounds pretty interesting hmm Feb 20 21:20:13 expenses paid? Count me in Feb 20 21:20:44 oh wait, I have to work for it Feb 20 21:22:03 Zharf: I tried xmms2 playground but I can't figure out how to play a song Feb 20 21:22:18 Anyone..? Feb 20 21:23:05 oh... I think I just did Feb 20 21:23:10 :p Feb 20 21:23:17 what was weird about it? Feb 20 21:23:20 if I may ask Feb 20 21:24:50 well I was expecting "add something to playlist" to be a primary action, not hidden in a submenu... and the little "pen" gave me the impression that it would let me rename the playlist Feb 20 21:24:50 " Shuttleworth also addressed the fragmentation problem faced by Android. He says manufacturers and carriers don't want to fall into that trap again, .." wut? Feb 20 21:25:12 flodin, I see Feb 20 21:25:16 but now that I pressed it, I found the circled + Feb 20 21:25:57 flodin, like I commented in the application description though, none of that is guaranteed to be permanent solution ;) Feb 20 21:26:37 the whole adding files to the playlist thing is something that'll be left to the background as an alternative method at some point in the near future, I hope Feb 20 21:27:03 well I think it's working now on adding a directory to the playlist :) Feb 20 21:27:14 sure, it's fine :) Feb 20 21:27:36 I find that "add these 5000 songs to the playlist" always tends to take a crazy amount of time in android music players Feb 20 21:27:57 after the first time, with xmms2 it takes a split second Feb 20 21:28:08 right, cause it has that database thing Feb 20 21:28:10 yeah Feb 20 21:28:48 i've been wanting to resurrect my dynamic playlist app for a while Feb 20 21:28:58 it is still installed by 17 people :) Feb 20 21:29:55 we have a dynamic playlist concept too called pshuffle, it's currently nice but we're hoping to add a shuffle that would group and sort based on some tags like group by album and then sort by tracknr Feb 20 21:29:59 so it's effecitvely album shuffle Feb 20 21:30:02 which is <3 Feb 20 21:30:25 you should make something that "feels random" rather than is mathematically random Feb 20 21:30:45 the adt bundle is shit, FYI Feb 20 21:30:47 people don't expect the same song to come up twice... "wtf, I told it to play random songs" Feb 20 21:30:49 yeah. mine was seeded by an artist, song, playlist or last.fm profile. and then it created a playlist for you based on the seeds Feb 20 21:31:16 everytime a song was removed from the playlist, a new recommended song would be added. so it was an infinite cohesive list Feb 20 21:31:20 I did something a while ago that adjusts probabilities based on how recently it was played Feb 20 21:31:47 flodin, yes, the pshuffle playlists may be configured to have x amount of incoming songs which don't (or at least shouldn't) consist of duplicates Feb 20 21:31:56 flodin: i wouldnt allow the same song to show up for 5 songs Feb 20 21:32:44 it would normalize the artist and track names to prevent alternate versions of the same song Feb 20 21:32:54 flodin, but *random* is just that, it can be the same song Feb 20 21:33:01 people often confuse random and shuffle Feb 20 21:33:05 shuffle is very different Feb 20 21:33:20 Zharf: i know that, i'm just saying that's not what people generally want Feb 20 21:33:22 mine was neither, random or shuffle Feb 20 21:33:29 I know it's not what I want Feb 20 21:33:46 i always liked how winamp did it - random would randomize the playlist (nothing would play twice unless it is in it twice). shuffle would hop around, things might play twice Feb 20 21:34:06 shuffle should never play twice Feb 20 21:34:09 speakingcode-wor, but it's just the wrong way around :) Feb 20 21:34:16 speakingcode-wor: yes, a "shuffle playlist" is a necessity Feb 20 21:34:31 shuffle should take a static list and reorganize it, random should choose a random track, duplicate or not Feb 20 21:34:32 personally I hate shuffling unless it groups by album Feb 20 21:34:37 because I listen to one album at a time Feb 20 21:34:44 album shuffle is nice Feb 20 21:34:54 yes Feb 20 21:35:05 Zharf: i have both kinds of music Feb 20 21:35:13 i prefer to just listen to an album end to end, or pick tracks on my own Feb 20 21:35:13 amarok 3 was the best music player ever Feb 20 21:35:27 Zharf: imo too many players assume you have many songs by the same artist Feb 20 21:35:27 it had both album shuffle and dynamic mode Feb 20 21:35:33 shuffle and suggest and genius and all that bs never seems to pick the next song to really fit what i just heard Feb 20 21:35:48 Zharf: I own six OM Lounge CDs, each contain ~12 songs by different artists Feb 20 21:35:54 genius, lmfao Feb 20 21:35:56 flodin, they do? I haven't really used anything but xmms2 for years ;) Feb 20 21:36:03 Zharf: when players try to group it by artist it turns to crap Feb 20 21:36:18 flodin, urgh, yeah that's bad Feb 20 21:36:27 album-artist is not the same as track-artist! Feb 20 21:36:34 birbeck: genius is some itunes crap that tries to pick based on genere or some list of related artists or some mess Feb 20 21:36:47 yeah, i saw genius in action once Feb 20 21:36:52 it was very lmao Feb 20 21:39:07 Zharf: it also doesn't work out well with the music I've collected from the demo scene, sid music etc Feb 20 21:39:25 it's typically a new artist every time and tagging inconsistent Feb 20 21:39:36 if there's even a tagging standard for the file format at all Feb 20 21:40:24 the only thing I've found to work is well enough is to use the file system directory structure to group the files Feb 20 21:40:27 xmms2 doesn't make any such decisions really, clients might, but good clients let the user to create their own criteria Feb 20 21:41:00 flodin, frankly, that's what I use too, most of the time anyway ;) Feb 20 21:41:18 i dont think there is any one way Feb 20 21:41:39 everyone listens to music in different patterns Feb 20 21:41:42 yeah Feb 20 21:42:08 yeah, i'm just ranting about the fact that 95% of the music players have no folder-oriented mode Feb 20 21:42:22 :) Feb 20 21:42:22 winamp did Feb 20 21:42:35 yeah, winamp was ok Feb 20 21:42:38 winamp was the best ever IMO Feb 20 21:42:42 I use deadbeef now on linux, and on android Feb 20 21:42:47 awesome plugins, lite, simple Feb 20 21:43:04 I really like the linux version, it reminds me of foobar2k Feb 20 21:43:05 I must disagree but I'm biased from being xmms2 developer ;) Feb 20 21:43:11 good visualizations too.. aws, milkdrop, gforce, electric sheep Feb 20 21:43:25 flodin: if they could group/search by genre, year, artist, album artist, composer, album, then that would be good Feb 20 21:43:32 flodin, I won't get rid of it, but it'll be a secondary way rather than the primary way of handling the playlist Feb 20 21:44:10 not all file formats support all of those tags though, at least not without extensions. not all tagging software supports them, and most music ripped or purchased either doesnt populate them or does them poorly Feb 20 21:44:29 birbeck: exactly Feb 20 21:44:31 people also dont organize their music in a cohesive folder heirarchy Feb 20 21:44:37 perhaps the tagging should be external to the files Feb 20 21:44:48 I think people who are serious about listening to music do organize their collections Feb 20 21:44:50 and an algorithm to try to figure out the folder structure would ultimately fail Feb 20 21:44:54 the rest just don't care what the player does anyway Feb 20 21:45:15 Zharf: yeah, but elitists are few and far between Feb 20 21:45:32 they would have it tagged correctly AND organized correctly Feb 20 21:45:52 i don't want to meddle with the files unless i ripped them myself :) Feb 20 21:45:57 but >99% of a music players users are not elitists Feb 20 21:46:08 I run all my files through musicbrainz picard :) Feb 20 21:46:29 doesnt matter if you buy from ubuntu, itunes, amazon, google. they metadata will not be 100% filled in and correct Feb 20 21:46:34 i organize mine Feb 20 21:46:41 ^5 Zharf Feb 20 21:46:48 :) Feb 20 21:46:51 it better be organized before i download it, i don't want those crappy torrents Feb 20 21:47:19 Anyone here using IntelliJ? Feb 20 21:47:23 Brian|CS, yes Feb 20 21:47:24 i buy the cd, rip it to flac, run it through musicbrainz, upload it to google music and archive it on my server Feb 20 21:47:29 or u only use spotify and dont have those problems.. :> Feb 20 21:47:31 Zharf: Are you using ABS as well? Feb 20 21:47:33 yes Feb 20 21:47:43 Zharf: How did you go about using ABS with IntelliJ? Feb 20 21:47:50 i'm trying to use it but it just keeps spouting errors at me Feb 20 21:47:50 maven Feb 20 21:47:51 D: Feb 20 21:47:52 Brian|CS, I use a maven project actually Feb 20 21:48:11 mavenize and import into intellij, works great Feb 20 21:48:22 what is maven anyway Feb 20 21:48:31 a build tool like ant Feb 20 21:48:32 a build tool? Feb 20 21:48:33 :S Is there anyway without maven? Feb 20 21:48:34 oh ok Feb 20 21:48:36 I've never uesd Maven before Feb 20 21:48:39 with dependency management Feb 20 21:48:45 why use maven over ant? Feb 20 21:48:46 birbeck: though the maven devs would kill you for saying that :) Feb 20 21:48:50 Brian|CS, yes there's ways, but it's more complicated Feb 20 21:48:55 speakingcode-wor, dependency management :) Feb 20 21:49:03 flodin: and what would gradle devs say? Feb 20 21:49:05 what kind of dependency Feb 20 21:49:17 speakingcode-wor, libraries? Feb 20 21:49:30 speakingcode-wor: abs is a dependency for your project. it gets it from the maven repository and includes it in the build path Feb 20 21:49:32 also for plugins that maven runs for example generating code at compile time etc Feb 20 21:49:41 so you dont need 100's of jar files Feb 20 21:49:45 birbeck: that, I have no idea... probably something like "sure it's a build tool... it's anything you want it to be!" Feb 20 21:49:49 and how is it superior over ant? Feb 20 21:49:59 just seems like more layers of complexity rather than fewer Feb 20 21:50:03 speakingcode-wor: ant doesnt have dependency management Feb 20 21:50:11 maven is really simple really Feb 20 21:50:22 imo anyway Feb 20 21:50:24 Zharf: it does have quite a learning curve Feb 20 21:50:30 birbeck, I guess Feb 20 21:50:34 i never have problems with dependencies.. i put them in my libs folder and voila Feb 20 21:50:34 Zharf: but very simple once you get it Feb 20 21:50:49 worst part is if it doesn't do what you want, then you have to develop a plugin within their framework Feb 20 21:50:51 birbeck, I always seem to have trouble remembering the troubles of getting started with something ;) Feb 20 21:50:59 a java plugin, that is Feb 20 21:51:00 speakingcode-wor: and then you cant just update the dependencies across all your projects with a single line xml change Feb 20 21:51:15 flodin, I wrote one of those... to generate IPC methods for my java client library :p Feb 20 21:51:27 hey y'all Feb 20 21:51:37 i guess. i have don't any big scope java deployments so i just don't have a use case, i guess Feb 20 21:51:47 so, if I call popBackStack() in a child fragment, does anything get called in the parent activity? Feb 20 21:52:05 speakingcode-wor: there is no use case NOT to use it really :) Feb 20 21:52:08 speakingcode-wor, android libraries really suck, maven makes it not suck very much :) Feb 20 21:52:12 I used maven before but I had so much trouble with poor compatibility with android sdk updates, so I tossed it Feb 20 21:52:12 i don't like hte idea of blindly updating dependencies across all projects... seems like a good way for all my projects to break at once if the api changed, for instance Feb 20 21:52:19 even in eclipse with adt i use maven for everything Feb 20 21:52:21 that is, libraries like ABS where there's more than just code Feb 20 21:52:41 now I use git-submodule for dependency management Feb 20 21:52:50 I tried that Feb 20 21:52:54 didn't really like it Feb 20 21:53:08 so you check jars into version control? Feb 20 21:53:17 maven is version control for your jars Feb 20 21:53:29 me? no Feb 20 21:53:32 and apklibs Feb 20 21:53:40 I clone the library into a subdirectory of my source Feb 20 21:53:50 git stores a reference to the URL and the commit ID Feb 20 21:54:04 flodin: yeah. i compile abs with my project as well Feb 20 21:54:35 git submodules. now that makes sense to me. get that raw source Feb 20 21:54:49 works as long as the source is in a git repo :) Feb 20 21:55:09 why does this shit keep asibg adb and aapt are no such file and directorhy when i am looking at them Feb 20 21:55:19 if the source isn't in a git repo, it probably sucks Feb 20 21:55:34 speakingcode-wor: ./adb perhaps? Feb 20 21:55:42 they probably are not on your path Feb 20 21:55:43 birbeck: from eclipse Feb 20 21:55:52 it's spitting out the fully qualified path Feb 20 21:56:02 how to show a google maps? Feb 20 21:56:05 speakingcode-wor: perhaps you didn't install ia32-libs Feb 20 21:56:09 did you tell eclipse the correct android sdk home? Feb 20 21:56:18 yup Feb 20 21:56:25 speakingcode-wor: they are 32-bit programs so they require 32-bit library dependencies Feb 20 21:56:34 it will complain if the dependencies are not found Feb 20 21:56:35 ok i'll try that Feb 20 21:56:39 flodin has a point, thats often missed Feb 20 21:57:25 ? Feb 20 21:57:47 GOMADWarrior, how do you mean? inside your application? or just link to gmaps app? Feb 20 21:58:05 inside the app Feb 20 21:58:42 GOMADWarrior, http://developer.android.com/google/play-services/maps.html Feb 20 21:59:50 qhich 32bit libs do i need? Feb 20 21:59:54 cause there's tons Feb 20 21:59:58 what distro are you on? Feb 20 22:00:06 run ldd on adb Feb 20 22:00:07 arch Feb 20 22:00:18 speakingcode-wor: 'ldd android-sdk-linux/something/adb' Feb 20 22:00:29 ok... ubuntu has a catch-all package named "ia32-libs" that just installs everything Feb 20 22:00:33 s/something/platform-tools/ Feb 20 22:00:40 Zharf: thanks Feb 20 22:00:47 sounds gross flodin Feb 20 22:01:07 yes, but disk space is cheap, my time isn't :P Feb 20 22:01:08 it doesn't install everything, it installs the most common ones like libc :) Feb 20 22:01:11 speakingcode-wor: ldd will list every lib it wants, and where they exist on disk Feb 20 22:01:20 speakingcode-wor: and if they cant be found, it will say so Feb 20 22:01:30 "not a dynamic executable" is the output for ldd Feb 20 22:01:52 speakingcode-wor: ok, run 'file' on the same path, what is the output? Feb 20 22:02:11 platform-tools/adb: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, not stripped Feb 20 22:02:36 ah, ive seen that before, but i forget the cause Feb 20 22:02:47 never had this much trouble setting up android before Feb 20 22:02:58 do they go about making this shit more harder each release? heh Feb 20 22:03:04 are you lacking 32-bit support in ldd? Feb 20 22:03:06 my ldd says http://33a35e3c00f87340.paste.se/ (for reference) Feb 20 22:03:24 speakingcode-wor: i would just download a 64bit version of the sdk Feb 20 22:03:37 clever, there's a 64bit version now? Feb 20 22:03:44 hmmm, but i can only see that for the ADT bundle Feb 20 22:05:03 Zharf: yeah, thats similar to what i get, http://pastebin.com/mYACEpBA Feb 20 22:06:46 bam Feb 20 22:06:49 lib32-alsa-lib lib32-libstdc++5 lib32-libxv lib32-ncurses lib32-openal lib32-sdl lib32-zlib Feb 20 22:07:32 it deosnt need alsa, xv, sdl, zlib, or openal Feb 20 22:08:52 shrug, works now Feb 20 22:08:53 hello, back again with a mobile client Feb 20 22:10:17 yay even built my R.java finally Feb 20 22:11:34 clever: afaik there is no 64-bit package for linux Feb 20 22:11:42 mine is 64bit Feb 20 22:12:27 oh nm, wrong file Feb 20 22:12:35 that stupid bundle was 64 bit, it was fail tho Feb 20 22:13:49 i see the 64-bit bundle now, but system requirements say "64-bit distributions must be capable of running 32-bit applications." Feb 20 22:13:57 :) Feb 20 22:14:02 yeah it's the 32 bit sdk still Feb 20 22:14:20 i had downloaded both n looked at the wrong file when i said my sdk is 64 bit Feb 20 22:14:49 now eclipse color plugin so it can not look like a horse's ass n i'll be good to go Feb 20 22:15:57 found out that there are some standard themes. how hard is it to customize/change it. Feb 20 22:16:06 i like how eclipse says it needs to restart and when i say yes instead of restarting it just kills a bunch of terinal windows Feb 20 22:16:24 setra, themes for? Feb 20 22:16:31 android apps? Feb 20 22:17:09 @application creation time. Feb 20 22:18:15 not too hard. it works like CSS kinda... so you can just customize the components you're interested in Feb 20 22:18:26 eclipse eclipse offers it @ time of project creation Feb 20 22:18:27 the more specific rules get precedence over the general ones Feb 20 22:18:35 ohhhh those Feb 20 22:18:50 i dunno, the ones i looked at seemed pretty basic, i just start with a blank app Feb 20 22:19:21 shouldn't be too hard to change tho. they just template some of the boilerplate stuff like menus and activity transitions Feb 20 22:20:18 i need to be very custom for my app, but still be conform the standards Feb 20 22:20:50 sorry i have a mobile client...horrible Feb 20 22:21:38 i'd look at d.android.com/design for standards on UI and such Feb 20 22:22:48 does anyone use vim for android development? Feb 20 22:24:13 not I, but I'm seriously thinking about dropping eclipse for intellij Feb 20 22:24:28 eclipse is seriously slow on my laptop since juno Feb 20 22:24:45 (it was never fast, but this is just ridiculous) Feb 20 22:26:20 MDijkstra, are you related to Edsger W. Dijkstra? Feb 20 22:27:35 possibly, never checked Feb 20 22:27:48 but Dijkstra is fairly common family name here Feb 20 22:27:50 lol Feb 20 22:27:54 MDijkstra: are you using eclipse soley for android or do you have plugins for other environments also? Feb 20 22:27:56 Netherlands? Feb 20 22:28:00 yep Feb 20 22:28:03 ah Feb 20 22:28:46 i went from heavy eclipse use to all straight up vim, now i'm wondering how i can do this without eclipse, or intellij Feb 20 22:29:02 speakingcode-wor: largely android, but some other stuff occasionally Feb 20 22:29:24 don't have any plugins other than the android stuff though Feb 20 22:29:34 MDijkstra: when i did many things with eclipse, i kept a separate copy of ecipse for each platform, so that plugin overhead was kept minimum. Feb 20 22:30:18 one for android, one for javaee stuff, one for php/web, etc Feb 20 22:30:18 well, I kind of think the IO latency is to blame here Feb 20 22:30:22 ah Feb 20 22:30:28 yeah Feb 20 22:30:28 and maybe memory Feb 20 22:30:36 it's def a memory hog Feb 20 22:30:44 rather than the processor being the bottleneck Feb 20 22:31:22 i've got 3 gigs of memory on this VM and eclipse uses about 20% with one editor open Feb 20 22:31:29 and a project explorer and console Feb 20 22:31:44 i switched from a macbook with ubuntu to a dell ultrabook with ubuntu and ssd and my compile times decreased at least 400% Feb 20 22:32:12 compile time is more in the cpu and memory throughput than the disk, i would say Feb 20 22:32:47 well this also has faster ram and cpu Feb 20 22:33:22 does anyone have any idea where the native Camera app paints the SurfaceTexture onto? Feb 20 22:33:34 faster benchmarked, or bigger numbers on the specs? cause there's a difference. and there's so many other variables, like other processes running, configurations, compiler options... Feb 20 22:34:39 my environment hasnt changed, but the hardware. but yeah its a newer i7, with a higher clock, ddr3 with higher speed Feb 20 22:34:49 interesting Feb 20 22:35:16 apparently it's somehow linked to Gallery2? Feb 20 22:35:16 oh wait Feb 20 22:35:24 PhotoView class? Feb 20 22:35:31 your compile time decreased, as in its faster? Feb 20 22:35:42 yes. much faster Feb 20 22:35:45 oooo Feb 20 22:35:45 birbeck: ssd is the single biggest improvement you can make Feb 20 22:35:55 ctate: yeah, i thought so Feb 20 22:35:57 i thought you were saying it takes longer on the new system. woops Feb 20 22:36:05 everythign else you changed is minor compared to that Feb 20 22:36:18 speakingcode-wor: i stayed on eclipse 3.8.1 rather then go to juno; you get the same JDT and ADT and its faster Feb 20 22:36:38 afaik, the ADT is still using the 3.8 compat layers anyhow Feb 20 22:36:40 yeah storage is a throughput bottleneck when you're reading/writing to disk, ssd def improves it Feb 20 22:36:52 i'd like to just use vim Feb 20 22:37:01 if you kicked up the amount of ram signfiicantly, that's the second biggest factor Feb 20 22:37:16 ctate: both machines have 8gb Feb 20 22:37:28 so yeah, mostly it's the ssd Feb 20 22:37:40 yeah, probably going for an SSD and 8gb RAM Feb 20 22:37:43 anyone have a galaxy s3 or note 2 and want to run an app of mine (no permissions) ? :) Feb 20 22:37:51 but i don't know enough about the build processes and configuration chains to feel comfortable. also managing all the xml resources and everything manually can be a big PITA Feb 20 22:37:58 canadiancow: i have an s3 Feb 20 22:38:05 and a first gen note Feb 20 22:38:06 putting in faster ram is bigger improvement than more ram, when the option is there Feb 20 22:38:11 oh really Feb 20 22:38:12 ok Feb 20 22:38:26 i got an s3 Feb 20 22:38:42 I destroyed my nexus yesterday :\ Feb 20 22:38:52 MDijkstra: what'dja do? Feb 20 22:38:55 i will destroy my nexus tomorrow Feb 20 22:39:09 ubunutu :) Feb 20 22:39:12 I'm pretty proud of this: http://imgur.com/RWObj9V Feb 20 22:39:18 jrr: wanted to replace the USB board because it was broken Feb 20 22:39:29 and managed to tear the SIM card slot off the main board while opening it Feb 20 22:39:35 d'oh Feb 20 22:39:46 solder it back? :-\ Feb 20 22:40:04 it stripped a part of the trace off the circuit board when it came off Feb 20 22:40:18 jrr: ouch, that sucks Feb 20 22:40:21 *of a trace Feb 20 22:40:27 you can probably get a little money out of it if the screen's still good Feb 20 22:40:34 the office manager just asks if she can order me a new keg! Feb 20 22:40:38 man i love her Feb 20 22:40:41 probably just getting it repaired Feb 20 22:40:48 which nexus? Feb 20 22:40:56 the original Feb 20 22:41:01 nexus one? Feb 20 22:41:02 keg of beer? Feb 20 22:41:04 oh Feb 20 22:41:07 no, the galaxy nexus Feb 20 22:41:11 speakingcode-wor: yes Feb 20 22:41:13 I forgot there were two before it Feb 20 22:41:15 hehe Feb 20 22:41:22 birbeck: nice. what ya like? Feb 20 22:41:41 speakingcode-wor: i gave her a list of 12 beers to cycle through Feb 20 22:41:56 i told her if i have one empty keg, then yes i always need another Feb 20 22:42:01 birbeck: office-provided beer? where do you work?! Feb 20 22:42:12 boku Feb 20 22:42:22 we can't keep beer at my place of work cause one of the vps is a recovered alcoholic / beer nazi Feb 20 22:42:54 but the boss over devs takes us out for drinking pretty frequently and pays for it on the company, so that is acceptable Feb 20 22:47:18 i run the beer club here. it has been coming out of my pocket for a few months, but the company started paying this month Feb 20 22:47:50 no i really dont have to do much but drink it. the office manager orders it now and pays for it Feb 20 22:47:55 nice. i do a little homebrew myself, but mostly just malt extract recipes. i've only done 1 all-grain at a group event Feb 20 22:48:25 there's three or four local brew and beer clubs now but i don't have enough time to justify the dues Feb 20 22:56:56 Im getting layour for a 4.7" phone Feb 20 22:57:03 it is OK that? Feb 20 23:06:40 so, I have a fragment that has a pager + a pageradapter (the pageradapter is static because I need to reference it elsewhere) -- I keep on getting an Activity has been destroyed exception -> http://pastie.org/private/f1l7orp0pakc7dmhoomvq Feb 20 23:07:21 anybody know why my activity would get destroyed there? Feb 20 23:08:00 oh, this might be useful Feb 20 23:08:16 this is how I show the fragment -> http://pastie.org/private/whqs2ycezcdy8h3knp4og Feb 20 23:08:50 it doesn't look like the activity ever calls onDestroy Feb 20 23:09:56 should I be recreating the fragment every time I want to show it? Feb 20 23:10:24 activities can be destroyed by the system any time Feb 20 23:10:56 speakingcode-wor: the activity is the one that's got the fragment in it Feb 20 23:11:12 speakingcode-wor: I'd be really surprised if the fragment could exist without it Feb 20 23:12:33 frig the Camera app is so convoluted Feb 20 23:19:35 actvities don't get destroyed, per se Feb 20 23:19:38 *applications* get destroyed. Feb 20 23:19:55 the whole activity stack + services + etc Feb 20 23:20:20 ctate: well, I'm certainly aware of that :-P Feb 20 23:20:45 ctate: I just don't know why the fragment manager would think that the parent activity of a fragment would be destroyed Feb 20 23:25:56 configuration change of some sort? Feb 20 23:32:30 is it possible to publish apps on google play without purchasing any sort of licenese? Feb 20 23:35:42 no Feb 20 23:35:46 you have to pay theo ne time fee Feb 20 23:35:59 alright thank you Feb 20 23:36:14 ctate: no configuration change :-( Feb 20 23:36:33 if you can't afford it, vasa, try getting donations for it or crowd-funding on kickstarter Feb 20 23:37:02 its not about affoarding I just don't want to pay since its my first try at this Feb 20 23:37:54 but then you won't have to pay your 2nd or 3rd or 199th try Feb 20 23:38:04 :P Feb 20 23:39:01 just converted a web app i made using phonegap into mobile apps :P Feb 20 23:42:50 wtf? why is android re-creating my fragment? Feb 20 23:42:55 I... don't get this Feb 20 23:43:17 I create it (it runs through oncreateview) then I swap to another fragment -- swapping back runs onCreateView again Feb 20 23:43:39 huh i've got a render script that's been working, but then i did a workspace clean, and now it won't rebuild the java file for the .rs file... Feb 20 23:43:46 Error executing Renderscript: Return code 1 Feb 20 23:45:07 Wavesonics: Way back when I was doing that, I found that I could be making all sorts of tweaks to the code and not getting them rebuilt. Then on clean it turned out that I'd added a syntax error which killed the compiler some unknown number of edits ago. Feb 20 23:45:29 Gumboot, hhmm crappy Feb 20 23:45:39 After that I cleaned before every build. Feb 20 23:45:42 the .rs file doesnt report any syntax errors though Feb 20 23:45:53 So you're getting past compilation? Feb 20 23:51:57 Gumboot, right i compiled and tested the script, it was 100% working. I did a clean, and all though it doesnt report any syntax errors in the file its self Feb 20 23:53:48 ha, even if I move my initialization to be after onActivityCreated it still gives me java.lang.IllegalStateException: Activity has been destroyed Feb 20 23:54:57 PackageManager.getInstalledApplications(PackageManager.GET_ACTIVITIES) lists a whole heap of apps, but i want to filter it to get rid of things that aren't 'launchable' .. similar to what is shown in the app launcher. Is there a nice easy way to filter this list ? Feb 21 00:05:48 hey Feb 21 00:08:10 oh, found it - PackageManager.getLaunchIntentForPackage(pkg_name) :) Feb 21 00:08:22 anyone here own a Kindle Fire? Feb 21 00:08:31 In my app I make it possible to control alarm volume of the app sounds in settings. Because max volume int varies between devices (I think) I do a maxVolume / 5.0 and let the user select volume from 1-5. Suggestions for what I should name those Strings except for an int? I'm thinking (1 low) , (3 medium), or something like that. But I'm not sure what's most common Feb 21 00:09:29 If 1 is low, 3 is medium and 5 is high, what are 2 and 4? :) Feb 21 00:11:21 what Context should a VpnService run in? Feb 21 00:11:40 anyone ever developed for kindle fire? Feb 21 00:11:54 it looks a bit silly if I don't name 2 and 4, dont you think? http://bildr.no/image/1397526.jpeg Feb 21 00:11:56 currently I'm testing with the main Activity of the test application, but when the user leaves the activity, it's destroyed Feb 21 00:12:22 how do I keep the VpnService running even after the main activity is destroyed? Feb 21 00:12:48 ambro718: I guess you should put it in a Service instead of Activity? Feb 21 00:13:10 ambro718: make it a real service, best a foreground service Feb 21 00:13:50 Quacked, notification priorities are min, low, normal, high, max i think Feb 21 00:14:04 Can you force an activity to refresh with a certain orientation? Feb 21 00:14:07 Lowest, Low, Medium, High, Highest :P Feb 21 00:14:28 canadiancow: both suggestions are nice, thanks :) Feb 21 00:15:35 glad i was able to help with something non technical Feb 21 00:15:38 Any ideas how much audioManager.getStreamMaxVolume() varies between devices? And WHY isnt it the same on every device? Feb 21 00:15:41 canadiancow: :) Feb 21 00:15:42 i should become an designer :) Feb 21 00:15:44 hehe Feb 21 00:19:20 I wonder how difficult it is to make my app into a widget Feb 21 00:19:24 I must look into that Feb 21 00:21:14 anyone here worked with Kindle Fire? Feb 21 00:25:47 i'd like to have an app for staff to keep track of support tickets, as it stands they get an email with a link to new tickets but it's sort of awkward to use Feb 21 00:26:26 what's the normal push notification setup? Feb 21 00:28:06 Can you somehow *force* a surface changed with certain width and height? Feb 21 00:40:06 anything change with Paint in JellyBean? I'm drawing rects fine on 4.1 and lower, but not working on JB Feb 21 00:40:41 the API diff doesn't report anything relevant Feb 21 00:45:56 zhobbs: can you pastebin some of your drawing code that is going amiss? Feb 21 00:46:18 also, on what device(s)? Feb 21 00:47:02 note that 4.1 *is* jellybean; you mean it changed behavior in 4.2? Feb 21 00:47:13 ctate: Nexus 10 and G-nex with cyanogen 4.2 Feb 21 00:47:19 ctate: you're right, changed in 4.2 Feb 21 00:47:29 both with CM, or just the GNex? Feb 21 00:49:35 ctate: nexus 10 is stock Feb 21 00:49:37 ctate: http://pastie.org/6265020 Feb 21 00:52:28 ctate: drawing a drawable is working fine, just these rects don't work on 4.2 Feb 21 00:53:42 I confirmed in debugger that mPaint is using "FILL" style Feb 21 00:55:05 hm. is the transfer mode something useful by default? Feb 21 00:55:06 also tried Color.RED in case something changed with Color.parse Feb 21 00:56:10 huh. Feb 21 00:57:56 (tangent, hooray for allocating the Paint only once instead of every time. common mistake. :) ) Feb 21 00:59:20 ctate: maybe I'll try in an isolated project…see what's going on Feb 21 00:59:30 yeah, do that. Feb 21 01:04:56 ctate: works in isolated project…let me push it somewhere Feb 21 01:04:57 err Feb 21 01:05:01 doesn't work on 4.2 Feb 21 01:05:04 works on 4.1 Feb 21 01:05:17 innnnnteresting Feb 21 01:05:24 which 4.2? :) Feb 21 01:06:04 (that is, we're up to 4.2.2) Feb 21 01:06:07 Nexus 10: 4.2 Build JVP15P Feb 21 01:06:18 aha Feb 21 01:08:08 ... is that actually a retail build? Feb 21 01:08:30 yeah, ordered from Play Feb 21 01:08:51 ok thought so, just checking Feb 21 01:09:19 i have no idea why you haven't gotten OTA updates to 4.2.1 and 4.2.2 Feb 21 01:13:30 ctate: http://cl.ly/1O1u321a0L0U Feb 21 01:14:20 ctate: the view code is http://cl.ly/code/3D3s3v233i2p Feb 21 01:16:01 Ah, so much work to do Feb 21 01:16:15 I will have to set up a VM Linux machine to compile kernels. Feb 21 01:18:47 Also, after talking to the GCC for c4droid developer, he told me he hasn't changed anything to the sources. I will try to build the gcc ON android compiler and start working on porting autotools to Android...some way or another Feb 21 01:22:11 zhobbs, if you go manually check for an update, it doesn't offer one? Feb 21 01:22:39 canadiancow: not sure, I probably won't update until I figure this out though…want it to work on 4.2 even if it's a bug Feb 21 01:22:51 why? Feb 21 01:22:56 nothing has 4.2 and not 4.2.2 Feb 21 01:23:03 canadiancow: I do :) Feb 21 01:23:08 canadiancow: yes, it offers an update Feb 21 01:23:11 but there is an ota available Feb 21 01:23:23 if there's a bug in 4.2 that was fixed in 4.2.1 or 4.2.2, it is not worth your effort Feb 21 01:26:00 canadiancow: fwiw, I have 1000 active 4.2 users Feb 21 01:26:14 according to google analytics Feb 21 01:26:55 all of whom should be offered upgrades to 4.2.1 / 4.2.2 :) Feb 21 01:27:09 yeah, wonder why I wasn't notified Feb 21 01:29:10 4.2.2 feels quite a bit smoother than 4.2.1 btw Feb 21 01:29:24 don't know if it's just me Feb 21 01:29:57 can a bound Service delay a connection? Feb 21 01:30:29 a connection to what? Feb 21 01:30:49 when i do 'ant debug', is it supposed ignore the keystore i set in local.properties and use the sdk-generated debug key instead? Feb 21 01:30:51 in onBind() , I need to do some potentionally complex stuff before I'm ready to serve clients Feb 21 01:31:40 MDijkstra: I want to delay the calling of ServiceConnection.onServiceConnected() Feb 21 01:32:31 ambro718: well, sure, you can do that Feb 21 01:32:41 MDijkstra: how? Feb 21 01:33:11 by delaying your call to bindService() Feb 21 01:33:21 :) Feb 21 01:33:23 no, that's not what I mean Feb 21 01:33:31 ambro718: well, I guess you could block in onBind, but that's not such a good idea on second thought Feb 21 01:33:52 ambro718: why not simply accept in onBind but have a isReady() method Feb 21 01:34:00 return the binder immediately Feb 21 01:34:17 then on your actual incalls, block until you're ready to proceed Feb 21 01:34:25 I know, but that would need an isReady() method and a serviceReady() callback Feb 21 01:34:28 note that this means your setup needs to be asynchronous Feb 21 01:34:51 Sad day for me today Feb 21 01:34:55 you should also consider beginning your (asynchronous) time-consuming setup in onCreate() rather than in onBind() Feb 21 01:34:58 if I could exploit the existing onServiceConnected() handlers that would be nice Feb 21 01:34:58 ctate, canadiancow: looks like 4.2 doesn't work if left>right or top>bottom…which is pretty sane, so looks like my fault Feb 21 01:35:11 zhobbs: aha! yeah, don't do that. :) Feb 21 01:35:12 ambro718: either that or poll every couple of seconds Feb 21 01:35:12 Had to delete 348 episodes of Bleach, that I collected for 2 years. Feb 21 01:35:51 denormalized rects dont' render predictably? who woulda thought? ;) Feb 21 01:36:59 :) Feb 21 01:37:33 I saw two points is all you need for a rect, who cares where they are :) Feb 21 01:37:36 say* Feb 21 01:38:02 guess I can update this tablet now Feb 21 01:38:24 ha ha Feb 21 01:39:02 maybe it drew it properly, but facing into the screen instead of out of it, and the back is transparent, so.... ;) Feb 21 01:39:21 what should I do if my service initialization fails? Feb 21 01:39:36 ctate: *mind blown* Feb 21 01:39:58 ambro718: out of curiosity, what do you need to do when setting up the service which takes so much time? Feb 21 01:41:05 Anyone have any contacts on the Google Play team? Feb 21 01:41:08 lol, nothing, I was thinking I should have a timer to retry if init fails, but the real problem is how to handle init failing? Feb 21 01:41:23 can I tell the service manager or whatever to restart me? Feb 21 01:41:28 how can init fail? Feb 21 01:41:50 without the failure being a 'lol, give up' scenario Feb 21 01:41:53 um I don't know, I call into native code which can theoretically go wrong Feb 21 01:42:49 your service initialization is basically not permitted to fail Feb 21 01:42:57 well, theoretically you can get an OOM error at every call Feb 21 01:43:06 but you wouldn't be able to handle that if you got it Feb 21 01:43:11 you're advertising a service; that's supposed to be trustworthy Feb 21 01:43:57 so if it does actually fail, how do I make the app explode? Feb 21 01:44:02 if e.g. you rely on configuration that can be mangled and therefore invalid (e.g. passwords or whatever passed in), then you need to succeed in standing up the service, but then include that sort of error condition semantics in your API Feb 21 01:44:20 you can throw when the app tries to call into your service, for example Feb 21 01:44:32 or you can define non-exception error returns that include the concept Feb 21 01:44:39 whatever works for your cases Feb 21 01:44:50 but don't crash your service Feb 21 01:45:00 okay then Feb 21 01:45:09 because when you do that sort of thing the OS realizes that your'e a bad citizen and stops allowing clients to bind to you at all Feb 21 01:45:24 this is almost certainly not what you want Feb 21 01:45:45 why would I be getting null from getActivity in a fragment? Feb 21 01:45:48 Any Google Play team members monitoring this channel? My app has disappeared from the top paid index and I've not been given any reason for the action. Feb 21 01:46:40 presumably because other apps are more "top" than yours Feb 21 01:46:56 mheld: because it's not currently attached to an activity Feb 21 01:46:57 and i'm pretty sure that the Play team are *extremely* close-mouthed about how the ranking works Feb 21 01:46:57 mheld, because it's not attached to an activity Feb 21 01:47:04 so that people don't try to game it Feb 21 01:47:20 mheld: stick Log calls in onAttach and onDetach and see whether it runs after onDetach Feb 21 01:47:53 MDijkstra: good plan Feb 21 01:48:58 what's usually going on in such a case is a fragment that should be garbage collected triggers some callback which throws an NPE Feb 21 01:49:48 MDijkstra: yeah, it thinks the parent activity has been destroyed now Feb 21 01:51:19 MDijkstra: http://pastie.org/pastes/6266615/text?key=dtsquarusgbvpp65hpddsg Feb 21 01:51:22 MDijkstra: any thoughts? Feb 21 01:53:20 is it possible that a service gets destroyed unexpectedly while clients are connected? Feb 21 01:53:42 ambro718: i think that would be imposible for in-process services Feb 21 01:53:55 okay that's good Feb 21 01:54:22 mheld: not really, other than checking if getActivity()==null Feb 21 01:54:25 one way for it to unexpectedly die is for the whole process to get killed Feb 21 01:54:25 and returning if it is Feb 21 01:54:32 which would break both the client and service at once Feb 21 01:54:38 because my clients hold resources which need to be released before the service is stopped Feb 21 01:56:02 ctate: I have multiple apps in the category. Sales/install are steady. The app in question ranks higher than another app I have. Feb 21 01:56:12 ctate, which has slightly lower daily sales and a slightly lesser install base. Feb 21 01:56:45 so? you can't control things like user purchasing behavior. Feb 21 01:56:52 Right, but the sales haven't dropped. Feb 21 01:57:05 And the app with a slightly lower percentage of sales did not drop from the list. Feb 21 01:57:25 No major changes in rating or install base either. Feb 21 01:57:41 of *your* app Feb 21 01:57:46 Of both my apps. Feb 21 01:57:52 but hey, maybe the users' purchasing behavior of apps *other* than yours changed Feb 21 01:58:04 For it to completely drop off the map completely? Unlikely. Feb 21 01:58:05 maybe the ratings behavior changed Feb 21 01:58:12 i have no idea how they rank Feb 21 01:58:14 And again, I have two apps in the same category. Feb 21 01:58:25 and the Play team, quite reasonably, do not talk about the algorithms for ranking. Feb 21 01:59:04 MDijkstra: cool Feb 21 02:00:23 ctate i know how the rankings work Feb 21 02:00:26 the best app shows in #1 Feb 21 02:00:32 the second best in #2 Feb 21 02:00:33 etc Feb 21 02:00:39 not best Feb 21 02:00:41 *top* Feb 21 02:00:47 psh Feb 21 02:00:54 top==best Feb 21 02:02:22 man i've got a really nasty problem going on w\ a Renderscript file in Eclipse right now, anyone care to take a look? http://stackoverflow.com/questions/14992795/eclipse-stops-compiling-renderscript-file Feb 21 02:05:08 canadiancow, any change you've seen a bug like this b4? Feb 21 02:05:24 can I add an indicator to the top bar that my service is running? Feb 21 02:08:33 why would you specifically call me out? Feb 21 02:09:14 canadiancow, you've solved so many problems in the past :P Feb 21 02:09:16 i have used renderscript zero times Feb 21 02:09:23 ah hehe ok Feb 21 02:10:08 ambro718: post an ongoing notification Feb 21 02:10:51 ambro718: one problem i ran into, the ongoing notification wasnt cleared when the app+service did get killed Feb 21 02:11:15 ok I'll try thanks Feb 21 02:11:21 i had to call startForeground(STILL_OPEN | sessionid,mBuilder.build()); Feb 21 02:11:38 this both flags the service to stick arround forever (only do it if you need to), and marks the notification for that Feb 21 02:11:51 if/when the service is killed, so will the notification Feb 21 02:12:25 you can post a notification even if you are not in the foreground :) Feb 21 02:12:37 (and in general you shouldn't use startForeground() unless you really need it)_ Feb 21 02:12:39 yep, but the notification will stick arround when when your service doesnt Feb 21 02:12:56 you can use the restart semantics to detect & clean up from that Feb 21 02:13:00 in my case, the service is managing a network connection, and the notif tells the user they are still logged in Feb 21 02:13:13 (pretty sure you can, anyway....) Feb 21 02:13:15 if i dont contact the server for 5 mins, the session dies Feb 21 02:15:40 Any renderscript users here? Feb 21 02:18:06 couldnt you just kill the notif in onstop or whatever? Feb 21 02:18:25 canadiancow: only if its cleanly stopped, it wasnt in my case Feb 21 02:18:41 the issue is if your service is killed by the oom viking killer Feb 21 02:18:51 the notification is not also torn down Feb 21 02:18:51 question i'm looking at facebook scribe-java and i can't figure out how you're suppose to give a callback url @ android.. Feb 21 02:19:00 ctate: yep Feb 21 02:23:13 It's annoying that the market doesn't show reviews written in English that come from devices identified as another language Feb 21 02:23:32 I have a few 5 star positive reviews coming from German and Chinese devices that are written in English, but filtered out Feb 21 02:23:34 * pragma- tsks. Feb 21 02:23:46 And still tons of reviews coming from "A Google User" Feb 21 02:24:03 and it'd be nice if the dev console still showed the id of a user that rates without leaving any messages Feb 21 02:24:09 what Context should I start a VpnService in? Feb 21 02:24:53 anyone? :P Feb 21 02:25:08 in fact, all the reviews I see in the dev console are from "A Google User" despite actually having a real identity in the play store reviews Feb 21 02:25:12 how queer. Feb 21 02:26:16 that may mean they're reviews that predate their turning on name reporting in the Play Store reviews system Feb 21 02:26:24 but hm. Feb 21 02:26:28 * ctate shrugs Feb 21 02:26:40 no, these are reviews from today and recently, I can see their identification in the play store review, but not in the dev console review Feb 21 02:27:01 interesting Feb 21 02:32:11 hmm, appears Visualizer. SCALING_MODE_NORMALIZED doesn't work right on the galaxy nexus Feb 21 02:33:01 dev console: http://i.imgur.com/voFIBq0.png -- play store: http://i.imgur.com/gkafnyz.png Feb 21 02:33:46 and those two chinese users in the dev console also have google+ ids as well **** ENDING LOGGING AT Thu Feb 21 02:59:59 2013