A bit late to this thread, but I do have a few comments relevant to
the OP...

On Nov 16, 5:50 pm, Nathan <[email protected]> wrote:

> Besides all the other things I need to figure out to build this (I'm
> trying the library method), I'd like to transfer preferences smoothly
> from DEMO app to paid App.  I'm sure that some of you are old hands at
> this and can give some advice.

I use shared prefs and have code like this when I first start the paid
version:

final int sigMatch = pkgMgr.checkSignatures(getPackageName(),
sourcePkg);
if (sigMatch == PackageManager.SIGNATURE_MATCH) {
        // Import the settings
        Context importContext;
        try {
                importContext = createPackageContext(sourcePkg, 0);
        } catch (NameNotFoundException e) {
                return false;
        }
        final SharedPreferences importSrc =
importContext.getSharedPreferences(sourcePkg + "_preferences",
Context.MODE_WORLD_READABLE);
        final SharedPreferences importDest =
this.getSharedPreferences(this.getPackageName() + "_preferences",
Context.MODE_WORLD_READABLE);
        final Editor editor = importDest.edit();

        editor.putBoolean("pref_name_1", importSrc.getBoolean("pref_name_1",
false));
        editor.putString("pref_name_2", importSrc.getString("pref_name_2",
""));
        // etc, etc
}


The major caveat here is that your free version needs to have created
the prefs as WORLD_READABLE. I did that because I thought I might do
something like this someday, and my prefs aren't anything sensitive.
But if you didn't do that, then this approach won't work.

> I've tried the DEMO and LICENSE, where a license app will unlock the
> DEMO app and make it full.

Yeah, I've been round that block too. I did eventually get to a place
where I wasn't getting complaints; my license had a launcher intent
that popped a dialog telling the user to run the "trial", and a button
to remove itself from the launcher. Seemed to cover most of the idiots
out there. ;^)

But the kicker was, my sales increased several-fold when I ditched the
trial/license approach in favor of just having separate free & paid
versions. My best explanation is that it just makes more sense to
novice users; the free/paid paradigm is more widely understood than
trial/license. Or, in the words of one of my testers, "I don't want to
buy a license, I want to buy the app!" Whatever... the bottom line is
free/paid makes more money.

String

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to