Sly*_*Sly 20 plugins android google-play
有人可以形容我在Android应用程序中实现插件的解决方案吗?它如何在Android Market上销售?
通常,您创建一个游戏,其中4个第一级是免费的.然后,用户应该使用Android Market购买东西来解锁其他级别.
一个解决方案可能是列出手机上设置的名为com.company.myApp.additionalLevelSet1的软件包,但它看起来根本不安全!(用户可以手动设置插件包,因此可以自由解锁其他功能)
在iPhone上,您可以使用InAppPurchase购买非消耗品或消耗品.
任何帮助或建议将不胜感激.谢谢!
Lio*_*ior 27
在你的情况下这很简单,因为你不需要任何额外的逻辑,只需要更多的级别,所以我将坚持这个特定的情况:
您可以(或可能已经)将您的游戏关卡保存为.apk中的资源,因此插件可以是标准.apk,不会出现在users-apps列表中.为了防止它出现,只需不要声明类别启动器:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
一旦片段上方也不要出现在你的插件的AndroidManifest,它不会给用户直接访问.
当你的主要游戏活动开始时,它应该检查是否存在插件,你可以通过调用来完成PackageManager.queryIntentActivities.并查询您在插件的AndroidManifest文件中声明的特定意图,例如:
<intent-filter>
<action android:name="com.your.package.name.LEVEL_PACK" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
然后查询代码为:
PackageManager packageManager = getPackageManager();
Intent levelsIntent = new Intent("com.your.package.name.LEVEL_PACK");
List<ResolveInfo> levelPacks = packageManager.queryIntentActivities(levelsIntent, 0);
Run Code Online (Sandbox Code Playgroud)
有更多的方法可以做到这一点,但这是非常简单和直接的.
最后一步是从已安装的级别包中访问级别.您可以通过以下方式执行此操作:PackageManager.getResourcesForActivity并加载相关资源并按照您的意愿使用它们.
| 归档时间: |
|
| 查看次数: |
7493 次 |
| 最近记录: |