如何使用MFMailComposeViewController将设备信息自动附加到新电子邮件

时间:2019-01-25 08:54:32

标签: ios swift testflight mfmailcomposeviewcontroller mfmailcomposer

如果您使用TestFlight发送Beta反馈,它将自动附加一个名为device_information.txt的文件,其中包括有关设备的一些基本信息。

我想在我的应用中创建一个支持按钮,并且我正在使用MFMailComposeViewController创建新电子邮件。如何检索(或创建)device_information.txt文件,然后将其附加到新电子邮件中?

这是device_information.txt文件将包含以下内容的示例:

App Information:
App Name: [App Name Here]
App Version: 1.0
Installed App Version: 1.0

Device Information:
Device: iPhone6,2
iOS Version: 12.1.2
Language: en-AU (English)
Carrier: [Carrier Here]
Timezone: [Timezone Here]
Architecture: N/A
Connection Status: Cellular data
Paired Apple Watch: N/A

TestFlight如何实现这一目标?这一定有可能,因此,如果有人可以引导我朝正确的方向前进,我将不胜感激。

1 个答案:

答案 0 :(得分:2)

您可以在UIDevice类中找到大多数此类信息 https://developer.apple.com/documentation/uikit/uidevice

您可以像下面这样将所需信息附加到邮件文本中:

   MFMailComposeViewController *controller = [[MFMailComposeViewController alloc] init];
   controller.mailComposeDelegate = self;
   [controller setMessageBody:"your message here" isHTML:NO];

或使用如下附件:

    [controller addAttachmentData:data mimeType:@"text/plain" fileName:@"test.txt"];

在Swift中:

let controller = MFMailComposeViewController()
controller.mailComposeDelegate = self
controller.setMessageBody("My message", isHTML:false)
controller.addAttachmentData(data as Data, mimeType: "text/plain", fileName: "test.txt")