[android-developers] Making the Account API better

2010-05-27 Thread dadical
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

2010-05-18 Thread dadical
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

2010-05-18 Thread dadical
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!

2010-05-13 Thread dadical
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

2010-05-10 Thread dadical
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

2010-05-09 Thread dadical

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

2010-05-07 Thread dadical
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

2010-05-07 Thread dadical
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

2010-05-07 Thread dadical
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

2010-05-05 Thread dadical
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

2010-05-05 Thread dadical
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

2010-05-05 Thread dadical
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

2010-05-05 Thread dadical
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

2010-05-04 Thread dadical
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

2010-04-25 Thread dadical
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?

2010-04-16 Thread dadical
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

2010-03-11 Thread dadical
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?

2010-03-05 Thread dadical
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?

2010-03-02 Thread dadical
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

2010-02-26 Thread dadical
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?

2010-02-24 Thread dadical
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

2010-02-19 Thread dadical
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?

2010-02-02 Thread dadical
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

2010-01-18 Thread dadical
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

2010-01-18 Thread dadical
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?

2010-01-07 Thread dadical
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%2bunsubs­cr...@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?

2009-12-23 Thread dadical
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?

2009-12-22 Thread dadical
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

2009-12-14 Thread dadical
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?

2009-11-30 Thread dadical
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

2009-11-30 Thread dadical
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

2009-11-20 Thread dadical
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

2009-11-20 Thread dadical
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.

2009-11-20 Thread dadical
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.

2009-11-13 Thread dadical
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

2009-11-11 Thread dadical
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

2009-11-11 Thread dadical
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

2009-11-10 Thread dadical
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

2009-11-09 Thread dadical
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?

2009-11-07 Thread dadical
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

2009-11-07 Thread dadical
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

2009-11-05 Thread dadical
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

2009-11-05 Thread dadical
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

2009-11-05 Thread dadical
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

2009-11-05 Thread dadical
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...

2009-11-04 Thread dadical
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...

2009-11-04 Thread dadical
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...

2009-11-04 Thread dadical
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

2009-11-04 Thread dadical
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

2009-11-04 Thread dadical
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?

2009-11-02 Thread dadical
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...

2009-11-02 Thread dadical
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?

2009-11-02 Thread dadical
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

2009-10-30 Thread dadical
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

2009-10-26 Thread dadical

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

2009-10-26 Thread dadical

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?

2009-10-19 Thread dadical

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?

2009-10-13 Thread dadical

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?

2009-10-13 Thread dadical

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?

2009-10-08 Thread dadical

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?

2009-10-08 Thread dadical

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?

2009-10-08 Thread dadical

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?

2009-10-08 Thread dadical

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?

2009-10-08 Thread dadical

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?

2009-10-08 Thread dadical

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

2009-09-21 Thread dadical

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?

2009-09-19 Thread dadical

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?

2009-09-18 Thread dadical

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 ???

2009-09-16 Thread dadical

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.

2009-09-15 Thread dadical

+

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

2009-09-15 Thread dadical

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...

2009-09-14 Thread dadical

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!

2009-09-11 Thread dadical

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?

2009-09-09 Thread dadical

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

2009-09-04 Thread dadical

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

2009-09-02 Thread dadical

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

2009-09-02 Thread dadical

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?

2009-09-02 Thread dadical

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

2009-09-02 Thread dadical

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

2009-07-15 Thread dadical

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

2009-07-15 Thread dadical

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?

2009-07-15 Thread dadical

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

2009-07-10 Thread dadical

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
-~--~~~~--~~--~--~---