2

Apple が現在、開発者が iMessage アプリケーションを作成できるようになっていることに気付きました。iMessage アプリケーション (または拡張機能) でどれだけのことができるか知っている人はいますか? 例えば:

  • 拡張機能は、ユーザーが通常の送信ボタンを押さずにテキストを送信できますか?
  • 拡張機能は受信メッセージを読み取ることができますか? (できるとは思えない)
  • ユーザーが誰にテキストメッセージを送信しているかを確認できますか?
  • ユーザーが入力したテキストを見ることができますか?

ユーザーが入力した内容を (通常の Messages インターフェイスで) 読み取り、テキスト内の算術演算を検索し、算術演算を実行してから回答をサブスクライブし、メッセージを送信する拡張機能を作成したいとしましょう。それは可能ですか?

私は Apple 開発に不慣れで、彼らの API とフレームワークについて何も知らないので、利用できるものについて少し迷っています。私はコンピュータ サイエンスの学生で、現在の知識を応用してより早く学習できることを望んでいます。

4

1 に答える 1

4

Apple の新しい Messages Framework はかなり制限されており、現時点では、あなたが話していることはまったく許可されていません。ユーザーは常に送信ボタンを押す必要があり、ユーザーの最終アクションなしではメッセージを送信できません。また、アプリが特定の MSConversation オブジェクトに送信したメッセージ以外のメッセージを会話で表示することもできません。また、ユーザーがメッセージ フィールドに入力したテキストを表示することはできません。できることは、独自のテキスト、添付ファイル、または MSMessage オブジェクトを挿入することだけです。

可能な唯一のことは、誰が会話に参加しているかを確認することです。Messages.framework では名前は表示されませんが、remoteParticipantIdentifiersを使用して会話に参加している他のユーザーを確認したり、localParticipantIdentifierを使用してアプリを使用してメッセージを送信しているユーザーに関する情報を取得したりできます。アプリは名前を認識できませんが、MSMessage オブジェクトのラベルで使用できます。この twocentstudios チュートリアルから取得した次のコードを参照してください。

let layout = MSMessageTemplateLayout()
layout.caption = "My name is $\(conversation.localParticipantIdentifer.uuidString)."
conversation.insert(message, localizedChangeDescription: nil)
于 2016-12-01T23:43:25.477 に答える