我正准备将我的第一个应用程序发布到Android市场,并且我想知道你们中的任何人是否对您发布应用程序时遇到的任何提示有任何提示,记录下来。
在将应用发布到市场上之前,有任何隐藏的警告和/或关于做什么的想法吗?例如,我的一个伙伴建议我删除代码中的所有注释,以防万一有人进入源代码,从而使可能的“代码劫持者”更难于解密代码。我认为这是一个明智的建议。
在将其应用发布到Android市场之前,需要做些什么?
我正准备将我的第一个应用程序发布到Android市场,并且我想知道你们中的任何人是否对您发布应用程序时遇到的任何提示有任何提示,记录下来。
在将应用发布到市场上之前,有任何隐藏的警告和/或关于做什么的想法吗?例如,我的一个伙伴建议我删除代码中的所有注释,以防万一有人进入源代码,从而使可能的“代码劫持者”更难于解密代码。我认为这是一个明智的建议。
在将其应用发布到Android市场之前,需要做些什么?
Answers:
希望还不算太晚,这里有一些建议:
在一周结束时(通常是星期四下午)启动您的应用程序。为什么这样?嗯,没有公司愿意在周末结束前1.5天才发布应用程序->太危险了(以防万一需要快速反应的问题)。
在您的应用程序上使用proguard(通常,您只需proguard.config=proguard.cfg
在default.properties
文件中添加以下行:)。这将优化,缩小和混淆您的代码,对于防止代码窃贼非常有用。您不必删除任何注释,它们会在编译时自动删除。
针对大多数屏幕尺寸优化布局。您可以通过在AndroidStudio或Eclipse中编辑布局时简单地更改屏幕大小来做到这一点。
尝试/捕获UI上的所有异常,并显示简单的Toast,向用户指示发生了错误。同时,使用Crashlytics或类似工具检索错误。
不要使用太多的.jar库,而是选择库项目(优化代码大小)并使用gradle进行添加。
最好使用矢量图像,因为它会减小APK的大小并正确安装在所有设备上。
不要使用Android偏好设置窗口->并不是很漂亮的窗口,即使它在Android准则中,也请您自己设置页面。但是,如果您保留Android偏好设置:请考虑添加图标和颜色。
不要在主屏幕(this.requestWindowFeature(Window.FEATURE_NO_TITLE);
)上显示应用程序的标题:好的品牌不需要在屏幕上占用太多空间就可以识别出来(在菜单中或不总是可见的地方显示一些图标或标题) ,并this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
在处理游戏和非常逼真的内容时考虑使用全屏模式()。
使用Google Analytics(分析),Fabric Answers或Flurry进行将来的分析->尝试获取尽可能多的信息,但不要抓住任何违反客户匿名身份的信息。不要忘记检索用户端发生的异常(错误和堆栈跟踪)。
要求您的朋友进行猴子测试,向用户学习通常会带来很多好处(例如优先级和新思路)。
考虑在完成所有功能(仅最重要的功能)之前发布您的应用程序,除了主要功能之外,您还不知道用户会想要或需要什么。
在应用中添加“更多应用”或“来自开发人员的更多内容”部分,这是免费的广告。
添加“发送反馈”部分,使用户可以要求新功能或报告一些错误。
通过在Web上某个地方(例如Crowdin)提供strings.xml,要求用户翻译您的应用程序。
使用模拟器在每个Android版本上尝试您的应用->这样,就会检测到许多错误或设计问题。为此,您可以使用提供的仿真器,也可以使用Genymotion(Genymotion具有很多非常有用的功能)。
考虑一下应用程序的名称->您将使用哪些关键字搜索应用程序?这些关键字应该是您应用的名称(Google会通过这种方式帮助您被发现)。
考虑在应用程序描述中包括关键字,但要采用描述性的方式(使用关键字使句子易于理解)。切勿按说明中那样添加关键字列表。
成为第一个为您的应用评分5星的人,并要求您的家人和朋友也这样做->这可能会影响未来的用户评分。
考虑使用Google来翻译您的应用程序,以获取描述信息,要么是strings.xml,要么是两者。
考虑在您的应用中展示广告,并使用中介来提高AdMob的收入。
与其提供付费版本,不如考虑进行应用内结算->用户更有可能付费而不是付费版本。
在应用程序中添加更改日志->用户通常喜欢知道自上一版本以来发生了什么更改。
为帮助您的用户添加“感谢”部分->这将使用户参与您的产品。
在您的应用中添加“如果您喜欢此应用,请给它评分”链接(指向您的Google Play描述)->您将获得5星(通常是在启动时弹出窗口,或者在执行功能操作后弹出)。
考虑通过应用程序中的“提示”或“说明”部分来说明您的产品。
将密钥库和凭据信息保存在安全的地方。如果您丢失了密钥库,则将无法发布应用程序的更新。
使您的图标真正简单明了。图标是使用户下载您的应用程序的第一件事,也是主要的最后一件事。
除非不可能,否则最好使用外部安装(android:installLocation="preferExternal"
在AndroidManifest.xml中)。
阅读AppAnnie技巧和博客文章,它将为您提供有关如何改善ASO并帮助您更好地了解用户的提示。
applicationId
发布应用后无法重置。很多时候,它包含您不想透露的单词(例如您的用户名)。在build.gradle
您的Android Studio项目文件中进行设置。
确实,不必费心删除代码注释。您的源代码不会传递到用户的电话上,只有经过编译的代码才能到达该电话,并且该源代码完全不包含对您的注释的任何引用。
Android用户倾向于欣赏应用程序越小越好,因此请仔细检查您仅包含仍在应用程序中使用的资源(图像等)。对应用程序中的任何.png图像使用OptiPNG / PNGCrush-可以将图像文件大小减少约10%,这可能是整个应用程序大小的重要部分。
另外,请使用音频编辑器(例如Audacity)尽可能减小任何音频的大小。单声道OGG Vorbis文件通常是最好的选择,并且在手机上听起来足够好。
不用担心评论。但是,如果您担心应用程序被恶意解剖,请通过ProGuard等混淆器运行它。
我会提供的其他提示:
不知道您是否曾经看过这个,但是您应该使用猴子来锻炼您的UI- 我的应用程序只有一次崩溃,但是如果我先用Monkey测试过它,那么它就不会有任何崩溃。
我将添加一个显而易见但重要的提示:将签名密钥保存在安全的地方,然后进行备份。如果要让Eclipse为您管理它,请注意它在何处创建密钥库,并保存它的备份副本。并且不要忘记密钥库或单个签名密钥的密码。
原因:您需要使用与原始应用签名相同的证书对应用更新进行签名。如果您丢失了该证书(或无法访问它),则无法更新您的应用程序。您必须在Android市场上创建一个新列表。
不要忘记在清单中将debuggable = false设置为false。那让我有些困惑了。
我不确定,但是我认为这将包括很多信息,从而使代码黑客的生活更加轻松。
我记得几年前我不小心删除了Java项目的源代码,让我感到震惊的是我没有备份!我使用了一个名为jad的实用程序在生产服务器上反编译jar文件,它具有完整的所有变量并且几乎是完美的。我不记得这些注释是否存在,但是无论如何我还是没有在它们中放很多注释:)这是因为编译时我包括了符号。
声明android:process
和android:sharedUserId
属性!