我在安卓市场上发布了两个版本的应用,一个是付费版,一个是免费版。但我想将应用内购功能整合到我的免费应用中,并对订阅用户收取更低价格的订阅费用,比付费应用的当前价格还要低。
但对于现有客户应该如何处理呢?让他们再次为使用已解锁功能而付费似乎不公平,因为他们是我的应用早期用户。理想情况下,我希望实现一些方法,让现有用户可以获得在我的免费应用程序中已解锁的功能。
有没有什么好的方式来解决这个问题?提供一个良好的解决方案概述即可,我不介意研究如何实际实现这样的方法。
我在安卓市场上发布了两个版本的应用,一个是付费版,一个是免费版。但我想将应用内购功能整合到我的免费应用中,并对订阅用户收取更低价格的订阅费用,比付费应用的当前价格还要低。
但对于现有客户应该如何处理呢?让他们再次为使用已解锁功能而付费似乎不公平,因为他们是我的应用早期用户。理想情况下,我希望实现一些方法,让现有用户可以获得在我的免费应用程序中已解锁的功能。
有没有什么好的方式来解决这个问题?提供一个良好的解决方案概述即可,我不介意研究如何实际实现这样的方法。
PackageManager manager = getPackageManager();
if (manager.checkSignatures("old.package.name", "new.package.name")
== PackageManager.SIGNATURE_MATCH) {
//full version
}
示例:
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion){
if(oldVersion != 0 and oldVersion <= 34){
appConf.unlockAllFeatures()
}
}
如果我理解不正确,请纠正我。你提到订阅,这意味着用户详细信息+数据库+其他信息?
如果你的应用程序没有数据库或任何东西来保存用户记录。我建议发布更新的付费应用程序,并启用sharedpreference或公共ini文件。 使用免费应用程序读取相同的sharedpreferenece文件或您自己的ini文件以读取设置。
选择数据库将有助于未来进行更多的客户关系活动。
Android开发网站对此有很好的覆盖。
http://developer.android.com/guide/market/billing/index.html