我已经在Android电子市场上有一个免费的应用程序,但我想添加一个具有更好功能的付费版本.我不能上传相同的一些更改的常量来解锁这些功能,因为市场告诉我,我已经在市场上有一个带有该包名称的应用程序.
这样做最干净的方法是什么?
我正在开发一组仅在某些品牌中有所区别的应用程序(想想不同的运动队); 但是,我遇到了一个问题,我正在为所有特定品牌的应用程序使用一个Library项目,并希望为所有这些应用程序使用相同的ContentProvider.当我创建ContentProvider时,我将AUTHORITY声明为类中的常量(根据dev示例代码),并且我在清单文件中的每个特定应用程序中使用相同的权限.看起来我不能在每个应用程序中使用相同的权限,因为我在尝试安装第二个应用程序时遇到此错误(我安装一个品牌的应用程序,但第二个安装):
WARN/PackageManager(66): Can't install because provider name com.xxx.Provider (in package com.xxx) is already used by com.zzz
Run Code Online (Sandbox Code Playgroud)
我尝试了几种方法,但似乎没有一种方法可行.我还没有完成的一个想法是创建一个库jar,只省略我拥有的Provider类,并在每个特定的应用程序中自定义它.关于如何解决这个问题而不诉诸于此的任何想法?
我已经建立了一个游戏应用程序的免费版本,现在市场上有一个像com.mycompany.myfreegame这样的名字.现在我想制作一个付费版本.毫无疑问,对于未来几年所需的两个版本都将进行调整和错误修复,因此我想以尽可能紧凑的方式封装免费与付费信息的编码,以便我可以同时修复两个版本中的错误.
如果在运行时处理了两个版本之间的全部差异,那么我可以在源代码中设置一个标志,这将是问题的结束.不幸的是还有两件事需要考虑,
实现这一目标的最简单方法是什么?
我们有几个应用程序在布局和代码上非常相似.唯一的区别是我们将切换图形元素,并对单个常量文件和字符串文件进行更改.当然,这有几个问题 - 第一个是命名空间.拥有相同名称空间的应用程序将覆盖任何其他应用程序.
这样做有什么建议?目前我们的namesapce是:com.company.appname我想我可以这样做:com.company.appname.appversion
我已经看到有关蚂蚁脚本的帖子有助于此,但我想知道现在是否有更流畅的解决方案.
是否有可能在谷歌的Android Market一个列出单个 APK的两个免费和付费版本?
到目前为止,我只发现这个提示在免费版本中创建一个链接到付费版本的按钮,但是IIUC这些仍然是2个单独的APK.
我还发现了从相同代码创建免费/付费版本的参考,但仍然指的是2个单独的APK.
我感兴趣的是一种(谷歌)Android Market方式,提供类似于PayPal MPL的功能(即一个应用程序可以完成所有功能).这可能吗?
编辑:根据下面的答案,似乎谷歌的应用内计费促进了这一点.
但是,LVL的要求和限制说:
许可目前仅适用于付费应用,因为免费应用被视为所有用户的许可.如果您的应用程序已经免费发布,您将无法上载使用许可的新版本.
我知道LVL与In-App Billing不同,但应用程序结算工作肯定需要LVL(如果仅使用密钥).那怎么调和呢?
所以我正在制作这个应用程序。我想要一个免费的应用程序和付费版本。我尝试在谷歌上搜索如何实现它,但我找不到任何合适的线程。从一些研究中我发现应用内购买是一种选择,但我并不完全清楚。有人可以向我解释一下这是如何做到的吗?谢谢