**** BEGIN LOGGING AT Thu Jun 04 02:59:58 2009 Jun 04 04:29:15 nothing like releasing an application at 0:28 . At least you're sure there is one big typo, probably on the first screen Jun 04 09:34:46 what's the easiest way to check whether a device is connected through wifi? Jun 04 09:35:17 WifiManager.getConnectionInfo().getNetworkId()? Jun 04 09:37:49 cause WifiManager.isWifiEnabled() only returns whether its enabled right, not if it is actually connected? Jun 04 10:24:45 http://android.googlecode.com/issues/attachment?aid=6194842831212755083&name=tabactivitycrash.txt Jun 04 10:25:24 I ran into this problem, any ideas on workarounds? seems to be related to having an expandable listview in a tab Jun 04 10:25:47 when switching orientation of the device, it crashes Jun 04 10:26:17 well, it crashes when the expandable list view is not currently the active tab Jun 04 10:46:40 hi Jun 04 10:47:08 where can I find the source code for this market.apk? Jun 04 10:47:27 is anyone available for help? Jun 04 11:17:18 Serdar: it's not available Jun 04 11:17:20 market is proprietary Jun 04 11:20:18 that sucks :/ Jun 04 11:21:40 all the "great killer apps by google" are proprietary anyway Jun 04 11:23:36 but how can I use the market if I don't have this app... Jun 04 11:24:14 it comes with the phone ? Jun 04 11:24:16 umm Jun 04 11:24:16 you can not. your only hope is that program authors provide alternative mirrors of their apks. Jun 04 11:24:37 Serdar market app is the app to access the google marketplace Jun 04 11:24:38 you can compile open source projects with little effort Jun 04 11:25:00 as a application developer all that you need to do is submit your app to the marketplace Jun 04 11:25:09 why do you want to "use" the market app? Jun 04 11:25:13 prashast: yes and if I want to access the marketplace I need the market.apk right? Jun 04 11:25:25 yes Jun 04 11:25:30 i think it comes with 1.5 Jun 04 11:25:52 so I need the source codes to port it for openmoko freerunner right? Jun 04 11:26:38 Serdar: what should that be good for? Jun 04 11:26:41 or I need a prebuild apk Jun 04 11:26:45 can freerunner even run android? Jun 04 11:26:51 yes Jun 04 11:27:09 Ge0rG: for useing the marketplace? Jun 04 11:27:29 Serdar: in case you already ported android, you should be able to install the binary apk directly. in any other case, you have no real need for an app which allows you to download apks Jun 04 11:27:30 i assume you are modifying the code base to get it to run? Jun 04 11:27:35 there is no market.apk here Jun 04 11:29:15 Ge0rG: is it possible to access the marketplace without market.apk? Jun 04 11:29:27 not officially Jun 04 11:30:07 than I need that market.apk which cannot be downloaded anywhere. Jun 04 11:33:14 no code, no binary.. but android itself can be ported but you cannot use the marketplace, so I don't see the sense anywhere Jun 04 11:33:56 Serdar: extract it from a g1 firmware image Jun 04 11:35:31 huh, do I need a G1 for that? Jun 04 11:38:06 I think people have managed to put the market on the emulator, never seen a need for it myself Jun 04 12:07:44 is libc statically linked to every executable ? why ? Jun 04 12:15:22 argghhh this ExpandableListView thing is driving me NUTS Jun 04 12:22:56 wow Jun 04 12:22:58 "Don't use ListActivities :) They don't do much anyway. " Jun 04 12:23:21 sounds like a great idea.. hrmf Jun 04 12:26:26 so, I am wondering how I can check how many files are in a remote directory. Example: I want to know the number of files at www.mywebsite.com/example Jun 04 12:26:30 can this be easily done? Jun 04 12:37:19 how can i call the camera on sdk version 1.1 for a picture? Jun 04 12:38:04 everthing i find is about MediaStore.ACTION_IMAGE_CAPTURE, but there is no such field in my MediaStore Jun 04 13:01:08 skyPhyr: Circuits is released :D Jun 04 13:22:22 sammyF: here? Jun 04 13:23:54 BeBoo_: on the market Jun 04 13:24:12 BeBoo_: or do you mean, whether I'm here? Jun 04 13:24:16 lol Jun 04 13:24:17 sorry Jun 04 13:24:28 just said Circuits had been released Jun 04 14:06:32 isPressed() is the one used to detect if my button was pressed right? Jun 04 14:35:41 anyone know what would cause this? http://pastebin.com/d72d353ed Jun 04 14:36:47 i have words getting added to an arraylist and then inflating a listadapter. when i scroll near the bottom of the list, it crashes with that. Jun 04 14:40:46 Anyone here got an idea what the sideeffects might be of using dx from SDK1.1r1 instead of the SDK1.5r2 version? Jun 04 14:55:56 anybody got an idea why my activites are being created twice when switching from landscape to portrait? (only on emulator) Jun 04 14:56:59 I get "INFO/WindowManager(588): Config changed: { scale=1.0 imsi=0/0 locale=en_US touch=3 key=2/1/2 nav=3 orien=2 } INFO/WindowManager(588): Config changed: { scale=1.0 imsi=0/0 locale=en_US touch=3 key=2/1/2 nav=3 orien=1 }" in logcat when just changing from land to port Jun 04 14:57:20 but only one "Config changed" when going from port to land Jun 04 14:57:26 that's perfectly normal? Jun 04 14:57:51 its because of the turkey beef Jun 04 14:58:02 sure, but are there other reasons? Jun 04 14:59:17 damn that turkey beef Jun 04 15:02:51 maybe it's the tofurkey Jun 04 15:14:37 I have a question about the tab host Jun 04 15:15:09 I have it calling a sub activity but I need this sub activity to be able to switch to another tab at will Jun 04 15:15:30 so user does X in tab 1 then they click a button and it sends them to tab 2 Jun 04 15:21:34 rasperin: sub activities have access to the hosting activity via getParent() Jun 04 15:21:50 ! Jun 04 15:22:12 anyone have any ideas on my IndexOutOfBounds issue? Jun 04 15:22:59 zhobbs: thanks man I'll have to look into this Jun 04 15:25:01 BeBoo_: your list is too large Jun 04 15:25:13 the arrayList only has 7 elements, and you're attempting to get the eighth Jun 04 15:28:29 vol: i think i get that but as far as i was aware, a list is only as large as the items added to it... correct? if i only add 7 elements, it should have a size of 7, correct? Jun 04 15:28:36 arraylist* Jun 04 15:28:52 yes Jun 04 15:28:56 remember this is 0 based Jun 04 15:29:07 yes, i understand that... so the 7th element is 6 Jun 04 15:29:09 so list.get(7) is attempting to get the eighth element Jun 04 15:29:40 see, the weird thing here is i have the exact same code in another activity and it works fine Jun 04 15:29:58 maybe you could pastebin some of this code so I can see myself? Jun 04 15:30:26 i am logging all the entries into the arraylist and it isn't inputting any null values or anything but there are entries for 7-12 in the arraylist which null values Jun 04 15:30:44 you're probably going to laugh at my code... it's a mess cuz i'm a n00b Jun 04 15:31:49 may i PM you the URl? Jun 04 15:31:52 sure Jun 04 15:31:57 How do I get my main Activity to open a Preference dialog for a specific item in a PreferenceActivity? Jun 04 15:32:03 btw, does anyone know off hand how to determine whether we have a wifi connectino or not? Jun 04 15:32:33 dramman: probably have to launch the pref activity with extras, catch the extras and launch that pref Jun 04 15:33:40 vol, wifimanager? Jun 04 15:34:13 anyone have a good script for catching inline strings that need to be externalized? Jun 04 15:34:51 andrewoid: programatically Jun 04 15:35:06 oh hey Jun 04 15:35:09 there's a class called wifimanager :P Jun 04 15:35:10 vol, android.net.wifi.WifiManager Jun 04 15:35:12 :) Jun 04 15:36:01 If you need to know as soon as the wifi status changes, you need to set up a BroadcastReceiver Jun 04 15:36:49 andrewoid: I only need to query, I think. This isn't new to 1.5 is it? Jun 04 15:37:22 vol, no it's not new to 1.5 Jun 04 15:42:11 excellent Jun 04 15:42:13 sqlite, is there an easy way to query the first line of a string column? Jun 04 15:42:29 im too lazy to like actually try Jun 04 15:42:57 andrewoid, finally got wave Jun 04 15:43:22 mike, first line of a string column? Jun 04 15:43:37 mike, wave is a mess. What's your wave email? Jun 04 15:43:42 a string has multiple balbala\nfjifo\ndfejei Jun 04 15:43:46 i want the balbala Jun 04 15:43:51 vinblau@wavesandbox.com Jun 04 15:45:05 mike, I'm sure there's some arcane sql function that'll do it Jun 04 15:45:11 SUBSTRING perhaps Jun 04 15:46:24 htc finally resopnded to me, just telling me to call them Jun 04 15:46:25 bah Jun 04 15:46:31 hi guys, i'm using the following onCreateDialog http://pastie.org/500502, DIALOG_ERROR is working fine but for DIALOG_RANGE i'll always get a " Unable to add window -- token null is not for an application" any suggestions? Jun 04 15:47:38 magegu, what line/ Jun 04 15:48:17 blau-mikeDG: consider yourself lucky Jun 04 15:48:26 responded to you asking what? Jun 04 15:50:29 andrewoid, its not caused in my code http://pastie.org/500509.txt Jun 04 16:02:19 vol, I assume his broken ion Jun 04 16:10:21 can i add an xml string to a string? like foo = "bar Jun 04 16:10:24 oops Jun 04 16:10:37 like foo = "bar " + @string/bleh; Jun 04 16:11:01 ooo nvm ^^; Jun 04 16:11:34 guess i can't, it's an int Jun 04 16:38:22 andrewoid: any chance you can help me, i cannot find anything on the net anymore Jun 04 16:45:46 jasta: I thought I remember you saying there was a script to find unused resources? how'd that turn out? Jun 04 16:49:13 cool, tasks have been left somewhat undefined in the docs for a while: http://android-developers.blogspot.com/2009/06/activities-and-tasks-design-guidelines.html Jun 04 17:04:04 So what is the difference between #android and #android-dev Jun 04 17:08:10 andrewoid: solution:getApplicationContext() ---> this Jun 04 17:47:33 i've a Spinner declard in XML, but when i'm using findViewById I'll always get null .. Eclipse do es not complain about anything, whats the matter? Jun 04 18:06:42 http://pastie.org/500667 why is the edit not null,but the Spinner s Jun 04 18:08:03 mage, you need to do layout.findViewById() Jun 04 18:09:05 andreword: god damn ...obvious... i hate myself Jun 04 18:09:10 thanks anyway! :) Jun 04 18:09:14 yw :) Jun 04 18:39:28 flinging on EditText, is there a way to enable it? Jun 04 18:55:23 BeBoo_: found the bug? Jun 04 18:56:32 can the proximity alert wake-up an activity ? Jun 04 18:57:27 proximity? Jun 04 19:01:23 proximity alert... that normally just initiates the self destruct Jun 04 19:02:23 http://tinyurl.com/rcr37x Jun 04 19:03:44 I've never used that API, but from what I guess you set up a proximity alert, and then the PendingIntent runs your app Jun 04 19:06:25 i get alerts when the app process is running, but when my app's process is not running, the broadcast intent doesn't wake up the app. Jun 04 19:07:18 how are you writing the PendingIntent? Jun 04 19:09:21 PendingIntent is in the onReceive() method of the receiver. Jun 04 19:10:25 *broadcast receiver Jun 04 19:21:09 Hey so I was looking at getParent it doesn't look like it can call a method in the calling class, so I'm back to the drawing board, how do I have a activity switch tabs? Jun 04 19:22:34 So I have: http://pastebin.com/d271ea8b and I want that SearchActivity to switch to tab2 Jun 04 19:22:39 when a button is pushed Jun 04 19:22:49 button is in SearchActivity Jun 04 19:22:57 just use getParent() Jun 04 19:23:03 is that it Jun 04 19:23:07 just run getParent() Jun 04 19:23:11 hehe Jun 04 19:23:19 I'm confused :( Jun 04 19:23:20 what class is the parent activity? Jun 04 19:23:26 QuotesActivity Jun 04 19:23:39 err Jun 04 19:23:42 I'm an idiot Jun 04 19:23:47 TabActivity Jun 04 19:23:47 ((QuotesActivity) getParent()).getTabHost().whatever Jun 04 19:23:54 ((TabActivity) getParent()).getTabHost().whatever Jun 04 19:23:54 oh Jun 04 19:24:03 you have to cast to to the correct class Jun 04 19:24:18 I am an idiot Jun 04 19:24:36 that's alright Jun 04 19:26:04 or not Jun 04 19:26:08 it throws an error Jun 04 19:26:15 Quotes blah = (Quotes) getParent().getTabHost(); Jun 04 19:26:34 ((Quotes) getParent()).getTabHost(); Jun 04 19:26:56 ((TabActivity) getParent()).getTabHost(); Jun 04 19:26:58 everyone, go watch romainguy's tutorial on UI and realise how silly you've been Jun 04 19:27:14 also some nice undocumented features (or at least not obvious in eclipse) Jun 04 19:27:22 ^^ Jun 04 19:27:24 where Jun 04 19:27:28 link Jun 04 19:27:30 linx Jun 04 19:27:43 http://code.google.com/events/io/sessions.html Jun 04 19:28:10 zhobbs: which one, Quotes is the parent class, Quotes extends TabActivity Jun 04 19:28:40 ugh Jun 04 19:28:42 I hate myself Jun 04 19:28:48 going out back to shoot myself Jun 04 19:28:54 TabHost blah = ((Quotes) getParent()).getTabHost(); Jun 04 19:28:59 not quotes Jun 04 19:29:15 oh my java Jun 04 19:29:22 and here I thought using kawa on android was painful Jun 04 19:29:36 (it took me a few days to realize that inner classes don't actually exist and are just sugar >:O) Jun 04 19:31:52 rasperin: just so you know, it would work with TabActivity in place of quotes as well Jun 04 19:32:07 zhobbs: two more questions, First getAssests("") returns inputstream of the assest is there a way to get the assest location and write to it? Also, is there a version of session that is shared between the activities. Jun 04 19:32:14 oh cool Jun 04 19:32:16 wait Jun 04 19:32:19 how would that work Jun 04 19:32:35 getTabHost is created in Quotes, the parent of quotes has no idea that getTabHost is a method Jun 04 19:32:36 what do you mean inner classes don't actually exist Jun 04 19:32:46 a parent doesn't inherit from a child Jun 04 19:32:58 er, right Jun 04 19:33:35 anyone knows why that the images table sometimes contain the photo size and other times it doesnt? Jun 04 19:33:46 I guess you can just consider it syntactic sugar Jun 04 19:33:53 hi all. does anyone have a solution for connectbot+screen+ncurses? i still get odd characters only when using screen. Jun 04 19:34:20 particularly with Finch (cmdline pideon) Jun 04 19:34:20 inner classes totally exist Jun 04 19:34:43 perhaps you are confused about the difference between static and non-static inner classes? ;) Jun 04 19:37:36 I can use the getParent for forming my own session if android doesn't have one (I Have not made it through all of the documentation but have read quite a bit of it and it has hinted at having something of it's own) Jun 04 19:37:36 pwrcycle: might be a question for #android ? Jun 04 19:43:11 pwrcycle: which version Jun 04 19:43:32 pwrcycle: you can come to #connectbot Jun 04 19:48:28 rasperin: no, you can't write to assets Jun 04 19:49:18 you have an area on the filesystem you can write to, see getFilesDir() and similar Jun 04 19:49:41 romainguy: you there? i actually have a question about merge/include which seemed to have messed up my view :| Jun 04 19:59:50 kRutOn: thnx i'll ask there. Jun 04 20:05:45 kRutOn: is my hero Jun 04 20:14:52 damn ok thanks zhobbs Jun 04 20:27:04 is there a better way for check Inputs of EditText then android:digits="0123456789." ? Jun 04 20:33:16 can anyone help me with layout issues? i'm trying to clean up my layout and it's making things worse :( Jun 04 20:34:01 digitalspaghetti: I doubt I'd be much help but what's up? Jun 04 20:35:23 well i'm trying to use a RelativeLayout and build from the bottom up Jun 04 20:35:46 basically each screen will always have a bottom navigation bar with two buttons (home and next screen) and a logo at the top Jun 04 20:36:15 but in between the content can differ, but normally it's a ScrollView with a RelativeView inside it with the content Jun 04 20:36:40 so what's happening? Jun 04 20:36:41 but the problem is that the ScrollView always seems to fill the screen, even when i set the layout_above parameter Jun 04 20:37:16 :/ Jun 04 20:37:39 magegu, set android:numeric to true Jun 04 20:37:46 erm, set it to decimal Jun 04 20:38:01 are you terminating your xml prior to doing the relative? Jun 04 20:38:23 no, i'll paste it. Here is the main activity view: http://android.pastebin.com/d4f759414 Jun 04 20:38:33 KNY: is that true for X.Y ? Jun 04 20:38:43 like .. a double/float :) Jun 04 20:38:47 this is the bottom navigation: http://android.pastebin.com/d238adfd8 Jun 04 20:38:48 magegu, yes Jun 04 20:38:51 thx Jun 04 20:39:05 magegu, numeric can be any combination of integer, signed, decimal Jun 04 20:39:13 look at the docs for TextView Jun 04 20:39:24 http://android.pastebin.com/d5775deb2 is the content Jun 04 20:39:54 and this is the top logo: http://android.pastebin.com/d19de6d17 Jun 04 20:40:42 if I don't include the content, in my design view it *looks* fine, although I can still see the ScrollView wants to fill the whole screen Jun 04 20:40:47 it just has nothing to do it with Jun 04 20:42:33 and scroll view is overriding it all? Jun 04 20:43:15 seems to be Jun 04 20:43:32 it's all just pretty much hard coded content Jun 04 20:44:30 On the include under scroll change that to fill_parent Jun 04 20:44:42 then it shouldn't go outside of the bounds of the scroll view Jun 04 20:45:02 wrap_content will go over everything Jun 04 20:48:18 hrmmm, nope not doing anything Jun 04 20:48:26 seriously? Jun 04 20:48:42 set a maximum size of like 60dip Jun 04 20:48:49 see if that changes anything? Jun 04 20:49:04 actually make that 300dip Jun 04 20:49:16 on what element? Jun 04 20:52:27 actually i'm gonna try something different, hang on Jun 04 20:55:25 hrmm, yea i'm getting weird stuff here with scrollview - it just seems to take over the whole layout Jun 04 20:55:48 i just put it in a FrameLayout, included the header then included the scrollview which i would expect to just sit directly under it Jun 04 20:55:57 but again the scrollview just takes over the whole screen Jun 04 21:02:36 digitalspaghetti: link me the content view again Jun 04 21:02:40 it's most likely something in it Jun 04 21:02:46 http://android.pastebin.com/d5775deb2 is the content Jun 04 21:02:50 (what happens if you take out that one include) Jun 04 21:03:16 Any other GUI designer than droiddraw? Jun 04 21:03:19 well i can see the logo and the header, but i can also see in the view hieracy that the scrollview is still the full size of the parent Jun 04 21:03:33 it's just as there is no content, it doesn't draw anything Jun 04 21:03:57 i mean it was working fine before i started trying to optimise it Jun 04 21:04:32 use HierarchyViewer Jun 04 21:04:36 http://android.pastebin.com/d4942d8b3 is the pre-optimised one Jun 04 21:05:06 digitalspaghetti: no header or anything so the scroll view is still overridding it Jun 04 21:06:08 oh cool romainguy_ Jun 04 21:06:32 http://android.pastebin.com/d5ef41063 is the pre-optimized bottom Jun 04 21:06:50 as you can see it's within a relativelayout too, so i'm trying to reduce down the ammount of layouts Jun 04 21:06:55 romainguy_: so you ARE french. wondered about your name Jun 04 21:07:03 well yes I am Jun 04 21:07:09 i know i can't get rid of the one inside the scrollview becase it can only have one child Jun 04 21:07:35 romainguy_: just watching your talk at IO Jun 04 21:07:51 me to, hence trying to optimise with includes and merges :) Jun 04 21:08:24 would you mind if i reposted the current vs. my optimized attempts again to you romainguy_ ? Jun 04 21:08:41 sorry but I don't have time to look at this right now Jun 04 21:09:10 sammyF, I just finished it like 30 minutes ago Jun 04 21:09:31 KNY: not surprisingly, I watched the one by Pruett first ;) Jun 04 21:09:40 KNY: more my kind of thing, you know Jun 04 21:09:41 romainguy_, told told me to threaten you to get you to fix RelativeLayout ;-) Jun 04 21:10:53 k, np - i can stick with the unoptimised version for now that works Jun 04 21:44:57 on the G1 when you access the hardware keyboard, the screen orientation is changed to landscape. is there a way to detect this? some of my custom drawn elements are disappearing and I think I need to trigger a redraw on them when this event happens Jun 04 21:48:29 raidfive: the activity is destroy/recreated when the orientation changes Jun 04 21:56:28 or your activity can register for notification of configuration changes, and handle the relayout manually Jun 04 21:58:10 hmm ... destroying the activity could cause some issues :/ Jun 04 21:59:30 it extends ListActivity and I have a custom adapter that is managing the list look and feel based on upload progress .... each list item representing an upload Jun 04 22:00:37 can I have an activity ignore orientation and not destroy the activity? Jun 04 22:04:54 raidfive: Read the friendly manual. :) See in particular http://developer.android.com/guide/topics/manifest/activity-element.html#config Jun 04 22:11:31 Is there a published API for accessing the market from an application? Jun 04 22:12:57 I've seen launching a URI like market://search?q=your.package.name, and I'm wondering if there are any other search methods? Jun 04 22:14:16 thanks ctate Jun 04 22:14:37 bdodson: there are no public Market APIs Jun 04 22:15:42 But that market URI is stable at least? Jun 04 22:16:45 I don't mean a public API usable outside of android, just looking for other ways to query / install apps. Jun 04 22:17:05 specifically, if I can search for applications that support a certain Intent Jun 04 22:27:41 you can ask the package manager for stuff like that, bdodson Jun 04 22:29:09 wtf I keep getting java.lang.RuntimeException: "Assetmanager has been closed" Jun 04 22:30:07 strange ... onCreate() and onConfigurationChanged() are both being called now. The docs lead me to believe that onConfigurationChanged() is the only thing that should be called once you've added android:configChanges="keyboardHidden|orientation" to the manifest :/ Jun 04 22:30:55 why wouldn't I want to close AM? Jun 04 22:35:44 so I see PackageManager.queryIntentActivities(), but this won't access the market will it? Jun 04 22:39:17 nm got it ... thanks again ctate Jun 04 22:44:13 One other question, how do I show and hide elements (ie buttons/spinners/etc) Jun 04 22:49:31 Can I launch an Activity using the Intent and Package name (but not class name) ? Jun 04 23:17:44 AAh, package names don't have to be unique! So how can I launch a 3rd party activity securely? Jun 04 23:19:39 package names are indeed unique Jun 04 23:19:46 where are you seeing otherwise? Jun 04 23:21:14 is there a way to see what is in your current activity stack? Jun 04 23:21:46 oh, the documentation just says it "should be" unique :) Jun 04 23:22:00 http://developer.android.com/guide/topics/manifest/manifest-element.html Jun 04 23:22:21 bdodson: lemme rephrase. it must be globally unique :) Jun 04 23:22:41 so if I write an app with a certain package, no other devs can? Jun 04 23:23:02 you can't have two apk's on the device with the same package name Jun 04 23:23:10 what about in the app store? Jun 04 23:23:21 i believe the Market won't let two different people publish under the same package name Jun 04 23:23:32 I'm trying to write a helper class that securely installs and launches intents Jun 04 23:23:39 this is why e.g. it's recommended that you build the package name around the company name of your publishing effort Jun 04 23:23:41 similar to what they did in zxing, but general purpose and with security in mind Jun 04 23:23:53 e.g. google's private stuff tends to use package names like com.google.whatever Jun 04 23:23:57 right Jun 04 23:24:23 okay, but I still have to manually query the packagemanager to securely launch an intent, given its package name? Jun 04 23:24:49 I don't want to require developers to know the class name (just the package name) so I can't use setComponentName.. Jun 04 23:26:42 what are you trying to do, exactly? Jun 04 23:26:55 launch a specific, known activity? Jun 04 23:27:01 I want to make a helper class for launching intents, and installing them if necessary Jun 04 23:27:11 the activity will be known by developers using this class Jun 04 23:27:21 well Jun 04 23:27:21 as well as the intent Jun 04 23:27:44 all you can technically know is the set of activities that have published in their manifests that they can handle intents with certain characteristics Jun 04 23:27:53 right Jun 04 23:27:54 there may be multiple such activities per package Jun 04 23:28:01 so I can just filter it manually Jun 04 23:28:03 thats fine Jun 04 23:28:07 and other activities may also handle those intents, but don't publish that info Jun 04 23:28:19 I'll still just launch the intent 'implicitly' but with filtering Jun 04 23:28:31 what do you mean "filtering"? Jun 04 23:28:37 making sure the package names match Jun 04 23:28:42 you want to bypass the normal resolver behavior and direct it to a specific activity? Jun 04 23:28:52 yes Jun 04 23:29:04 The developer should be guaranteed which package is being used Jun 04 23:29:12 right? Jun 04 23:29:21 I mean, doesn't that make the most sense here? Jun 04 23:29:44 i believe the closest you can get to that is PackageManager.queryIntentActivities() Jun 04 23:29:46 and then go from there Jun 04 23:29:49 right Jun 04 23:29:53 and that's fine I guess Jun 04 23:30:13 I guess I'm confused why I have to jump through hoops.. Intents just aren't really security focused? Jun 04 23:30:38 not at all; i don't know why you keep using the word "securely" Jun 04 23:30:46 if you want to launch a specific activity, you supply the component name Jun 04 23:30:54 launching the application you specify at developer-time Jun 04 23:30:57 if you want to do the resolver thing, you don't. Jun 04 23:31:26 yeah, but I don't have the full component name, since I don't think I want to require them to specify the class Jun 04 23:31:31 eh maybe I should Jun 04 23:31:43 not like it matters, no one will see the thing anyways :) Jun 04 23:31:47 it's in the info that you get from queryIntentActivities() Jun 04 23:31:57 right Jun 04 23:32:14 so I queryIntentActivities, search for the package name, and use the full component name Jun 04 23:32:25 which full component name? :) Jun 04 23:32:37 :) the first one that supports the intent? Jun 04 23:32:40 okay Jun 04 23:32:49 is that no good? Jun 04 23:32:52 like i said, there can be multiple matching activities in any given package Jun 04 23:32:58 right Jun 04 23:33:17 what are you writing, anyway? Jun 04 23:33:20 well, I'd want whichever one would be launched if an external app just called the intent implicitly and got this package Jun 04 23:33:30 well it's a two piece app Jun 04 23:33:35 the first is just this helper app Jun 04 23:33:42 which maybe someone will find useful :) Jun 04 23:33:48 I did for the zxing barcode project Jun 04 23:34:00 the second part is basically to launch apps remotely Jun 04 23:34:08 eg, maybe you have a 2 player game Jun 04 23:34:18 one person chooses the other from their contacts list Jun 04 23:34:25 if you want to launch a specific app, you use the component name Jun 04 23:34:34 like the Launcher does, i believe Jun 04 23:34:52 okay, so I should just require them to specify the class as well.. Jun 04 23:35:27 I'm just trying to keep my parameter list small ;( Jun 04 23:35:39 who is "them"? Jun 04 23:35:45 the user? Jun 04 23:35:51 :) a developer who may want to use this helper class Jun 04 23:35:52 you should never have to show class names to the user Jun 04 23:35:56 ahhh, yeah Jun 04 23:35:58 then okay :) Jun 04 23:36:03 so they are a user for me :) Jun 04 23:36:15 a nonexistent user, but still a user. Jun 04 23:36:58 okay okay, I cave in, I'll use the full component name. makes sense. 6 parameters isn't so bad :) Jun 04 23:46:45 how should i go about generating an md5 hash in my android app? Jun 04 23:47:00 i tried using MessageDigest but i believe im doing it wrong Jun 04 23:47:37 im getting the hex string by running: String hash = new BigInteger(m.digest()).toString(16); Jun 04 23:48:17 how can I pass a new Intent to an Activity that is currently on the stack that has android:launchMode="singleTask", it seems to only go through onRestart and bypasses onCreate? Jun 04 23:48:45 and getIntent() == null inside of onRestart Jun 04 23:51:27 essentially, my issue is that Activity A starts Activity B, then Activity B finishes and Starts Activity C....upon pressing back, I want it to exit the application instead of going back to Activity A Jun 04 23:53:25 I can do this if android:launchMode="regular", but when it is set to android:launchMode="singleTask" it doesn't Jun 04 23:53:38 don't use singleTask Jun 04 23:53:46 unless you are totally positive that it is exactly what you want Jun 04 23:54:16 if you want an activity to not show in the history stack, it should call finish() after starting its successor Jun 04 23:55:05 also think about what you need the behavior to be if the user hits 'Home' instead of back, then taps your app's icon again Jun 04 23:56:56 so, essentially what is happening is that my Activity is throwing an Intent to another application, and the other application calls an Intent to my activity without CLEAR_TOP set, so it starts the same Activity on the stack sitting on top of the same activity Jun 04 23:57:32 which is why I set singleTask Jun 04 23:57:41 and it broke my other code Jun 04 23:58:24 like i said, don't use singleTask :) Jun 04 23:58:43 when you say "calls an intent to my activity" what do you mean? the other app calls startActivity() on yours? Jun 04 23:58:48 or startActivityForResult() ? Jun 04 23:59:44 so, there are multiple places in my application which can send the intent to the other application, but the other application only returns to a single activity in my application, so is there a way to just clear my task stack? Jun 04 23:59:49 startActivity() Jun 05 00:00:21 if I can clear my task stack, that would be awesome, and I wouldn't have to worry about all of this Jun 05 00:01:41 this is why I started using singleTask Jun 05 00:02:07 or I just have to start every single one of my activities for result, so that I can close absolutely everything Jun 05 00:02:40 which is the last thing I want to do Jun 05 00:05:08 what I'm doing is placing a call, and I don't want it to return to the address book, I want it to go back to my application Jun 05 00:05:11 starting for result isn't waht you want either Jun 05 00:05:39 herriojr: hrm. why is it going to the address book at all? is it explicitly launching that after hangup? Jun 05 00:05:56 or are you placing a call by starting the address book activity somehow? Jun 05 00:05:59 yes, it launches an intent Jun 05 00:06:29 well, you can't tell the address book activity to quit Jun 05 00:06:35 so you can't do what you want Jun 05 00:07:13 ctate: to place a call, you start an activity, which in turn sends a broadcast to its own receiver which starts an activity....then when the activity exits, it sends an Intent (not to a specific component) Jun 05 00:07:41 placing a call depends on a broadcast? really? Jun 05 00:07:44 hunh Jun 05 00:07:52 yeah, so you can do filtering, etc. Jun 05 00:08:05 oh ah right Jun 05 00:08:27 anyways, I want it to go back to my application without it starting on a new task Jun 05 00:08:36 so I have to use singleTask Jun 05 00:08:38 you can't make some other application automatically quit itself Jun 05 00:09:06 by starting a new Task, I mean starting a new Task with my Activity on top Jun 05 00:09:30 who is starting your application, and why? Jun 05 00:10:08 the InCallScreen is sending an intent to start my application (overrides the system default to start the address book) Jun 05 00:10:21 so, that is on a different Task Jun 05 00:10:28 your app has overridden the system intent to start the address book, you're saying? Jun 05 00:10:29 since it was started by a broadcast Jun 05 00:10:37 broadcasts don't start activities Jun 05 00:10:45 a receiver does Jun 05 00:10:47 nope Jun 05 00:10:49 I can point you to the code Jun 05 00:11:03 you may already have a running activity that registers a receiver at runtime; that's different Jun 05 00:11:27 seriously, the broadcast mechanism is not tied to activity lifetimes :) Jun 05 00:12:30 okay, so Jun 05 00:12:39 singleTask does two things Jun 05 00:13:02 the first is ensures that the given activity exists only as a singleton Jun 05 00:13:03 Jun 05 00:13:04 that's the part you want Jun 05 00:13:18 ctate: yes Jun 05 00:13:27 but it also ensures that the given activity is always the bottom of its task history stack Jun 05 00:13:33 it sounds like that is the part that is messing you up Jun 05 00:14:19 ctate: so, if I start an activity with CLEAR_TOP, it runs through onCreate again, but not if singleTask is set Jun 05 00:14:32 that's the part I don't understand Jun 05 00:14:36 are you sure you don't want clearTaskOnLaunch ? Jun 05 00:14:53 it doesn't call onCreate() because the activity was already running Jun 05 00:14:56 I didn't see that, is that an activity attribute? Jun 05 00:15:03 http://developer.android.com/guide/topics/fundamentals.html#acttask Jun 05 00:15:09 and http://developer.android.com/guide/topics/manifest/activity-element.html#clear Jun 05 00:15:55 that's only if it is launched from the home screen it says Jun 05 00:16:04 that would mean that when the incall UI calls startActivity() on you again after the call, you'd be taken back to the home state Jun 05 00:16:12 hm, depends on how it's done from incall Jun 05 00:16:53 ok, let me check really quick and see if that fixes it Jun 05 00:17:57 by the way, do you know Cedric de La Beaujardiere Jun 05 00:18:50 he said he used to work with you and jbq at another company Jun 05 00:18:54 hey yeah, he was an orker of mine at Openwave for a while Jun 05 00:18:55 yeah Jun 05 00:19:10 i think i'll be seeing him next week too Jun 05 00:19:29 oh btw, when you used singleTask and were not getting onCreate(), were you getting onNewIntent() ? Jun 05 00:19:36 or did you not check? :) Jun 05 00:19:45 I didn't know about that function, so I'll check that out Jun 05 00:20:33 yeah, I work with him, but he's on the server-side Jun 05 00:23:15 where do you guys work? Jun 05 00:23:21 Asurion Jun 05 00:23:22 * ctate forgot where Cedric wound up Jun 05 00:23:25 Asurion Mobile Applications Jun 05 00:23:25 ah, ok Jun 05 00:23:28 neato Jun 05 00:23:43 ah not next week, the week after Jun 05 00:23:44 anyway Jun 05 00:23:55 so, when I do clearTaskOnLaunch, now when I make a call, it starts my activity on a new Task, so when I hit back, it takes me to the same activity Jun 05 00:24:50 but my other thing works ;) Jun 05 00:24:55 oh hm, i don't think singleTask prevents a new instance of your activity *and* a new task from being started Jun 05 00:24:58 maybe you want singleInstance Jun 05 00:25:08 heh Jun 05 00:25:11 okay, i have to scoot Jun 05 00:25:13 GL Jun 05 00:25:15 I'll try it, I hope it works Jun 05 00:25:17 ok, thank you Jun 05 00:25:20 thanks for the help Jun 05 00:49:10 anybody here ever built the emulator from source on mac os x? Jun 05 00:49:55 it seems like the sdl version installed by macports is missing nsWindowPtr in SDL_SysWMinfo Jun 05 00:50:03 and the configure script refers to an android-patched libsdl Jun 05 00:50:05 which is nowhere to be found Jun 05 01:09:37 nbd: yes Jun 05 01:09:38 Is the usb port on the g1 phone capable of outputting power.? I want to power a small usb thumb drive using the phone. Jun 05 01:10:22 nbd: make && lunch && chooseCombo && emulator Jun 05 01:10:54 nbd: that's usually what I follow to build and run the emulator from donut Jun 05 01:11:33 nbd: I can't remember if I needed anything from macports, it's been so long since I did initial setup Jun 05 01:12:14 ugh Jun 05 01:12:21 that uses the prebuilt library from google Jun 05 01:12:44 ah Jun 05 01:12:50 but it pointed me to the patched version Jun 05 01:12:52 thx ;) Jun 05 01:13:22 my goal is to build all this stuff without using binaries from google Jun 05 01:13:51 Has anyone created or seen a content provider that isn't backed by sqlite? Jun 05 01:17:24 How would you pass parameters when querying to a content provider that doesn't have an sqlite database? I feel like I'm missing something about the whole content provider interface. Jun 05 01:17:28 brb Jun 05 01:38:49 zhobbs: yeah, there is a script, but you need to modify it to use it for standalone apps Jun 05 02:14:16 If anyone's there, could anyone fill me in as to what rooting your phone does for you? Jun 05 02:20:55 So how come I can't see each rating, only an average? Jun 05 02:21:00 for my app Jun 05 02:21:05 I want to see the standard deviation. Jun 05 02:26:43 svm_invictvs, because the market blows Jun 05 02:27:02 tweek3867, you get root access, meaning you can basically do whatever you want Jun 05 02:27:14 heh Jun 05 02:45:21 * sammyF seconds KNY's assessment of the market ;) Jun 05 02:47:00 This 24 hour thing is really bad too Jun 05 02:47:22 and notice to all devs of 0.99$ apps. don't even bother. raise the prices ;) Jun 05 02:47:57 people won't buy stuff at 0.99$ cause it's "cheap", yet they'll comment as if you asked 99$ for it Jun 05 02:48:14 And, they can *buy* the fucking ap-p Jun 05 02:48:16 Use it Jun 05 02:48:20 Then return it within 24 hours. Jun 05 02:48:25 I just went to E3 Jun 05 02:48:30 And we pitched our game to three publishers. Jun 05 02:48:36 And they *all* said the same thing Jun 05 02:49:13 "It takes way less than 24 hours to beat most cell phone games. People can download it, play it, then return it and we make no money. Jun 05 02:49:27 yep. from a user's point of view, the 24 hours make sense (ignoring the fact that their phone might be rooted of course). but I just set my last game to 2.99$ instead of 0.99$ .. and behold, it's selling as good as the 0.99$ ones Jun 05 02:50:13 svm_invictvs: only thing you can do is to make games which can't be beaten in 24 hours :/ Jun 05 02:50:15 sammyF: how many copies? Jun 05 02:50:27 svm_invictvs: I never said it sold WELL ;) Jun 05 02:50:44 sammyF: I disagree. I think the return within 24 hours is bullshit. I think it should be 1-2 hours. Jun 05 02:50:57 sammyF: I think that you should manually give refunds after 2 hours. **** ENDING LOGGING AT Fri Jun 05 02:59:57 2009