林檎の木の下で

iPhoneアプリやwebサービスの紹介など。ノンプログラマー、ただの主婦が奮闘してます。

【ノンプログラマーが作るTextwellアクション】その3 urlスキームを使ってテキストを他のアプリに送る。

   

【ノンプログラマーが作るTextwellアクション】その3 urlスキームを使ってテキストを他のアプリに送る。https---www.pakutaso.com-assets_c-2015-06-PAK85_coding15095904-thumb-1000xauto-18356

こんにちは、sakurako(@0518sakurako)です。

Textwellのアクションを考える第三回です。以前の二回の記事はこちら↓

【ノンプログラマーが作るTextwellアクション】その1 使われる関数とオブジェクト

【ノンプログラマーが作るTextwellアクション】その2 テキストをひな形が用意されている他のアプリに送る方法。

今回も超・超初心者向けの記事になりますがよろしくおねがいします。

スポンサーリンク

Textwell

360円
(2015.06.26時点)
posted with ポチレバ

urlスキームを使った方法。

urlスキームとはランチャーアプリなどから特定のアプリを起動できる文字列です。

このurlスキームの中でもカスタムurlスキームと言ってurlスキームからテキストを入力したりなどのアクションを行えるアプリがあるんです。

そういうアプリにTextwellから直接テキストを送ってしまう方法です。

デフォルトのアクション集にはSimplenoteとAppigoのNotebook、Notebooksの3つにurlスキームを使ってテキストを送る方法が載っています。

まずはSimplenote

Simplenote

無料
(2015.06.26時点)
posted with ポチレバ

T( 'urlScheme', { 
url: 'simplenote://new?content=' + encodeURIComponent( 
T.whole ) + '&tag=' 
} );

Simplenoteの公式サイトで公開されているurlスキームは

simplenote://new?tag=escapedString&content=escapedString

です。

なのでテキストの選択範囲もしくは全体をノート内容にしてタグの記載はない形になっていると考えられます。

他のを見てもそうなんですが、urlスキームで送る場合はエンコードしてあげる必要があるみたいです。エンコードしないとアプリが動きません。

次にAppigoのNotebook。

Notebook
600円
(2015.06.26時点)
posted with ポチレバ
T( 'urlScheme', { 
url: 

‘appigonotebook://com.sociomedia.Textwell/import?name=’ + encodeURIComponent( T.line( 1 ) ) + ‘&text=’ + encodeURIComponent( T.lines( 2, null ) )
} );

こちらのurlスキームは

appigonotebook://reverse.app.domain/import?name=Some%20ideas%20to%20remember

 

らしい。どうやら1行目にタイトル、2行目以降が本文になる形だと思います。なんせ自分でこのアプリを持ってないからわからない(^_^;)

最後にNotebooks。

Notebooks 8 for iPhone
600円
(2015.06.26時点)
posted with ポチレバ

このアプリのソースは下のようになってます。

T( 'urlScheme', { 
url: 'notebooks://addnote/' + encodeURIComponent( T.lines( 

2, null ) ) + ‘&title=’ + encodeURIComponent( T.line( 1 ) )
} );

Notebooksのurlスキームは

notebooks://addnote/note%20body&title=title%20for%20document

 

こちらも1行目がタイトルで2行目以降が本文になる形ですね。

実際に違うアプリでアクションを作ってみる。

この3つから考えて基本的にurlスキームを使ってテキストを送るのは次のような形になります。

T( ‘urlScheme’, {
url: ‘アプリのurlスキーム=’ + encodeURIComponent( T.whole )
} );

赤字のところは変更可能。titleや本文などはそれぞれのアプリのurlスキームに従ってください。

エンコードはタイトル、本文などそれぞれの項目ごとに必要なので&で続けて毎回

+ encodeURIComponent( T.オブジェクト )

を続ける形になります。urlスキームの部分は&も含めて’ ’で囲むのも忘れずに。

これを使うと例えばこんなものが作れます。

DayOneに送る

T( ‘urlScheme’, {
url: ‘dayone://post?entry=’ + encodeURIComponent( T.whole )
} );

StackOneに送る

T( ‘urlScheme’, {
url: ‘jp.lakesoft.StackOne://?rule=ルールID&mode=0&text=’+ encodeURIComponent( T.whole ),
option: ‘none’
} );

optionは変更可能です。このままだと何もしません。

optionは取れるものと取れないものがあるみたいです。DayOneやTweetbotは動かなかったのですが、StackOneは動きました。

ルールを設定しないのであればrule=~&までを削除すればOKです。

Tweetbotに送る

T( ‘urlScheme’, {
url: ‘tweetbot://<screenname>/post?text=’ + encodeURIComponent( T.whole )
} );

<screenname>には該当アカウントの@を取った形を入れてください。

これは私が作ってみて成功したものを載せていますが、同じ要領で他のアプリも作れると思います。

 - iPhoneアプリ ,

   

スポンサードリンク

スポンサードリンク

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

  関連記事