据谷歌称,在发布我的Android应用程序之前,我必须" 停用源代码中对Log方法的任何调用 ".摘录自出版物清单的第5部分:
在构建应用程序以进行发布之前,请确保停用日志记录并禁用调试选项.您可以通过删除源文件中对Log方法的调用来停用日志记录.
我的开源项目很大,每次发布时手动执行都很痛苦.此外,删除日志行可能很棘手,例如:
if(condition)
Log.d(LOG_TAG, "Something");
data.load();
data.show();
Run Code Online (Sandbox Code Playgroud)
如果我对日志行进行注释,则条件适用于下一行,并且可能不会调用load().这种情况是否足够罕见,我可以决定它不应该存在?
这是在官方清单上,所以我想很多人会定期这样做.
那么,如何有效但安全地删除所有日志行?
对于我们的应用程序的下一个版本,我想更改sharedUserId,因为我们现在使用内部控制仪表板应用程序,该应用程序必须写入其他应用程序的设置文件.
但由于该应用程序已安装在许多手机上,这是一个问题吗?我在模拟器上运行了一些测试,我在设备日志中看到了无法写入*.bak版本的首选项文件的例外情况.不确定是多么重要.奇怪的是,即使使用另一个Linux用户ID创建了shared_prefs文件夹,安全设置似乎仍然有效.
有没有人以前尝试过这个?
我几乎准备好将应用程序上传到 Google Play,但我想做得好,没有错误(或试图避免错误),所以我遵循了这个问题:在将 android 应用程序发布到市场之前的“待办事项”列表[关闭]
但是,在那里我看到了一个让我更加关注的答案,因为我不知道这些属性。这是我参考的答案。
答案建议声明android:process和android:sharedUserId属性,因此我查找了该文档。
寻找有关这两个属性的一些信息,我发现这个答案的android:process属性,这让我看到更清晰这个属性如何都可以使用。我可以从那里得到的是,您可以声明您的活动将在不同的进程中启动,以避免在运行主进程时出现内存限制。如果我错了,请纠正我。
远没有遇到android:sharedUserId属性的详细文档,我尝试在这里查看一些问题:
我可以从那里得到的是我可以在应用程序之间共享一些信息。如果我错了,再次纠正我。
在我的应用程序中,我只在其中使用 Google 地图,所以我想到了一些问题:
我应该总是声明android:process并android:sharedUserId作为我之前链接的答案所建议的吗?
如果是真的,是否会产生一些安全问题?我不知道这是否可行,但我认为如果某些应用程序可以访问您的数据应用程序,那么这可能是一个安全问题(取决于您的应用程序中拥有的数据类型)。
我应该用什么名字android:sharedUserId?它可以是我想要的任何名称还是必须是特定名称(例如,包名称)以便其他应用程序可以访问我的应用程序数据?那是android:sharedUserId公开的吗?
如果我现在不希望我的应用程序共享信息,但将来我想这样做。我应该在我android:sharedUserId第一次在市场上发布时声明吗?那么其余的应用程序可以访问我的数据吗?
android:process例如,我应该声明执行我的地图Fragment吗?注意:我对这些属性完全感到困惑,所以也许问题的格式并不完全正确(在句法或概念上)。请纠正我在这个问题上可能犯的任何错误。我试图复制尽可能多的信息,但这还不足以解决我的疑虑。
提前致谢!
在将第一个应用程序发布到市场时,将应用程序发布到Android市场有哪些方法?