tasker_icon

日本語版 Tasker ユーザーガイド : Javascript

~ ジャバスクリプト ~

Javascriptは、現在ブラウザ上で動く唯一のスクリプト言語です。

Taskerでは ‘Web’ シーンエレメントで表示するページの一部として動作する以外にも、外部スクリプトファイルや直接指定したJavascriptのコードを実行することが出来ます。

序説

Taskerでは、タスク内または、WebViewシーンエレメントでのJavaスクリプトの実行をサポートしています。Taskerのアクションのほとんどは、Javaスクリプトから直接実行することができます。JSONとXMLHTTPRequestも直接利用可能です。

JavaScript in Tasks (タスク内でのJavaスクリプト)

Javaスクリプトをタスクで使うには、Java Scriptletアクションを使って、Javaスクリプトのコマンドを直接書き込むか、Java Scriptアクションを使って、ファイルから読み込みます。

いずれの方法でも、タスクのほかのアクション同様に実行され、変数などもそのままやり取りされるので、タスクの一部として実行することができます。

Embedded in HTML (HTMLに埋め込まれたJavaスクリプト)

WebViewエレメントは、Javaスクリプトを含むHTMLをコンテンツとして指定できます。

<H1 onClick="setWifi( false )">ClickMeToTurnOffWifi</H1>

このように指定することで、WebViewエレメントをユーザーインターフェースとして、活用できます。

Variables (変数)

Local Variables (ローカル変数)

JavaScript(let)アクションでは、%myvarのようなローカル変数は、% をつけずにmyvarとして、直接Javaスクリプトから参照することができます。スクリプト内で変更された値は、タスク内のほかのアクションでもそのまま参照されます。

HTMLに埋め込まれたJavaスクリプトでは、local および、 setLocal 関数を使って、WebViewが含まれるシーンのローカル変数を参照・変更できます。

Global Variables (グローバル変数)

Taskerのグローバル変数を参照・変更するには、global() および、setGlobal()を使います。

Arrays (配列)

Taskerのローカル変数配列は、Javaスクリプトまたは、Javaスクリプトレットからそのままアクセスできます。その逆もまた可能です。しかし、WebViewからアクセスすることはできません。

Taskerで定義していない配列を、Javaスクリプト内で定義する場合、次のように定義すると、タスクのそれ以降の部分から参照することは、できません。

var arr = getSomeArray();

一方、次のような定義の仕方であれば、参照可能です。

var arr = [];
arr = getSomeArray();

【注記】

  • Javaスクリプトでは、配列のインデックスは0から始まりますが、Taskerでは、1から始まります。
  • Javaスクリプトでは、配列を表すのに[]を使いますが、Taskerでは()を使います。

したがって、例えば、Taskerで%arr(1)とした場合、Javaスクリプトでは、 arr[0]とするのと同じです。

Settings (セッティング)

Taskerでの通常のアクションとは異なり、Taskerのエントリータスク内でJavaスクリプトによって変更された設定は、プロファイルが非アクティブになっても、復元されません。

Execution (Javaスクリプトの実行)

Execution Instances (実行インスタンス)

一度に実行できるのは、一つのスクリプトだけです。一つのスクリプトの実行中に他のスクリプトが実行されることはありません。

Working Off-Device (デバイス外での作業)

長く複雑なタスクをパソコンなど、デバイス以外の環境で開発するには二つの方法があります。

1. JavaScript action (JavaScriptアクション)

デバイス外でのテストを行うには、メニューのMoreの項のDeveloper Optionsから、Save JS Library Templateを選択して、組み込み関数のダミーの定義を取得します。パソコンでの開発の際にそのファイルを読み込みます。

Javaスクリプトのコードをデバイス上でテストするか、パソコン上でテストするにしても、次のコードを使います。

var onAndroid = ( global( 'sdk' ) > 0 );

JavaScriptletアクションを使うよりも、JavaScrioptアクションを使った方が、パソコンから同期されたAndroid端末のファイルに容易にアクセスできます。

2. Using WebView (WebViewを使う)

WebViewのコンテンツにウェブサイトのURLを指定して、ターゲット上でコードをテストするには、単純に新しいコードをウェブサーバーにアップロードした上で、デバイスでWebViewに読み込めばいいだけです。(シーンエレメント - Web Controlアクションの項をご覧ください。)

Builtin Function Execution (組み込み関数の実行)

ほとんどのTaskerの組み込み関数への呼出は、アクションを一つだけ実行する一般的なタスクと同様に実行されます。したがって、他の実行中のタスクによってブロックされることがあります。

これらのタスクは、Javaスクリプトを実行したタスクより二つ上の優先度で実行されます。

JavaScript(let): Alert,Confirm,Prompt (警告、確認、通知)

これらの関数を使用するスクリプトは'ユーザーインターフェース'を必要とし、現在実行中のアプリケーションとの干渉を引き起こす可能性があります。(ほとんどの場合は、問題ありません。)

JavaScript(let): Auto Exit (自動終了)

デフォルトでは、JavaScript(let)アクションは、メインの実行シークエンスが終了した時点で終わります。

もし、setTimeout()や、その他のコールバックによって、非同期的なコードを実行しようとする場合、Auto Exitの選択を解除してやる必要があります。このような場合、exit()を呼び出して、Taskerにタスクの続きを実行させる必要があります。

いずれの場合も、アクションに設定されたタイムアウト時間に達すると実行は停止されます。

JavaScript(let): Libraries (ライブラリ)

Librariesパラメーターに複数のライブラリを改行で区切って指定してやることで、必要なライブラリをいくつでも指定することができます。

よく使われるいくつかのライブラリは、一覧から選択可能です。

ネットに接続されていない状態でスクリプトを実行する場合、ライブラリをデバイスのローカルストレージにダウンロードして、URLをhttpから、fileに変更します。

【重要】

Windows環境で開発した独自のライブラリを使う場合、改行記号をWindowsスタイルのCRLFから、UnixスタイルのLFに変更する必要があります。

Builtin Functions (組み込み関数)

Taskerでは、アクションのほとんどを関数として、JavaScript(let)アクションや、WebViewエレメントから関数名をを指定して直接利用することができます。

【例外】モードがURLにセットされたWebViewコンテンツでは、関数名にtkのプレフィックスが必要です。例)tk.flash('Woo!')

alarmVol / btVoiceVol / callVol / dtmfVol / mediaVol / notificationVol / systemVol / ringerVol
(アラーム、ブルートゥース、通話、トーン発信、メディア、通知、システム、着信音の音量)

var ok = alarmVol( int level, bool display, bool sound )

各システム音量の設定をlevelパラメーターに指定した値に設定します。

displayがtrueの場合、設定された音量が画面上に表示されます。

soundがtrueの場合、設定された音量でトーンが鳴ります。

audioRecord (オーディオの録音)

var ok = audioRecord( str destPath, str source, str codec, str format )

  • destPath:録音データを保存するファイルパスを指定します。ただし、拡張子は、指定されたデータ形式が適用されるので、必要ありません。
  • source:def, mic, call, callout または、callinのいずれかです。
  • codec:amrn, amrw または、aacのいずれかです。
  • format:mp4, 3gpp, amrn, amrw または、amrrのいずれかです。

Javaスクリプトの実行は、録音の終了を待ちません。

audioRecordStop()もご覧ください。

audioRecordStop (オーディオの録音停止)

var ok = audioRecordStop()

audioRecord()で実行中の録音を停止します。

browseURL (URLの閲覧)

var ok = browseURL( str URL )

指定したURLをデフォルトのブラウザで開きます。

button (ボタンを押す)

var ok = button( str name )

指定したボタンを押します。

name:back, call, camera, endcall, menu, volup, voldown または、searchのいずれかです。

この関数の実行には、デバイスがRoot化されている必要があります。

call (発信)

var ok = call( str num, bool autoDial )

電話をかけます。

autoDialパラメーターがfalseの場合、電話アプリケーションが指定した番号で起動します。 trueの場合、加えて発信されます。

callBlock (発信制限)

var ok = callBlock( str numMatch, bool showInfo )

numMatchパラメーターにマッチする発信をブロックします。

showInfoパラメーターがtrueの場合、発信がブロックされた旨、表示されます。

callDivert (発信転送)

var ok = callDivert( str fromMatch, str to, bool showInfo )

fromMatchパラメーターにマッチする発信をtoパラメーターに指定した番号に転送します。

showInfoパラメーターがtrueの場合、発信が転送された旨、表示されます。

callRevert (発信の制限・転送の中止)

var ok = callRevert( str numMatch )

事前にcallBlock または、callDivertで指定された発信のブロックまたは、転送を停止します。

carMode (車載モード)

var ok = carMode( bool onFlag )

Androidの車載モードの有効/無効を切り替えます。

clearKey (暗号化キーの削除)

var ok = clearKey( str keyName )

keyNameパラメーターで指定されたキーのパスフレーズをクリアします。

ユーザーガイドのEncryptionの項もご覧ください。

composeEmail (Eメールの作成)

var ok = composeEmail( str to, str subject, str message )

パラメーターで指定された項目が入力された状態で、Eメールの作成ダイアログを表示します。

Javaスクリプトは、作成されたEメールの送信を待たずに、実行を継続します。

composeMMS (MMSの作成)

var ok = composeMMS( str to, str subject, str message, str attachmentPath )

パラメーターで指定された項目が入力された状態で、MMSの作成ダイアログを表示します。

Javaスクリプトは、作成されたMMSの送信を待たずに、実行を継続します。

composeSMS (SMSの作成)

var ok = composeSMS( str to, str message )

パラメーターで指定された項目が入力された状態で、SMSの作成ダイアログを表示します。

Javaスクリプトは、作成されたSMSの送信を待たずに、実行を継続します。

convert (型の変換)

var result = convert( str val, str conversionType )

ある型の値を別の型に変換します。

conversionType: byteToKbyte, byteToMbyte, byteToGbyte, datetimeToSec, secToDatetime, secToDatetimeM, secToDatetimeL, htmlToText, celsToFahr, fahrToCels, inchToCent, metreToFeet, feetToMetre, kgToPound, poundToKg, kmToMile, mileToKm, urlDecode, urlEncode, binToDec, decToBin, hexToDec, decToHex, base64encode base64decode, toMd5, toSha1, toLowerCase, toUpperCase, toUpperCaseFirstのいずれかです。

Variable Convertアクションの項もご覧ください。

createDir (ディレクトリの作成)

var ok = createDir( str dirPath, bool createParent, bool useRoot )

dirPathパラメーターで指定されたディレクトリを作成します。createParentパラメーターがtrueの場合、存在しない親ディレクトリも作成します。

useRootパラメーターがtrueの場合、(可能であれば)ルートユーザーとして実行されます。

createScene (シーンの作成)

var ok = createScene( str sceneName )

指定したシーンを作成しますが、表示はしません。

cropImage (イメージの切抜き)

var ok = cropImage( int fromLeftPercent, int fromRightPercent, int fromTopPercent, int fromBottomPercent )

loadImageであらかじめTasekrのイメージバッファにロードされたイメージを切り取ります。

decryptDir (ディレクトリの復号)

var ok = decryptDir( str path, str key, bool removeKey )

decryptFile()と同様ですが、各ファイルを順に指定されたディレクトリに解凍します。

decryptFile (ファイルの復号)

var ok = decryptFile( str path, str key, bool removeKey )

Menu / Prefs / Actionで指定された暗号化パラメーターを使って、指定されたファイルを復号します。

removeKeyがfalseの場合、入力されたパスフレーズは、指定されたKeyNameで実行される次の暗号化/復号化オペレーションに再利用します。

ユーザーガイドのEncryptionDecrypt Fileアクションの項もご覧ください。

deleteDir (ディレクトリの削除)

var ok = deleteDir( str dirPath, bool recurse, bool useRoot )

dirPathで指定されたディレクトリを削除します。ディレクトリが空でない場合、recurseパラメーターが指定されている必要があります。

useRootがtrueの場合、(可能であれば)ルートユーザーとして実行されます。

deleteFile (ファイルの削除)

var ok = deleteFile( str filePath, int shredTimes, bool useRoot )

filePathパラメーターで指定したファイルを削除します。

shredTimesパラメーターは、0-10の間で指定します。

useRootパラメーターがtrueの場合、(可能であれば)ルートユーザーとして実行されます。

Delete Fileもご覧ください。

destroyScene (シーンの破棄)

var ok = destroyScene( str sceneName )

指定されたシーンを(表示中であれば)非表示にしてから、破棄します。

displayAutoBright (画面輝度の自動調整)

var ok = displayAutoBright( bool onFlag )

周囲の明るさに合わせて、ディスプレイの明るさを自動調節するかどうかを指定します。

displayAutoRotate (画面の自動回転)

var ok = displayRotate( bool onFlag )

デバイスの物理的な向きに合わせて、ディスプレイの向きを変えるかどうかを指定します。

displayTimeout (ディスプレイの自動消灯までの時間)

var ok = displayTimeout( int hours, int minutes, int seconds )

ディスプレイの自動オフまでの時間を指定します。

dpad (Dパッド)

var ok = dpad( str direction, int noRepeats )

十字キーやトラックボールの動作をシミュレートします。

directionパラメーターは、up, down, left, right, pressのいずれかです。

この関数の実行には、デバイスがRoot化されている必要があります。

enableProfile (プロファイルの有効化)

var ok = enableProfile( str name, boolean enable )

プロファイルの有効/無効を切り替えます。

encryptDir (ディレクトリの暗号化)

var ok = encryptDir( str path, str keyName, bool rememberKey, bool shredOriginal )

encryptFile()と同様ですが、指定されたディレクトリ内のファイルを順に暗号化します。

elemBackColour (エレメントの背景色)

var ok = elemBackColour( str scene, str element, str startColour, str endColour )

指定されたシーンエレメントの背景色/a>を指定します。

Element Back Colourアクションの項もご覧ください。

elemBorder (エレメントの境界線)

var ok = elemBorder( str scene, str element, int width, str colour )

指定されたシーンエレメントの境界線のと太さを指定します。

elemText (エレメントの文字)

var ok = elemText( str scene, str element, str position, str text )

指定されたシーンエレメントのテキストを指定します。

posパラメーターは、repl(既存のテキストと置き換える)、start (既存のテキストの前に挿入する)、end(既存のテキストの後ろに追加する)のいずれかです。

Element Textアクションの項もご覧ください。

elemTextColour (エレメントの文字色)

var ok = elemTextColour( str scene, str element, str colour )

指定されたシーンエレメントの文字を指定します。

elemTextSize (エレメントの文字サイズ)

var ok = elemTextSize( str scene, str element, int size )

指定されたシーンエレメントの文字サイズを指定します。

Element Text Sizeアクションの項もご覧ください。

elemVisibility (エレメントの可視性)

var ok = elemVisibility( str scene, str element, boolean visible, int animationTimeMS )

指定されたシーンエレメントの可視/不可視を指定します。

Element Visibilityアクションの項もご覧ください。

endCall (通話の終了)

var ok = endCall()

通話中であれば、終了します。

encryptFile (ファイルの暗号化)

var ok = encryptFile( str path, str keyName, bool rememberKey, bool shredOriginal )

Menu / Prefs / Actionで指定された、暗号化パラメーターを使って、指定されたファイルを暗号化します。

rememberKeyパラメーターがtrueの場合、keyNameパラメーターで指定したキー名で行われる、次の暗号化/復号化に再利用されます。

shredOriginalパラメーターが、trueの場合、暗号化に成功すると、元ファイルはランダムデータで何度か上書きされます。

ユーザーガイドのEncryptionと、 Encrypt Fileアクションの項もご覧ください。

enterKey (キー入力)

var ok = enterKey( str title, str keyName, bool showOverKeyguard, bool confirm, str background, str layout, int timeoutSecs )

keyNameパラメーターで指定された暗号化キーで使うパスフレーズを入力するためのダイアログを表示します。Javaスクリプトは、ダイアログが閉じられるか、タイムアウトになるまで、実行を停止します。

  • confirm:trueの場合、確認のため、パスフレーズを2度入力するよう要求します。
  • background:背景に使うイメージデータへのパスかURLを指定します。オプションです。
  • layout:デフォルトのシーンの代わりに使う、ユーザーが作成したシーン名を指定します。

ユーザーガイドのEncryptionの項もご覧ください。

filterImage (イメージのフィルタリング)

bool ok = filterImage( str mode, int value )

loadImage()で、Taskerのイメージバッファへロード済みのイメージにフィルターをかけます。

modeパラメーターに指定できる値は、次のとおりです。

  • bw:valueパラメーターで指定したしきい値で白黒画像に変換します。
  • eblue:valueパラメーターで指定した値で、青色を強調します。
  • egreen:valueパラメーターで指定した値で、緑色を強調します。
  • ered:valueパラメーターで指定した値で、赤色を強調します。
  • grey:グレースケールに変換します。valueパラメーターは使いません。
  • alpha:ピクセルのアルファ値(透過度の逆)をvalueパラメーターで指定した値に設定します。

valueパラメーターの値は1から、254までです。

flipImage (イメージの反転)

bool ok = flipImage( bool horizontal )

loadImage()で、Taskerのイメージバッファに事前に読み込んだイメージを反転させます。

horizontalパラメーターが、falseの場合、イメージは上下が反転します。

exit (スクリプトの終了)

exit()

Javaスクリプトの実行を終了します。

flash (メッセージの表示)

flash( str message )

Androidのトースト通知を使って、メッセージを表示します。

flashLong (長いメッセージの表示)

flashLong( str message )

Androidのトースト通知を使って、少し長めにメッセージを表示します。

getLocation (位置情報の取得)

var ok = getLocation( str source, bool keepTracking, int timeoutSecs )

現在のデバイスの位置情報を取得します。

sourceパラメーターは、gps、netまたは、anyのいずれかです。

keepTrackingパラメーターがtrueの場合、指定されたsource(ロケーションプロバイダー)は、次回この関数が呼び出されたときに、素早く位置情報を特定するために、位置情報を取得し続けます。

位置情報の緯度と経度は、Taskerのグローバル変数%LOC (GPS)および%LOCN (Net)のいずれか、または両方に格納されます。格納された値は、global関数で参照可能です。そのほかの位置情報に関するパラメーターも参照可能です。

Variablesの項をご覧ください。

【例】

var lastFix = global( 'LOC' );
if (
getLocation( 'gps' ) &&
( global( 'LOC' ) != lastFix )
) {
flash( "New fix: " + global( 'LOC' ) );
}

Get Locationアクションと、stopLocation関数の項もご覧ください。

getVoice (音声認識)

str result = getVoice( str prompt, str languageModel, int timeout )

音声入力をテキストに変換します。

戻り値resultが、undefinedの場合、音声認識に失敗したことを表します。それ以外の場合は認識結果の候補が配列として格納されます。

promptパラメーターは、音声認識の間表示されるダイアログの、ラベルです。l

languageModeパラメーターは、音声認識エンジンにスピーチの内容に関する手がかりを与えます。値は、web(ウェブサーチ)、free(フリーフォーム)のいずれかです。

goHome (ホームスクリーンへの復帰)

goHome( int screenNum )

Androidのホームスクリーンに復帰します。screenNumパラメーターは、すべでのホームスクリーンでサポートされているわけではありません。

haptics (体感フィードバック)

var ok = haptics( bool onFlag )

振動によるフィードバックの有効/無効を切り替えます。

hideScene (シーンを隠す)

var ok = hideScene( str sceneName )

表示中であれば、指定されたシーンを非表示にします。

global (グローバル変数の参照)

var value = global( str varName )

Taskerのグローバル変数を参照します。変数名の前の%は、随意です。

listFiles (ファイル一覧の取得)

str files = listFiles( str dirPath, bool hiddenToo )

dirPathパラメーターで指定されたディレクトリにあるファイルを一覧表示します。

戻り値filesは、改行で区切られたファイルのリストです。

hiddenTooパラメーターがtrueの場合、 ‘.’ で始まるファイルも含めます。

【例】

var files = listFiles( '/sdcard' );
var arr = files.split( '\n' );
flash( 'Found ' + arr.length + ' files' );

loadApp (アプリケーションのロード)

var ok = loadApp( str name, str data, bool excludeFromRecents )

指定されたアプリケーションを起動します。

Nameパラメーターは、パッケージ名もしくはアプリケーションのラベルです。まずはパッケージ名で検索されます。

【注記】スクリプトが、エクスポートされたアプリケーションで実行された場合には、アプリケーションのラベルは、しかるべき言語にローカライズされます。

Dataパラメーターは、URI形式によるアプリケーションノン指定です。

excludeFromRecentsパラメーターがtrueの場合、起動したアプリケーションは、ホームスクリーンの現在実行中のアプリケーション一覧に表示されません。

loadImage (イメージのロード)

var ok = loadImage( str uri )

Taskerのイメージバッファに、イメージをロードします。

次のURI形式による指定が、現在サポートされています。

  • file:// で始まるローカルファイルパス。

Load Imageアクションの項もご覧ください。

lock (デバイスのロック)

var ok = lock( str title, str code, bool allowCancel, bool rememberCode, bool fullScreen, str background, str layout )

ロック画面を表示して、ユーザーによる操作をできなくします。Javaスクリプトは、解除コードが入力されるか、ロック画面がキャンセルされるまで実行を停止します。

  • code:数字の解除コードです。
  • allowCancel:ロック画面をキャンセルするためのボタンを表示します。ボタンがタップされると、Androidのホームスクリーンに移動します。
  • rememberCode:次回ロック画面が表示されたときに使えるよう、解除コードは、ディスプレイがオフになるまでの間、保持されます。
  • background:背景イメージ用データのファイルパスまたは、URIです。(オプションです。)
  • layout:デフォルトのシーンの代わりに使われる、ユーザーが作成したシーン名を指定します。
local (ローカル変数の参照)

var value = local( str varName )

Taskerのシーンのローカル変数を参照します。変数名のまえに付ける%は任意です。

この関数は、HTMLに埋め込まれたJavaスクリプトにWebViewシーンエレメントからアクセスする場合にのみ、使用可能です。

mediaControl (メディアコントロール)

var ok = mediaControl( str action )

ハードウェアボタンをシミュレートして、メディアを制御します。

actionパラメーターには、next、pause、prev、toggleまたは、stopのいずれかを指定します。

micMute (マイクのミュート)

var ok = micMute( bool shouldMute )

(あれば)デバイスのマイクの消音を設定/解除します。

mobileData (モバイルデータ通信)

var ok = mobileData( bool set )

システムのモバイルデータ通信の有効/無効を切り替えます。

Mobile Dataアクションの項もご覧ください。

musicBack (音楽の巻き戻し)

var ok = musicBack( int seconds )

musicPlayで再生中の音楽ファイルをsecondsパラメーターで指定した分だけ巻き戻します。

musicSkipmusicStopもご覧ください。

musicPlay (音楽の再生)

var ok = musicPlay( str path, int offsetSecs, bool loop, str stream )

Taskerの内部的なミュージックプレーヤーで音楽ファイルを再生します。

streamパラメーターで、再生すべきオーディオストリームを指定します。

この関数は、再生の終了を待ちません。

最後の三つの引数は、この場合デフォルトでそれぞれ0、false、mediaと見なされます。

musicStopmusicBackmusicSkipもご覧ください。

musicSkip (音楽の早送り)

var ok = musicSkip( int seconds )

musicPlayで再生中の音楽ファイルをsecondsパラメーターで指定した分だけ早送りします。

musicBackmusicStopもご覧ください。

musicStop (音楽再生の停止)

var ok = musicStop()

musicPlayで再生中の音楽ファイルを停止します。

musicBackmusicSkipもご覧ください。

nightMode (夜間モード)

var ok = nightMode( bool onFlag )

Androidの夜間モードの有効/無効を切り替えます。

popup (ポップアップの表示)

var ok = popup( str title, str text, bool showOverKeyguard, str background, str layout, int timeoutSecs )

ポップアップを表示します。Javaスクリプトは、ポップアップが閉じられるか、タイムアウトになるまで実行を停止します。

  • background:背景に使用するイメージのファイルパスまたは、URIを指定します。(オプションです。)
  • layout:デフォルトのポップアップの代わりに使用する、ユーザーが作成したシーンを指定します。
performTask (タスクの実行)

var ok = performTask( str taskName, int priority, str parameterOne, str parameterTwo )

taskNameパラメーターで指定したTaskerのタスクを実行します。

Javaスクリプトは、タスクの実行の終了を待ちません。

profileActive (プロファイルの状態)

bool active = profileActive( str profileName )

指定したTaskerのプロファイルが、現在アクティブかどうかを問い合わせます。戻り値がfalseの場合、プロファイル名が不正です。

pulse (LED通知)

bool ok = pulse( bool onFlag )

LEDによる通知の有効/無効を切り替えます。

readFile (ファイルの読み込み)

var contents = readFile( str path )

テキストファイルを読み込みます。

reboot (再起動)

var ok = reboot( str type )

デバイスを再起動します。

typeパラメーターは、normal, recoveryまたは、bootloaderのいずれかです。デフォルトでは、normalとして省略されます。

デバイスのRoot化が必要です。

shutdown関数もご覧ください。

resizeImage (イメージのリサイズ)

var ok = resizeImage( int width, int height )

現在Taskerのイメージバッファにあるイメージを、指定された方向にリサイズします。

rotateImage (イメージの回転)

var ok = rotateImage( str dir, int degrees )

現在Taskerのイメージバッファにあるイメージを、回転させます。

dirパラメーターは、leftまたは、rightのいずれかです。degreesパラメーターは、45, 90, 135または、180のいずれかです。

saveImage (イメージの保存)

var ok = saveImage( str path, int qualityPercent, bool deleteFromMemoryAfter )

pathパラメーターで指定された場所に、現在Taskerのイメージバッファにあるイメージを保存します。

Save Imageアクションもご覧ください。

say (読み上げ)

var ok = say( str text, str engine, str voice, str stream, int pitch, int speed )

textパラメーターで指定したテキストのよみあげを開始します。

  • engine:読み上げエンジンです。例)com.svox.classic デフォルトは、システム標準の読み上げエンジンです。
  • voice:読み上げに使う音声を指定します。読み上げエンジンでサポートされている必要があります。 デフォルトでは、システム標準の言語が使われます。
  • stream:読み上げによって作成されるオーディオストリームです。
  • pitch:ピッチを1~10で指定します。
  • speed:スピードを1~10で指定します。

The script waits for the speech to be finished.

sendIntent (インテントの送信)

var ok = sendIntent( str action, str targetComp, str package, str class, str category, str data, str mimeType, str[] extras );

インテントを送ります。インテントは、Androidのハイレベルなアプリケーション間対話です。

いずれのパラメーターも、undefinedを指定できます。

  • targetComp:ターゲットとなる、アプリケーションコンポーネントです。 receiver, activityまたは、serviceのいずれかです。デフォルトは、receiverです。
  • package:インテントの送信を制限するアプリケーションパッケージです。
  • class:インテントの送信を制限するアプリケーションクラスです。
  • category:none, alt, browsable, cardock, deskdock, home, info, launcher, preference, selectedalt, tabまたは、testのいずれかです。デフォルトでは、noneです。
  • extras:追加データです。key:value 形式で指定します。 undefinedの場合があります。最大長は2です。

Send Intentアクションの項もご覧ください。

sendSMS (SMSの送信)

var ok = sendSMS( str number, str text, boolean storeInMessagingApp );

SMSを送信します。

Send SMSアクションの項もご覧ください。

setAirplaneMode (機内モード)

var ok = setAirplaneMode( bool setOn )

機内モードの有効/無効を切り替えます。

現在の設定を取得するには、

var enabled = global( 'AIR' ); とします。

setAirplaneRadiosアクションの項もご覧ください。

setAirplaneRadios (機内モード時の通信)

var ok = setAirplaneRadios( str disableRadios )

機内モードで無効になる無線通信機能を指定します。

disableRadiosパラメーターは、cell, nfc, wifi, wimax, btの中から、こんまで区切って指定します。

現在の設定を取得するには、

var radios = global( 'AIRR' ); とします。

setAirplaneMode関数の項もご覧ください。

setAlarm (アラームの設定)

var ok = setAlarm( int hour, int min, str message, bool confirmFlag )

標準のアラームアプリで、新規アラームを作成します。

confirmFlagパラメーターでは、アラームの設定をアプリケーションが確認するかどうかを指定します。

messageパラメーターは、オプションです。

Android バージョン2.3以上が必要です。

setAutoSync (自動同期の設定)

var ok = setAutoSync( bool setOn )

自動同期の一般設定を変更します。

scanCard (外部ストレージのスキャン)

var ok = scanCard( str path )

メディアの新規作成/削除時に外部ストレージのスキャンをシステムに強制します。

pathパラメーターが指定された場合、指定された場所だけがスキャンの対象になります。

Scan Cardアクションの項もご覧ください。

setBT (Bluetoothの設定)

var ok = setBT( bool setOn )

Bluetooth機能(あれば)の有効/無効を切り替えます。

現在の設定を確認するには、

if ( global( 'BLUE' ) == "on" ) { doSomething(); } のようにします。

setBTID (BluetoothIDの設定)

var ok = setBTID( str toSet )

BluetoothアダプターのID(通信相手のデバイスに表示される名前)を設定します。

setGlobal (グローバル変数の設定)

setGlobal( str varName, str newValue )

Taskerのグローバル変数の値を設定します。変数名の前につける%の文字は任意です。

setKey (暗号化キーの設定)

var ok = setKey( str keyName, str passphrase )

keyNameパラメーターで指定されたキーで使うパスフレーズを指定します。

Encryptionもご覧ください。

setLocal (ローカル変数の設定)

setLocal( str varName, str newValue )

Taskerのシーンで使うローカル変数の値を設定します。変数名の前につける%もじは任意です。

この関数は、HTMLに埋め込まれたJavaスクリプトで、WebViewシーンエレメントからアクセスした場合にのみ使用可能です。

setClipboard (クリップボードにコピー)

var ok = setClipboard( str text, bool appendFlag )

クリップボードにテキストを貼り付けます。

現在のクリップボードの内容を知るには、

var clip = global( 'CLIP' ); とします。

settings (システムの設定画面)

var ok = settings( str screenName )

Androidのシステム設定の画面を表示します。

screenNameパラメーターは、all, accessibility, addacount, airplanemode, apn, app, batteryinfo, appmanage bluetooth, date, deviceinfo, dictionary, display, inputmethod, internalstorage, locale, location, memorycard, networkoperator, powerusage, privacy, quicklaunch, security, mobiledata, search, sound, sync, wifi, wifiipまたは、wirelessのいずれかです。

setWallpaper (壁紙の設定)

var ok = setWallpaper( str path )

システムの壁紙を設定します。

setWifi (Wifiの設定)

var ok = setWifi( bool setOn )

Wifi機能(あれば)の有効/無効を切り替えます。

現在の設定を知るには、

if ( global( 'WIFI' ) == "on" ) { doSomething(); } のようにします。

shell (シェルコマンドの実行)

var output = shell( str command, bool asRoot, int timoutSecs )

commandパラメーターで指定されたシェルコマンドを実行します。

asRootパラメーターは、Root化されたデバイスでのみ有効です。

outputパラメーターは、シェルコマンドの実行に失敗したときには、'undefined'となります。最大で、750Kバイトほどです。

showScene (シーンの表示)

var ok = showScene( str name, str displayAs, int hoffset, int voffset, bool showExitIcon, bool waitForExit )

指定されたシーンを表示します。必要であれば事前に作成します。

  • displayAs:Overlay, OverBlocking, OverBlockFullDisplay, Dialog, DialogBlur, DialogDim, ActivityFullWindow, ActivityFullDisplay, ActivityFullDisplayNoTitleのいずれかです。
  • hoffset, voffset:水平、垂直方向への位置オフセットです。-100%~100%で指定します。full screen/window タイプのシーンには関係ありません。
  • showExitIcon:シーンを破棄するためのアイコンをシーンの右下に表示します。
  • waitForExit:シーンが閉じられるまで、スクリプトの実行を停止します。
shutdown (デバイスのシャットダウン)

var ok = shutdown()

デバイスをシャットダウンします。

Root化されたデバイスが必要です。

rebootもご覧ください。

silentMode (サイレントモード)

var ok = silentMode( str mode )

サイレントモードの有効/無効を指定します。

modeパラメーターは、off, vibrateまたは、onのいずれかです。

sl4a (SL4Aスクリプトの実行)

var ok = sl4a( str scriptName, boolean inTerminal )

事前に作成されたSL4Aスクリプトを実行します。

soundEffects (システムの効果音)

var ok = soundEffects( bool setTo )

システムの効果音(ボタンをタップしたときの音など)を設定します。

speakerphone (スピーカーの切り替え)

var ok = speakerPhone( bool setFlag )

スピーカーフォンのオン/オフを切り替えます。

statusBar (ステータスバーの状態)

var ok = statusBar( bool expanded )

ステータスバーを折りたたみ/展開します。

stayOn (電源接続時オン)

var ok = stayOn( str mode )

電源接続時に、デバイスをオンのままにします。

modeパラメーターは、never, ac, usb, anyのいずれかです。

stopLocation (位置情報取得の中止)

var ok = stopLocation()

ロケーションプロバイダーの追跡を停止します。これは事前にgetLocation関数をkeepTrackingパラメーターをセットして実行中にのみ有効です。

systemLock (システムのロック)

var ok = systemLock()

ディスプレイをオフにして、キーガードを有効にします。

Androidの設定で、Taskerのデバイスの管理者権限が有効になっていることが必要です。

taskRunning (タスクの状態)

bool running = taskRunning( str taskName )

指定したTaskerのタスクが現在実行中かどうかを確認します。指定したタスク名が不明な場合、falseが返ります。

takeCall (電話に出る)

bool ok = takeCall();

自動で、かかってきた電話に出ます。

takePhoto (写真の撮影)

bool ok = takePhoto( int camera, str resolution, str filePath, bool insertGallery )

内蔵のカメラで、写真を撮ります。

  • camera:0 の場合は背面カメラ、 1 の場合は前面カメラです。
  • resolution:横×縦で指定します。例)640x840
  • filePath:こちらをご覧ください。
  • insertGallery:撮影した写真をAndroidのギャラリーアプリケーションに追加するかどうかを指定します。
type (キーボード入力)

var ok = type( str text, int repeatCount )

キーボード入力をシミュレートします。

Root化されたデバイスが必要です。

unzip (zipファイルの解凍)

boolean ok = unzip( str zipPath, bool deleteZipAfter )

Zip形式で圧縮されたファイルを、圧縮ファイルと同じフォルダに解凍します。

deleteZipパラメーターがtrueの場合、解凍に成功すると元のファイルは削除されます。

usbTether (USBテザリング)

usbTether( bool set )

USBティザリングを有効にします。

USB Tetherアクションの項もご覧ください。

vibrate (振動)

vibrate( int durationMilliseconds )

指定した時間、デバイスを振動させます。

vibratePattern (パターンによる振動)

vibratePattern( str pattern )

patternパラメーターで指定した振動パターンでデバイスを振動させます。

【例】

500,1000,750,1000

500ミリ秒待ってから、1000ミリ秒振動、750ミリ秒待ってから、1000ミリ秒振動。

wait (スクリプトの一時停止)

wait( int durationMilliseconds )

指定された時間、スクリプトの実行を停止します。

【警告】状況によっては実行中の関数が完了しない場合があります。その可能性があるときには、代わりにsetTimeout()関数を使ってください。

wifiTether (Wifiテザリング)

var ok = wifiTether( bool set )

Wifiティザリングの有効/無効を切り替えます。

Wifi Tetherアクションもご覧ください。

writeFile (ファイルの書き込み)

var ok = writeFile( str path, str text, bool append )

textパラメーターで指定したテキストをpathパラメーターで指定したファイルに書き出します。

appendパラメーターが指定されている場合、既存のテキスト(あれば)の後にテキストを追加します。

zip (zip圧縮)

boolean ok = zip( str path, int level, bool deleteOriginalAfter )

ファイルまたは、ディレクトリを圧縮します。

levelパラメーターは、圧縮レベルです。1~9で指定します。9を指定した場合、圧縮されたファイルは最も小さくなりますが、圧縮には時間がかかります。

deleteOriginalパラメーターがtrueの場合、圧縮に成功すると元ファイルを削除します。

付記

Audio Streams (オーディオストリーム)

call, system, ringer, media, alarmまたは、notificationのいずれかです。

Colours (色)

色の指定は、AARRGGBB 形式で行います。白を指定する場合、FFFFFFFF となります。

File Paths (ファイルパス)

ファイルパスの指定は、絶対パス(/で始まる)または、相対パス(/で始まらない)で指定します。

相対パスは外部ストレージ(普通はSDカード)のルートディレクトリからの相対パスです。例えば、pics/me.jpgは、絶対パスでは、/sdcard/pics/me.jpgとなります。