[android-developers] Making the Account API better
Recently I added usage of the Android Account APIs to my application. I'm using the user's google account credentials to perform a read operation from a specific Google site, and consequently, my app requires the GET_ACCOUNTS and USE_CREDENTIALS permissions. Surprisingly, I have NOT had a huge amount of push back from users on the app requiring these permissions, but there has been some. For the most part, the questions have been why do you need this, and what accounts are you asking to use?. Once I provide an explanation, most user's are satisfied. One things that occurs to me is that it would be great if we could be a bit more fine-grained and explicit in our declaration of permissions. For example, if I could parameterize the permission request, something like this: uses-permission android:name=android.permission.GET_ACCOUNTS param=account=google/ uses-permission android:name=android.permission.USE_CREDENTIALS param=site=docs.google.com/ and have the effect be that I would only be able to retrieve the google account, and only be able to use credentials from that account on the site docs.google.com, the permission description for end users could be much more explicit (and thus less scary). Obviously this also assumes that there is a reasonable way to implement these kinds of restrictions. I realize that's big assumption, but it certainly would improve the overall Account API experience, IMO. Dave -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
Excellent points. This is why in my requirements for AAL, I started with the assumption that PAYING customers should: - never have to type in a password - never have to type in a license key - only have to generate a valid license once (well, actually twice -- initially and then again after the 24 hr refund period), and this generation should be transparent and automatic As for pirates, the experience is configurable, but in my apps, I never lock them out, just nag them each time that they run my app. Since deploying AAL in my app, about 50% of the installs have properly validated their purchase and generated a license. The other 50% did not properly validate (meaning that they potentially stole it) and after some number of failures are politely being invited to purchase for 15 seconds each time that they start. Sales are up. Dave On May 10, 12:04 pm, Raymond Ingles sorceror...@gmail.com wrote: On Mon, May 10, 2010 at 11:06 AM, dadical keyes...@gmail.com wrote: The point here is to get this past the pain threshold where it won't be worth the trouble for an app that is only a few bucks. It's not clear that piracy translates into lost sales: http://blog.wolfire.com/2010/05/Another-view-of-game-piracy iPhone game developers have also found that around 80% of their users are running pirated copies of their game (using jailbroken phones)... [but] The highest estimate I've seen is that 10% of worldwide iPhones are jailbroken... The answer is simple -- the average pirate downloads a lot more games than the average customer buys. This means that even though games see that 80% of their copies are pirated, only 10% of their potential customers are pirates, which means they are losing at most 10% of their sales. Apparently the people who pirate, pirate a *lot*. And, conversely, the people who *don't* pirate simply don't put as many apps on their devices. Be very careful that, in your understandable zeal to fight pirates, you don't penalize the legitimate users. Make the app too irritating and people won't buy it at all. In other words, if you're not careful, the *paying* customers can conclude it's not worth the trouble for an app that is only a few bucks. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Participate in app promotion experiment
Hey John. Sounds like a good idea. Can you compare/contrast this to Flurry's App Circle concept? I don't think that they offer this for Android yet, but it sounds similar... Dave On May 14, 9:38 pm, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: Here's the deal. I have an app called Radar Now! that has over 320,000 downloads, and is used about 100,000 times a day on average. In the last version, I added code that would allow an advertisement for an app to bring up the market directly when the ad is touched. What I would like is for those who would like their app promoted to provide a banner image 320x50 that I can display on my app. Here are the requirements: Less than 1000 downloads for free and less than 100 downloads for paid apps Be willing to provide daily download numbers in this thread once the experiment starts Be willing to track your popularity index for your category and report in this thread Contain NO COPYRIGHT violations and be useful to the average device owner Not contain anything objectionable to the average family type user Be compatible with the Droid device If you're willing to participate, send me your 320x50 banner and details (including market link with package name) via private e-mail. I will have the say as to what apps are allowed and what apps can't. In theory, an app fitting the above requirements that is publicized by our app could zoom into the top 20 for their category rapidly, once there, if the app is worth anything, it should stay. That's the theory anyway. Thanks! -John Coryat -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: To copy protect or not to copy protect!? That is the question!
Just make up your mind before hand. I would recommend NOT using copy protection, but don't decide to after the fact, as you will cause your installed user base all kinds of pain when their phones go berserk after you switch it on. It's not pretty. I ultimately decided to go a different route, and simply validate that my app was purchased (from within the app) using what we call Automatic Application Licensing. It's been working pretty well since we implemented. We've seen an increase in our sales and a decrease in the disparity between pirated and purchased installs. Not to mention, pirates are now potential patrons. If you want more info, see www.keyeslabs.com. I'm hoping along with everyone else that G is going to announce upgrades to the market sometime soon that will make these issues go away. I'll be watching on Monday! Rumors have some kind of market announcement coming next week... Dave On May 13, 2:03 pm, Moto medicalsou...@gmail.com wrote: I'm getting many complaints that users can't find our paid app in the Android Market. I know exactly why... Our app is Copy-Protected. So the questions is, if our paid app is already available all over the internet for FREE!! What's the point of copy protecting an app? Should I even care at this point about that feature? It seems I'm gonna get more sales if I disable copy protection, but makes me wonder.. This really sucks, and I know it's been talked many many many many many times in this blog and many other places... It's just sad... -Moto -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
That argument assumes that I don't respond to those cracks with improvements to AAL that will make it more difficult! :) Also, each app will need to be cracked individually, and I'm trying to work out some ways to make that a job that isn't cookie-cutter. The point here is to get this past the pain threshold where it won't be worth the trouble for an app that is only a few bucks. This is fascinating stuff, but very, very non-lucrative. I don't really want to engage in this game, but I don't see an alternative until it gets solved at the platform level. Given the lack of commercial interest (and the prodding of several smart devs), I've considered opening this up, but I'm not sure how to do that without it simply lowering the barrier for pirates. On May 10, 3:55 am, MobDev developm...@mobilaria.com wrote: It took several days (almost a week) for crackers to decompile Screebl Pro and find a way to circumvent AAL. Typically it takes about 90 secs from the time that we publish to the market for the various warez sites to start tweeting the location of the download. I was wondering, after the first crack-run they obviously will have devised a crack-method, which means that every other app using AAL will be cracked within 90 seconds till a new version is released... A week of cracking will only be the case during the first attempt... -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
That's easy. Install flurry or the likes, compare reported daily new installs to what you see reported by Google checkout. On May 9, 4:28 pm, Stephen Lebed srle...@gmail.com wrote: I'm wondering how you know the piracy rate of your app. Is there a way to track that? I'd love to know if my apps are being pirated or not. On May 5, 9:20 am, dadical keyes...@gmail.com wrote: I've spent the last few weeks developing a new tool to stoppiracyof my paid apps on the Android Market. In a nutshell, licensing is tied directly to purchase verification. There is no license server to manage, no key for the user to enter. User experience is basically uninterrupted from normal application purchase. I'm excited about this, as my paid apps are now reachingpiracyrates as high as 90% on some days,with the average somewhere around 75%. For pirated apps, purchase verification (and subsequently licensing) will fail after a certain number of attempts, and pirates will be left with anything from a buy me nag, to a disabled app (behavior is configurable). Android Market is the only supported purchase validation target so far. Others will be forthcoming if demand warrants. This isn't a perfect solution (I have yet to find a perfect licensing solution), but I feel it is the best balance of security, features, and workflow that I've seen to date. You can find a write up, download, and purchasing information here:http://keyeslabs.com/joomla/index.php/projects/auto-app-licensing I'll be looking forward to the comments, suggestions, and death threats. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
I most certainly did NOT use code from that project. I rolled my own, thank you very much. Take a look at that project. It's over 600k. AAL is 36k. I wrote my own implementation of ProtoBuf to pull this off, and that is no small undertaking. I did initially consider using that project, but came to the conclusion fairly quickly that it was just too fat. There is not a single piece of code from that project in AAL. On May 6, 3:36 am, a1 arco...@gmail.com wrote: On May 5, 8:09 pm, dadical keyes...@gmail.com wrote: Hey Tim. You're correct that validating purchase with the market is a key piece of our solution. Figuring out how exactly to do that using Google's binary market protocol in an efficient way (try doing everything that AAL does in a 35 KB library) was a fairly significant dev effort. What's more, balancing license generation, market API security, cross- Android version compatibility, customization, etc., and you've got a nice little chunk of work that we put into this solution. As for pricing, we'll see what the market will support. In our own single app Screebl, we lose about $100/day in revenue to pirated apps, so $50 seems cheap. I know that not all of that $100 will translate into sales, but some percentage will. My point is it shouldn't take long for AAL to pay for itself. Are you kidding me? You used code from this project:http://code.google.com/p/android-market-api/[you even left the same UA spoof], and whats more important you are trying to charge for solution that uses undocuemented google APIs (hence illegal), which not only may change at any time but also using it may be legitimate reason to block app from android market. -- Bart Janusz (Beepstreet) -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
Hello Lee. Regardless of whether anyone purchases AAL, it has been a worthwhile investment for us. It took several days (almost a week) for crackers to decompile Screebl Pro and find a way to circumvent AAL. Typically it takes about 90 secs from the time that we publish to the market for the various warez sites to start tweeting the location of the download. I have a feeling that the open source market api is involved in that scenario for sure. As you've said, AAL is not fail proof, but I continue to improve it, and my latest releases will make it even more challenging to reverse engineer. AAL is a big stumbling block, but a market API alone is not worthy of a Google anti-piracy solution. They will need to do the same as AAL but also go much further to guarantee that apks aren't modified (e.g., cracked). One way to to do this would be to have the platform calculate a hash of the installed apk and validate that against what was purchased on the market. This is going to require deep integration in the platform and the market to kick it in the arse for good. Loving the feedback! On May 7, 6:09 am, Lee lee.wil...@googlemail.com wrote: As an aside, why don't google provide their own official API to allow apps to check with the market whether they've been purchased or not ? Perhaps it's the 'any security which can be conceivably broken is useless' line ? I would be happy with any protection mechanism which forced my apk to be hacked in order to install it on a non-rooted phone, instead of the current 'just copy it over, it'll work fine' situation. I don't need 100% security. Lee -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
You've pretty much got the major parts down. We validate with Google market servers using a hand-rolled and highly-efficient implementation of Google's binary protobuf protocol. Once the hard part (validation of purchase) is done, a unique key that is tied to user, phone, and app is generated, which is valid for a bit more than 24 hours. After that 24 hour period, purchase validation is done again, and then a permanent key is generated that doesn't require communication with the server again for that installation of the app on that phone. If the user changes phones, the same process will repeat. Successful licensing requires visibility of the app from the device on Android market, given the device id, build number and other criteria. AAL makes efforts to never send a request to the server more than once every 30 seconds. Failure policy is up to the developer. I suggest at this point using a nag policy, which won't lock the user out, but forces them to stare at a buy my app invitation for some configurable period of time. As with all of my software however, things like this are configurable. There are also other features that I'm not going to cover here that make an attempt detect cracking, and disable the app at some random time in the future if it is detected. I'm going to be iterating on this stuff over the next few weeks as the evil-doers take swings at AAL. Hope that helps! I'm going to be scrambling to write docs this weekend. At this point there seems to be lots of interest, but little willingness to bundle in apps. I suppose I understand that given the newness and the lack of detailed information. Dave On May 6, 2:22 am, Edward Falk ed.f...@gmail.com wrote: Intriguing. I was wondering if maybe you could add a blurb to your web site explaining in simple terms how it works. E.g. when the API is called, it communicates with the Android Market to verify your key; once verified, the verification code is remembered so that no further calls to the market are needed. Or perhaps instead of Android Market, it's our servers. Or whatever. How *does* it work? And if it's your servers (or even the Android Market), what happens to users when the servers go down? This is the biggest problem with any kind of server-based DRM. Do they lose their apps? Is there an alternative recovery plan? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
That's a cool use case, but I'm curious about how commonly people sell apps that way. Are you doing this because of the limitations of where Android offers paid apps? Is it because of the costs involved in doing transactions on Android Market? I think that the value offered by Android Market only begins to be realized when your app makes into the rotation within the top 25 or so of any particular category. Said another way, 30% overhead is worth it if your volume is high enough. AAL is modular and can have additional validation targets, so doing validation through PayPal should be possible, although authentication would be the sticky part. AAL works so well with Android Market because it can use the user's existing account credentials when validating the purchase (i.e., no username/password required). On May 5, 7:48 am, westmeadboy westmead...@yahoo.co.uk wrote: Non-Android Market solutions would be more interesting to me. I'd like some way to stick an apk on my website and allow users to pay using paypal. Everything else would work seamlessly... On May 4, 11:20 pm, dadical keyes...@gmail.com wrote: I've spent the last few weeks developing a new tool to stoppiracyof my paid apps on the Android Market. In a nutshell, licensing is tied directly to purchase verification. There is no license server to manage, no key for the user to enter. User experience is basically uninterrupted from normal application purchase. I'm excited about this, as my paid apps are now reachingpiracyrates as high as 90% on some days,with the average somewhere around 75%. For pirated apps, purchase verification (and subsequently licensing) will fail after a certain number of attempts, and pirates will be left with anything from a buy me nag, to a disabled app (behavior is configurable). Android Market is the only supported purchase validation target so far. Others will be forthcoming if demand warrants. This isn't a perfect solution (I have yet to find a perfect licensing solution), but I feel it is the best balance of security, features, and workflow that I've seen to date. You can find a write up, download, and purchasing information here:http://keyeslabs.com/joomla/index.php/projects/auto-app-licensing I'll be looking forward to the comments, suggestions, and death threats. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
Hey Tim. You're correct that validating purchase with the market is a key piece of our solution. Figuring out how exactly to do that using Google's binary market protocol in an efficient way (try doing everything that AAL does in a 35 KB library) was a fairly significant dev effort. What's more, balancing license generation, market API security, cross- Android version compatibility, customization, etc., and you've got a nice little chunk of work that we put into this solution. As for pricing, we'll see what the market will support. In our own single app Screebl, we lose about $100/day in revenue to pirated apps, so $50 seems cheap. I know that not all of that $100 will translate into sales, but some percentage will. My point is it shouldn't take long for AAL to pay for itself. Dave On May 5, 1:23 pm, strazzere str...@gmail.com wrote: Looking at your documentation, I'm assuming your making a call to the market requesting the state of the application -- if I'm wrong, then just disregard this information. If I'm right, I guess my only question is why are you charging so much information for such a simplistic method? Don't get me wrong - that method would probably be the best one I've seen yet on the market, but that's still a nice chunk of money to charge for it. -Tim On May 4, 5:20 pm, dadical keyes...@gmail.com wrote: I've spent the last few weeks developing a new tool to stoppiracyof my paid apps on the Android Market. In a nutshell, licensing is tied directly to purchase verification. There is no license server to manage, no key for the user to enter. User experience is basically uninterrupted from normal application purchase. I'm excited about this, as my paid apps are now reachingpiracyrates as high as 90% on some days,with the average somewhere around 75%. For pirated apps, purchase verification (and subsequently licensing) will fail after a certain number of attempts, and pirates will be left with anything from a buy me nag, to a disabled app (behavior is configurable). Android Market is the only supported purchase validation target so far. Others will be forthcoming if demand warrants. This isn't a perfect solution (I have yet to find a perfect licensing solution), but I feel it is the best balance of security, features, and workflow that I've seen to date. You can find a write up, download, and purchasing information here:http://keyeslabs.com/joomla/index.php/projects/auto-app-licensing I'll be looking forward to the comments, suggestions, and death threats. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: I've found a way to stop piracy of my apps
Thanks for the feedback Al. My intent wasn't to forbid anyone from creating their own licensing options after downloading AAL, just that they can't reverse engineer it, copy it, change the name, etc. I'll look into improving the wording... Dave On May 5, 2:32 pm, Al Sutton a...@funkyandroid.com wrote: I'm not sure how many developers will like your licensing terms, especially the bit which prevents them from creating any form of licensing solution of their own if they download your app. It's also worth noting that you're statement preventing reverse-engineer doesn't hold water in many jurisdictions (e.g. Europe where Article 6 of the European Software Directive specifically allows it for certain reasons, have a look about half way down the article athttp://www.aplf.org/mailer/issue113.html). Don't get me wrong, it's always good to see innovation in this field, but you might want to ease up on your license a little. Al. On May 5, 7:09 pm, dadical keyes...@gmail.com wrote: Hey Tim. You're correct that validating purchase with the market is a key piece of our solution. Figuring out how exactly to do that using Google's binary market protocol in an efficient way (try doing everything that AAL does in a 35 KB library) was a fairly significant dev effort. What's more, balancing license generation, market API security, cross- Android version compatibility, customization, etc., and you've got a nice little chunk of work that we put into this solution. As for pricing, we'll see what the market will support. In our own single app Screebl, we lose about $100/day in revenue to pirated apps, so $50 seems cheap. I know that not all of that $100 will translate into sales, but some percentage will. My point is it shouldn't take long for AAL to pay for itself. Dave On May 5, 1:23 pm, strazzere str...@gmail.com wrote: Looking at your documentation, I'm assuming your making a call to the market requesting the state of the application -- if I'm wrong, then just disregard this information. If I'm right, I guess my only question is why are you charging so much information for such a simplistic method? Don't get me wrong - that method would probably be the best one I've seen yet on the market, but that's still a nice chunk of money to charge for it. -Tim On May 4, 5:20 pm, dadical keyes...@gmail.com wrote: I've spent the last few weeks developing a new tool to stoppiracyof my paid apps on the Android Market. In a nutshell, licensing is tied directly to purchase verification. There is no license server to manage, no key for the user to enter. User experience is basically uninterrupted from normal application purchase. I'm excited about this, as my paid apps are now reachingpiracyrates as high as 90% on some days,with the average somewhere around 75%. For pirated apps, purchase verification (and subsequently licensing) will fail after a certain number of attempts, and pirates will be left with anything from a buy me nag, to a disabled app (behavior is configurable). Android Market is the only supported purchase validation target so far. Others will be forthcoming if demand warrants. This isn't a perfect solution (I have yet to find a perfect licensing solution), but I feel it is the best balance of security, features, and workflow that I've seen to date. You can find a write up, download, and purchasing information here:http://keyeslabs.com/joomla/index.php/projects/auto-app-licensing I'll be looking forward to the comments, suggestions, and death threats. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email
[android-developers] Re: I've found a way to stop piracy of my apps
Hey George. I have looked at SlideMe and SlideLock. It's great but doesn't fit my use cases for my apps, nor, I would suspect many others looking for simple licensing solutions that mesh well with Android Market. Permissions are a pain, aren't they? It is what it is, and devs will have to evaluate that when considering AAL. For anyone who wants to use credentials for a backend system (which is becoming more and more common) this is the best possible approach. Until Google gives us a bit more control over the Android Account API, and finer-grained interface to the permissions capabilities of Android, there's not much that can be done to improve on this for this particular approach. Something to consider: - users NEVER give access to their user id or password, they just grant the app permission to act using their idenity with the market for validation of purchase As for the reverse engineering of the market API, of course Google can change it. However, they also depend on that API, and have many, many apps out on different versions of Android that depend on it. I would expect this to remain relatively stable. Devs that use AAL can configure their app's policy on what to do if validation fails, including anything from lock out to nag, so risk to end users can be controlled. Thanks for your feedback and contrasting points with SlideMe's technologies. Dave On May 5, 4:01 pm, George | SlideME george.slid...@gmail.com wrote: Dear dadical, * *I salute your initiative and congratulate your efforts in the anti-piracy conflict. Digital Rights Management was never an easy adventure. Nowadays, everything can be broken by using different methods. Some fall easier, some do harder. However, I do not intend to highlight this in your licensing API. I have few thoughts for your licensing approach, as follows : 1. I as an end-user cannot welcome the disclosure of accounts/credentials, which by design are required for your module to work (android.permission.GET_ACCOUNTS, android.permission.USE_CREDENTIALS). Those in combination with android.permission.INTERNET makes me highly worried about first at all possible scam. A simple example would be : I write an application and claim I am using your 'licensing module' so the end-user is installing my app thanks to trusting you. Then I do whatever I want with that. - Based on the above, I as a Vendor can not embrace the permission enforcement for such disclosure of private data in my products - What if there is a shared account? This will work on all devices that have that user credentials? 2. You have reversely-engineered the Android Market Transfer Protocol and Markup Language for purchase verification. - Do you have the guarantee that Google will not change the protocol and your module will not fail? - You will most likely need to reversely engineer the protocol/language again and come with an updated version. How about the time frame you need to fix this and the clients unable to use the application? 3. Is your module legit? For how long? What guarantees can you grant? There could be more but for now this is all that came in my mind. On the other hand, have you heard ofhttp://slideme.org/slidelockhttps://slideme.org/slidelock that can be used today for protecting applications for global distribution where there is no Android Market? George -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] I've found a way to stop piracy of my apps
I've spent the last few weeks developing a new tool to stop piracy of my paid apps on the Android Market. In a nutshell, licensing is tied directly to purchase verification. There is no license server to manage, no key for the user to enter. User experience is basically uninterrupted from normal application purchase. I'm excited about this, as my paid apps are now reaching piracy rates as high as 90% on some days,with the average somewhere around 75%. For pirated apps, purchase verification (and subsequently licensing) will fail after a certain number of attempts, and pirates will be left with anything from a buy me nag, to a disabled app (behavior is configurable). Android Market is the only supported purchase validation target so far. Others will be forthcoming if demand warrants. This isn't a perfect solution (I have yet to find a perfect licensing solution), but I feel it is the best balance of security, features, and workflow that I've seen to date. You can find a write up, download, and purchasing information here: http://keyeslabs.com/joomla/index.php/projects/auto-app-licensing I'll be looking forward to the comments, suggestions, and death threats. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Deauthorizing account access in AccounManager
I'm wading through the poorly documented AccountManager API and am a bit confused on a few points. There's nothing like having to reverse- engineer public APIs :). Anyway, I'm curious about how to test the use of this API in an end-to- end fashion. One very tricky aspect of the account manager is its ability to query the user before granting access to a particular account. I can't seem to find any mention of how to un-grant permission for a particular application to use an account. Does anyone know how this is done? Also, has anyone figured out what authTokenType is supposed to represent? Using android seems to work for getting a google.com auth token, but it makes me nervous that I have no idea what this property is really intended for. I could be building in a breaking point. Hey Google people, it would be really, really helpful to have a good working example of this API. Even better, some comprehensible docs would help. A mobile app interacting with an AppEngine backend would make sense for an example. Dave -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Current consensus on whether to use Copy Protect mode when publishing in Market?
Let me share a nightmare with you that I'm still going through now. I have two apps on the market (screebl lite/pro) that have seen moderate success in Android Market terms, approaching 80k downloads. For the pro version, I had never enabled copy protection because of the problems that had been reported w.r.t. visibility. Also, I'd heard reports that the copy protection was fairly easy to break as well. As my apps have gained traction, piracy has picked up. I mean REALLY picked up. Over 40% of the installs of my pro version are pirated. I've heard all of B.S. args about how I shouldn't care because those people wouldn't have paid anyway, it's free adveretising, they're from markets that can't pay. Whatever. So in a recent release I decided to flip the copy protection switch on. I've heard that the visibility issues have been corrected lately. What a shit storm that released! Almost immediately my app's active installs dropped by 4 points, which is the most significant factor in market ranking. Then the emails and market comments started to pour in. F/c, your app has ruined my phone, I hate you and hope you die. Of course it took me a while to even track down the problem. Devs can't download their own paid apps. So far here's what I can tell happened: 1. Most installed users got F/Cs when trying to start the app after install. New installs seemed to work fine. 2. Problems occured across models and platform versions. 2. Uninstall/reinstall fixed the problem for some. 3. Some users had to do multiple reboots of the phone to get Screebl working. After these reboots, the application registry appeared to get out of whack, for some showing nothing but my app. 4. My app icon disappeared from many app drawers. 5. Doing an update and turning copy protection off seemed to fix the problems. My conclusion is this: make your mind up before you release. Google didn't used to let you change this setting on market, and now I can see why. I think they should move back in that direction until they have time to test this and iron out the defects. At least give a warning. I will just let the whole Google needs to figure the piracy thing out rant be implied here. Dave On Apr 16, 5:41 am, Geefer paul.gee...@googlemail.com wrote: Without wishing to start a firestorm, what is the current consensus on whether or not it is useful to use the Copy Protect setting when publishing on the Market? What are the pros and cons of doing so? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group athttp://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: How to reset the price of application
Grokking, parsing, compiling... Ahhh... the real question is which movie are we all going to see? How about a charming low-budget sci fi winner such as http://www.imdb.com/title/tt0083557/ ? That seems appropriate. On Mar 11, 12:57 am, Dianne Hackborn hack...@android.com wrote: On Wed, Mar 10, 2010 at 8:48 PM, Kumar Bibek coomar@gmail.com wrote: promote your app free for 24H or more That's a nice idea. Ummm, Google doesn't seem to be working on the Android Market. :( Yep, no more development on android market. It is perfect how it is. Now we can go see a movie. -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Market Weirdness?
Anyone else noticing some strange behavior on the market lately? Most notably, I've been seeing fairly significant swings in the active install count (on the order of 3 points in a sinlge day) which has been highly unusual for my app so far. Also downloads have been way down over the past few days. Is it possible that people don't love me as much as I think they do? Or is there another market bug similar to the one that cost me 8 percentage points in active installs last time that never got corrected? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] What must one do to become a member of android-discuss?
It's very annoying to wait 3 days before seeing messages hit the group. What are the criteria for getting by moderation? Is it some number of posts? Begging? Bribery? :) -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Android, send me logs! - code library for detecting force-close and sending logs
For those of you that are comfortable using Flurry, a similar approach works nicely. Flurry already collects uncaught exceptions, but for some reason doesn't actually log the stack trace. To get around this, I add an exceptionHandler that logs a Flurry event with the stack trace as a parameter, like this: OutputStream lOS = new ByteArrayOutputStream(); PrintStream lPS = new PrintStream(lOS, true); t.printStackTrace(lPS); lPS.flush(); MapString, String lArgs = new HashMapString, String(); lArgs.put(stackTrace, lOS.toString()); SharedPreferences lPrefs = PreferenceManager.getDefaultSharedPreferences(pCtxt); if(lPrefs.getBoolean(PREFS_REMOTE_DEBUG, true)){ FlurryAgent.onEvent(FLURRY_EVENT_UNCAUGHT_EXCEPTION, lArgs); } One big advantage of this approach is that Flurry collects lots of metrics w.r.t. the frequency, timing, and sequencing of the events. Works very, very nicely. On Feb 26, 10:10 am, Streets Of Boston flyingdutc...@gmail.com wrote: I haven't made it public yet (i will at some point), but i have a similar system for my apps. The process of my activities registers itself by calling Thread.setDefaultUncaughtExceptionHandler(uncaughtXcptHandler) and binds to service that i wrote that runs in a different process (since my app will be dying because of an exception, it's tricky to properly handle the exception in the dying process itself). Then in the uncaughtXcptHandler.void uncaughtException(Thread t, Throwable e), I write out an error-log file with the stack-trace and some other info. Then i call an asynchronous method on my service that will pop up a dialog allowing the user to send me the error report or not. If the user clicks 'Yes', then the error-log file is read and sent to my webserver. My webserver then sends me an e-mail. This way, users can remain anonymous (no e-mail/reply address necessary). I let my app die immediately after calling the asynchronous method. If my app couldn't bind to the service for any reason, the old and trusted force-close message from Android is shown instead. On Feb 25, 3:10 pm, focuser linto...@gmail.com wrote: Hi fellow Android developers, How many times have you asked users to send you the logcat result to track down a nasty force-close? How many users have actually replied? It's not that users are lazy or busy. Having to run the logcat command or download an external log collector app just means too much trouble for them. It should be much simpler. It should be just one tap. In fact I'm surprised (or being ignorant) that an easier error reporting mechanism has not existed yet in the Android API, especially for the infamous force-close. That is why I coded and open-sourced Android, send me logs!, a small code library that makes it easy to detect force-close and send logs from within your own apps. You can program it to report errors with just one tap, and also include your own tracing information. Please check it out athttp://code.google.com/p/android-send-me-logs/. It's still in very early stage, and I would appreciate your critism, suggestions, comments, or even code contributions. Linton Ye -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Piracy sucks, or does it?
I've been selling my app on the Android market for a bit over a month now. I've had pretty decent success so far, making it into the top ten in my category. Recently, I noticed a major discrepancy between Flurry's reported new users and the market's stats (what little of them Google does provide). Flurry said that I had about 4,500 new users, while market reported just over 3,000. Holy crap. Are 1/3 of my users really stealing the app? That's the only conclusion that I can come to, since my experience with Flurry has been that it is pretty accurate. Also, I have seen many pirate sites hosting my app. I used to take the time to report them, but it seems to be a waste of resources. So here's the question. Should I be celebrating the fact that my app has attained the level of piracy worthy, and just try to ignore the fact that there are so many punk loser pricks out there that won't spare the pennies to buy it, or perhaps can't borrow mommy's credit card? Is piracy a badge of honor that I should just learn to deal with since Google won't give me the market tools to fix it? I like the concept that AndAppStore is trying to provide, offering an API that can be embedded into one's app to check for purchase at application startup. It's a bit clunky, and I'm not going to restrict myself to AndAppStore's limited reach, but it sure would be nice if Google (or someone else) could scrape together a competitive market offering. I'm really, really, really beginning to wish that someone would go out and get the $2 MM that it would take to create a competitive market offering. A market that was polished, offered real sales support, and real developer support. If you ask me, the rampant piracy of Android apps is just another indication that Android Market is in desperate need of some competition... -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: In-app payment options
This is a nice summary Bob. I've learned a lot about the Android Market over the last few months, and I'm a big fan of the Lite/Pro approach to rolling out an app for a couple of reasons. 1. Feedback. Users are more forgiving of beta-quality and rough edges in a free Lite version. Use this good will to explore your application's features and to build good will. Be responsive to your Lite users and do frequent releases to incorporate new features. 2. Springboard for Pro Version. Lite applications are a great marketing tool in-and-of themselves. I think the following steps make a good Lite/Pro mix. - Market the snot out of the Lite version. Get it reviewed, get it discussed on the forums, and get it downloaded as much as possible. - Be patient. You've got to build a good Lite user base because the Lite version is your springboard into success with the Pro version. You will need to wait until you have a substantial user base for the Lite version (I waited until I had 30,000 downloads) before you release your Pro version. - Add key features to Pro. The Pro version should add high-value features for which users showed interest in the Lite version. - Provide an upgrade route. When your pro version is ready, add an Upgrade to Pro option in the Lite version. This will give you the ability to harvest your Lite user base. The effect of this approach has been truly fascinating to me. I saw an initial surge of movement from Lite to Pro. My most loyal users of Lite were happy to support my efforts, and consequently were also likely to leave the Pro version installed since they were already convinced with the Lite version. This has the effect of stacking the market stats in your favor, and I've seen my Pro version move up very quickly to the top ten in its category, and top 25 overall. Once that happens life gets a lot easier for an app... On Feb 19, 2:18 pm, Bob Kerns r...@acm.org wrote: The 24h trial isn't so much for trial usage as it is to give people courage to make that download, knowing that they might not like it once they get to see it, or it might not even work. And at the typical price point, you do NOT want to have to support customers who aren't happy (and won't be happy) with your product. You want them to just move along. Hopefully without griping on the comments page for your app! Especially since the space for descriptions in the Marketplace is SO INCREDIBLY LAME. It's a poor channel to communicate what your app does, so people who SHOULD buy it won't, and people who SHOULDN'T buy it, will. Apple's store is roughly 2x as good. And while some use a lite version to give a taste, others use it to provide a full-featured version, but supported by advertising. And others use a hybrid model -- advertising and limited features -- generally with the lite version having enough features to satisfy most users, but for ones who seriously use your app, and need more features, you give them an upgrade path, and for those disliking ads, you give them an alternative, too. Still others, on each release of their paid version, make the prior feature set available as their free version. So you get new features, either way, you just get them sooner if you pay. (This is a less common model, but I think it's a valid model, and suitable in some circumstances). Lite versions give you more customers, from whom you can learn more about what features people would like and what what they might pay for. The wealth of free apps of all descriptions, including lite versions, adds to the richness of the platform, and helps to expand the market for all of us. It sounds to me like what you want is a time limited trial version, rather than a lite version. What you can do, instead of an in-app upgrade, is to simply provide an in-app link to your full paid app in the market place. Make it available at any time, and make it the only option when the trial is expired. The user experience would be similar, but Google and their carrier partners get their 30% cut, and you stay within the agreement. Don't sweat the 2x listings issue. The Marketplace is pretty much oriented around it, separating free apps and paid apps at every opportunity. I'm not that happy with how they do it -- it's a pain, as a user, and it doesn't do anything to inform users about a paid or free alternative to the one they're looking at. But it's not your issue. If you HAVE a free/paid model, or a demo/paid model, just be sure to mention that in your description! You don't want people to write off your paid app, because they didn't know they could get a demo first. On Feb 19, 11:00 am, Carlo ca...@hyperdevbox.com wrote: about games, if the more than 24h is needed i can understand that a light version is certainly needed , however 99% of the lite version on the markets seems to be a lighted version of the paid version (with less features) and so customer should better have the taste
[android-developers] Re: What does a good app review look like?
I'm biased since you guys actually have reviewed my app, but I think you have some interesting ideas. Here are some of my observations with respect to reviews. 1. Reviews always result in a significant bump up in sales/downloads. It actually doesn't matter whether the review was positive or negative all that much. I've sometimes seen more early play from a review that is mostly negative in tone than from one that is gushing. Definitely balance between the pros and cons helps to lend legitimacy. 2. Format of the review DOES seem to matter. I've noticed that longer more detailed reviews tend to have more legs in the long run. Also, reviews that are well organized with lots of screen shots or other media seem to deliver more hits. 3. Reviews that include interviews help to personalize the application and the brand. I think that more devs need to put their face on their apps and develop personal loyalty. Schwimmer, Coryat and others come to mind as doing this successfully. It's not vanity, it's branding. On Jan 30, 2:11 am, AppRoasters revi...@approasters.com wrote: What does a good application review look like? From a dev's perspective, it's whatever brings the users. From the user's perspective, things need to be informative and entertaining at the same time. We're trying to carve a niche out for app reviews at approaster.com, but I'm really interested in hearing devs perspectives on what makes a good review. What's the right length? How much information is too much? How long do you get activity out of a review? Thanks for your input! -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Mobile App Socialization - We Need an API
I've been thinking a lot lately about how to gain visibility for mobile apps. It's getting more and more difficult as an independent developer to get your application noticed among the piles of crap that are stacking up in the market. I think that we need some way to socialize our applications and capitalize on the momentum that we do happen to build from things like reviews, forum postings, etc. I've blogged about my ideas on how to make this happen here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/96-im-all-a-twitter Thoughts? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Mobile App Socialization - We Need an API
You've got one of the use cases down: me telling my users about new features. But keep in mind, if I send them a compelling tweet about a new feature, then THEY are likely to REtweet, and the viral fun begins. Lots more people hear about my app. The other use case was me letting them tweet easily (using their twitter or FB account) from within my app. Imagine me offering them an option that says: Hey if you like this feature, how about tweeting it to your friends? Y/NIf lots of people click yes, then a pre-canned tweet goes out to their subscribed followers. Now I've got 5000 people tweeting about my app to all of the users that follow THEM. Some of this we can already do using the SHARE intent that comes with Android, but as I point out in the blog posting, I think we need more than just that... It will be an interesting balance to strike to make this not annoying to my users, but the potential power is huge for app promotion in my mind. On Jan 18, 11:35 pm, Kevin Duffey andjar...@gmail.com wrote: Ok..read your blog. I personally still don't get the craze over twitter. I enjoy blogging.. when I have something to share..but as I have nobody that reads my blog, I don't really blog any more. I can't stand trying to type on my phone device. The virtual keyboard on the Moto Droid is pretty good..but I still mis-type all the time, and the pull out keyboard is worse for my big hands/fingers. The idea of writing a short message about me eating at a McDonalds, or that I just saw a car crash, or where I am driving by, etc.. I don't know. It doesn't click with me. About the only thing that does seem to make sense with twitter for me is posting links to say, good blogs or technology/info stuff to share with followers. Now that twitter posts directly to your FB account and many others, I suppose that's one way of sharing a random link that you think others would enjoy, quickly. I do however like the idea you are proposing.. tweeting about an update and anyone that uses your app getting that tweet is handy. But doesn't the update mechanism of droid already do this? I get status updates all that time for apps to update. I don't know that a tweet would do anything more/better than what I get now. About the only reason I could see it being better is if info about whats in the new update were provided with the tweet. Many updates, when you go to the market, dont say anything at all, so you're not sure why you're updating. The other issue is, how do you get people to follow your app tweets..especially given that droid already gives status updates for app updates? I do agree tho.. the market is VERY hard to find apps with. I don't know why so many people say the iPhone app store is better. I don't think either one are adapted to finding apps very easily. I can tell you, after talking to at least 2 dozen people with iphone and droids... you know how they find apps? They look at either the top 10 or so apps, usually under the free tab, or they search for a specific title. Most people will miss tons of potentially good apps that are further down in the list. I think what market needs is a much better drill down feature. Have paid, free, top picks, and a drill down so you can narrow down apps by multiple categories. iPhone could benefit from the same feature. On Mon, Jan 18, 2010 at 11:15 AM, dadical keyes...@gmail.com wrote: I've been thinking a lot lately about how to gain visibility for mobile apps. It's getting more and more difficult as an independent developer to get your application noticed among the piles of crap that are stacking up in the market. I think that we need some way to socialize our applications and capitalize on the momentum that we do happen to build from things like reviews, forum postings, etc. I've blogged about my ideas on how to make this happen here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-an... Thoughts? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.comandroid-developers%2bunsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Anyone noticing more uninstalls of their app than usual over last weekend/today?
Did anyone else see this get fixed? I saw a 10pt drop from about 45 percent installed to under 35 in less than a day. Things are slowly climbing back up, but I haven't seen any fix yet. On Dec 22 2009, 8:52 pm, Justin Giles jtgi...@gmail.com wrote: Here's an official answer: http://www.google.com/support/forum/p/Android+Market/thread?tid=4c575... On Tue, Dec 22, 2009 at 4:55 PM, dadical keyes...@gmail.com wrote: Same thing with my application, Screebl. Dropped by around 10% in one night. I've released lots of updates over the past few months, averaging about one/week, and have never seen this happen. Perhaps Google has changed the definition of an active installation? Disturbing as active install count is the most heavily weighted factor in calculating ranking in the market. pawpaw17 wrote: I released an upgrade to my app on Saturday night and since have noticed an unusual number of uninstalls. My app has been out for 8 months, and this is very unusual. Has anyone else noticed this? I'm wondering if there is anything related to the market, or a new OS version hitting, or contracts with one of the phones coming up? Any thoughts would be very appreciated. Thanks! pawpaw17 -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.comandroid-developers%2bunsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Anyone noticing more uninstalls of their app than usual over last weekend/today?
I update at the rate that my users demand. Less frequently, actually, for the reasons that you mention. It's an interesting balance to strike. I'm rated very high by users for my quick turn around on defect fixes and feature requests, but unless I have a serious issue to deal with I try to space releases at least 7-10 days apart. I would say that a satisfaction rating of 4.5 with 100s of ratings speaks in favor of my approach, but I'd be interested in hearing other opinions. On Dec 23, 9:35 am, Michael mbea...@gmail.com wrote: Not directing this just to you but your post reminded me of something. Although the ability to update often is there (especially when compared to the iphone system) please don't abuse it. I'm seeing articles/blogs/etc complaining about the annoyance of constant update requests from apps. Especially when each update has to be accepted one by one. I personally am starting to update less and less often because it's just plain annoying to update an app and then 5 days later here it comes again multiply that by 10, 20 or 100 apps and users will be more and more inclined to be running old versions of your software. On Dec 22, 5:55 pm, dadical keyes...@gmail.com wrote: I've released lots of updates over the past few months, averaging about one/week, and have never seen this happen. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Anyone noticing more uninstalls of their app than usual over last weekend/today?
Same thing with my application, Screebl. Dropped by around 10% in one night. I've released lots of updates over the past few months, averaging about one/week, and have never seen this happen. Perhaps Google has changed the definition of an active installation? Disturbing as active install count is the most heavily weighted factor in calculating ranking in the market. pawpaw17 wrote: I released an upgrade to my app on Saturday night and since have noticed an unusual number of uninstalls. My app has been out for 8 months, and this is very unusual. Has anyone else noticed this? I'm wondering if there is anything related to the market, or a new OS version hitting, or contracts with one of the phones coming up? Any thoughts would be very appreciated. Thanks! pawpaw17 -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Sorry Cant play this video.. trying to play video from youtube
I've had limited succes with the YouTube RTSP route. I've written a view that demonstrates one way to watch YouTube to a VideoView using an mp4 stream. I use this in my own products, and it works quite well. You can find information on that approach here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/51-polish-your-app-free-embeddable-android-youtube-activity Hope that helps. Valentino XM wrote: Emulator wont play video from youtube. can someone tell me if this code is ok package info.shouraig.com; import java.io.IOException; import android.app.Activity; import android.media.MediaPlayer; import android.net.Uri; import android.os.Bundle; import android.util.Log; import android.widget.MediaController; import android.widget.VideoView; public class XSO7 extends Activity { public final static String RTSP = rtsp://v4.cache2.c.youtube.com/ http://www.youtube.com/watch?v=8bmWwxixT0Yfeature=player_embedded;; VideoView videoViewXS07; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // ***VideoView to video element VideoView videoView = (VideoView) findViewById(R.id.videoViewXS07); Log.v(videoViewXSO7, ***Video to Play:: + RTSP); MediaController mc = new MediaController(this); mc.setAnchorView(videoView); Uri video = Uri.parse(RTSP); videoView.setMediaController(mc); videoView.setVideoURI(video); videoView.start(); MediaPlayer mp = new MediaPlayer(); try { mp.setDataSource(RTSP); } catch (IllegalArgumentException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalStateException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } try { mp.prepare(); } catch (IllegalStateException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } mp.start(); } } -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Results?
You forgot a twitter adc2 search. On Nov 30, 3:44 pm, justinh henderson.jus...@gmail.com wrote: Doing this every 4 minutes today has yielded nothing yet: *refresh email* *refresh official android blog* *refresh this group* *filter google results for Past hour on adc2 search tems* =) On Nov 30, 3:37 pm, Robert Green rbgrn@gmail.com wrote: According to their last email, today is the day. Has anyone received news about their ADC2 entry yet?- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] making notification icons that look good on white or black backgrounds
What's the best way to do this? My icons look like crap on the Hero. I don't see a way to name resources such that one set will be selected on the Hero, and another set on some other theme. If I'm an idiot and have just missed this, please point to the right place in the dev docs. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Saving service killing without startForeground
If you're running on a G1, and have even low-mid memory reqs, you are pretty much SOL. Android will kill off processes to free resources for new foreground activities, and services, particularly those running in a background process, will get axed first. Watch logcat in verbose mode to validate that this is indeed what is happening. Things are going to get even worse for you in 1.6. Donut itself consumes more memory leaving less room for your background service. Once a foreground activity is bound to your service, the service will be much less likely to get killed, so your only option in low-mem scenarios may be to check at binding time and see if your persistent connection is available, and reconnect if not. This approach is the best solution that I can think of for gracefully degrading the functionality of your service in low-mem situations. On Nov 20, 3:52 am, Ash ashutoshkagra...@gmail.com wrote: Hi!!, I am running a background Android Service as VoIP Framework which provides different VoIP services to different Android applications, (VoIP call, Video Call, etc). The service establishes a network connection with the Server(Service Provider) and does some initial handshake before it can start providing service to the Android applications, that’s why though of starting the service on BOOT_COMPLETED event. The problem is when the service gets started on BOOT_COMPLETED event, before even it finishes the initial network connection with server and handshaking, it gets killed by the system. I have tried using setForeground which improves the behavior a bit but still gets killed mid-way. I am working with old version 1.5 r3 of SDK and hence, cannot use startForeground. Is there a way out or another alternative available with SDK 1.5 r3? Thanks in advance, Ash -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: AccountManager and Google App Engine
I am also interested in this. If it is indeed possible to access the authentication token for the Google accounts associated with the phone itself, and to subsequently pass those to GAE so that backend functionality can proceed to use the various GAE and other Google services without requiring authentication, it seems like it's going to be a significant draw to GAE for Android devs. On Nov 5, 11:38 am, polyclefsoftware dja...@gmail.com wrote: I'm currently working on a project that uses Google App Engine as a server. I see that prior to the Android 2.0 SDK there was no way to directly access a user's Google Account information for the purposes of authentication. Do the new Account Manager APIs now make it possible to automatically log a user into aGAEapp? Is anyone else working on something like this? Are there any publicly available examples on how to accomplish this? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: com.google Authenticator for the new android.accounts.AccountManager API.
It would be really cool to have an optional and very simple reflective layer over the top of this, that would allow use in pre-2.0 scenarios. Unless of course it's possible to extract the AccountManager out of 2.0 and back-port to 1.5/1.6 On Nov 12, 7:11 am, Micah mi...@zoltu.net wrote: I am working on writing (and eventually releasing on the Android marketplace) a Google authenticator that will authenticate with Google and return a Google Auth Token (see:http://code.google.com/apis/gdata/docs/auth/overview.html). The ultimate goal is to have this authenticator mirror the behavior of the com.google authenticator that comes with the Motorola Droid. This will hopefully allow developers to have such an authenticator available to them on the SDK emulator as well as end-users with any phone running Android 2.0 that does not have the official Google version of the authenticator (ie: custom ROMs, future phones that don't get the full Google package, etc.). Also, since there is no word on how long before any phones besides the Motorola Droid get Android 2.0, this will hopefully allow developers to start leveraging the newAccountManagerAPIs sooner rather than later (ie: via the SDK emulator). I have created an open source project for this endeavor (see link below) that contains the first bit of work I have done on getting the Authenticator writen. If you are interested in contributing let me know, I am definitely open to the help or if you can offer insight as to the proper use of the newAccountManagerAPI or some place I am using it wrong it would be much appreciated. Worst case scenario I'll plug away at this in my free time and at least people can use it as a reference for writing their own Authenticators in the future. http://code.google.com/p/google-authenticator-for-android/ -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Low Memory: No more background processes.
Can someone describe the semantics behind this situation? What I'm seeing is that obviously my application process that has a running background service getting killed off, but in some scenarios it never seems to get restarted, or at least takes much longer to restart than I would have expected. Should I expect Android to restart the services when resources free up? Is this simply an example of the O/S thrashing in an attempt to process scheduled activity when memory is very very low? The scenario that I'm using to reproduce this right now is loading WebKit with a complex page on a G1 with low memory, watching my service (Screebl) die, and then exiting WebKit hoping that my service will start again, but it never seems to start. I've even started up a task manager and killed off everything that isn't necessary to free up memory. Eventually, some threshold is passed, and my service gets restarted. How does Android choose the precedence of which services to start as resources are freed? Can I increase the priority of my process? Here's the sequence of what I think are relevant entries in LogCat: Entries that I'm watching have to do with Screebl and are highlighted by spacing. 11-13 09:54:09.403: INFO/ActivityManager(76): Displayed activity com.android.browser/.BrowserActivity: 3516 ms (total 3516 ms) 11-13 09:54:14.633: DEBUG/dalvikvm(12559): GC freed 3156 objects / 238016 bytes in 194ms 11-13 09:54:16.493: DEBUG/skia(12541): purging 6K from font cache [1 entries] 11-13 09:54:18.403: DEBUG/dalvikvm(12541): GC freed 672 objects / 70208 bytes in 1856ms 11-13 09:54:19.013: WARN/InputManagerService(76): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub $pr...@43242248 (uid=10003 pid=12559) 11-13 09:54:21.843: INFO/ActivityManager(76): Process com.keyes.screebl.lite (pid 12529) has died. 11-13 09:54:21.973: DEBUG/Sensors(76): sensors=, real= 11-13 09:54:21.993: WARN/ActivityManager(76): Scheduling restart of crashed service com.keyes.screebl.lite/.ScreeblService in 5000ms 11-13 09:54:22.073: DEBUG/skia(12546): purging 6K from font cache [1 entries] 11-13 09:54:22.133: INFO/ActivityManager(76): Low Memory: No more background processes. 11-13 09:54:22.183: DEBUG/AKMD(56): Compass CLOSE 11-13 09:54:22.323: DEBUG/dalvikvm(12546): GC freed 902 objects / 88072 bytes in 245ms 11-13 09:54:27.093: INFO/ActivityManager(76): Start proc com.keyes.screebl.lite for service com.keyes.screebl.lite/.ScreeblService: pid=12578 uid=10004 gids= {3003, 1015} 11-13 09:54:27.424: DEBUG/skia(4605): purging 41K from font cache [5 entries] 11-13 09:54:27.863: DEBUG/dalvikvm(4605): GC freed 2992 objects / 160848 bytes in 435ms 11-13 09:54:27.923: INFO/dalvikvm(12578): Debugger thread not active, ignoring DDM send (t=0x41504e4d l=38) 11-13 09:54:28.003: INFO/dalvikvm(12578): Debugger thread not active, ignoring DDM send (t=0x41504e4d l=48) 11-13 09:54:29.343: DEBUG/SensorManager(12578): found sensor: AK8976A 3-axis Accelerometer, handle=0 11-13 09:54:29.343: DEBUG/SensorManager(12578): found sensor: AK8976A 3-axis Magnetic field sensor, handle=1 11-13 09:54:29.343: DEBUG/SensorManager(12578): found sensor: AK8976A Orientation sensor, handle=2 11-13 09:54:29.343: DEBUG/SensorManager(12578): found sensor: AK8976A Temperature sensor, handle=3 11-13 09:54:29.373: DEBUG/AKMD(56): Compass OPEN 11-13 09:54:29.393: DEBUG/Sensors(76): sensors=0004, real=0004 11-13 09:54:32.223: DEBUG/skia(76): purging 103K from font cache [13 entries] 11-13 09:54:32.603: DEBUG/dalvikvm(76): GC freed 15676 objects / 870880 bytes in 382ms 11-13 09:54:32.893: DEBUG/SearchDialog(76): launching Intent { act=android.intent.action.VIEW dat=http://www.android.com/market/ flg=0x1000 cmp=com.android.browser/.BrowserActivity (has extras) } 11-13 09:54:32.903: INFO/SearchDialog(76): Starting (as ourselves) http://www.android.com/market/#Intent;action=android.intent.action.VIEW;launchFlags=0x1000;component=com.android.browser/.BrowserActivity;S.user_query=an;S.query=http%3A%2F%2Fwww.android.com%2Fmarket%2F;end 11-13 09:54:32.933: INFO/ActivityManager(76): Starting activity: Intent { act=android.intent.action.VIEW dat=http://www.android.com/ market/ flg=0x1000 cmp=com.android.browser/.BrowserActivity (has extras) } 11-13 09:54:33.163: WARN/IInputConnectionWrapper(76): showStatusIcon on inactive InputConnection 11-13 09:54:33.303: DEBUG/dalvikvm(288): GC freed 524 objects / 36688 bytes in 114ms 11-13 09:54:34.673: DEBUG/dalvikvm(76): threadid=13: bogus mon 1+00; adjusting 11-13 09:54:34.953: DEBUG/dalvikvm(12559): GC freed 5804 objects / 466352 bytes in 125ms 11-13 09:54:37.893: DEBUG/dalvikvm(12559): GC freed 5137 objects / 248968 bytes in 159ms 11-13 09:54:38.453: DEBUG/dalvikvm(4639): GC freed 15 objects / 464 bytes in 264ms 11-13 09:54:38.993: DEBUG/dalvikvm(12559): GC freed 4727 objects / 218336 bytes in 129ms 11-13 09:54:39.973: DEBUG/dalvikvm(12559): GC freed 4038 objects / 198104 bytes
[android-developers] Re: ADC2 Judging App FC
Yeah I'm happy on the lack of 2.0 as well. I just wish that there was a way that G could be a bit more forthcoming about things. I understand silence and the benefits that go with it, but the entire Android development experience is going to give me an ulcer before it's over :). So far I don't like the just wait, little one role that I have to play as a developer working on Android. Apple is no better. Big software companies in general suck at communication, and they do it by choice. I imagine that I'm beginning to look a bit more like Mel Gibson in one of his crazy-roles every day... On Nov 10, 5:49 pm, String sterling.ud...@googlemail.com wrote: On Nov 10, 10:36 pm, CraigsRace craig...@gmail.com wrote: Based on the comments left on Phandroid (http://phandroid.com/ 2009/11/07/adc2-top-200-announced-round-2-starts/), I think the judging app is not available to Android 2.0 users. That's correct. I got to wondering about that myself last night, and tried to install theADC2judging app on a 2.0 emulator instance. It failed with an incompatible SDK version. I assume they've set android:maxSdkVersion=4 in the manifest. To which I can only say, Thank You Google! MyADC2entry is seriously broken on 2.0 - through no fault of my own, I might add - so I'm personally quite glad that judging is limited to 1.x devices. I'll bet I'm not the only one, either. String -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: AsyncTaskPool | Tutorial
One strange thing that I've seen in my usage of AsycTask is that the Thread associated with an AsyncTask seems to live on after the task has completed. It appears to be in some kind of idle/finalized state, but the resources associated with the Thread itself remain visible in the debugger. As far as I can tell, the task has completed and exited normally. Subsequent invocations of the task seem to create a new thread in the process. Is this some kind of optimization? A leak? A misuse of AsyncTask? I've never spent a huge amount of time on figuring it out, as the use case for me was fairly fringe, but I've wondered about it... On Nov 11, 11:25 am, Romain Guy romain...@google.com wrote: Please consider the implications of this: does it even make sense to have 20+ threads (on a single CPU device) updating the UI at once? That is NOT the purpose of AsyncTask. Also, since Donut, the limit of enqueued tasks in AsyncTask is 128, not 20. So AsyncTask has a maximum of 10 threads running concurrently and can hold up to 128 tasks waiting for a thread to be freed in the pool. So basically AsyncTask does exactly what you are trying to do here. On Wed, Nov 11, 2009 at 1:02 AM, Atif Gulzar atif.gul...@gmail.com wrote: Android has a limit to rum at MAX 20 concurrent AsyncTask. To handle this limit I created a AsyncTaskPool.java utility. Its not a pool in true sense but a kind of scheduler. I am posting it here for your comments and it may help others. import java.util.ArrayList; import android.os.AsyncTask; public class AsyncTaskPool { private int poolSize; private ArrayListAsyncTask currentTasks = new ArrayListAsyncTask(); private ArrayListObject pendingTasks = new ArrayListObject(); /** * @param poolSize * : it should be less than 20. As Android only supports max. 20 concurrent Asynch tasks. */ public AsyncTaskPool(int poolSize) { this.poolSize = poolSize; } public int getPoolSize() { return poolSize; } public boolean addTask(AsyncTask asyncTask, Object... params) { if (currentTasks.size() poolSize) { currentTasks.add(asyncTask); if (params != null) asyncTask.execute(params); else asyncTask.execute(); } else { Object[] task = new Object[2]; task[0] = asyncTask; task[1] = params; pendingTasks.add(task); } return true; } public boolean removeTask(AsyncTask task) { if(currentTasks.contains(task)) { currentTasks.remove(task); return true; } return false; } //Add this method in the onPostExecute method of AsyncTask public boolean removeAndExecuteNext(AsyncTask atask) { removeTask(atask); if (pendingTasks.size()0 currentTasks.size()poolSize) { Object [] task = (Object []) pendingTasks.get(0); pendingTasks.remove(task); addTask((AsyncTask)task[0], (Object[])task[1]); } return false; } } -- Best Regards, Atif Gulzar I Unicode, ɹɐzlnƃ ɟıʇɐ -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- Romain Guy Android framework engineer romain...@android.com Note: please don't send private questions to me, as I don't have time to provide private support. All such questions should be posted on public forums, where I and others can see and answer them- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Judging App FC
That's exactly what it is. I have confirmation from a Google engineer that there were updates to the market that caused things to break. Same engineer also unofficially said that things are unlikely to be fixed, as they are getting lots of votes anyway, and that someone further up the foodchain had determined that it wouldn't adversely affect the outcome of the contest. I'm curious if Droid users (Android 2.0) are having the same experience, or if everything is fine there over at VZW... On Nov 10, 9:41 am, D.Garcia kfgo...@gmail.com wrote: For the records, it's also happening to me. G1 with recently updated Android 1.6. Could be that ADC2 Judging application doesn't like the new market application? On Mon, Nov 9, 2009 at 23:00, CraigsRace craig...@gmail.com wrote: I did also get stuck once where it just refused to install the app (opening market / rebooting / ... didn't work) and all I could do was press skip. Luckily, there are only 200 apps, so after a few days of judging, the app came around again. On Nov 10, 11:53 am, gjs garyjamessi...@gmail.com wrote: Hi, Actually I reboot the phone every day ( to conserve battery overnight ) and I only have about four market apps installed of which maybe one uses background services sometimes (rarely). When I check internal phone storage it says I have 41.9MB available ( and 395MB free on sdcard ) so I do not think it is a lack of memory issue... I still just get FC each time run the ADC2 app, as I described, even immediately after reboot. Regards On Nov 9, 9:54 pm, Nyll codingcave...@googlemail.com wrote: I think the problem is related to your phone running low on memory and a background service/activity needed by the ADC2 app gets killed to reclaim memory. If you restart your phone, you should be able to review again without the force closes (at least until you run out of memory again :) On Nov 8, 10:27 pm, gjs garyjamessi...@gmail.com wrote: Hi, I'm using t-mobile g1 with (production) Android 1.6, EVERY time I have tried to use the updated ADC2 judging app, for the final round, I get - Sorry! The application Market (process com.android.vending) has stopped unexpectedly. Please try again. [Force close] - after pressing install button or the install manually button for the presented app, I have also tried starting the Market app and rebooting but I still continue to get the same error. I have NOT been able to review/judge a single adc2 final round app. I have NOT tried pressing the skip menu button, nor will I as I want to review the 1st app presented... Following is the dubug output and this is after I have confirmed that the Browser app is able to connect to the internet correctly (using wifi). Regards 11-09 08:47:52.623: INFO/Process(400): Sending signal. PID: 400 SIG: 9 11-09 08:47:52.656: INFO/WindowManager(76): WIN DEATH: Window{432f16b0 com.android.vending/com.android.vending.AssetInfoActivity paused=false} 11-09 08:47:52.656: INFO/ActivityManager(76): Process com.android.vending (pid 400) has died. 11-09 08:47:52.666: INFO/WindowManager(76): WIN DEATH: Window{433d21f0 Attention paused=false} 11-09 08:47:52.716: INFO/ActivityManager(76): Start proc com.android.vending for activity com.android.vending/.AssetInfoActivity: pid=446 uid=10016 gids={3003} 11-09 08:47:52.836: INFO/dalvikvm(446): Debugger thread not active, ignoring DDM send (t=0x41504e4d l=38) 11-09 08:47:52.876: INFO/dalvikvm(446): Debugger thread not active, ignoring DDM send (t=0x41504e4d l=42) 11-09 08:47:52.956: INFO/ActivityThread(446): Publishing provider com.android.vending.SuggestionsProvider: com.android.vending.SuggestionsProvider 11-09 08:47:53.376: WARN/ActivityManager(76): Activity pause timeout for HistoryRecord{433760a0 com.android.vending/.AssetInfoActivity} 11-09 08:47:53.686: DEBUG/dalvikvm(446): GC freed 3766 objects / 297680 bytes in 110ms 11-09 08:47:54.276: INFO/ActivityManager(76): Displayed activity com.android.vending/.AssetInfoActivity: 1612 ms (total 1612 ms) 11-09 08:47:55.546: WARN/dalvikvm(446): threadid=19: thread exiting with uncaught exception (group=0x4001da28) 11-09 08:47:55.546: ERROR/AndroidRuntime(446): Uncaught handler: thread AsyncTask #1 exiting due to uncaught exception 11-09 08:47:55.556: ERROR/AndroidRuntime(446): java.lang.RuntimeException: An error occured while executing doInBackground() 11-09 08:47:55.556: ERROR/AndroidRuntime(446): at android.os.AsyncTask$3.done(AsyncTask.java:200) 11-09 08:47:55.556: ERROR/AndroidRuntime(446): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java: 234) 11-09 08:47:55.556: ERROR/AndroidRuntime(446): at
[android-developers] Re: networkInfo.getSubtype() for 3G on Verizon/DROID
Thanks for this. Wouldn't EDGE be considered 2g though? Or maybe 2.5? On Nov 9, 4:06 pm, String sterling.ud...@googlemail.com wrote: FYI, the DROID user tells me I've got it fixed now. What I did was to include every subtype which isn't pure 2G in my test: ((netSubtype == TelephonyManager.NETWORK_TYPE_UMTS) || (netSubtype == TelephonyManager.NETWORK_TYPE_1xRTT) || (netSubtype == TelephonyManager.NETWORK_TYPE_EDGE) || (netSubtype == TelephonyManager.NETWORK_TYPE_EVDO_0) || (netSubtype == TelephonyManager.NETWORK_TYPE_EVDO_A) || (netSubtype == TelephonyManager.NETWORK_TYPE_HSDPA) || (netSubtype == TelephonyManager.NETWORK_TYPE_HSPA) || (netSubtype == TelephonyManager.NETWORK_TYPE_HSUPA))) Hope that helps someone, String On Nov 9, 7:06 pm, String sterling.ud...@googlemail.com wrote: I'm getting a user error report that my app thinks their DROID handset isn't connected to 3G, and after getting a logfile from him I think I've narrowed it down to the return value from NetworkInfo.getSubtype (). The code in question is the following, based on Jeff Sharkey's I/O 2009 talk Coding for Battery Life (see Slide 10 athttp://dl.google.com/io/2009/pres/W_0300_CodingforLife-BatteryLifeTha...). NetworkInfo networkInfo = CONN_MGR.getActiveNetworkInfo(); int netType = networkInfo.getType(); int netSubtype = networkInfo.getSubtype(); if (netType == ConnectivityManager.TYPE_WIFI) { // Wifi connection connected = true; } else if ((netType == ConnectivityManager.TYPE_MOBILE) (netSubtype == TelephonyManager.NETWORK_TYPE_UMTS) !TEL_MGR.isNetworkRoaming()) { // 3G connection connected = true; } My strong suspicion is the check against TelephonyManager.NETWORK_TYPE_UMTS, that either Verizon or DROID is returning a different value for its 3G network. My guess is either NETWORK_TYPE_EVDO_0 or NETWORK_TYPE_EVDO_A, but I'd like to have more than a guess here. Anyone have direct knowledge, or a better position to guess from? I know Jeff often monitors this group. Jeff, any suggestions, given this was your code to start with? ;^) Thanks, String- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: Does ADC2 Entry DroCap Exploit a Root Hack?
Google needs to disqualify this application, and let one in that conforms to the rules. Sheesh... On Nov 7, 8:22 am, nEx.Software email.nex.softw...@gmail.com wrote: The only way to take screen captures on an Android device requires root. This application made no indication that it required root, did not request root permission from me, and proceeded to attempt to gain root through the use of a vulnerable exploit path (which has since been patched in Android 1.6, and the Motorola CLIQ; however, I cannot say about whether this is true on other Android 1.5 devices). I had this app to review in the Round 1 of voting (I thought I flagged it as inappropriate, but maybe not), and got it again in Round 2, which disappointed me. I did not flag it as inappropriate in the second round because I decided that if Google allowed an exploit to go through into Round 2, who was I to argue. On Nov 6, 9:54 pm, dadical keyes...@gmail.com wrote: Just curious if this app does what it appears to do, in effect gaining root access to the device. -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Judging App FC
Oy. This thing is a freaking mess at this point. Nothing will install (downloads, but doesn't actually install), and manual installs FC. Don't know about others, but I'm no longer able to participate in judging of ADC2. I sent G all of the stack traces being thrown, any chance of fixing this, or is the role of user judging just going to be revisited/ eliminated? On Nov 6, 12:37 pm, dadical keyes...@gmail.com wrote: Is anyone else seeing problems with the ADC2 judging app throwing a FC when trying to install manually? It's a big miss, since the requirement to install manually happens VERY frequently. Only way out is to skip and hope that the next app works. The FC is actually being thrown from com.android.vending I'm on a G1, non-root, T-Mobile carrier, with 1.6 installed, EDGE, with WiFi enabled (and connected). -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Results Post
Screebl's into the final round in Productivity/Tools. http://www.keyeslabs.com/projects/screebl. All of my conspiracy theories about what was happening behind the Google blast door seem to be false :). I'm pleasantly surprised to say the least... On Nov 5, 7:56 pm, admin.androidsl...@googlemail.com admin.androidsl...@googlemail.com wrote: Photo BURST through to round 2 in media category - also in my spam mail. Nice surprise, fingers crossed for the next round and good luck to all ... http://www.androidslide.com/photoburst -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Results Post
Screebl's in the final round (http://keyeslabs.com/joomla/index.php/ projects/screebl) in the Productivity/Tools category. Looks like all of my conspiracy theories about what's been happening behind the Google blast door have been false :). I'm pleasantly surprised to say the least... On Nov 5, 3:28 pm, GodsMoon godsm...@gmail.com wrote: Since the Android Challenge Group seems to be closed I'll post here. What results did you get from Google? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Results Post
Screebl's in the final round in the Productivity/Tools category. Looks like all of my conspiracy theories about what's been happening behind the Google blast door have been false :). I'm pleasantly surprised to say the least... http://keyeslabs.com/joomla/index.php/projects/screebl On Nov 5, 3:28 pm, GodsMoon godsm...@gmail.com wrote: Since the Android Challenge Group seems to be closed I'll post here. What results did you get from Google? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: ADC2 Results Post
Screebl's in the final round in the Productivity/Tools category. Looks like all of my conspiracy theories about what's been happening behind the Google blast door have been false :). I'm pleasantly surprised to say the least... http://keyeslabs.com/joomla/index.php/projects/screebl On Nov 5, 3:28 pm, GodsMoon godsm...@gmail.com wrote: Since the Android Challenge Group seems to be closed I'll post here. What results did you get from Google? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: The mysterious disappearing progress bar...
Anyone have a clue? I'm guessing it has something to do with changes in Donut related to buffering or optimizing display of Z-Order of views in relative layout, but maybe it's something simpler... I'm stacking: LinearLayout RelativeLayout VideoView (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) ProgressBar (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) TextView (WRAP_CONTENT, WRAP_CONTENT, BELOW(my progress bar)) I was counting on relative layout displaying the progress bar and the text view on top of the video view because they were added to the layout after the video view. That worked in 1.5, but stopped since 1.6. On Nov 2, 11:36 pm, dadical keyes...@gmail.com wrote: The following code used to render an indeterminate progress bar with a message below, all on top of a video view. Once the video was ready, the message and the progress bar would be made invisible. Ever since cupcake, the progress bar doesn't show at all. Anyone have any clues? dk private void setupView() { LinearLayout lLinLayout = new LinearLayout(this); lLinLayout.setId(1); lLinLayout.setOrientation(LinearLayout.VERTICAL); lLinLayout.setGravity(Gravity.CENTER); lLinLayout.setBackgroundColor(Color.BLACK); LayoutParams lLinLayoutParms = new LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lLinLayout.setLayoutParams(lLinLayoutParms); this.setContentView(lLinLayout); RelativeLayout lRelLayout = new RelativeLayout(this); lRelLayout.setId(2); lRelLayout.setGravity(Gravity.CENTER); lRelLayout.setBackgroundColor(Color.BLACK); android.widget.RelativeLayout.LayoutParams lRelLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lRelLayout.setLayoutParams(lRelLayoutParms); lLinLayout.addView(lRelLayout); mVideoView = new VideoView(this); mVideoView.setId(3); android.widget.RelativeLayout.LayoutParams lVidViewLayoutParams = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lVidViewLayoutParams.addRule(RelativeLayout.CENTER_IN_PARENT); mVideoView.setLayoutParams(lVidViewLayoutParams); lRelLayout.addView(mVideoView); mProgressBar = new ProgressBar(this); mProgressBar.setId(4); android.widget.RelativeLayout.LayoutParams lProgressBarLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressBarLayoutParms.addRule(RelativeLayout.CENTER_IN_PARENT); mProgressBar.setLayoutParams(lProgressBarLayoutParms); lRelLayout.addView(mProgressBar); mProgressMessage = new TextView(this); mProgressMessage.setId(5); android.widget.RelativeLayout.LayoutParams lProgressMsgLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressMsgLayoutParms.addRule (RelativeLayout.CENTER_HORIZONTAL); lProgressMsgLayoutParms.addRule(RelativeLayout.BELOW, 4); mProgressMessage.setLayoutParams(lProgressMsgLayoutParms); mProgressMessage.setTextColor(Color.LTGRAY); mProgressMessage.setTextSize(TypedValue.COMPLEX_UNIT_PT, 8); mProgressMessage.setText(...); lRelLayout.addView(mProgressMessage); } -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: The mysterious disappearing progress bar...
Hah! The style for my app is the light styled theme, so I bet that makes the progress bar dark. Sheesh. I'll check that out... thanks for the tip. On Nov 4, 10:19 am, Mika mika.ristim...@gmail.com wrote: I had a similar problem and it was just because the default progressbar had changed in Donut and it was all white. So I had a white progressbar in a white background. Not sure if that's your problem though. -Mika On Nov 4, 5:02 pm, dadical keyes...@gmail.com wrote: Anyone have a clue? I'm guessing it has something to do with changes in Donut related to buffering or optimizing display of Z-Order of views in relative layout, but maybe it's something simpler... I'm stacking: LinearLayout RelativeLayout VideoView (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) ProgressBar (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) TextView (WRAP_CONTENT, WRAP_CONTENT, BELOW(my progress bar)) I was counting on relative layout displaying the progress bar and the text view on top of the video view because they were added to the layout after the video view. That worked in 1.5, but stopped since 1.6. On Nov 2, 11:36 pm, dadical keyes...@gmail.com wrote: The following code used to render an indeterminate progress bar with a message below, all on top of a video view. Once the video was ready, the message and the progress bar would be made invisible. Ever since cupcake, the progress bar doesn't show at all. Anyone have any clues? dk private void setupView() { LinearLayout lLinLayout = new LinearLayout(this); lLinLayout.setId(1); lLinLayout.setOrientation(LinearLayout.VERTICAL); lLinLayout.setGravity(Gravity.CENTER); lLinLayout.setBackgroundColor(Color.BLACK); LayoutParams lLinLayoutParms = new LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lLinLayout.setLayoutParams(lLinLayoutParms); this.setContentView(lLinLayout); RelativeLayout lRelLayout = new RelativeLayout(this); lRelLayout.setId(2); lRelLayout.setGravity(Gravity.CENTER); lRelLayout.setBackgroundColor(Color.BLACK); android.widget.RelativeLayout.LayoutParams lRelLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lRelLayout.setLayoutParams(lRelLayoutParms); lLinLayout.addView(lRelLayout); mVideoView = new VideoView(this); mVideoView.setId(3); android.widget.RelativeLayout.LayoutParams lVidViewLayoutParams = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lVidViewLayoutParams.addRule(RelativeLayout.CENTER_IN_PARENT); mVideoView.setLayoutParams(lVidViewLayoutParams); lRelLayout.addView(mVideoView); mProgressBar = new ProgressBar(this); mProgressBar.setId(4); android.widget.RelativeLayout.LayoutParams lProgressBarLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressBarLayoutParms.addRule(RelativeLayout.CENTER_IN_PARENT); mProgressBar.setLayoutParams(lProgressBarLayoutParms); lRelLayout.addView(mProgressBar); mProgressMessage = new TextView(this); mProgressMessage.setId(5); android.widget.RelativeLayout.LayoutParams lProgressMsgLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressMsgLayoutParms.addRule (RelativeLayout.CENTER_HORIZONTAL); lProgressMsgLayoutParms.addRule(RelativeLayout.BELOW, 4); mProgressMessage.setLayoutParams(lProgressMsgLayoutParms); mProgressMessage.setTextColor(Color.LTGRAY); mProgressMessage.setTextSize(TypedValue.COMPLEX_UNIT_PT, 8); mProgressMessage.setText(...); lRelLayout.addView(mProgressMessage); }- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: The mysterious disappearing progress bar...
yup, that was it. My activity had a background color of black, but my application had set the theme to lite. I simply set the theme of the activity to black (the background was black anyway) and the progress bar reappeared. Thanks again! dk On Nov 4, 11:55 am, dadical keyes...@gmail.com wrote: Hah! The style for my app is the light styled theme, so I bet that makes the progress bar dark. Sheesh. I'll check that out... thanks for the tip. On Nov 4, 10:19 am, Mika mika.ristim...@gmail.com wrote: I had a similar problem and it was just because the default progressbar had changed in Donut and it was all white. So I had a white progressbar in a white background. Not sure if that's your problem though. -Mika On Nov 4, 5:02 pm, dadical keyes...@gmail.com wrote: Anyone have a clue? I'm guessing it has something to do with changes in Donut related to buffering or optimizing display of Z-Order of views in relative layout, but maybe it's something simpler... I'm stacking: LinearLayout RelativeLayout VideoView (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) ProgressBar (WRAP_CONTENT, WRAP_CONTENT, CENTER_IN_PARENT) TextView (WRAP_CONTENT, WRAP_CONTENT, BELOW(my progress bar)) I was counting on relative layout displaying the progress bar and the text view on top of the video view because they were added to the layout after the video view. That worked in 1.5, but stopped since 1.6. On Nov 2, 11:36 pm, dadical keyes...@gmail.com wrote: The following code used to render an indeterminate progress bar with a message below, all on top of a video view. Once the video was ready, the message and the progress bar would be made invisible. Ever since cupcake, the progress bar doesn't show at all. Anyone have any clues? dk private void setupView() { LinearLayout lLinLayout = new LinearLayout(this); lLinLayout.setId(1); lLinLayout.setOrientation(LinearLayout.VERTICAL); lLinLayout.setGravity(Gravity.CENTER); lLinLayout.setBackgroundColor(Color.BLACK); LayoutParams lLinLayoutParms = new LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lLinLayout.setLayoutParams(lLinLayoutParms); this.setContentView(lLinLayout); RelativeLayout lRelLayout = new RelativeLayout(this); lRelLayout.setId(2); lRelLayout.setGravity(Gravity.CENTER); lRelLayout.setBackgroundColor(Color.BLACK); android.widget.RelativeLayout.LayoutParams lRelLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lRelLayout.setLayoutParams(lRelLayoutParms); lLinLayout.addView(lRelLayout); mVideoView = new VideoView(this); mVideoView.setId(3); android.widget.RelativeLayout.LayoutParams lVidViewLayoutParams = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lVidViewLayoutParams.addRule(RelativeLayout.CENTER_IN_PARENT); mVideoView.setLayoutParams(lVidViewLayoutParams); lRelLayout.addView(mVideoView); mProgressBar = new ProgressBar(this); mProgressBar.setId(4); android.widget.RelativeLayout.LayoutParams lProgressBarLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressBarLayoutParms.addRule(RelativeLayout.CENTER_IN_PARENT); mProgressBar.setLayoutParams(lProgressBarLayoutParms); lRelLayout.addView(mProgressBar); mProgressMessage = new TextView(this); mProgressMessage.setId(5); android.widget.RelativeLayout.LayoutParams lProgressMsgLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressMsgLayoutParms.addRule (RelativeLayout.CENTER_HORIZONTAL); lProgressMsgLayoutParms.addRule(RelativeLayout.BELOW, 4); mProgressMessage.setLayoutParams(lProgressMsgLayoutParms); mProgressMessage.setTextColor(Color.LTGRAY); mProgressMessage.setTextSize(TypedValue.COMPLEX_UNIT_PT, 8); mProgressMessage.setText(...); lRelLayout.addView(mProgressMessage); }- Hide quoted text - - Show quoted text -- Hide quoted text - - Show quoted text - -- You received this message because you are subscribed to the Google Groups
[android-developers] Re: adc 2 Second Round
That's one of the stupidest things I've ever heard. Yes, G has made a royal stinking mess of ADC2. Yes, G has alienated their hardcore small-to-medium-sized dev teams by being silent and frustrating the hell out everyone Yes, G has done the worst job at coordinating major releases of a platform that I've seen in a long time from anyone Yes, G overshot their dev support infrastructure by probably a year or more But, have they put themselves in legal jeopardy from a few whiny contestants that most likely form their legal opinions by watching Matlock and L.A. Law reruns? I think not. On Nov 4, 6:56 pm, nathabhis...@gmail.com nathabhis...@gmail.com wrote: I bet Google is consulting their lawyers. Thats what is taking so much time. Whatever they do, whatever they decide about 1.6/2.0 updates in middle of contest - you will soon see lawsuits filed against them. They are really screwed this time. -abhi On Oct 28, 1:04 pm, maennj maan.naj...@gmail.com wrote: I'm sure they have good reason about it. There are plenty of reasons that can delay the process. Maybe they were trying to find a solution to rectify the damage done by Android 1.6 release. Maybe it's better for us all if they're reviewing all apps, because honestly, end user community is not reliable enough to make judgments especially with 100 reviews per app. Look at some comments on every successful or unsuccessful application in Market, you will see what I mean, subjectivity hurts us all. I would give Google the benefit of the doubt. Good luck everyone. On Oct 28, 1:54 pm, niko20 nikolatesl...@yahoo.com wrote: This is why I didn't bother withADC2and also why I'm always wary of any other people that come around these forums proposing to expose our apps to the world. Because it's always just talk, and I have yet to see results from any of them. It's like they all jumped on the android bandwagon but don't know what the heck they are doing/talking about. It gets old being disappointed all the time with it. -niko On Oct 28, 12:43 pm, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: comedy Hey, they haven't contacted me yet and I'm sure at least one of my apps will make it into the next round... /comedy -John Coryat Radar Now! What Zip Code? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: adc 2 Second Round
You have a better chance than most. I like your stuff John. Seriously though, black helicopters aside, I'm convinced that G has done the NDA thing for round 2, and given a chance to update to 1.6/2.0. Most people can keep their mouths shut for a few weeks if given a 1-in-7 chance at winning at least $25K plus a truck-load of publicity. That being said, if you watch this group closely, their have been hints that less-than-sober devs have left to support my theory. On Oct 28, 12:43 pm, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: comedy Hey, they haven't contacted me yet and I'm sure at least one of my apps will make it into the next round... /comedy -John Coryat Radar Now! What Zip Code? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Anyone know what happened to Cyrket?
I love, love, love that application, and have been missing it terribly since it went offline about a week ago. Google's lack of any kind of real console for devs was made less painful by cyrket. Anyone have any clues as to where it went and if it will be back? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] The mysterious disappearing progress bar...
The following code used to render an indeterminate progress bar with a message below, all on top of a video view. Once the video was ready, the message and the progress bar would be made invisible. Ever since cupcake, the progress bar doesn't show at all. Anyone have any clues? dk private void setupView() { LinearLayout lLinLayout = new LinearLayout(this); lLinLayout.setId(1); lLinLayout.setOrientation(LinearLayout.VERTICAL); lLinLayout.setGravity(Gravity.CENTER); lLinLayout.setBackgroundColor(Color.BLACK); LayoutParams lLinLayoutParms = new LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lLinLayout.setLayoutParams(lLinLayoutParms); this.setContentView(lLinLayout); RelativeLayout lRelLayout = new RelativeLayout(this); lRelLayout.setId(2); lRelLayout.setGravity(Gravity.CENTER); lRelLayout.setBackgroundColor(Color.BLACK); android.widget.RelativeLayout.LayoutParams lRelLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT); lRelLayout.setLayoutParams(lRelLayoutParms); lLinLayout.addView(lRelLayout); mVideoView = new VideoView(this); mVideoView.setId(3); android.widget.RelativeLayout.LayoutParams lVidViewLayoutParams = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lVidViewLayoutParams.addRule(RelativeLayout.CENTER_IN_PARENT); mVideoView.setLayoutParams(lVidViewLayoutParams); lRelLayout.addView(mVideoView); mProgressBar = new ProgressBar(this); mProgressBar.setId(4); android.widget.RelativeLayout.LayoutParams lProgressBarLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressBarLayoutParms.addRule(RelativeLayout.CENTER_IN_PARENT); mProgressBar.setLayoutParams(lProgressBarLayoutParms); lRelLayout.addView(mProgressBar); mProgressMessage = new TextView(this); mProgressMessage.setId(5); android.widget.RelativeLayout.LayoutParams lProgressMsgLayoutParms = new android.widget.RelativeLayout.LayoutParams (ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); lProgressMsgLayoutParms.addRule (RelativeLayout.CENTER_HORIZONTAL); lProgressMsgLayoutParms.addRule(RelativeLayout.BELOW, 4); mProgressMessage.setLayoutParams(lProgressMsgLayoutParms); mProgressMessage.setTextColor(Color.LTGRAY); mProgressMessage.setTextSize(TypedValue.COMPLEX_UNIT_PT, 8); mProgressMessage.setText(...); lRelLayout.addView(mProgressMessage); } -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
Re: [android-developers] Re: Anyone know what happened to Cyrket?
I've gotten some indication in private responses that the most likely cause is suspension of the author's account. That makes sense, as I've always assumed that the app consisted of sniffed and then reverse- engineered app store protocols. Kinda stinks that G would do that, particularly since they don't currently have anything to offer that fills that obvious need. Maybe they're getting ready to release a credible dev console? Michael Cheselka wrote: Hello, Anyword on why it's down? Regards, Michael Cheselka 650-488-4820 On Mon, Nov 2, 2009 at 19:49, Robert Green rbgrn@gmail.com wrote: I also used cyrket almost daily to watch for comments. Androlib works but seems to be behind in app versions and icons and such. I don't trust it as much. I'd really like cyrket back. Using the device to check 6 applications of comments daily isn't much fun. On Nov 2, 8:18 pm, Brad Fullmer bradfull...@gmail.com wrote: It's irritating that there is no way to view comments or mark as spam from the market developer console. I have an ADP only so I cannot see my paid apps on the market. I've been getting by w/Cyrket, but now I'm in the dark. On Nov 2, 4:46 pm, sm1 sergemas...@gmail.com wrote: androidlib does not list all apps when searching for a specific developer. serge On Nov 2, 8:21 pm, Streets Of Boston flyingdutc...@gmail.com wrote: www.androlib.comisstillup. On Nov 2, 5:50 pm, dadical keyes...@gmail.com wrote: I love, love, love that application, and have been missing it terribly since it went offline about a week ago. Google's lack of any kind of real console for devs was made less painful by cyrket. Anyone have any clues as to where it went and if it will be back? -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: NEEDED: Apps to feature on Sprint Microsite
More evidence... I've suspected that G selected their ADC2 r2 candidates about then, offered them an NDA (and a phone?) and a chance to upgrade to android 2.0. Nothing else that I can think of would explain the lame silence. On Oct 30, 6:36 pm, Chister Nordvik cnord...@gmail.com wrote: Just wanted to chime in here since there was some negative comments about Android developer programs. We actually got a free Android device about 2 weeks ago from one of these developer programs in exchange for a NDA. It could happen to you :-) -Christer -- You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en
[android-developers] Re: adc 2 Second Round
My guess is that if you haven't received a notification from Google about being in round two by now, you didn't make it. I'd wager that they gave an upgrade period to devs that made the cut so that they could deal with the fairly significant issues introduced in the mid- contest upgrade to Donut. Messy, messy. Lots of balls in the air and too many jugglers it seems... iPaul Pro wrote: Google said that the first round would be entirely decided by user voting. Are we to believe that they are reviewing every rating by hand? This is a joke. The finalists will obviously be hand-chosen, disregarding the first round results. This may seem like an unfounded accusation, but how long does it take to tally votes. This is Google we're talking about here. Every step of this competition has been a mystery. Does Google think they can just promise the millions and disregard the process, again? One would expect that developers that have submitted apps to ADC2 would have received at least a confirmation email with submission, an explanation of delays, some hint of timing. But no. There has literally been ZERO communication from Google to the developers that have submitted. The only information we have been given is the currently public information on the ADC2 info site and maybe 2 blog posts. This is a joke. Expect to see only the big name apps in the second round, that you are already familiar with. For many developers, who devoted their entire summer to a project for ADC, the overall experience has been a serious disappointment. Just my 2¢ Paul On Oct 26, 2:11 pm, Tumaru tum...@gmail.com wrote: i was wondering when the secound round would start, i've been waiting for what seems like weeks now for something that was said to be only a couple of days away. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Google: please change your release process
Can you imagine the huge stinking mess that ADC2 is going to be if G does ANOTHER o/s upgrade in the middle of the contest? Perhaps that's the holdup -- letting the round-two contestants upgrade to Eclair before the next round of judging begins. If that's the case, round two wouldn't begin until Android 2.0 was deployed. If developer frustration and alienation is a measure of platform maturity, Android is quickly growing up! :) Disconnect wrote: ..or they could go the other way and saddle you with 2.0 (on cdma no less) before even OHA members get access to it. (At this point, reliable rumours have the release about 2 weeks out. Actual ads have it NLT end of November, probably much sooner - if you say Coming in November you don't make friends by waiting until the 30th.) On Mon, Oct 26, 2009 at 12:04 PM, Peter Jeffe pje...@gmail.com wrote: The recent experience with the 1.6 release underscores the need for Google to take a different approach to future releases. No matter how hard you try to make an OS backward-compatible, or an application forward-compatible, there will always be breaking changes in an OS release. That is why OS vendors typically give developers a good amount of time to test on upcoming releases before they're made generally available. It's pretty clear that Android has reached the stage of maturity where Google needs to treat it more like Sun, IBM, Microsoft et al treat their OSes and less like a freewheeling community development effort. Allowing developers two weeks to test on a release candidate before it goes GA is, to say the least, inadequate. Google should establish an orderly release process, drawing on the decades of experience of other OS vendors, that provides developers with the necessary time to ensure that their applications work on the new OS level the first day that it's released. In addition, there needs to be a way for developers to have different versions of an application available in the Market for different versions of the OS. The good news is that we're seeing a marked increase in the use of Android on various devices by numerous vendors. The bad news is that this ensures that there will be an increasing diversity of OS versions being used at any given time. Developers need to be able to take advantage of features in newer OS levels without shutting out all the users who are not yet on those levels (and may never be). This shouldn't be a big change to the Market, but it's an absolutely necessary one. It's crystal-clear to me that the Android release process needs to change. I know that a fast-moving mobile OS is different from a workstation or desktop OS, but there are many ways in which they are the same, and the need to support developers in these two areas is one of them. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Anyone else notice more frequent GC in 1.6?
I've noticed that background services seem to get killed more aggressively in 1.6, particularly when memory is low. Does that make sense? Also, OCCASIONALLY, background services that have their processes killed to recover resources don't seem to restart. This has been incredibly difficult for me to debug, as attaching a debugger seems to change the rules of the resource mgmt game in some way. Any hints? Dianne Hackborn wrote: Yeah, I don't know about GC optimizations, but background threads now get placed in a scheduling class that together can't use more than 5-10% of the CPU; this helps a lot in keeping the foreground responsive. On Sun, Oct 18, 2009 at 4:06 PM, CraigsRace craig...@gmail.com wrote: My games run smoother too. 1.6 is a great improvement! I seem to remember talk of background processes getting a lower priority in 1.6, which might also be helping. On Oct 19, 7:33 am, Nikolay Ananiev devuni...@gmail.com wrote: My game's animations are way more smoother in Android 1.6. Google did a great job optimizing 1.6 On Sun, Oct 18, 2009 at 7:32 PM, Jason Van Anden jason.van.an...@gmail.comwrote: I am unsure if this is something I am noticing because my app is released or not, but it seems to me that 1.6 GC's smaller amounts a lot more frequently. It seems to make for a lot less stuttering when graphics are drawn. (Then again, maybe I changed something in my code). Curious ... anyone else notice this? Jason Van Anden http://www.bubblebeats.com -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Stream youtube to a videoview?
I've done this before. I blogged about it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/51-polish-your-app-free-embeddable-android-youtube-activity. There is source code in the blog entry. Enjoy! Dave On Oct 13, 7:28 am, furby wookie...@gmail.com wrote: Anybody? On Oct 13, 8:09 am, furby wookie...@gmail.com wrote: I am sure that this has been discussed before... But I don't seem to be really grokking it... I have a videoview called tv1 on a form. I have a bit of code that fires when a button is pressed that looks like this : String uristr = rtsp://rtsp.youtube.com/youtube/ videos/S2eoCqwBCQI/video.3gp; tv1.setVideoURI(Uri.parse(uristr)); tv1.start(); The emulator tells me that This video cannot be displayed and if I try it on my phone, the app just crashes... Does anyone know what I am doing wrong here? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Stream youtube to a videoview?
In response to your comment on keyeslabs.com: Yes, YouTube says we should use RTSP, but that doesn't work. Look at their own YouTube implementation on Android, and you'll see that they grab a mangled mp4 url, rather than rtsp (you can verify this by looking at the logcat output while using YouTube player). Sure, this will break at some point when YouTube changes its protocol, but for now it's the best solution. RTSP fails in many situations on Android, particularly when you're behind a firewall on WiFi and the server can't communicate to the client. I went a long way down the RTSP road, and ended up back here. Let me know if you find something different! In any case, you're welcome to use the concepts in my impl to grab your RTSP stream if that's the direction that you want to go. You're still going to need to get a token, etc., and all of that code is available to you in my activity implementation. dk On Oct 13, 8:26 am, dadical keyes...@gmail.com wrote: I've done this before. I blogged about it here:http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-an There is source code in the blog entry. Enjoy! Dave On Oct 13, 7:28 am, furby wookie...@gmail.com wrote: Anybody? On Oct 13, 8:09 am, furby wookie...@gmail.com wrote: I am sure that this has been discussed before... But I don't seem to be really grokking it... I have a videoview called tv1 on a form. I have a bit of code that fires when a button is pressed that looks like this : String uristr = rtsp://rtsp.youtube.com/youtube/ videos/S2eoCqwBCQI/video.3gp; tv1.setVideoURI(Uri.parse(uristr)); tv1.start(); The emulator tells me that This video cannot be displayed and if I try it on my phone, the app just crashes... Does anyone know what I am doing wrong here?- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Where have all the Google employees gone?
Dianne is there any chance that such threading changes would affect the playback of media in a VideoView? I've noticed that since 1.6, when I'm on a low-bandwidth connection (e.g., EDGE) videos being loaded over HTTP start playing, but then pause until the file is pretty much completely downloaded, at which point playback continues. Code is pretty straightforward: mVideoView.setVideoURI(pResult); final MediaController lMediaController = new MediaController (IntroVideoActivity.this); mVideoView.setMediaController(lMediaController); lMediaController.show(0); mVideoView.setKeepScreenOn(true); mVideoView.requestFocus(); mVideoView.start(); Dave On Oct 7, 12:23 am, Dianne Hackborn hack...@android.com wrote: On Tue, Oct 6, 2009 at 9:13 PM, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: The new market app shows the screen shots that can be uploaded, so it's a nice update. There seems to be a lot of small changes and (this could be my imagination) the phone seems to run faster an smoother. There was a bunch of work done on thread scheduling to ensure that all background apps together couldn't use more than a small fraction (I believe we ended up with 5%) of the time that the foreground threads want. It makes a big difference for example when background syncs are running. Glad it's noticeable. :) -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] What does Battery Usage Mean?
I have an application that runs a background service. This background service wakes and runs once every 2 seconds. The background service registers as a listener with the orientation sensor with the lowest possible rate of event delivery (application). When my service thread wakes it uses the latest value delivered by the sensor events, so there is no heavy-weight processing being done on the sensor thread. Furthermore, the background thread is doing very light processing when it wakes. I've done tests that show that my background thread poses very minor power overhead, somewhere around 3%. The test was basically: charge to 100%, leave phone on for two hours with service running, record battery level. Repeat with service off and compare. However Battery Usage of my application is listed as some insanely high value (e.g., 40%). Over the same two hour period of the test, CPU usage was less than 3 seconds. What does battery usage mean? In my case, it clearly isn't an indication of battery drain, but that is what the stat seems to imply. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Where have all the Google employees gone?
So what exactly is the definition of a background thread vs. a foreground thread? I failed to mention that my video view is being invoked from an AsyncTask's onPostExecute method, which SHOULD afaik be running on the UI thread.That being said, I'm assuming that the VideoView actually loads its media specified by the videoUri property on a separate thead, as it performs playback while it's loading. My initial guess was that something fairly dramatic changed in the VideoView's required buffer algorithm. When I saw you mention the changes to the threading policies in Android it seemed like that might be a candidate as well. On Oct 8, 12:34 pm, Dianne Hackborn hack...@android.com wrote: Not that I know of. All of those threads should be in the foreground. On Thu, Oct 8, 2009 at 9:09 AM, dadical keyes...@gmail.com wrote: Dianne is there any chance that such threading changes would affect the playback of media in a VideoView? I've noticed that since 1.6, when I'm on a low-bandwidth connection (e.g., EDGE) videos being loaded over HTTP start playing, but then pause until the file is pretty much completely downloaded, at which point playback continues. Code is pretty straightforward: mVideoView.setVideoURI(pResult); final MediaController lMediaController = new MediaController (IntroVideoActivity.this); mVideoView.setMediaController(lMediaController); lMediaController.show(0); mVideoView.setKeepScreenOn(true); mVideoView.requestFocus(); mVideoView.start(); Dave On Oct 7, 12:23 am, Dianne Hackborn hack...@android.com wrote: On Tue, Oct 6, 2009 at 9:13 PM, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: The new market app shows the screen shots that can be uploaded, so it's a nice update. There seems to be a lot of small changes and (this could be my imagination) the phone seems to run faster an smoother. There was a bunch of work done on thread scheduling to ensure that all background apps together couldn't use more than a small fraction (I believe we ended up with 5%) of the time that the foreground threads want. It makes a big difference for example when background syncs are running. Glad it's noticeable. :) -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them. -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them.- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Where have all the Google employees gone?
If that's the case, the algorithm for computing required buffer must be WAY off. On a three minute video that takes about 1.5 - 2 minutes to download on a particular EDGE connection (i.e., download speed is faster than realtime playback), playback doesn't begin until about 2 minutes after download was initiated. On Oct 8, 1:24 pm, Marco Nelissen marc...@android.com wrote: Donut (1.6) shipped with OpenCore 2.x, whereas previously we were using OpenCore 1.x. From your description is sounds like opencore 2 is more aggressive about buffering on slow connections, to avoid running out of data at the end. On Thu, Oct 8, 2009 at 9:09 AM, dadical keyes...@gmail.com wrote: Dianne is there any chance that such threading changes would affect the playback of media in a VideoView? I've noticed that since 1.6, when I'm on a low-bandwidth connection (e.g., EDGE) videos being loaded over HTTP start playing, but then pause until the file is pretty much completely downloaded, at which point playback continues. Code is pretty straightforward: mVideoView.setVideoURI(pResult); final MediaController lMediaController = new MediaController (IntroVideoActivity.this); mVideoView.setMediaController(lMediaController); lMediaController.show(0); mVideoView.setKeepScreenOn(true); mVideoView.requestFocus(); mVideoView.start(); Dave On Oct 7, 12:23 am, Dianne Hackborn hack...@android.com wrote: On Tue, Oct 6, 2009 at 9:13 PM, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: The new market app shows the screen shots that can be uploaded, so it's a nice update. There seems to be a lot of small changes and (this could be my imagination) the phone seems to run faster an smoother. There was a bunch of work done on thread scheduling to ensure that all background apps together couldn't use more than a small fraction (I believe we ended up with 5%) of the time that the foreground threads want. It makes a big difference for example when background syncs are running. Glad it's noticeable. :) -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them.- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: What does Battery Usage Mean?
I am indeed sleeping (I'll check out the other threads, thanks for the tip). From a battery usage perspective, I can't imagine that sleeping vs. alarm has any bearing though. Also, I forgot to mention that when the phone's screen turns off, my background service suspends itself (via Thread.sleep(99)) until the screen is turned back on, in which case the sleep get's interrupted and the thread continues. The net result is that the thread is only running (and consuming power, I'm assuming) when the screen is active. I'm going to take Dianne's advice and do a more aggresive battery drain test, but if that turns out to not jive with the usage meter, I think that I have chalk this one up to a really bad software approximation. On Oct 8, 1:40 pm, RichardC richard.crit...@googlemail.com wrote: By running your background task every 2secs your are basically keeping the phone permanently on. Even though your app is not using much CPU it has to wake the phone from any sleep state every 2secs. So it either will not allow the phone to sleep or mostly keep it awake. Waking the phone will power up all hardware devices that are needed from any low power state they are currently in and reset their sleep timeouts. Basically any background tasks (something not associated with the current foreground activity the user is interacting with) should only wake up very infrequently (say greater then 60mins). Also are you sleeping in your background task or using an alarm event. Sleeping is bad ... see lots of posts by Dianne Hackborn on this very subject. -- RichardC On Oct 8, 5:55 pm, dadical keyes...@gmail.com wrote: I have an application that runs a background service. This background service wakes and runs once every 2 seconds. The background service registers as a listener with the orientation sensor with the lowest possible rate of event delivery (application). When my service thread wakes it uses the latest value delivered by the sensor events, so there is no heavy-weight processing being done on the sensor thread. Furthermore, the background thread is doing very light processing when it wakes. I've done tests that show that my background thread poses very minor power overhead, somewhere around 3%. The test was basically: charge to 100%, leave phone on for two hours with service running, record battery level. Repeat with service off and compare. However Battery Usage of my application is listed as some insanely high value (e.g., 40%). Over the same two hour period of the test, CPU usage was less than 3 seconds. What does battery usage mean? In my case, it clearly isn't an indication of battery drain, but that is what the stat seems to imply.- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: What does Battery Usage Mean?
The wording on the battery usage screen is: Battery used by applications when running. So what does running mean? Is it the time when any activity or service of an app is between onResume and onPause? If it means that when my application is consuming CPU resources (e.g., has threads that are active), it drains the battery by X%, then my applicatoin is doing very well, as it has very low totals for CPU usage. The irony here is that one of my application's primary use cases is actually SAVING power. This is done by allowing the phone to blank the screen automatically when the phone is not within an orientation range associated with user interaction. On the other hand, the application keeps the screen on when the phone is being held in an orientation that implies user interaction. This approach works really well, since it effectively allows users to keep an aggressively low screen timeout without being annoyed to death. I'm getting the impression that my implementation of the concept has varying degrees of effectiveness, depending on the hardware platform. Many users of the Hero, for example, have reported dramatic improvements in battery life (anywhere from 20% to 100% improvement), while others claim that the app provides no power savings, while still others claim that it drains battery. I suppose that this may also depend on phone usage patterns, but the ratings for the application are reasonably high (around 4.20 last time I checked) On Oct 8, 3:15 pm, Romain Guy romain...@google.com wrote: I would have to check but 40% does not mean that your app used 40% of the battery but that your app was responsible for 40% of the battery consumption. Even if that consumption was only 3% of the total battery capacity. On Thu, Oct 8, 2009 at 11:41 AM, dadical keyes...@gmail.com wrote: I am indeed sleeping (I'll check out the other threads, thanks for the tip). From a battery usage perspective, I can't imagine that sleeping vs. alarm has any bearing though. Also, I forgot to mention that when the phone's screen turns off, my background service suspends itself (via Thread.sleep(99)) until the screen is turned back on, in which case the sleep get's interrupted and the thread continues. The net result is that the thread is only running (and consuming power, I'm assuming) when the screen is active. I'm going to take Dianne's advice and do a more aggresive battery drain test, but if that turns out to not jive with the usage meter, I think that I have chalk this one up to a really bad software approximation. On Oct 8, 1:40 pm, RichardC richard.crit...@googlemail.com wrote: By running your background task every 2secs your are basically keeping the phone permanently on. Even though your app is not using much CPU it has to wake the phone from any sleep state every 2secs. So it either will not allow the phone to sleep or mostly keep it awake. Waking the phone will power up all hardware devices that are needed from any low power state they are currently in and reset their sleep timeouts. Basically any background tasks (something not associated with the current foreground activity the user is interacting with) should only wake up very infrequently (say greater then 60mins). Also are you sleeping in your background task or using an alarm event. Sleeping is bad ... see lots of posts by Dianne Hackborn on this very subject. -- RichardC On Oct 8, 5:55 pm, dadical keyes...@gmail.com wrote: I have an application that runs a background service. This background service wakes and runs once every 2 seconds. The background service registers as a listener with the orientation sensor with the lowest possible rate of event delivery (application). When my service thread wakes it uses the latest value delivered by the sensor events, so there is no heavy-weight processing being done on the sensor thread. Furthermore, the background thread is doing very light processing when it wakes. I've done tests that show that my background thread poses very minor power overhead, somewhere around 3%. The test was basically: charge to 100%, leave phone on for two hours with service running, record battery level. Repeat with service off and compare. However Battery Usage of my application is listed as some insanely high value (e.g., 40%). Over the same two hour period of the test, CPU usage was less than 3 seconds. What does battery usage mean? In my case, it clearly isn't an indication of battery drain, but that is what the stat seems to imply.- Hide quoted text - - Show quoted text - -- Romain Guy Android framework engineer romain...@android.com Note: please don't send private questions to me, as I don't have time to provide private support. All such questions should be posted on public forums, where I and others can see and answer them- Hide quoted text - - Show quoted text
[android-developers] ADC2 - We're running out of days in Sept
I'm guessing Google is going to have to let the dates slip, or cut some of the rounds short. Has anyone heard how things are progressing? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: YouTube in the emulator?
Yes you are correct about the activity stack, with the following caveats. The activity that you call may not be designed perfectly for your use case. For example, YouTube is all about viral promotion of videos, and if you don't want your user wandering off, or perhaps want the activity to return as soon as the video is done playing, well you're out of luck unless the YouTube activity supports those use cases. I like the idea of a generic Intent monitor. Might slap that together. It won't help with figuring undocumented data options though. On Sep 19, 6:28 am, Felix Oghina felix.ogh...@gmail.com wrote: Thanks, your Activity is great and I might just use it (I have to speak with a manager - the reason why I used quotes is because he's actually my brother :P). Still, I think an application would be more 'polished' if it was able to launch the standard YouTube application (I'm all for standardization). In your blog post you mention one of the reasons for using this custom Activity as not losing the user to a foreign Activity. That shouldn't be a problem with Android (as opposed to the iPhone), thanks to the Activity stack (correct me if I'm wrong, I'm still a newbie with Android). I have a proposal for this. If we somehow knew the Intents that the YouTube application puts out (maybe Google should publish them? or if someone has an Android-powered device, maybe he/she can somehow inspect it?), we could make a simple yet incredibly useful application that responds to those same intents, but doesn't actually do anything -- just display something like If I were the YouTube app, I'd play the video with ID asd876gs. I have another question: on an actual device (I don't have one), if you open a YouTube video page in the browser, does the YouTube app automatically launch and play that video? On Sep 19, 4:36 am, dadical keyes...@gmail.com wrote: If you just want to be able to play YouTube videos, you're welcome to use my free Activity that I wrote. Just drop the source in your project and change the package and you should be pretty close to ready to play YouTube videos. It's barebones, but it takes care of all of the hard stuff with respect to YouTube, and you have the source so you can do whatever you want with it. Find it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-an... Hope that helps! On Sep 18, 7:39 pm, Felix Oghina felix.ogh...@gmail.com wrote: How can I get the YouTube application in the emulator? I want to create an application that launches YouTube clips and I need to test my Intents. I can't find anything related to this in the docs. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: YouTube in the emulator?
If you just want to be able to play YouTube videos, you're welcome to use my free Activity that I wrote. Just drop the source in your project and change the package and you should be pretty close to ready to play YouTube videos. It's barebones, but it takes care of all of the hard stuff with respect to YouTube, and you have the source so you can do whatever you want with it. Find it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/51-polish-your-app-free-embeddable-android-youtube-activity Hope that helps! On Sep 18, 7:39 pm, Felix Oghina felix.ogh...@gmail.com wrote: How can I get the YouTube application in the emulator? I want to create an application that launches YouTube clips and I need to test my Intents. I can't find anything related to this in the docs. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Could anyone make mediaplayer play the rtsp streaming work successfully on the standard HTC Android 1.5 image ???
RTSP won't work over WiFi generally, as it seems that it's a bidi protocol and firewalls interfere with it. I've gotten it to work just fine when connected over EDGE. I was originally planning on using RTSP, as it seems that this is what YouTube suggests be done using GData for mobile, but eventually I gave up and did things the way that the Android YouTube app appears to do things. I've posted source code for an Activity that negotiates properly with YouTube to stream using standard http download, including negotiating YouTube tokens, etc. You can find it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/51-polish-your-app-free-embeddable-android-youtube-activity On Sep 16, 9:31 pm, yjshi shiyaju...@gmail.com wrote: Could anyone make mediaplayer play the rtsp streaming work successfully on the standard HTC Android 1.5 image ??? I have tried a lot ,but It always failed. I will be very appreciate,if you could give me an answer. Thanks a lot. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Request to official ADC2 team.
+ On Sep 14, 2:40 pm, Mobidev android.mobi...@gmail.com wrote: . Once upon a time, we had this little group…http://groups.google.com/group/android-challengeAndroid Challenge: Discuss the Android Developer Challenge, including questions on contest details. You can also seek other developers to join a team effort. …then came this message…http://groups.google.com/group/android-challenge/browse_thread/thread... …and the group was closed for ever. A humble request to ADC2 team to officially start and moderate a new ADC2 group similar to the previous android-challenge group. ADC2 messages are scattered in android-developers and android-discuss groups. ADC2 discussions does not fit in either of these groups. There will be hundreds of queries, comments, news and PR pitches once the ADC2 judging app goes live. So please could you start a ADC2 discussion group at the earliest. Thanks. P.S. Droids of the planet please vote with '+' or '–' for this request. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Free YouTube Activity Source
Recently, I started a thread about the need for polish in Android applications: http://groups.google.com/group/android-developers/browse_thread/thread/5517eb767ca20aa/0d9230173a996ab4 After considering the posts to that thread, I decided to contribute portions of my ADC2 application, Screebl (see: http://www.cyrket.com/package/com.keyes.screebl.lite), for the consumption of the greater Android community. I'm hoping that others will do the same, ultimately improving the overall quality of the applications on the market. I've blogged about my first contribution, an embeddable YouTube Activity that I used to offer Screebl users an introductory video which was hosted on YouTube. You can read about it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/51-polish-your-app-free-embeddable-android-youtube-activity I hope that this is useful to others. Enjoy! --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: ADC2 entries so far...
Screebl is in the Prod/Tools category. On Sep 13, 1:12 pm, Mobidev android.mobi...@gmail.com wrote: Its mid September and ADC team will soon launch the ADC 2 judging application. So far its been a great job by the ADC team with sticking to the submission deadline and swift uploads(leaving aside package name confusion among the participants). Meanwhile, below are about 105 ADC2 entries posted on forum. In case of new additions or corrections please reply to this discussion with category app name links. ADC1 saw about 1788 apps and my guess is ADC2 will see a tleast 2500 apps considering the tight deadline (could have been much higher(4K+) otherwise). From the trend it seems that the Miscellaneous category has far less entries than Prod/Tools and Games(both) categories. Possibly, 21st ranking entry under Prod/Tools could be much better than 3rd ranking entry under Misc category. Unlike ADC1, this time Category will be a key factor in winning; along with Originality, Effective Platform Use, Polish and Indispensability. ----- Education/Reference Librarium IIhttp://steveoliverc.squarespace.com/ Math Jungle Mystic Maggiehttp://www.phdgaming.com/general_media/mm/ Vivify picture: mathhttp://vivifypicture.com/ Entertainment Daisy Gardenhttp://www.tomgibara.com/android/daisy/garden/ Taps Of Firehttp://code.google.com/p/tapsoffire Games: Arcade/Action CowPotato 3Dhttp://www.froogloid.com/cowpotato FRGhttp://www.woogames.com/ Galactic Guardian: Zap GPShttp://sites.google.com/site/mysticlakesoftware/ Graviturnhttp://www.cyrket.com/package/com.fheft.graviturn Head To Head Racinghttp://headtoheadracing.appspot.com/ Light Racer 3D Trial ProjectINFhttp://www.chickenbrickstudios.com/ UrbanGolf X-Dischttp://www.youtube.com/watch?v=3EkH-b15fPY Zepto Wars - RTS Games: Casual/Puzzle Furdiburbhttp://www.sheado.net/ Goobers Vs. Boogershttp://goobersvsboogers.blogspot.com/ ongPayhttp://www.yakloingames.com/ Relativiahttp://www.polyclefsoftware.com/relativia.html Splat!: Bugs IIhttp://dkdroid.com What the Doodle!? Lifestyle Beer Cloudhttp://greatbrewers.com/story/beercloud-mobile-app Bottle Buzz DoIthttp://curvefish.com/apps/doit.htm FoxyRing http://www.levelupstudio.fr/foxyring Gigboxhttp://www.mygigbox.com/ NetDroid NotiMe!http://www.youtube.com/watch?v=wFjoZmrj40k ReaderScopehttp://www.altcanvas.com/android/readerscope Rhythmatics Alphahttp://www.twitter.com/brownbaggames SpecTrek Media Gallery Map geoPastehttp://www.geopaste.com/ Mediafly Mobile Audio Podcast Client MicroJam MicroJam MyPODhttp://www.my-pod.org/ PackRathttp://packrat.unwesen.de/ Time-Lapsehttp://www.sheado.net/ Uloopshttp://www.uloops.net/ Misc Local Agentshttp://local-agents.appspot.com/ picjiggles litehttp://www.yakloingames.com/ Productivity/Tools Alarmoidhttp://www.youtube.com/watch?v=yNcVkP_vK08 aListhttp://androidalist.blogspot.com AppManagerhttp://curvefish.com/apps/appmanager.htm GeoAlerthttp://sites.google.com/site/appyoursmobile/geoalert Hoccerhttp://www.hoccer.com/ MobileWrite Mobisle Noteshttp://www.facebook.com/pages/MobisleApps/127994296229 MyPageshttp://www.youtube.com/watch?v=75lR4zLy_LQ OpenLoopzhttp://sites.iode.co.uk/openloopz/ Personalyticshttp://personalytics.net/ Skiba PDF Readerhttp://www.anddev.org/skiba_pdf_reader-t6122.html Smart Lockhttp://www.youtube.com/watch?v=ipue9Yhi5VA Talking Calendarhttp://www.pwnwithyourphone.com/ Taskerhttp://tasker.dinglisch.net/ Thinking Spacehttp://homepages.nildram.co.uk/~bakachu/screenshot.png Tracklethttp://tracklet.appspot.com txeethttp://txeet.com Voice Caller IDhttp://www.pwnwithyourphone.com/ WebReaderhttp://webreader.vamsee.in/ What Zip?http://www.usnaviguide.com/zip.htm Xeeku Search Social Networking A-GLOBAL-MINDhttp://a-global-mind.blogspot.com/ Cartoon Ganghttp://www.cartoongang.net/ ClapCard SocialMusehttp://www.mixzing.com/ Swift Twitter Apphttp://www.swift-app.com/ TweetsAloudhttp://www.pwnwithyourphone.com/ Travel AugSatNavhttp://www.phyora.com/ BabelSnaphttp://babelsnap.com/ Location Scouthttp://getlocationscout.com/ Radar Now!http://maps.huge.info/blog/2009/09/new_android_app_radar_now.html Transport Finderhttp://www.dka-edv.net/android/
[android-developers] Lesson from ADC2 - Polish Your App!
As I've wound down from the ADC2 adrenaline rush over the past few days, I've been thinking about a few things that I (re)-learned during the development of my entry. I blogged about it here: http://keyeslabs.com/joomla/index.php/blogs/i-think-im-becoming-an-android/53-polish-your-apps-people The bottom line is that I think a lot of the software being written for Android right now lacks the basic polish that most users expect in software. ADC2 just seemed to exacerbate the problem with its tight deadlines. Beyond that, Google needs to start facilitating the creation of applications that meet users expectations. I'll start the ball rolling by mentioning a few things that I think are missing: 1. Marketplace for Android softwrae components. I hate having to develop UI views and widgets from scratch that I know other developers need too. I want a place to distribute/sell the cool views and widgets that I make, directly to developers. 2. APIs. Give me APIs, services, and views to polish my apps. - marketplace API - YouTube view that allows me to embed instuctional videos WITHIN my application - defect tracking services (Google code for commercial apps, with APIs please) - etc. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Is it possible to use the accelerometer in a background service?
I register a listener to orientation sensor from within a background service with no trouble. Perhaps the following code may help. These methods are called from my service's onCreate and onDestroy methods: private void startMonitoring(){ SensorManager lMgr = (SensorManager) getSystemService (Context.SENSOR_SERVICE); try{ lMgr.unregisterListener(this); } catch(Exception e){ Log.d(ScreeblService.class.getSimpleName(), e.toString()); } ListSensor lSensorList = lMgr.getSensorList (Sensor.TYPE_ORIENTATION); if(lSensorList == null || lSensorList.size() == 0){ throw new RuntimeException(Orientation sensor not available!); } // assumes that this class implements SensorEventListener lMgr.registerListener( this, lSensorList.get(0), SensorManager.SENSOR_DELAY_NORMAL ); } private void stopMonitoring(){ SensorManager lMgr = (SensorManager) getSystemService (Context.SENSOR_SERVICE); try{ lMgr.unregisterListener(this); } catch(Exception e){ Log.d(ScreeblService.class.getSimpleName(), e.toString()); } } On Sep 9, 1:41 pm, Mike Collins mike.d.coll...@gmail.com wrote: my service uses getBaseContext(), seems to work just fine. Don't use it for GPS but we do use it for many other things. mike On Sep 9, 6:57 am, John Smith deltafoxtrot...@gmail.com wrote: It seems trivial to use GPS in a background service, but how can you do the same with the accelerometer? Everything I've tried seems to require a context, but a background service doesn't have a context?- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: ADC app conflicting with marketplace app
I asked these same questions on this forum a couple of days ago. My conclusion was that unless I'm willing to go through the pain of testing and tweaking my marketplace version of the app so that it can behave nicely with the ADC vertsion, I'm going to wait until ADC is over to publish to the market. On Sep 4, 12:53 am, tansaku tans...@gmail.com wrote: Yeah - eclipse seemed to update that automatically. I think it wouldn't have run if that was incorrect ... On Sep 3, 6:25 pm, Maps.Huge.Info (Maps API Guru) cor...@gmail.com wrote: Did you change your package name in the manifest? -John Coryat What Zip Code? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] ADC2 acknowledgment of submission
Is there any kind of acknowledgement of submissions for ADC2? I submitted, but am of course nervous that something went wrong. The ADC home page doesn't give any kind of acknowledgement or record of the submission or its state... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: ADC2 acknowledgment of submission
Ahh... There seems to be some bugginess in the web app when viewed in IE7. In that browser, the entry does not show. When I viewed in FF3, everything appeard fine. Thanks for the answer... On Sep 2, 3:35 pm, ander...@phdgaming.com ander...@phdgaming.com wrote: While logged into your gmail account, go to:http://market.android.com/adc . While you can no longer submit, if you application is submitted, it should show up there with a state of Submitted (along with a green arrow)? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Any advantage to NOT posting ADC2 entry in marketplace now?
Now that my submission to ADC2 is complete, I'm wondering if there is any advantage/disadvantage to holding off on posting to marketplace now. Things that occur to me: 1. If I post to market, and people download in the mass quantities that I expect them to :), will they be less inclined to spend time reviewing the app in the ADC2 context? 2. What happens to people that download from marketplace and then also get the same app (with different name) from ADC2? My app involves a background service and notifications. This could make the judging difficult with notifications that are identical in appearance, but being generated from different versions of the same app. 3. Will there be any TECHNICAL relationship between an ADC2 entry and a marketplace submission. My understanding is that I would need to change namespace, so I'm guessing no -- they are effectively different applications at this point. 4. Are marketplace results in any way included in judging criteria? My read of the rules says no, but just wanted to be crystal clear. Thoughts or opinions? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: Hmm... at last ADC2 is out of our way ... tell about your app and experience
My submission to ADC2 grew out of a utility application that I wrote for myself. It's called Screebl (see: http://www.keyeslabs.com). I became so annoyed with the phone timing out (screen blanking) while doing passive activities like showing a friend a picture, reading a long email, loading a web page over a slow connection, etc., that I decided to write a utility that would keep the phone from suspending based on the phone's orientation. I didn't want to simply increase screen timeouts, because these phones suck battery. I was surprised at how well my approach worked -- generally we hold the phone in very recognizable orientations when interacting with it. I'm amazed that more phone manufacturers don't include activity cues based on accelerometer inputs. In any case, I decided to go through the process of polishing the application up for ADC2. It was a good exercise to go through. Like all software engineers, I dramatically under-estimated what it would take to make a shiny app, ready for broad consumption. Basic coding is one thing. Add in documentation, landing pages, videos that describe the app, custom widgets to do configuration in ways that aren't stupid, i18n, logos, consistent wording, patents, and testing, and you've got yourself a whole lot of time for even a smallish utility application. On-the-other-hand, I loved this project. Software development is fun again! I feel like I'm back on my Commodore-64 writing apps that I can get my head around, are fun, and will be useful. Now if I could just win some cash, that would put a nice pretty bow on things... On Sep 1, 10:41 am, Lout lout.r...@googlemail.com wrote: While you developers relax... would you mind sharing what apps to expect through this challenge.. and anything else you wish to share about ADC2 submissions... well anything including the fact: 'thank God, no more sleep less nights'! Am collecting information about the challenge (ADC2) for a news article as am with cnet (and AP). Pitch your app if you have already published or would soon publish on the market too. Your app name and description, web link if any, experience with ADC2, ... anything would be useful for our article(s). And do you feel that there would have been more submissions than in ADC1? Is the competition going to be tougher or less profound as you were allowed to put up apps not published before 1st Aug only? Do you think that all apps that didn't try for ADC1 should have had a chance? Congratulations on your submissions while you wait for the next phase. Thanks, Lout Reilly ps: Moderators we request you to let this through so that you too get some feedback. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Re: CPU usage api's query
Is there any way to monitor CPU usage of a java thread from android? It doesn't seem that android supports the ThreadMXBean or the ManagementFactory. What is available? I noticed that Process offers some very limited information, but I don't think that I can narrow that down to actual thread usage -- it's just reporting process-level information. On Jul 15, 1:10 pm, Dianne Hackborn hack...@android.com wrote: There is no such concept as a high priority application running which might need the entire CPU, sorry. On Wed, Jul 15, 2009 at 6:06 AM, sukumar bhashyam bhashyam.suku...@gmail.com wrote: Hello, I'm trying to develop a service, which needs to be run in background as a low priority task and does some complex processing . I need to gracefully quit my service when their is a resource shortage( like CPU running low on memory). Was there any APIs available to know the CPU resource usage ?. Objectives of my service is to - 1. Exit service when a high priority application(s) is running and which might need entire CPU resources. 2. Should store my states before onDestroy() of my service is called. I'm planning to use CPU resource usage api's in service to check periodically the CPU load and quit the service if CPU load exceed a threshold(80 %) after storing states. Please let me know of any better way of handling the objectives of my service stated above. Thanks. Regards, Sukumar. -- Dianne Hackborn Android framework engineer hack...@android.com Note: please don't send private questions to me, as I don't have time to provide private support, and so won't reply to such e-mails. All such questions should be posted on public forums, where I and others can see and answer them.- Hide quoted text - - Show quoted text - --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Thread CPU Usage Monitoring
Is there a way to monitor the resource usages of a Thread in Android? Resources of interest include CPU, memory, etc. It doesn't seem like ManagementFactory or ThreadMXBean are supported in Android. Are there other options? I would want to do this at runtime, from within a deployed appolication, not just during dev/debug. dk --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] ADC 2 - Can I post my app to the app store after August 1st?
I want to post to app store, get an application ID, and modify my application to point to the right app in the app store for eventual user upgrade after the challenge. I'll need to upload the app to get the proper application search criteria. Is this valid to do according to the ADC rules, or will upload to the app store in any context other than as a submission for ADC invalidate my entry? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---
[android-developers] Indication of user activity from a service
I need to determine if a user has interacted with the screen, keyboard, or trackball from a background service. I don't need to know coordinates, or actual keystrokes. I just need to understand if they have interacted with the phone in any way. Anyone have any creative ways to do this? It would be great if the screen/keyboard/keys/trackball were available in a manner similar to the other Sensors available on the phone, but it seems that access to input devices is restricted in services as part of Android security policies. Based on my research, I'm not finding much of a possibility, so here's what I'm considering: - using information related to the current processes/activities via ActivityManager to guess if an activity is being interacted with. Possibly the amount of CPU time would increase more rapidly if the user is typing or touching the screen? Seems fairly unreliable... - using one of the sensors to attempt to determine interaction with the phone. Acceleromter fluctuations, magnetic field fluctuations, tricorder :). - something else? Thanks for any creative suggestions. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Android Developers group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en -~--~~~~--~~--~--~---