[android-developers] Screebl 3.0 Beta Test

2012-01-25 Thread keyeslabs
Looking for some brave souls to test a ground-up rewrite of Screebl.  The 
engine is mostly there, but things aren't pretty yet.  If you're 
interested, I've published to the 
market: https://market.android.com/details?id=com.keyes.screebl.beta.

Still wish Google provided a more integrated beta program for developers so 
that this could be managed from the developer console.

Anyway, let me know how things work out.  Thanks in advance.

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] Re: Just in section

2011-08-13 Thread keyeslabs
I blogged about this http://bit.ly/qfo5Ab topic a few days ago, and then 
saw this thread.  I recently released a new project that I've been dinking 
around with for a few months while learning something about gaming, and was 
surprised to see how much marketing an app has changed since the last time I 
went through the exercise. 

The days of gaming the market are gone, IMO.  Google is getting serious 
about making money with the market, and they are funneling devs into their 
advertising programs as a means of getting the word out.  I think the idea 
of spending money to market an app is going to be hard for part-time devs to 
swallow.  I also think that Google has made or is in the process of making a 
move AWAY from paid apps towards advertising in apps.  

The main problem that I see with advertising as a primary source of revenue 
is that it simply doesn't work for many types of apps.  Even when it does, 
it's my opinion that advertising in the context of mobile is done horribly 
wrong.  It sucks.  It's cumbersome, clumsy, and quite frankly could be done 
so much better.  And yes, I have been looking long and hard at how to do 
things better.  

-- 
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] Help: BOOT_COMPLETED has started acting weird in 2.3+

2011-08-12 Thread keyeslabs
I'm looking for ideas on this one, as I've been unable to reproduce no 
matter how hard I try in any of my local evironements.  

As users are getting upgraded to 2.3+, a small but significant number are 
reporting that my app (Screebl) is failing to start on phone reboot.  The 
app has had a receiver for BOOT_COMPLETED for a long time now, and it seems 
to be something new to 2.3 that is causing it to fail for some users.

What I know:
- The app does not allow users to move to SD, so that isn't the problem.
- It works for the majority of users.
- It happens on stock and custom roms.

My best working theory is that the new smart battery saver and 
optimization features in 2.3 are deciding the receiver is taking too long to 
boot and throttling it somehow, but I haven't been able to validate this. 
 If this is indeed the problem, is there any way to deal with the startup of 
a service in a more friendly way?  The service is threaded properly, and 
notifications are registered to make the service less likely to be killed. 
 The onStart method is reading preferences, registering to receive about a 
half-dozen broadcast events (screen on/off, dock events, etc.), and then 
starting a thread.  That's about it.

Any ideas on how I can nail this one down?


-- 
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: Scaling text up to be relative to screen pixels

2011-06-30 Thread keyeslabs
Struggling with the same thing.  Anyone find answers besides just
make lots and lots of layouts based on resolution?

On May 26, 9:14 pm, Robert Green rbgrn@gmail.com wrote:
 Not possible, eh?

 On May 26, 1:03 pm, Robert Green rbgrn@gmail.com wrote:







  I'm a long time Android developer (Been here since pre 1.0).  My focus
  is on games, so I don't care too much about the apps side of things.
  Generally I want a game to just consume the screen and everything to
  just scale up as a percentage (a button should always be 50% of the
  screen, etc).  I even want that on 10 tablets and whatever size
  future devices, because without scaling up, I have no other content so
  there will just be more blank space and a less predictable UI.

  I can work it out for buttons and such but how do I scale up text on
  my menus?  Saying, use a surfaceview is awesome for the game itself
  but all my legacy games have multiple activities for menus and use
  standard Android UI components.  They worked great on all screens
  before honeycomb/tablets, which are quickly becoming a major headache
  for me.

  Usually I just want 5 or so buttons laid out linearly vertically
  either in the center or on the right side of the screen (portrait/
  landscape) and I want the text on the buttons to scale up with the
  screen so it looks exactly the same at 1280x800 vs 480x320.  Am I
  missing something or is this not possible to do without adding
  additional layouts for larger screens (and potentially making even
  more layouts for even bigger screens later, etc)?

  Best practices to achieve this, anyone?

-- 
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: Bluetooth is driving me nuts -- Galaxy tab lockups and pairing stupidity

2011-05-27 Thread keyeslabs
I think I've come up with a pretty good interim solution (until nfc)
to the adhoc comm issue, using qr codes and bt spp.  It looks like
it's going to require lots of fine-tuning for individual devices
though, which just sucks.

I've tried a number of different approaches, including bonjour over
wifi, which worked surprisingly well, but the dependence on wifi was
just a bit too goofy, so the only choice left is bt.  making the
experience truly seamless for my users has been surprisingly difficult
-- this use case is not well thought out at all by Google,
particularly how pairing works.  I'm hoping for some guidance from
someone there on how to make that work well, but I'm not holding my
breath.

I'm going to post the code for connecting two peers via bt spp comm
using qr codes if I can get it to work well enough.  If it all comes
together it will be a nice stop-gap until nfc is everywhere, which
will be a while...



On May 27, 3:32 am, Zsolt Vasvari zvasv...@gmail.com wrote:
 I've never owned a device where Bluetooth just works every time.
 The closest that one came to has been my Garmin GPS.

 I do hope NFC will make it easier to do adhoc peer-to-peer
 communications.

 On May 27, 9:58 am, keyeslabs keyes...@gmail.com wrote:







  I'm trying to use bluetooth SPP to establish a socket connection
  between two Android devices.  There are a few things that are really
  driving me crazy in this effort.

  First, the Galaxy Tab seems to just be broken when it comes to SPP.  I
  can establish the connection just fine, but after a few minutes, and
  most notably whenever the app on the Tab on which the SPP server
  socket was established is killed, the tablet effectively locks up,
  requiring a hard reboot (hold down the power for 7 seconds to
  reboot).  I've seen others mentioning the same thing in various
  places, but haven't seen any solutions.  Has anyone come up with
  ANYTHING to solve this issue?

  Second, I've been struggling to find a way to make it easy for users
  to pair devices.  I'm developing a full-screen game involving two
  devices, and the pairing request on 2.3 and later seems to happen
  (sometimes) as a notification, which doesn't do much good for a full
  screen game.  In some cases it does seem to be displayed as a dialog
  (which is what I want), but it's frequently as a notification.  Is
  anyone aware of a reliable way to initiate pairing via DIALOG
  automatically when a socket is opened between two unpaired devices?

  Finally, has anyone else noticed pairing requests happening twice?
  Dialog shows, user clicks pair, second dialog appears, click pair,
  pairing happens.

  Thanks for any help!

-- 
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] Bluetooth is driving me nuts -- Galaxy tab lockups and pairing stupidity

2011-05-26 Thread keyeslabs
I'm trying to use bluetooth SPP to establish a socket connection
between two Android devices.  There are a few things that are really
driving me crazy in this effort.

First, the Galaxy Tab seems to just be broken when it comes to SPP.  I
can establish the connection just fine, but after a few minutes, and
most notably whenever the app on the Tab on which the SPP server
socket was established is killed, the tablet effectively locks up,
requiring a hard reboot (hold down the power for 7 seconds to
reboot).  I've seen others mentioning the same thing in various
places, but haven't seen any solutions.  Has anyone come up with
ANYTHING to solve this issue?

Second, I've been struggling to find a way to make it easy for users
to pair devices.  I'm developing a full-screen game involving two
devices, and the pairing request on 2.3 and later seems to happen
(sometimes) as a notification, which doesn't do much good for a full
screen game.  In some cases it does seem to be displayed as a dialog
(which is what I want), but it's frequently as a notification.  Is
anyone aware of a reliable way to initiate pairing via DIALOG
automatically when a socket is opened between two unpaired devices?

Finally, has anyone else noticed pairing requests happening twice?
Dialog shows, user clicks pair, second dialog appears, click pair,
pairing happens.

Thanks for any help!

-- 
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] Soft Home Button Makes Games Suck on Android

2011-05-16 Thread keyeslabs
My kids and I love playing games on our various iOS and Android
tablets.  One thing that bothers everyone though is the full-screen
experience when dealing with soft or semi-soft keys on Android.  I'm
getting ready to deal with this issue myself in my own application
development, so I though I'd solicit advice on the best way to deal
with it.

In a nutshell, the problem stems from accidentally hitting the home
key.  As one plays a game, wildly moving fingers around on the screen,
commonly the home key is accidentally pressed which exits the game.
If you want a good example of this, play Fruit Ninja on a Galaxy
Tab.

With physical buttons this isn't usually an issue (e.g., iPad, and
some Android devices), but for those that have soft keys and soft
menus it can be really annoying.  It seems like things are getting
worse with Honeycomb and beyond, too, as device manufacturers move
more towards an all-soft platform.

I know all of the requirements that Android places on devices (and
with good reason) for keeping the home button's semantics clean.  But
it really does compromise the platform for many gaming scenarios in a
particularly annoying way.

How are other game devs dealing with this?

As for what I would LIKE to see, I think a good compromise would be
the ability for a game to make it harder for the home key to exit
the app.  For example, games could request a permission that, if
granted, would require the user to hold the home key down longer, or
press three times within 3 second, or something along those lines.
This would still always allow a user to exit the app, but would
eliminate the spurious home key presses.

-- 
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] Help with Hacking the State of the Union

2011-01-24 Thread keyeslabs
Over the past few days I've hacked together an experiment that targets
using an app to augment live television.  I've described it here:

http://keyeslabs.com/joomla/blogs/i-think-im-becoming-an-android/421-hacking-the-state-of-the-union

It's interesting in that it takes advantage of the Android platform
talking to a Google App Engine back end to solicit real-time sentiment
feedback during the course of the speech.  The State of the Union is a
great venue to test out the concept and portions of a generic platform
that I'm working on for future projects along the same lines.

If there are any friendly devs that are planning on watching the State
of the Union tomorrow and would not mind installing the app and then
giving me feedback that would be much appreciated.

The GAE portion of this has been the most challenging, really.  It
would be nice if GAE would start offering services specifically
targeted at supporting long-lived connections with Android clients.
The biggest wild card in this whole experiment is whether the GAE app
will be able to withstand X number of clients polling.  I thought
about Cloud to Device, but I wanted a bigger user base than Android
2.2+ would provide.  Anyone else doing something similar?  What has
your approach been?

I'll post some follow up later with results of the experiment and a
bit more detail on architecture.

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] Did Market Ranking Change?

2010-12-19 Thread keyeslabs
I know, I know.  No one can actually believe that their app would drop
in the rankings.  I've seen these threads before.  I'm not
complaining, just curious.

My app has held fairly stable in the Tools category over the last
year, but over the course of the last few days has dropped by 25 slots
(from roughly 25th to roughly 50th).

Here's what I know.

- My active installs have not gone down, they've actually gone up.
- I recently dropped my price for a holiday sale
- due to in-app promotion in the lite version of my app, I had a
temporary 20x increase in purchases of pro, but that trailed off
after about a week.  That happened about 4 weeks ago.
- The dramatic drop happened just recently (sometime near Dec 17) and
seems to coincide with the deployment of the new market app

Theories?  Others seeing the same thing?  I'm curious if the temporary
kick in sales and subsequent decrease back to normal is somehow
affecting a sliding average used for ranking.

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: Anybody seen a slowdown in sales?

2010-12-19 Thread keyeslabs
Has anyone seen resolution of this?

My sales have decreased, most likely due to a dramatic drop in
rankings (by about 25 slots).  Sudden and dramatic would be how I
would characterize the change.  Seems closely correlated with the new
market app.

Interestingly, my active installs has been climbing during the same
period.

I'll be very interested to see how transparent the ranking algorithms
are in some of the other markets.  VCast is already rolling, and
others are soon-to-be kicked off.  Android Market rankings have been a
roller coaster over the last year, and it's been a frustrating ride as
dev.  I can say one thing about these other markets for sure, they
have forced Google to make changes to the market at a rate that
developers and consumers never could.  Whether those changes are
improvements or not remains to be seen.  I just LOVE competition!

BTW, how many of us that saw drops in rankings are registered on the
other markets? :)

On Dec 17, 9:34 pm, Zsolt Vasvari zvasv...@gmail.com wrote:
 My sales have started to decline about 10 days ago and now they are at
 about 50% compared to then.

 Has anybody seen anything like this with their own apps?  I am at a
 loss as I cannot see a reason for this -- my ratings are as high as
 ever, no 1-stars to scare people off, no hot competitor app.  I did
 increase the price by $1 about 14 days ago, but that actually lead to
 more sales for a few days after, so I don't know.  The $1 increase is
 from $7.99 to $8.99, so percentage-wise it's not that much.

 As I am typing, I'm going on a 5 hour without a sale lull, with only a
 couple of Declined authorizations.  I've evem seen an 11-hour lull
 also which has never happened since day one.

 I mean it's possible that my app has run its course and most people
 who wanted it had bought it or a competitor's, but that's pretty hard
 to believe.

 Anybody with any insights?

-- 
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: Off market sales and LVL

2010-11-03 Thread keyeslabs
Solving this very problem is going to be really important for Android
Devs.  With multiple viable markets, each with their own DRM
solutions, managing the builds for a smallish Android app is getting a
bit ridiculous.  There's room for innovation here in the form of a
layer above all of the different DRM offerings associated with the
various markets.  Been down that road though, and it is a thankless
job worth approximately $0.  :)

On Nov 3, 10:20 am, Alex maroeb...@gmail.com wrote:
 If I sell a copy of a LVL controlled app outside of the market, is
 there a way I can authorize it so that it checks out as licensed?

-- 
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] Google TV Remote Control App

2010-10-22 Thread keyeslabs
Has anyone put a packet sniffer on the remote control app provided for
Android devices to interact with Google TV? I'm curious about what the
protocol is.  I would guess that it's ProtoBuf, or possibly XBMC
(wouldn't that be nice?)...

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: Piracy Breakdown by Country

2010-08-30 Thread keyeslabs
. the recent ads for the Samsung
 i9000 Galaxy S ) - so I assume its either a perceived marketing
 negative, or its not worth the 'copy' space the single word would take
 up.

 * As a former president of the Australian Software Publishers
 Association, I know that Australians generally 'do' buy their software
 when its not open source - which is the main precursor to acountry
 having a software industry. Its a part of the 'a fair go mate' ethos
 here - so Indy developers are likely to do well here - and do, given
 an avenue to market.

 * I do know that there are lots of software developers in Australia
 'very pissed-off' with Google in that we are unable to 'sell' our
 programs in the Android Market (even though our customers can buy them
 from elsewhere) - e.g. I've had programs sitting here collecting dust
 for 12 months (yes, 365 days, one planetary orbit around the Sun [the
 one thats 93 million miles away] - no actions, and worse, no words
 about actions, from Google) come Tuesday this week 
 see:http://www.digitalfriend.org/blog/month2009-09.html- but that is
 unlikely to cause a software developer to pirate other software
 developers hard work. I certain haven't and wouldn't. That kama is
 reserved for Google (and then Android), not for fellow software
 developers.  i.e. If you are unable to circulate your own work, ones
 enthusiasm eventually dries up and withers on the vine, such that, in
 my case at least, I've abandoned my daily usage of the Android phone
 itself, and now use an alternative smart phone from a company with a
 global perspective instead.

 * Its true that, within the list of countries wrt your downloads,
 Canadian, Kiwi and Swiss developers also cannot sell their apps on
 Google Android Market to their own customers - so if it was 'a
 disgruntled developer issue' re Australia, you would likely see it
 there too - but as I've pointed out, your figures for those countries
 are statistically insignificant, so that doesn't constitute evidence
 either way.

 * I'm not surprised at your figures for Japan - even major software
 contracts with Japanese companies usually only require a hand-shake to
 seal an honorable relationship. (I wonder if they even have local
 lawyers? )

 * As much as I am surprised at your figures for Australia, I am also
 surprised at your figures for the US. They seem overly high to me. It
 makes me wonder what your software does and how much it costs wrt
 other apps? More so, it makes me wonder if the 'Lite' version is an
 overly crippled version of the 'Pro' version, such that large numbers
 of people are justifying an illegal download of the Pro version. I.e.
 Is the Lite version 'really' useful in its own right - or is it little
 more than 'an ad' that constitutes an expensive download to the
 unwitting customer/phone user? It would also be of general interest to
 know what the respective download numbers for your 'Lite' version are,
 over the same period of time? (Note: I really have no knowledge of
 your app - so these are just very general questions/ponderings by me,
 and are certainly 'not' reflections upon your apps, Lite version or
 Pro)…

 If your figures are indeed generally representative of Android apps of
 all sorts, then yes, your experience is indeed a worry for all - and
 it makes a Licensing approach totally necessary for paid apps - sad
 but true, given the low retail cost of phone apps in general.

 Cheers
 Steve

 On Aug 27, 7:15 am, keyeslabs keyes...@gmail.com wrote:

  Actually, the largest *contributor* to piracy was the US, but the
  highest piracy rates (as a percentage of total installs) were
  elsewhere.  For example, the US has a piracy rate (on my app) of about
  70%, but Australia is more like 92%.  For the countries where apps may
  be purchased, here's the breakdown:

 CountryPurchases       Installs        Pirated Installs        Piracy Rate
  Australia       26      321     295     92%
  Austria 6       13      7       54%
  Canada  25      96      71      74%
  France  23      104     81      78%
  Germany 38      161     123     76%
  Italy   4       36      32      89%
  Japan   467     467     0       0%
  Netherlands     24      98      74      76%
  New Zealand     4       8       4       50%
  Spain   7       63      56      89%
  Switzerland     7       21      14      67%
  United Kingdom  108     335     227     68%
  United States   2051    6105    4054    66%

  The US isn't the highest, but still, it's disturbing how high the rate
  is in ALL of these countries where purchases could be made...

  Dave

  On Aug 26, 4:59 pm, niko20 nikolatesl...@yahoo.com wrote:

   Excellent analysis. Once again showing that you can't make assumptions
   about a market without cold hard data to back it up. Your results
   found that the largest piracy rates actually occurred in countries
   where users COULD buy apps ! I guess USA is just a bunch of cheap
   *sses :)

   -niko

   On Aug 26, 3:22 pm, keyeslabs keyes...@gmail.com

[android-developers] Piracy Breakdown by Country

2010-08-26 Thread keyeslabs
Recently did an analysis of piracy rates by country for my app.  Found
some very interesting tidbits that I think may be of interest to
members of this group:  http://bit.ly/bSaoBe

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: Android Market Licensing: Now Available!

2010-08-26 Thread keyeslabs
Had time to take a look at this raw data.  You can see results here if
you're interested.  Some things surprised me: http://bit.ly/bSaoBe.

On Aug 25, 1:46 pm, keyeslabs keyes...@gmail.com wrote:
  Um there is a culture of piracy *everywhere*. :}

  If you are saying that because you think most people are pirating Android
  apps...  I think your perception of things is probably pretty off.  I know
  lots of people who have Android devices, and none of them even think of
  turning on the option to install from external sources, let alone go out and
  find pirated apps.

 You're correct.  My perception could very well be off.  Without a
 doubt I see VERY high piracy rates on my software in Android market
 (see here: bit.ly/9ZYrh7).  In my paranoid mind I've always
 distributed this tendency towards piracy uniformly across the Android
 user base.

 I think that it's a good point that this is likely NOT true though.
 As many have pointed out, piracy is motivated by different things,
 including the inability to purchase from the market, over-priced apps,
 etc.  These motivations don't exist everywhere or for every app, and
 so my guess is that there are piracy hot spots around the globe.

 Actually, that would be a very interesting study.  I think that I may
 even have the raw data to do it for my own app.  My app tracks coarse-
 grained (city-level) location information, and I think that I could
 extract that same information from Google Checkout records.  I smell a
 weekend going up in smoke... :)

 Dave

 On Aug 25, 1:04 pm, Dianne Hackborn hack...@android.com wrote:

  On Wed, Aug 25, 2010 at 8:13 AM, keyeslabs keyes...@gmail.com wrote:
   Again, my contention is that something stronger than obfuscation is
   needed to lock the APK down.  OS-level APK encryption support in
   addition to license verification.   I would like to see us get to the
   point that users must choose to root the phone (similar to Apple) in
   order to use pirated apps.  Better yet, users must root the phone and
   in so doing remove the legal ability to access some desirable piece of
   software.

  Yeah there we are.  As far as I can see, the next step in preventing piracy
  is to not allow users to install apps outside of Market at all.

  We're not going to do that.

  If there are other suggestions that will actually make things harder without
  doing that, I would certainly like to hear them.  At this point people need
  to modify apps; once they are doing that, there aren't too many more things
  to do except make it harder to remove the illegal use check code out of the
  app.

   I realize that it's easy for me to rant on about what I want, and very
   difficult for Google to strike the right balance between open and
   lucrative.  My fear at this point is that we're establishing a culture
   of piracy on Android that is going to be difficult to turn around.

  Um there is a culture of piracy *everywhere*. :}

  If you are saying that because you think most people are pirating Android
  apps...  I think your perception of things is probably pretty off.  I know
  lots of people who have Android devices, and none of them even think of
  turning on the option to install from external sources, let alone go out and
  find pirated apps.

  --
  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: Piracy Breakdown by Country

2010-08-26 Thread keyeslabs
Actually, the largest *contributor* to piracy was the US, but the
highest piracy rates (as a percentage of total installs) were
elsewhere.  For example, the US has a piracy rate (on my app) of about
70%, but Australia is more like 92%.  For the countries where apps may
be purchased, here's the breakdown:

Country Purchases   InstallsPirated InstallsPiracy Rate
Australia   26  321 295 92%
Austria 6   13  7   54%
Canada  25  96  71  74%
France  23  104 81  78%
Germany 38  161 123 76%
Italy   4   36  32  89%
Japan   467 467 0   0%
Netherlands 24  98  74  76%
New Zealand 4   8   4   50%
Spain   7   63  56  89%
Switzerland 7   21  14  67%
United Kingdom  108 335 227 68%
United States   20516105405466%

The US isn't the highest, but still, it's disturbing how high the rate
is in ALL of these countries where purchases could be made...

Dave


On Aug 26, 4:59 pm, niko20 nikolatesl...@yahoo.com wrote:
 Excellent analysis. Once again showing that you can't make assumptions
 about a market without cold hard data to back it up. Your results
 found that the largest piracy rates actually occurred in countries
 where users COULD buy apps ! I guess USA is just a bunch of cheap
 *sses :)

 -niko

 On Aug 26, 3:22 pm, keyeslabs keyes...@gmail.com wrote:

  Recently did an analysis of piracy rates by country for my app.  Found
  some very interesting tidbits that I think may be of interest to
  members of this group:  http://bit.ly/bSaoBe

  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: Android Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
I don't completely buy the assertion that PR wasn't part of the
equation in designing,  announcing, blogging, and writing press
releases about LVL.   Piracy is one of the biggest thorns in the side
of Android at the moment.  If Google doesn't recognize that as both a
technical AND a PR problem, then the platform is in for a very bumpy
ride from an application developer's perspective.

Regardless of whether LVL was intended to be presented as the
solution to piracy, that's how it came off.  That was my point in my
original prediction -- we're all setting ourselves up for the
perception of failure.  And, here we are...



On Aug 25, 3:40 am, Dianne Hackborn hack...@android.com wrote:
 On Tue, Aug 24, 2010 at 1:20 PM, keyeslabs keyes...@gmail.com wrote:
  LVL is flawed in the same ways that AAL (and other similar approaches)
  is flawed.  Google could do better, and I hope that they will.
  Obfuscation isn't really going to do much to improve the situation.
  What is really needed is O/S-level and app store support for signing
  apps (in real time) based on user credentials, application authors,
  and phone characteristics.  The dependence on the android market app
  is a single point of failure that is too easy to search for and find
  regardless of how obfuscated your code is.

 I'm curious, how do you see this helping much?  We are already to the point
 of people having to modify an app to pirate it.  Once you do that, you need
 to strip the credentials off anyway and sign it with your own cert.

  From a technical standpoint, LVL will help to some degree, but I've
  got to think that in terms of P.R., Google did themselves more harm
  than good here.

 LVL wasn't done for PR, but to have a better solution to forward locking,
 and which eliminates many of the problems of forward locking that have been
 causing trouble for a long time.

 --
 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: Android Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
 All copy protection systems have two parts - something they bind to,
 and the obfuscation that makes it harder to rip that binding out.

This is basically correct, if you assume that things like encryption
are bundled under the umbrella of obfuscation.

 So there are obviously two ways copy protection schemes get cracked.
 One is that the binding is removed - the obfuscation wasn't good
 enough. That's what was being done in the recently published tutorial.
 In that case there was no obfuscation at all!

This isn't true.  If you look back at the article on AndroidPolice
proguard was used on at least one of the applications.  Furthermore,
my contention has been all along that code obfuscation is not going to
protect apps all that well.  Manual LVL modification might be able to
make it difficult for auto-crack scripts to remove LVL without human
intervention, but I think that regular old obfuscation is going to not
be very effective.

 Obfuscation is the only thing that will improve this situation! The
 two pronged attack is split down the middle - LVL makes obfuscation
 your problem and preventing illegitimate licenses being vended Googles
 problem.

Again, my contention is that something stronger than obfuscation is
needed to lock the APK down.  OS-level APK encryption support in
addition to license verification.   I would like to see us get to the
point that users must choose to root the phone (similar to Apple) in
order to use pirated apps.  Better yet, users must root the phone and
in so doing remove the legal ability to access some desirable piece of
software.

I realize that it's easy for me to rant on about what I want, and very
difficult for Google to strike the right balance between open and
lucrative.  My fear at this point is that we're establishing a culture
of piracy on Android that is going to be difficult to turn around.

Dave

On Aug 25, 8:16 am, Mike Hearn mh.in.engl...@gmail.com wrote:
  LVL is flawed in the same ways that AAL (and other similar approaches)
  is flawed.  Google could do better, and I hope that they will.

 I think it's wrong to focus on what Google could or could not do here.
 Did you read my reply to your original mail? If so what did you think
 of it?

 All copy protection systems have two parts - something they bind to,
 and the obfuscation that makes it harder to rip that binding out.

 Most video games bind to a genuine DVD. Some games, like those
 distributed via Xbox Live Arcade, bind to licensing data from an
 online market, which is closer to what Android apps are doing.

 So there are obviously two ways copy protection schemes get cracked.
 One is that the binding is removed - the obfuscation wasn't good
 enough. That's what was being done in the recently published tutorial.
 In that case there was no obfuscation at all! Another way is that the
 thing the program binds to is swapped out for a duplicate, eg in the
 PC world DVD emulation drivers are often used. For Android this
 approach means getting a valid license the app accepts in some non-
 valid manner.

  Obfuscation isn't really going to do much to improve the situation.

 Obfuscation is the only thing that will improve this situation! The
 two pronged attack is split down the middle - LVL makes obfuscation
 your problem and preventing illegitimate licenses being vended Googles
 problem.

 Fortunately there's lots of room for creative people to create
 interesting obfuscations, either custom for their own product or as a
 third party developer who sells copy protection solutions.

-- 
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 Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
Sorry if things are coming off that way Dianne.  I'm passionate about
this topic (obviously), but I only admire and respect you (in
particular) and the Android team in general.  You've saved my butt
more than once.  :)

I'm invested here.  I'm all in on Android and success of the platform
matters to me.  I want you to succeed just as much as I'm assuming you
want developers to succeed.

On Aug 25, 1:05 pm, Dianne Hackborn hack...@android.com wrote:
 On Wed, Aug 25, 2010 at 5:25 AM, keyeslabs keyes...@gmail.com wrote:
  I don't completely buy the assertion that PR wasn't part of the
  equation in designing,  announcing, blogging, and writing press
  releases about LVL.   Piracy is one of the biggest thorns in the side
  of Android at the moment.  If Google doesn't recognize that as both a
  technical AND a PR problem, then the platform is in for a very bumpy
  ride from an application developer's perspective.

 I think I'll bow out of this discussion.  It looks like you are trying to
 read the worst in what I write, so I don't think there is much more useful
 we can discuss here.

 --
 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: Android Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
 Yeah there we are.  As far as I can see, the next step in preventing piracy
 is to not allow users to install apps outside of Market at all.

 We're not going to do that.

That's not what I was picturing.  Isn't there some way that we could
do both?  Apps downloaded from market could be encrypted and only
decrypted by the OS when used (in real time, never decrypted and left
as an open APK on the device).  I guess what I'm looking for is the
market to encrypt and sign an APK in real time for a particular user/
phone when downloaded.  Each download would result in different bytes
for each user/phone

This doesn't necessarily preclude the installation of unencrypted apps
does it?  I totally agree that we need app distribution capabilities
outside the context of Android Market -- it's a necessity for an open
platform.

In a nutshell, what I'm hoping LVL can grow into is a system that
packages license verification in a way that is really really hard to
remove.  It seems like we've got half of that equation nicely under
way with LVL in its current form.

Dave

On Aug 25, 1:04 pm, Dianne Hackborn hack...@android.com wrote:
 On Wed, Aug 25, 2010 at 8:13 AM, keyeslabs keyes...@gmail.com wrote:
  Again, my contention is that something stronger than obfuscation is
  needed to lock the APK down.  OS-level APK encryption support in
  addition to license verification.   I would like to see us get to the
  point that users must choose to root the phone (similar to Apple) in
  order to use pirated apps.  Better yet, users must root the phone and
  in so doing remove the legal ability to access some desirable piece of
  software.

 Yeah there we are.  As far as I can see, the next step in preventing piracy
 is to not allow users to install apps outside of Market at all.

 We're not going to do that.

 If there are other suggestions that will actually make things harder without
 doing that, I would certainly like to hear them.  At this point people need
 to modify apps; once they are doing that, there aren't too many more things
 to do except make it harder to remove the illegal use check code out of the
 app.

  I realize that it's easy for me to rant on about what I want, and very
  difficult for Google to strike the right balance between open and
  lucrative.  My fear at this point is that we're establishing a culture
  of piracy on Android that is going to be difficult to turn around.

 Um there is a culture of piracy *everywhere*. :}

 If you are saying that because you think most people are pirating Android
 apps...  I think your perception of things is probably pretty off.  I know
 lots of people who have Android devices, and none of them even think of
 turning on the option to install from external sources, let alone go out and
 find pirated apps.

 --
 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: Android Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
 Um there is a culture of piracy *everywhere*. :}

 If you are saying that because you think most people are pirating Android
 apps...  I think your perception of things is probably pretty off.  I know
 lots of people who have Android devices, and none of them even think of
 turning on the option to install from external sources, let alone go out and
 find pirated apps.

You're correct.  My perception could very well be off.  Without a
doubt I see VERY high piracy rates on my software in Android market
(see here: bit.ly/9ZYrh7).  In my paranoid mind I've always
distributed this tendency towards piracy uniformly across the Android
user base.

I think that it's a good point that this is likely NOT true though.
As many have pointed out, piracy is motivated by different things,
including the inability to purchase from the market, over-priced apps,
etc.  These motivations don't exist everywhere or for every app, and
so my guess is that there are piracy hot spots around the globe.

Actually, that would be a very interesting study.  I think that I may
even have the raw data to do it for my own app.  My app tracks coarse-
grained (city-level) location information, and I think that I could
extract that same information from Google Checkout records.  I smell a
weekend going up in smoke... :)

Dave

On Aug 25, 1:04 pm, Dianne Hackborn hack...@android.com wrote:
 On Wed, Aug 25, 2010 at 8:13 AM, keyeslabs keyes...@gmail.com wrote:
  Again, my contention is that something stronger than obfuscation is
  needed to lock the APK down.  OS-level APK encryption support in
  addition to license verification.   I would like to see us get to the
  point that users must choose to root the phone (similar to Apple) in
  order to use pirated apps.  Better yet, users must root the phone and
  in so doing remove the legal ability to access some desirable piece of
  software.

 Yeah there we are.  As far as I can see, the next step in preventing piracy
 is to not allow users to install apps outside of Market at all.

 We're not going to do that.

 If there are other suggestions that will actually make things harder without
 doing that, I would certainly like to hear them.  At this point people need
 to modify apps; once they are doing that, there aren't too many more things
 to do except make it harder to remove the illegal use check code out of the
 app.

  I realize that it's easy for me to rant on about what I want, and very
  difficult for Google to strike the right balance between open and
  lucrative.  My fear at this point is that we're establishing a culture
  of piracy on Android that is going to be difficult to turn around.

 Um there is a culture of piracy *everywhere*. :}

 If you are saying that because you think most people are pirating Android
 apps...  I think your perception of things is probably pretty off.  I know
 lots of people who have Android devices, and none of them even think of
 turning on the option to install from external sources, let alone go out and
 find pirated apps.

 --
 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: Licensing server, app cracked.

2010-08-25 Thread keyeslabs
That is code from the Ant task generated by the Android tooling.  I
added a new target to do obfuscation, and called it towards the end of
the build process.  What you see here is the contents of my obfuscate
target.

On Aug 25, 5:38 am, sblantipodi perini.dav...@dpsoftware.org wrote:
 Thanks to Trevor for his reply, I'm really impatient to see this new
 doc.

 To you keyeslabs, I'm actually using netbeans,
 what is the code you posted? An addition to build.xml for eclipse or
 Android SDK project?

 On Aug 25, 4:27 am, keyeslabs keyes...@gmail.com wrote:

  If you can't wait, here's something to get you started that worked for
  me.  It's what I used to obfuscate AAL, which was a library not an
  Android App, and thus a bit simpler.

  You'll need to adjust what you keep (e.g., don't obfuscate) so that
  you don't shred classes that are referenced by your manifest, or
  you'll have to update your manifest after the fact.

          taskdef resource=proguard/ant/task.properties
                   classpath=/adev/proguard4.4/lib/proguard.jar /

          proguard
            -libraryjars ${android-jar}
            -injars      ${build-location}/license.jar
            -outjars     ${build-location}/license-rel.jar
            -dontpreverify
            -dontoptimize
            -dontshrink
            -dontusemixedcaseclassnames
            -repackageclasses ''
            -allowaccessmodification
            -optimizationpasses 1
            -verbose

            -keep public class com.keyes.license.LicenseManager {
                  public *;
            }

            -keep public class com.keyes.license.CheckLicenseCallback {
                  public *;
            }
            -keep public class com.keyes.license.LicenseException {
                  public *;
            }
          /proguard

  Dave

  On Aug 24, 6:53 pm, sblantipodi perini.dav...@dpsoftware.org wrote:

   As 
   title,http://android-developers.blogspot.com/2010/08/licensing-server-news

   where is the guide to obfuscate our 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: Android Market Licensing: Now Available!

2010-08-25 Thread keyeslabs
Isn't that only because the APK gets decrypted and written to disk
as opposed to only being done in transient memory as the application
is launched?  There's an application startup overhead obviously to
decrypting the APK on-the-fly, but seems like a much higher bar than
just cp /data/app/foo.apk...

Dave

On Aug 25, 1:50 pm, Michael MacDonald googlec...@antlersoft.com
wrote:
 Encrypting the .apk is like forward-locking; it is easily defeated on
 rooted phones.

 On 08/25/10 13:33, keyeslabs wrote:



  That's not what I was picturing.  Isn't there some way that we could
  do both?  Apps downloaded from market could be encrypted and only
  decrypted by the OS when used (in real time, never decrypted and left
  as an open APK on the device).  I guess what I'm looking for is the
  market to encrypt and sign an APK in real time for a particular user/
  phone when downloaded.  Each download would result in different bytes
  for each user/phone

  This doesn't necessarily preclude the installation of unencrypted apps
  does it?  I totally agree that we need app distribution capabilities
  outside the context of Android Market -- it's a necessity for an open
  platform.

  In a nutshell, what I'm hoping LVL can grow into is a system that
  packages license verification in a way that is really really hard to
  remove.  It seems like we've got half of that equation nicely under
  way with LVL in its current form.

  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: Android Market Licensing: Now Available!

2010-08-24 Thread keyeslabs
Seems like I was unfortunately very right on this prediction.  Just
off by a few days :).

LVL is flawed in the same ways that AAL (and other similar approaches)
is flawed.  Google could do better, and I hope that they will.
Obfuscation isn't really going to do much to improve the situation.
What is really needed is O/S-level and app store support for signing
apps (in real time) based on user credentials, application authors,
and phone characteristics.  The dependence on the android market app
is a single point of failure that is too easy to search for and find
regardless of how obfuscated your code is.

From a technical standpoint, LVL will help to some degree, but I've
got to think that in terms of P.R., Google did themselves more harm
than good here.

Dave

On Jul 31, 5:21 pm, keyeslabs keyes...@gmail.com wrote:
 Speaking as someone who has traveled this road before with my own
 implementation of basically the same approach, obfuscation will be
 critical.  With AAL, it took about three days for someone to crack the
 app.  The process looks something like this:  decompile the apk using
 a freely available open source tool, find the code that invokes the
 licensing check, skip it, recompile and repackage the apk.
 Obsfucation will make this more difficult, but not all that tough
 given the usage of intents for communication betweenLVLand the
 market tool.

 Don't get me wrong, I think thatLVLwill offer a much needed road
 bump for pirates -- stealing apps will actually require a crack of
 each app.  This is a viable approach to license verification and
 that's why I took the same route with AAL months ago.  It certainly
 seems like google could have gone further though.

 The coverage of this has been very extensive in the press, and I would
 guess the coverage of the first released crack within a week or two
 will also make a fairly big splash, which won't look great for the
 platform.

 All told though, I thinkLVLis a positive step for the platform.
 Speaking as someone that was seeing 90%+ piracy rates before
 implementing something very similar toLVLin my own apps, I'm happy
 to see google addressing the problem.

 DaveKeyes

 On Jul 27, 5:44 pm, sblantipodi perini.dav...@dpsoftware.org wrote:

  I haven't understood if using this library external obfuscation
  (proguard for example) is needed
  for security reason or if we can avoid using external obfuscator, it's
  quite a pain using proguard in netbeans plus android sdk.

  On Jul 27, 10:24 pm, Sebastian Rodriguez srodrig...@gmail.com wrote:

   I agree with Anton Persson. When will Google realize that opening the paid
   market to all the other countries is crucial for the market environment :(
   We don't have access to them here in Singapore either.

   But this is a major step already, let's hope for even better!

   Seb

   On 28 July 2010 04:19, Kaj Bjurman kaj.bjur...@gmail.com wrote:

I saw that entry, and have a question.

What will happen if the user doesn't have network connectivity? Many
users turn of data traffic when they travel to other countries, but
the probably still want to use the licensed applications.

On 27 Juli, 19:55, Trevor Johns trevorjo...@google.com wrote:
 Android fans,
 For those of you who haven't already heard through our blog, we've
 just launched the Android Market licensing service:

http://android-developers.blogspot.com/2010/07/licensing-service-for-...

 From the above blog post:

 This simple and free service provides a secure mechanism to manage
 access to all Android Market paid applications targeting Android 1.5
 or higher. At run time, with the inclusion of a set of libraries
 provided by us, your application can query the Android Market
 licensing server to determine the license status of your users. It
 returns information on whether your users are authorized to use the
 app based on stored sales records.

 Developer documentation is available here:

http://developer.android.com/guide/publishing/licensing.html

 Happy coding!

 --
 Trevor Johns
 Google Developer Programs, Androidhttp://developer.android.com

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

   --
   Sebastien Rodriguez

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

[android-developers] Re: Licensing server, app cracked.

2010-08-24 Thread keyeslabs
If you can't wait, here's something to get you started that worked for
me.  It's what I used to obfuscate AAL, which was a library not an
Android App, and thus a bit simpler.

You'll need to adjust what you keep (e.g., don't obfuscate) so that
you don't shred classes that are referenced by your manifest, or
you'll have to update your manifest after the fact.

taskdef resource=proguard/ant/task.properties
 classpath=/adev/proguard4.4/lib/proguard.jar /

proguard
  -libraryjars ${android-jar}
  -injars  ${build-location}/license.jar
  -outjars ${build-location}/license-rel.jar
  -dontpreverify
  -dontoptimize
  -dontshrink
  -dontusemixedcaseclassnames
  -repackageclasses ''
  -allowaccessmodification
  -optimizationpasses 1
  -verbose

  -keep public class com.keyes.license.LicenseManager {
public *;
  }

  -keep public class com.keyes.license.CheckLicenseCallback {
public *;
  }
  -keep public class com.keyes.license.LicenseException {
public *;
  }
/proguard


Dave

On Aug 24, 6:53 pm, sblantipodi perini.dav...@dpsoftware.org wrote:
 As 
 title,http://android-developers.blogspot.com/2010/08/licensing-server-news

 where is the guide to obfuscate our 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: Android Market Licensing: Now Available!

2010-07-31 Thread keyeslabs
Speaking as someone who has traveled this road before with my own
implementation of basically the same approach, obfuscation will be
critical.  With AAL, it took about three days for someone to crack the
app.  The process looks something like this:  decompile the apk using
a freely available open source tool, find the code that invokes the
licensing check, skip it, recompile and repackage the apk.
Obsfucation will make this more difficult, but not all that tough
given the usage of intents for communication between LVL and the
market tool.

Don't get me wrong, I think that LVL will offer a much needed road
bump for pirates -- stealing apps will actually require a crack of
each app.  This is a viable approach to license verification and
that's why I took the same route with AAL months ago.  It certainly
seems like google could have gone further though.

The coverage of this has been very extensive in the press, and I would
guess the coverage of the first released crack within a week or two
will also make a fairly big splash, which won't look great for the
platform.

All told though, I think LVL is a positive step for the platform.
Speaking as someone that was seeing 90%+ piracy rates before
implementing something very similar to LVL in my own apps, I'm happy
to see google addressing the problem.

Dave Keyes




On Jul 27, 5:44 pm, sblantipodi perini.dav...@dpsoftware.org wrote:
 I haven't understood if using this library external obfuscation
 (proguard for example) is needed
 for security reason or if we can avoid using external obfuscator, it's
 quite a pain using proguard in netbeans plus android sdk.

 On Jul 27, 10:24 pm, Sebastian Rodriguez srodrig...@gmail.com wrote:



  I agree with Anton Persson. When will Google realize that opening the paid
  market to all the other countries is crucial for the market environment :(
  We don't have access to them here in Singapore either.

  But this is a major step already, let's hope for even better!

  Seb

  On 28 July 2010 04:19, Kaj Bjurman kaj.bjur...@gmail.com wrote:

   I saw that entry, and have a question.

   What will happen if the user doesn't have network connectivity? Many
   users turn of data traffic when they travel to other countries, but
   the probably still want to use the licensed applications.

   On 27 Juli, 19:55, Trevor Johns trevorjo...@google.com wrote:
Android fans,
For those of you who haven't already heard through our blog, we've
just launched the Android Market licensing service:

   http://android-developers.blogspot.com/2010/07/licensing-service-for-...

From the above blog post:

This simple and free service provides a secure mechanism to manage
access to all Android Market paid applications targeting Android 1.5
or higher. At run time, with the inclusion of a set of libraries
provided by us, your application can query the Android Market
licensing server to determine the license status of your users. It
returns information on whether your users are authorized to use the
app based on stored sales records.

Developer documentation is available here:

   http://developer.android.com/guide/publishing/licensing.html

Happy coding!

--
Trevor Johns
Google Developer Programs, Androidhttp://developer.android.com

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

  --
  Sebastien Rodriguez

-- 
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-06-18 Thread keyeslabs
I would be interested in discussing this, Al.  Assuming that our use
cases align and that your APIs provide necessary functionality, it
should work quite nicely.

As for the code base, I split LicenseManager and LicenseManagerImpl
primarily to facilitate obfuscation (I don't obfuscate LicenseManager
and a few other classes in the public API, but the remainder of the
classes get scrambled up during the build process).  There will be
some level of refactoring that will need to be done in
LicenseManagerImpl to support pluggable purchase verification
providers, but this shouldn't be too difficult.

Let's take this into the AAL message group to discuss further.

Dave

On Jun 18, 3:45 am, Al Sutton a...@funkyandroid.com wrote:
 Dave,

 Would you be interested in working with us at AndAppStore to offer an
 alternative purchase location?

 From your code I can see that we could create a LicenseManagerImpl
 which interfaces into our purchase checking system to cover the
 license management aspect, and we accept payments via PayPal so it
 looks like a good fit. I don't really want to spend time doing it if
 you're not interested in incorporating the code into the project
 because we don't want to create fork your code base just to support
 us.

 What do you think?

 Al.

 On Jun 17, 9:31 pm, keyeslabs keyes...@gmail.com wrote:

  Biggest issues that I've seen for my own apps (and those other brave
  souls who use AAL) have been related to legitimate users that somehow
  can't validate their purchase.  For example:

  1. user buys app on marke using a 2.0-based phone.  validation happens
  just fine.
  2. user backs up app, flashes rom to as-of-yet unreleased 2.2, and
  restores app
  3. Upon startup of the app on the newly-flashed phone, AAL properly
  detects the missing license.
  4. AAL fails validation, since 2.2-based devices can't see paid apps
  on the market since Google hasn't registered that release in the
  market database.

  Other fringe scenarios similar to this.  When I deployed AAL into my
  apps, I had a few loud complainers that has tapered off now and I
  don't really have any serious problems.  I now get a lot of emails
  from people in countries that can't buy from Android market.

  Overall, AAL seems to be working quite well.

  Lately I've been wondering if there's a way that I can offer the user
  an alternative mechanism for purchasing the pirated app.  For
  example, I upload to Android Market, pirates post on download boards,
  others download, and then when validation fails offer to let them buy
  from PayPal and license things that way.  I don't think that would
  break any of the Android Market rules (since the pirated version isn't
  being distributed by the market -- it's being distributed by a
  pirate board), and it sure would open up distribution to markets that
  Google doesn't currently serve.

  Dave

  On Jun 17, 3:39 pm, String sterling.ud...@googlemail.com wrote:

   On Jun 17, 8:05 pm, keyeslabs keyes...@gmail.com wrote:

   AALhas now been open-sourced.  Find details here:  http://bit.ly/coz0yB.

   Cool. Thanks for sharing it.

   Are you still having good luck usingAALwith your own app(s)? Any
   downsides you've found?

   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: Newer Market Comments Disappearing?

2010-06-18 Thread keyeslabs

There could be for a number of reasons, most likely being that the
user either changed or deleted their comment.  The market only records
one comment per user per app.  The layered market services scan the
market via its private API and maintain their own cache of the
comments.

Dave

On Jun 18, 5:40 pm, gcstang gcst...@gmail.com wrote:
 I've noticed over some time that some comments are disappearing and
 not just old ones but ones that have recently been placed, is this a
 bug?

 The comment that I noticed was placed on 6/3 but doesn't show on the
 phone, it only shows on some sites that index the market.

-- 
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-06-17 Thread keyeslabs
AAL has now been open-sourced.  Find details here:  http://bit.ly/coz0yB.

On May 10, 4:24 pm, niko20 nikolatesl...@yahoo.com wrote:
 Well I will say one thing, if it was opened up, that would allow each
 dev to make small code changes, so it would never be cookie cutter
 then...however, I am not against that you are trying to make some
 income from it, I mean you still did have to do the work.

 -niko

 On May 10, 10:06 am, dadical keyes...@gmail.com wrote:



  That argument assumes that I don't respond to those cracks with
  improvements toAALthat 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 circumventAAL.  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 usingAAL
   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 
  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-06-17 Thread keyeslabs
Biggest issues that I've seen for my own apps (and those other brave
souls who use AAL) have been related to legitimate users that somehow
can't validate their purchase.  For example:

1. user buys app on marke using a 2.0-based phone.  validation happens
just fine.
2. user backs up app, flashes rom to as-of-yet unreleased 2.2, and
restores app
3. Upon startup of the app on the newly-flashed phone, AAL properly
detects the missing license.
4. AAL fails validation, since 2.2-based devices can't see paid apps
on the market since Google hasn't registered that release in the
market database.

Other fringe scenarios similar to this.  When I deployed AAL into my
apps, I had a few loud complainers that has tapered off now and I
don't really have any serious problems.  I now get a lot of emails
from people in countries that can't buy from Android market.

Overall, AAL seems to be working quite well.

Lately I've been wondering if there's a way that I can offer the user
an alternative mechanism for purchasing the pirated app.  For
example, I upload to Android Market, pirates post on download boards,
others download, and then when validation fails offer to let them buy
from PayPal and license things that way.  I don't think that would
break any of the Android Market rules (since the pirated version isn't
being distributed by the market -- it's being distributed by a
pirate board), and it sure would open up distribution to markets that
Google doesn't currently serve.

Dave

On Jun 17, 3:39 pm, String sterling.ud...@googlemail.com wrote:
 On Jun 17, 8:05 pm, keyeslabs keyes...@gmail.com wrote:

 AALhas now been open-sourced.  Find details here:  http://bit.ly/coz0yB.

 Cool. Thanks for sharing it.

 Are you still having good luck usingAALwith your own app(s)? Any
 downsides you've found?

 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: Service gets killed (due to activity ?)

2010-06-10 Thread keyeslabs
If you have a very good reason for doing so (one that you're willing
to defend to users and the likes of Mark) then you can force the
service to have the same priority as an activity use setForeground.
The caveat is that you must keep a notification visible for your
service.

On Jun 10, 11:00 am, Tejas tej...@gmail.com wrote:
 Hi,

 I have a service running in the background. It starts on device boot.
 Also, I have one activity (that appears in the task launcher) in which
 I have provided buttons to start and stop the service.

 Now, I install the application on the phone and I start the service
 using this activity (and not on-device boot). As expected the service
 starts and starts doing its designated task. I no-longer need the
 activity. So it goes out of sight and may not be required for a long
 time now.

 My question is, now, if the android platform kills this activity, will
 it kill my service too ? (This is because I see that after few hours,
 my service is not running anymore.). If this is true, then will the
 service continue running longer if the service was started on device
 boot.

 Regards,
 Tejas

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