問題タブ [mailcore2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - Mailcore2 - 特定の日付以降のメールを検索
mailcore2 iOS IMAP フレームワークの経験がある人がここにいるかどうかはわかりません。しかし、私が必要としているのは、特定の日付より後に送信されたすべての (または一部の) メールを取得することです。
mailcore2 はこの機能を提供しますか? 私は IMAP にこれがあることを知っており、mailcore2 にもあると思います。
objective-c - MailCore 操作を追跡する方法
を使用して OS X メール クライアントを構築しようとしてMailCore2
いますが、現在実行中の操作とその状態を知る必要があります — Mail.app アクティビティ モニター ウィンドウを考えてみてください。
API で使用できるものがいくつかあります。MCOIMAPSession
オブジェクトにはoperationQueueRunningChangeBlock
プロパティがありますが、セッションの状態が変化したとき (実行中 => 実行されていない) しか通知されませんが、それでは不十分です。
今のところ、私がやりたいことを行うには、それらをサブクラス化/ラップする必要があると思います。
ios - MailCore2、未読メッセージのみを取得するか、どれが未読かを知る
を使用してすべてのメッセージを取得できfetchMessagesByUIDOperationWithFolder:
ますが、いくつかのメッセージが未読で、ほとんどが既読で、一部がスター付きの場合、message.flags はすべて 0 を返します。
使用してみif ( message_.flags & MCOMessageFlagSeen )
ましたが、それでもすべてのフラグが0として返されます。
メッセージが未読かどうかを確認する適切な方法は何ですか?
iphone - clang: error no such file or directory: */Debug-iphonesimulator/MailCore/MailCore
iOS アプリで mailcore2 を使用して、デバイスで Gmail アカウントのメールを取得しています。mailcore2スクリプトbczでios sdkversionを6.1から6.0に変更しました。ios sdkversion 6.0を使用するiPhoneシミュレーター6.0を使用してアプリをコンパイルおよび実行しようとしています。そうすることで、次のclangエラーが発生します。
iPhone Simulator 6.1 (ios sdk 6.1 を使用) を使用してアプリをコンパイルして実行しようとすると、シェル スクリプトで ios sdk のバージョンを変更せずに、次のエラーが発生します。
ソースを準備する
ファイル lib/client.c にパッチを適用する
構築ツール
makemd5i386 を適切に生成
iPhoneOS 用のビルド - armv7
構成に失敗しました
コマンド /bin/sh が終了コード 1 で失敗しました
これらの問題は、ここ数日間私を夢中にさせています。君の力が必要。
ios - UID メッセージ フェッチ MailCore2 から電子メール シーケンス番号を取得します。
Mailcore のドキュメントを見ると、メールの UID を使用してフェッチを実行することで、メールのシーケンス番号を取得する方法が見つかります。しかし、Mailcore2 のドキュメントを見ると、これを達成する方法がわかりません。Mailcore2 には、どういうわけか表示されていない方法がありますか、またはこの情報をバブルアップする方法はありますか? コマンドラインで可能であることは知っていますが、iOS アプリ内からアクセスできるようにしたいと考えています。
編集:
私がこの機能を探している理由は次のとおりです。
一度に 10 件の最新のメールを取得して保存するネイティブ iOS クライアントがあります。さらに、クライアントは一度に次の 10 件の古いメールを取得して保存し、それが確認した最小の UID (minUID) も保存します。
そのため、クライアントがまだ保存または表示していない、サーバーに存在する次の 10 個の古い電子メールを継続的にフェッチできる必要があります。(そこに課題があります)。
最初は、10 のグループで UID ごとにメールをフェッチし、保存された minUID から 1 を引いた値を各フェッチの開始点として使用し、各フェッチの最後に minUID を更新することでこれを行いました。ただし、UID は必ずしも連続しているとは限らないため、返された電子メールの数は一定ではなく、場合によってはゼロでした。この問題を解決するには、(次の 10 通の古いメールを取得する前に) 保存されている minUID を使用してメールを取得し、現在のシーケンス番号を確認してから、そのシーケンスに基づいて次の 10 通の古いメールを取得することが役立つと考えました。番号。
c - MCOIMAPMessage の typedef enum プロパティを解釈する方法
私の質問は主に typedef 列挙型をどのように解釈するかについてですが、背景は次のとおりです。
私は MailCore2 を使用しており、フェッチしている個々の電子メール オブジェクトからフラグを読み取る方法を見つけようとしています。
私が取得した各 MCOIMAPMessage * メールには、「フラグ」と呼ばれるプロパティがあります。フラグは MCOMessageFlag 型です。MCOMessageFlag の定義を調べると、それが typedef 列挙型であることがわかります。
typedef 列挙型が実際にどのように機能するのか、特に '= 1 << 8' 型コンポーネントを使用したものがわからないため、メールのフラグ プロパティを読み取る方法について少し迷っています。
たとえば、サーバー上に MCOMessageFlagSeen と MCOMessageFlagFlagged の両方を持つ電子メール メッセージがあります。取得したメールにこれらのフラグのいずれか、または両方があるかどうか (可能であれば)、email.flags プロパティから確認したいと思います。ただし、上記の両方のフラグを持つ電子メールの「email.flags」をデバッガーで出力すると、5 という数字だけが返されます。それが上記の typedef 列挙型定義にどのように関連するのかわかりません。
最終的には、フラグが存在するかどうかに基づいて BOOL 値を設定したいと考えています。言い換えれば、私は次のようなことをしたいと思います:
もちろんこれはうまくいきませんが、これがアイデアです。これを達成する方法やtypedef列挙型を理解する方法を誰かが提案できますか?
ios - Mailcore 2 経由で Gmail をフェッチする: スレッド ID とメッセージ ID と UID
ユーザーが Mailcore2 を使用して Gmail アカウントにアクセスできるようにする iPad アプリケーションがあります。メッセージのフェッチ操作を実行したときに Mailcore2 が返す内容を詳しく調べるまで、Gmail のスレッド ID、メッセージ ID、および UID の違いを理解していると思っていました。誰かが私の混乱を明確にしてくれることを願っています。
Gmailのドキュメントから私が知っていると思うことは次のとおりです。
1) スレッド ID は、同じ会話の一部であるメッセージ (独自のメッセージ ID と UID を持つ) をグループ化します。
2) UID はメッセージに固有であり、それを含むフォルダーにのみ固有です。
3) メッセージ ID はメッセージに固有であり、アカウントのすべてのフォルダーで一意です。
また、次の仮定を立てています。
1) スレッドはスレッド ID を持ち、メッセージの集まりです。スレッドにはメッセージ ID または UID がありません。
2) メッセージには、メッセージ ID、UID、およびスレッド ID があります (スレッド内の唯一のメッセージであっても)。
3) UID によるメッセージのフェッチは、要求された UID の範囲に入る UID を持つ MESSAGES をフェッチします。
4) 同じスレッドに属するメッセージの UID とメッセージ ID は異なりますが、スレッド ID は同じです。
わかりました。上記が正しいと仮定すると、Mailcore2 での UID によるメッセージの典型的なフェッチ中に、メールの配列を受け取り、それらのメールからスレッド ID を見て、たとえばスレッドを再構築できると思います。クライアント側で。ただし、メールではなくスレッドを返すようです。さらに、取得した各スレッドには、必ずしもすべての「子」メッセージが含まれているとは限りません。
たとえば、受信トレイに 2 つのスレッドがあり、それぞれに 5 つのメッセージが含まれている場合、Mailcore は 2 つの「メール」の配列を MCOIMAPMessages の形式で返します。また、各「メール」には、1 つのスレッド ID、1 つのメッセージ ID、および 1 つの UID があります。そのため、これら 2 つのスレッドに含まれるメールにアクセスする方法がわかりません。参照配列があることがわかりました...しかし、このオブジェクトを調べても、有用なものは何も明らかになりません。各スレッドの内容をログに記録すると、内容の一部 (スレッド上の 5 つのメッセージのうちの 4 つなど) しか得られません。これが Mailcore なのか、それとも保存プロセスのエラーなのかはわかりません。これがどのように機能するかを完全に理解していないためです。
メッセージを取得するための私のコードは次のとおりです。
// フォルダ内の最初の (10) メッセージを取得するフェッチ操作を作成します (最初のフェッチはシーケンス番号で行われ、その後のフェッチは UID で行われます)
//フェッチを実行
Gmail や Mailcore2 についての私の理解では、明らかに何かが間違っています。誰かが私の誤解を指摘できれば幸いです。