小编mon*_*c77的帖子

MIME标头无法通过Gmail API实现

我正在尝试通过Gmail API自动创建草稿,我希望这些草稿能够回复现有的电子邮件.为此,我认为我需要设置"threadId"标题(特定于Gmail),"引用"标题和"In-Reply-To"标题.此外,要让Gmail将邮件视为回复,"主题"标题​​必须与原始电子邮件匹配.

我将所有这些标头硬编码到MIMEText对象中,然后将消息作为字符串进行base-64编码(urlsafe)并让Gmail API提供它.但是,"threadId","In-Reply-To"和"References"标题似乎没有在发送的电子邮件中显示,因为单击"显示原始"时显示的MIME中不存在它们在Gmail用户界面中.

new = MIMEText("reply body text")
new["In-Reply-To"] = "[Message-ID of email to reply to]" #looks like <..@mail.gmail.com>
new["References"] = "[Message-ID of email to reply to]" #looks like <..@mail.gmail.com>
new["threadId"] = "[threadId of message to reply to]" #looks like 14ec476abbce3421
new["Subject"] = "Testsend2"
new["To"] = "[Email to send to]"
new["From"] = "[Email to send from]"

messageToDraft = {'raw': base64.urlsafe_b64encode(new.as_string())}
message = {'message': messageToDraft}
draft = service.users().drafts().create(userId="me", body=message).execute()
Run Code Online (Sandbox Code Playgroud)

python mime gmail-api

6
推荐指数
1
解决办法
1318
查看次数

iOS 16 bug - ViewController 不响应点击

编辑:根据评论者的要求,我们创建了一个小项目,您可以使用它来重现该问题。https://github.com/Coursicle/ReducingiOS16PopUpControllerBug。请注意,当您在 iOS 15 或更低版本上运行此项目时,弹出窗口会响应点击。在 iOS 16 上,它不响应任何点击。

我们有一个视图控制器,允许用户为我们的应用程序中的频道设置通知首选项。视图从屏幕底部向上滑动,并使用半透明背景视图使屏幕的其余部分变暗。在 iOS 15 及更低版本中,它按预期工作:您可以通过点击背景来关闭视图,或者选择一个新选项并点击“应用”。然而,在 iOS 16 中,视图和半透明背景视图对任何点击都没有响应。

最令人惊讶的是,我们有几乎相同的视图控制器(具有半透明背景视图的视图控制器,以弹出窗口的形式呈现UITabBarController等),它们在 iOS 15 和 iOS 16 中都可以正常工作。 iOS 16 中的工作视图和非工作视图之间似乎存在任何显着差异。

我们尝试过的事情:

  • 除了UITabBarController呈现弹出窗口之外还有其他视图控制器。
  • 设置 UIWindow sendEvent 断点,这表明点击击中了正确的元素,例如<UILabel: 0x133db3e10; frame = (78 0; 208 48); text = 'Every Post'; backgroundColor = UIExtendedGrayColorSpace 0 0; layer = <_UILabelLayer: 0x60000233c0a0>
  • 直观地检查视图层次结构,这表明视图和背景位于最顶层,因此应该响应事件。这是图像
  • 为视图和背景视图上的各种元素显式设置isUserInteractionEnabled为。true

它看起来是这样的: 视觉示例

这是创建并显示弹出窗口的代码:

let rootController = UIApplication.shared.windows.first!.rootViewController as! CustomTabBar
let popover = NotificationSettingsPopUpController(customTabBarController: rootController, delegateController: self) …
Run Code Online (Sandbox Code Playgroud)

uiviewcontroller uiview ios swift ios16

5
推荐指数
1
解决办法
1791
查看次数

标签 统计

gmail-api ×1

ios ×1

ios16 ×1

mime ×1

python ×1

swift ×1

uiview ×1

uiviewcontroller ×1