Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/117.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 我的应用程序如何通过编程获取所有信息;s控制台日志?_Ios_Objective C_Swift - Fatal编程技术网

Ios 我的应用程序如何通过编程获取所有信息;s控制台日志?

Ios 我的应用程序如何通过编程获取所有信息;s控制台日志?,ios,objective-c,swift,Ios,Objective C,Swift,我正在寻找一种方法,以编程方式拉取控制台中显示的所有应用程序日志 我不想看到它们,所以使用xcode作为预览对我来说不起作用 我希望我的用户能够随时向我发送这些日志和反馈,因为应用程序处于测试阶段,简单的用户解释不足以在我这端进行适当的调试 因此,我想要的是类似于Android的logcat命令的iOS操作系统,它的使用方式如下: final Process process = Runtime.getRuntime().exec("logcat -d"); final InputStream

我正在寻找一种方法,以编程方式拉取控制台中显示的所有应用程序日志

我不想看到它们,所以使用xcode作为预览对我来说不起作用

我希望我的用户能够随时向我发送这些日志和反馈,因为应用程序处于测试阶段,简单的用户解释不足以在我这端进行适当的调试

因此,我想要的是类似于Android的logcat命令的iOS操作系统,它的使用方式如下:

final Process process = Runtime.getRuntime().exec("logcat -d");
final InputStream inputStream = process.getInputStream();
。。。然后,在我的例子中,您可以将流操作成您需要对其执行的任何操作,以创建一个字符串对象,并将其传递给我的日志服务

到目前为止,在我的调查中我只能找到一个选择,但如果有更容易集成到Swift应用程序中的东西,我将不胜感激

另外,os.log模块用于日志记录,但我无法找到允许加载日志的选项。或者我对以下解释的理解不够:

使用控制台应用程序或日志命令行工具查看和筛选日志消息


编辑:

终端用户不应以任何方式与日志交互,除非在调试日志开关打开时单击提交按钮

所以@matt NO-这不是链接问题的副本。 最终用户不必下载其他东西,以便能够为我提供自己的应用程序日志


这是用户体验的经典杀手,甚至不应该在链接帖子上被批准为解算器。

最后一点。该解释告诉您将手机连接到mac电脑,并使用“控制台”应用程序(或命令行工具)提取控制台日志,例如:

您提供的第一个链接(使用ASL)是我所知道的唯一一个以本机方式进行此操作的解决方案。2其他选择是:

  • 使用服务器/基于云的分析/事件跟踪系统记录每个用户的消息。如果有人发送问题,您可以搜索日志以查看发生了什么。(但要注意存储个人信息)
  • 您可以编写自己的类/函数,该类/函数接受字符串,并将其写入文本文件并将其记录到控制台。在开发过程中,您将在控制台中看到它,在野外,它将存储它。当您需要详细信息时,您可以读取文本文件并上传它。要小心它长得太大。同样,根据存储位置的不同,个人数据可能会成为一个问题

  • 我一直使用选项1。有许多免费的服务可以做到这一点,许多发布应用程序测试用户的解决方案也提供了这种开箱即用的服务。微软的AppCenter就是其中之一,我相信它是免费的,除非你想把CI/CD带到最后一点。该解释告诉您将手机连接到mac电脑,并使用“控制台”应用程序(或命令行工具)提取控制台日志,例如:

    您提供的第一个链接(使用ASL)是我所知道的唯一一个以本机方式进行此操作的解决方案。2其他选择是:

  • 使用服务器/基于云的分析/事件跟踪系统记录每个用户的消息。如果有人发送问题,您可以搜索日志以查看发生了什么。(但要注意存储个人信息)
  • 您可以编写自己的类/函数,该类/函数接受字符串,并将其写入文本文件并将其记录到控制台。在开发过程中,您将在控制台中看到它,在野外,它将存储它。当您需要详细信息时,您可以读取文本文件并上传它。要小心它长得太大。同样,根据存储位置的不同,个人数据可能会成为一个问题

  • 我一直使用选项1。有许多免费的服务可以做到这一点,许多发布应用程序测试用户的解决方案也提供了这种开箱即用的服务。微软应用中心就是其中之一,我相信它是免费的,除非你想要CI/CD

    谢谢你的参与。根据备选方案,第一个不是一个选项,但第二个是我希望一些伐木工人已经能够做到的。我得再仔细考虑一下我想:D@K15L33如果没有cocoapod已经在某处这样做了,我会感到惊讶。我从来没有用过,所以我不知道有什么,选项1更容易使用,我总是选择它。谢谢你的参与。根据备选方案,第一个不是一个选项,但第二个是我希望一些伐木工人已经能够做到的。我得再仔细考虑一下我想:D@K15L33如果没有cocoapod已经在某处这样做了,我会感到惊讶。我从来没有用过,所以我不知道任何,选项1更容易使用,我总是选择它。