Files
AutoJs6/.readme/README-ja.md
2025-04-16 17:29:00 +08:00

60 KiB
Raw Blame History

autojs6-banner_800×224

アクセシビリティサービスをサポートする Android プラットフォーム用の JavaScript 自動化ツール

GitHub release (latest by date) GitHub closed issues Created
Rhino Android Studio
CodeFactor Grade JetBrains supporter GitHub License


言語


現在の README.md ファイルは以下の言語に対応しています:


紹介


Auto.js は Android プラットフォーム用の アクセシビリティサービス をサポートする JavaScript 自動化ツールです.

Auto.js は hyb1996 によって 2017/01/27 に初めてリリースされ, 2020/03/13 にメンテナンスを停止しました. 最終バージョンの名前は 4.1.1 Alpha2 で, ビルドバージョンは 461 です.

AutoJs6 は 2021/12/01 に Auto.js 最終プロジェクトを基に二次開発され, 引き続きオープンソースとして無料で提供されています.

以下の表には, Auto.js に関連するプロジェクトの一部が記載されています (開発日順に並べ替えられています):

プロジェクト アプリ名 開発者 開発開始日 開発終了日
Auto.js Auto.js hyb1996 2017/01/27 2020/03/13
Auto.js Pro 7 Auto.js hyb1996 2019/03/13 2019/07/08
Auto.js Pro 8 AutoJsPro hyb1996 2019/10/13 2021/07/24
Auto.js Auto.js M TonyJiangWJ 2019/11/21 -
AutoX Autox.js kkevsekk1 2020/07/24 -
Auto.js Pro 9 AutoJsPro hyb1996 2021/03/28 2023/02/09
AutoJs6 AutoJs6 SuperMonster003 2021/12/01 -
AutoX Autox.js v6 wilinz 2022/05/26 -
AutoX Autox.js v7 aiselp 2024/04/21 -

表の日付は推定値であり, 実際とは異なる場合があります.

表の Auto.js Pro 7/8/9 は有料バージョンです. その他は無料のオープンソースバージョンです.


機能


  • JavaScript IDEとして使用可能 (コード補完/変数リネーム/コードフォーマッティング)
  • 無障害サービスに基づく自動化操作をサポート (AccessibilityService)
  • 浮動ボタンのクイックアクションをサポート (スクリプトの録画および再生/パッケージの表示/レイアウト分析)
  • セレクタAPIをサポートし, コントロールのトラバース/情報の取得/コントロール操作を提供 (UiAutomatorに類似: UiAutomator)
  • レイアウトインターフェイスの分析をサポート (Android StudioのLayoutInspectorに類似)
  • 録画機能および録画再生機能をサポート
  • スクリーンショット/スクリーン保存/画像検索/画像マッチングをサポート
  • E4X (ECMAScript for XML)の記述インターフェースをサポート (E4X)
  • スクリプトファイルまたはプロジェクトをAPKファイルにパッケージ化する機能をサポート
  • ルート権限を使用して機能を拡張 (スクリーンのクリック/スワイプ/録画/Shell)
  • Taskerプラグインとして使用可能
  • VS Code拡張機能との連携をサポート (AutoJs6-VSCode-Extensionプラグインが必要です: AutoJs6-VSCode-Extension)

環境


  • Androidオペレーティングシステム
  • API 24 (7.0) [N] 以上

マニュアル



主な変更


Auto.js の最終オープンソースバージョン 4.1.1 Alpha2 と比較して, AutoJs6 は以下のアップグレードまたは変更を行いました:

  • Shizuku経由でADB特権を取得し, システムAPIを使用可能
  • WebSocketインスタンスの作成, およびWebSocketプロトコルに基づくネットワークリクエストの処理をサポート
  • 新モジュール [ base64 / crypto / sqlite / i18n / notice / ocr / opencc / qrcode / shizuku / ... ]
  • 多言語対応 [ 西 / 仏 / 露 / 阿 / 日 / 韓 / 英 / 簡中 / 繁中 / ... ]
  • テーマカラーの適応 [ グループ化 / ロケーション / 検索 / 履歴 / 明るさとコントラストの自動適応 / ... ]
  • ナイトモード対応 [ 設定ページ / ドキュメントページ / レイアウト分析ページ / 浮動ウィンドウ / ... ]
  • VSCodeプラグインがクライアント (LAN)とサーバ (LAN/ADB)接続方法をサポート
  • Rhinoエンジンが v1.7.7.2 から v1.8.1-SNAPSHOT にアップグレードされました

バージョン履歴


v6.6.2

2025/04/16
  • 新機能 ui.statusBarAppearanceLight, statusBarAppearanceLightBy, navigationBarColor などのメソッド
  • 新機能 ui.statusBarHeight 属性 (getter) により, ステータスバーの高さを取得可能 issue #357
  • 新機能 images.flip メソッドで画像を反転 issue #349
  • 新機能 設定ページに『ファイル拡張子』オプションを追加
  • 新機能 テーマ設定ページが新しいレイアウト(グルーピング, 配置, 検索, 履歴, カラーピッカーの改善など)に対応
  • 修正 Android 15 において, ステータスバーの背景色がテーマカラーと一致しない問題を修正
  • 修正 plugins.load メソッドでプラグインが正しくロードされない問題を修正 issue #290
  • 修正 Android 7.x で dx ライブラリが正しく動作しない問題を修正 issue #293
  • 修正 require を使用して組み込みモジュールをインポートする際, ScriptRuntime の同期状態に問題が生じる(暫定対応) issue #298
  • 修正 notice モジュールに getBuilder などの拡張メソッドが欠如している問題を修正 issue #301
  • 修正 shizuku/shell メソッドが文字列パラメータを受け付けない問題を修正 issue #310
  • 修正 colors.pixel メソッドがシングルチャンネル画像のパラメータを受け付けない問題を修正 issue #350
  • 修正 engines.execScript / execScriptFile メソッドが, スクリプト実行時にワーキングディレクトリを誤って設定する問題を修正 issue #358 issue #340 issue #339
  • 修正 floaty.window / floaty.rawWindow がサブスレッドで実行できない問題を修正
  • 修正 floaty.getClip がクリップボードの内容を正しく取得できない場合がある問題を修正 issue #341
  • 修正 ui.inflate の返り値から attr, on, click などのプロトタイプメソッドが欠落する問題を修正
  • 修正 一部メソッドで発生する例外が try..catch によって捕捉されない問題を修正 issue #345
  • 修正 レイアウト解析ページでコード生成時にアプリがクラッシュする可能性がある問題を修正 issue #288
  • 修正 パッケージ化されたアプリが shizuku モジュールを正しく利用できない問題を修正 issue #227 issue #231 issue #284 issue #287 issue #304
  • 修正 コードエディタで行末へ移動すると, カーソルが次の行の先頭に位置してしまう問題を修正
  • 修正 設定ページのダイアログ要素を連続して高速にタップすると, アプリがクラッシュする問題を修正
  • 改善 パッケージアプリのテンプレートにおける APK ファイルサイズの最適化
  • 改善 アプリ(およびパッケージアプリ)がより多くの権限に対応 issue #338
  • 改善 パッケージングページに Pinyin ライブラリのオプションを追加
  • 改善 パッケージアプリのメインページにおいて, ステータスバーの背景とテキスト色を最適化
  • 改善 パッケージアプリの設定ページに, 特別な権限(全ファイルアクセスや通知送信)用のトグルスイッチを追加 issue #354
  • 改善 コントロールのテキストとアイコンが, テーマの明るさに合わせて自動で調整されるよう改善
  • 改善 コントロールの色と背景とのコントラストが低い場合の視認性を向上
  • 改善 カラーピッカー内の HEX 入力欄に, クリップボードからの貼り付け時の互換性を向上
  • 改善 アプリのナビゲーションバーを, より良いビジュアル体験のために透明または半透明に設定
  • 改善 ライトモード時, ステータスバーとナビゲーションバーのデフォルト UI モードをカラー md_grey_50 に設定
  • 改善 ホームドロワー内のアクセシビリティサービスのスイッチを, スクリプトコードと同期するよう改善
  • 改善 ホームページのドキュメントページに双方向検索ボタンを追加
  • 改善 ホームページの『ファイル』タブで, 長押しによりフローティングボタンの表示状態を切り替え可能に
  • 改善 コードエディタのタイトルがフォントサイズを自動調整するよう改善
  • 改善 ログページのフローティングボタンの表示が, リストのスクロール動作と連動するよう改善
  • 改善 スクリプトプロジェクトの project.json 設定ファイルが, より多くのパッケージオプションに対応 issue #305 issue #306
  • 改善 project.json 設定ファイルが, オプション名の柔軟なマッチングとエイリアスに対応するよう改善
  • 改善 APK ファイル情報ダイアログに, ファイルサイズと署名スキームの情報を追加
  • 改善 APK ファイル情報ダイアログで, テキストコピーやアプリ詳細への遷移用クリックリスナーに対応
  • 改善 com.stardust 接頭辞のパッケージを復元し, コード互換性を向上 issue #290
  • 改善 floaty.window / floaty.rawWindow メソッドを, メインスレッドおよびサブスレッドの両方で実行可能に改善
  • 改善 グローバルメソッド getClip が, 必要に応じて floaty.getClip を利用するよう改善し, 互換性を向上
  • 改善 files.path および関連メソッドが, null のパス指定時にも適切に動作するよう改善
  • 改善 最新の公式 Rhino エンジンへの同期およびコードの調整
  • 改善 README.md を改善し, プロジェクトのビルドおよび実行方法のドキュメントを充実 issue #344
  • 改善 一部の依存関係またはローカルライブラリのバージョン調整 CHANGELOG.md

v6.6.1

2025/01/01
  • 新機能 中国語のピンイン変換用の Pinyin モジュール (プロジェクトドキュメントを参照 > 中国語ピンイン)
  • 新機能 中国語のピンイン変換用の Pinyin4j モジュール (プロジェクトドキュメントを参照 > 中国語ピンイン)
  • 新機能 コントロールまたはコントロールコレクションが類似しているかを判定する UiObject#isSimilar と UiObjectCollection#isSimilar メソッド
  • 新機能 グローバルメソッド "currentComponent", 現在アクティブなコンポーネントの名前情報を取得するために使用されます
  • 修正 一部の環境でバージョンを低く戻すことでプロジェクトが正常にコンパイルできなくなる問題
  • 修正 存在しないメソッドを呼び出す際に発生する可能性がある「非プリミティブ型の値」エラー
  • 修正 一部のデバイスでスクリプトショートカットが正常に追加できない問題 (暫定修正) issue #221
  • 修正 automator.click/longClick メソッドのパラメーター型制限の誤り issue #275
  • 修正 セレクターが ConsString 型のパラメーターをサポートしない問題 issue #277
  • 修正 UiObjectCollection インスタンスにメソッドおよびプロパティが欠如している問題
  • 改善 パッケージ化ページで署名設定, キーストア管理, 権限設定をサポートします(luckyloogn による) pr #286
  • 改善 フローティングウィンドウの現在のパッケージ名および現在のアクティビティ名の認識精度を向上 (優先順位: Shizuku > Root > A11Y)
  • 改善 currentPackage と currentActivity の認識精度を向上 (優先順位: Shizuku > Root > A11Y)
  • 改善 ログアクティビティウィンドウの個別エントリのテキスト内容をダブルクリックまたは長押しで選択する機能を復元 issue #280
  • 改善 project.json ファイルが破損した場合でも, スクリプトプロジェクトの重要な情報を可能な限り復元
  • 改善 単一ファイルをパッケージ化する際に, 自動生成されるパッケージ名のサフィックスを簡体字中国語からピンインに変換 (多音字対応)
  • 改善 UiSelector#findOnce と UiSelector#find メソッドで負の引数をサポート
  • 改善 app.startActivity/startDualActivity メソッドの適応性が向上しました
  • 改善 UI 要素や className に関連するセレクターが RecyclerView や Snackbar などのパッケージ名プレフィックス省略形式にさらに対応
  • 改善 Rhino エンジンの最新の上流コードを同期し, 既存のプロジェクトに適応させる
  • 改善 一部の依存関係またはローカルライブラリのバージョン調整 CHANGELOG.md

v6.6.0

2024/12/02 - 組み込みモジュールの書き換え, 慎重にアップグレードしてください
  • ヒント 既存のモジュールは, スクリプトの実行効率を高めるために Kotlin によって再作成されましたが, 改良にはいくつかの反復が必要です
  • ヒント 組み込みの init.js ファイルはデフォルトでは空ですが, 開発者がカスタマイズするためのモジュールをマウントできます
  • 新機能 axios モジュール / cheerio モジュール (AutoX 参照)
  • 新機能 sqlite モジュール, SQLite データベースの簡単な操作に使用されます (Auto.js Pro 参照) (プロジェクトドキュメント > SQLite を参照)
  • 新機能 mime モジュール, MIME タイプ文字列を処理および解析するために使用されます (プロジェクトドキュメント > MIME を参照)
  • 新機能 nanoid モジュール, 文字列 ID ジェネレーターとして使用できます (ai/nanoid 参照)
  • 新機能 sysprops モジュール, ランタイム環境の構成データを取得するために使用されます (プロジェクトドキュメント > システムプロパティ を参照)
  • 新機能 ocr モジュールは Rapid OCR エンジンをサポートしています
  • 新機能 レイアウト解析はウィンドウの切り替えをサポートしています (Auto.js Pro
  • 新機能 auto.clearCache メソッド, コントロールキャッシュをクリアすることをサポートします (Auto.js Pro
  • 新機能 threads.pool メソッド, シンプルなスレッドプールアプリケーションをサポートします (Auto.js Pro
  • 新機能 images.matchTemplate メソッドは useTransparentMask オプションパラメーターを追加し, 透明画像検索をサポートします (Auto.js Pro
  • 新機能 images.requestScreenCaptureAsync メソッド, UI モードで非同期にスクリーンキャプチャの許可を要求するために使用されます (Auto.js Pro
  • 新機能 images.requestScreenCapture メソッドは isAsync オプションパラメーターを追加し, 非同期でスクリーンキャプチャを取得することをサポートします (Auto.js Pro
  • 新機能 images.on('screen_capture', callback) などのイベントリスニングメソッドは, スクリーンキャプチャが使用可能なイベントをモニターすることをサポートします (Auto.js Pro
  • 新機能 images.stopScreenCapture メソッドは, スクリーンキャプチャ要求に関連するリソースを積極的に解放することをサポートします (Auto.js Pro
  • 新機能 images.psnr/mse/ssim/mssim/hist/ncc および images.getSimilarity メソッドは, 画像類似度測定値を取得するために使用されます
  • 新機能 images.isGrayscale メソッドは, 画像がグレースケールかどうかを判断するために使用されます
  • 新機能 images.invert メソッドは, 画像の色を反転するために使用されます
  • 新機能 s13n.point/time メソッドは, ポイントオブジェクトと時間オブジェクトを正規化するために使用されます (プロジェクトドキュメント > 正規化 を参照)
  • 新機能 console モジュールの gravity (重力), touchThrough (タッチスルー), backgroundTint (背景の色調) などの関連メソッド (プロジェクトドキュメント > コンソール を参照)
  • 新機能 Mathx.randomInt/Mathx.randomFloat メソッドは, 指定された範囲内の乱数またはランダム浮動小数点数を戻すために使用されます
  • 新機能 app.launchDual/startDualActivity などのメソッドは二重起動アプリケーションの処理に使用されます (Shizuku または Root 権限が必要) (実験的)
  • 新機能 app.kill メソッド, アプリケーションを強制終了するために使用されます (Shizuku または Root 権限が必要)
  • 新機能 floaty.getClip メソッドは, フローティングウィンドウのフォーカスを通じてクリップボードの内容を間接的に取得するために使用されます
  • 修正 Fragment のサブクラス (例 DrawerFragment / ExplorerFragment 等) 内の View Binding のメモリリーク
  • 修正 ScreenCapture / ThemeColorPreference 等のクラス内のインスタンスのメモリリーク
  • 修正 Android 14 でスクリーンキャプチャの許可を求めるとアプリがクラッシュする問題 (by chenguangming) pr #242
  • 修正 Android 14 でフォアグラウンドサービスを開始するとアプリがクラッシュする問題
  • 修正 Android 14 でコードエディタの実行ボタンをクリックしても点灯しない問題
  • 修正 プロジェクトのパッケージ後に必要なライブラリファイルが不足してアプリが正常に動作しない可能性がある問題 issue #202 issue #223 pr #264
  • 修正 プロジェクトの編集時に指定されたアイコンリソースが存在しない場合にアプリがクラッシュする問題 issue #203
  • 修正 スクリーンキャプチャの許可を取得時に指定された画面方向のスクリーンショットリソースをパラメータで正常に取得できない場合がある問題
  • 修正 一部デバイスでスクリプトショートカットを正常に追加できない問題 (試み修正) issue #221
  • 修正 http モジュールと関連する方法を呼び出すと蓄積される要求による送信遅延の問題 issue #192
  • 修正 AutoJs6 がメインアクティビティページに入る前に Shizuku サービスが正常に利用できない可能性がある問題 (試み修正) issue #255
  • 修正 random(min, max) メソッドが結果がオーバーフローする問題の可能性
  • 修正 pickup メソッドの結果型パラメータが空配列を正しく渡せない問題
  • 修正 UiObject#bounds() で取得したコントロール矩形が意図と異なる形で変更される可能性がある問題
  • 修正 text/button/input 要素のテキスト内容にハーフサイズの二重引用符が含まれている場合に正しく解析されない問題
  • 修正 text/textswitcher 要素の autoLink 属性が機能しない問題
  • 修正 異なるスクリプトが同じ ScriptRuntime オブジェクトを誤って共有する可能性がある問題
  • 修正 グローバル変数 HEIGHT および WIDTH が Getter 動的属性を失う問題
  • 修正 スクリプトの起動時に RootShell が即時ロードされることで起動が遅くなる問題
  • 修正 コンソールフローティングウィンドウで背景色を設定すると矩形の角が失われる問題
  • 修正 サービスの異常の問題が発生する可能性のあるアクセシビリティサービスの自動開始 (試み修正)
  • 修正 ホームページのドキュメントページで左右に滑動すると WebView コントロールが ViewPager の切り替えを誘発する可能性がある問題
  • 修正 ファイル拡張子が大文字を含む場合ファイルマネージャが認識できない問題
  • 修正 ファイルマネージャがプロジェクトディレクトリに最初に入った時点でプロジェクトを自動的に認識できない可能性がある問題
  • 修正 ファイルマネージャでフォルダを削除した後にページが自動更新されない問題
  • 修正 ファイルマネージャでファイルおよびフォルダを並べ替える際に ASCII の先頭文字名を後置する可能性がある問題
  • 修正 コードエディタのデバッグ機能で FAILED ASSERTION 例外が発生する
  • 修正 コードエディタでデバッグ中にエディタを閉じた後に再度正常にデバッグできない問題
  • 修正 コードエディタで行の端へ移動すると末尾の文字が漏れ可能性がある問題
  • 修正 メインアクティビティページでログアクティビティページを起動するときにフラッシュスクリーンの問題が発生する可能性がある
  • 修正 アプリパッケージが opencc モジュールを正常に使用できない問題
  • 改善 パッケージページ内の「利用不可 ABI」コントロールのクリックヒントユーザー体験
  • 改善 Shizuku を使用して「ポインタ位置」表示スイッチをコントロールするサポート
  • 改善 Shizuku を使用して「メディアの投影」および「セキュリティ設定の変更」許可スイッチをコントロールするサポート
  • 改善 automator.gestureAsync/gesturesAsync がコールバック関数パラメータをサポート
  • 改善 tasks モジュールが同期方式でデータベース操作を実行するサポート, データアクセスの不一致問題を回避
  • 改善 スクリプト実行モードがパイプ記号区切りモードパラメータ (例 "ui|auto"; のように開始) をサポート
  • 改善 スクリプト実行モードがシングルクォーテーションおよびバックティックをサポートし, セミコロンを省略 (例 'ui'; または 'ui' のように開始) 可能
  • 改善 スクリプト実行モードが axios, cheerio, dayjs などのモードパラメータで内蔵拡張モジュールのクイックインポートをサポート (例 "axios"; のように開始)
  • 改善 スクリプト実行モードが x または jsox モードパラメータで JavaScript 内蔵オブジェクト拡張モジュールをクイック有効化をサポート (例 "x"; のように開始)
  • 改善 img 要素の src および path 属性がローカル相対パスをサポート (例 <img src="a.png" />)
  • 改善 コードエディタで Java クラスやパッケージ名をインポートする位置のインテリジェント判断をサポート
  • 改善 images モジュールが画像パラメータとしてパスの直接使用をサポート
  • 改善 importPackage が文字列パラメータをサポート
  • 改善 サーバーモードの IP アドレスがクリップボードインポートをスマートに認識し, スペースキーのスマート変換をサポート
  • 改善 ファイルマネージャが新しいファイルを作成する際にデフォルトのプレフィックス選択と適切な数字サフィックスの自動生成をサポート
  • 改善 ファイル管理プロジェクトの実行時の例外メッセージを具体化 issue #268
  • 改善 ファイルマネージャがより多くの種類をサポートし, 対応するアイコンシンボルを表示 (800 種類以上のファイルタイプをサポート)
  • 改善 ファイルマネージャで編集可能なファイルタイプ (jpg/doc/pdf...) に編集ボタンを追加
  • 改善 ファイルマネージャが APK ファイルの基本情報, Manifest 情報, 許可リストを表示するサポート
  • 改善 ファイルマネージャがオーディオおよびビデオなどのメディアファイルの基本情報および MediaInfo 情報を表示するサポート
  • 改善 単一ファイルパッケージング時に適切な正規化名パッケージを自動入力し, 無効な文字フィルタリング推奨をサポート
  • 改善 単一ファイルパッケージング時に同じパッケージ名のアプリがインストールされている場合にアイコンを自動設定し, バージョン番号とバージョン名を増加させるサポート
  • 改善 パックプロジェクト設定ファイルが abis/libs オプションをサポートし, デフォルトで含まれる ABI アーキテクチャと拡張ライブラリを指定
  • 改善 パックプロジェクト設定ファイルの abis/libs オプションが無効または使用可能でない場合に関連メッセージをサポート
  • 改善 不必要な増加を避けるためにリークキャナリーをリリースバージョンから除外
  • 改善 プロジェクトのソースコード内のすべての英語コメントに中国語の簡体字翻訳を追加してコメントの読みやすさを向上
  • 改善 README および CHANGELOG に複数言語をサポート (スクリプトによる自動生成)
  • 改善 Gradle のビルドスクリプトのバージョン適応能力を向上
  • 改善 一部の依存関係またはローカルライブラリのバージョン調整 CHANGELOG.md
他のバージョン履歴については以下を参照してください

プロジェクトのコンパイルとビルド


AutoJs6 オープンソース プロジェクトのデバッグや開発が必要な場合は, Android Studio (Google 社製品) または IntelliJ IDEA (Jetbrains 社製品) を使用できます.

このセクションでは, AutoJs6 オープンソース プロジェクトのコンパイルとビルド方法を Android Studio を例に説明します. IntelliJ IDEA も同様です.

Android Studioの準備

Android Studio Meerkat | 2024.3.1 Patch 1 バージョンをダウンロードしてください (いずれかを選択):

注: 上述バージョンのリリース日は 2025 年 3 月 24 日 です. その他のバージョンをダウンロードするか, 上記のリンクが失効している場合は, Android Studioリリースアーカイブのページをご覧ください.

上記のファイルをインストールまたは解凍し, Android Studio ソフトウェアを実行します (例: "D:\android-studio\bin\studio64.exe").

Android SDK の準備

注: コンピュータシステムに既にAndroid SDK (Androidソフトウェア開発キット)がインストールされている場合, この節の内容をスキップできます.

Android StudioソフトウェアでCTRL + ALT + Sのショートカットキーを使用して設定ページを開く:

Appearance & Behavior (外観と動作) -> 
System Settings (システム設定) -> 
Android SDK (Android ソフトウェア開発キット)

Android SDK場所 の欄が空白の場合は, 右側の 編集 ボタンをクリックし, 表示されるウィンドウで 次へ ボタンを数回クリックします.

注: プロセス中に1つまたは複数の関連契約に同意する必要がある場合があります.

関連するリソースのダウンロードとインストールが完了したら, 完了 ボタンをクリックします.
上記の Android SDK場所 の欄が自動的に入力され, SDKの準備が完了します.

Android SDKツールの準備

AutoJs6では一部のSDKツール(NDKやCMakeなど)が必要です.

注: コンピュータシステムにAutoJs6ですべて必要なAndroid SDKツールがインストールされている場合, この節の内容をスキップできます.

Android StudioソフトウェアでCTRL + ALT + Sのショートカットキーを使用して設定ページを開く:

Appearance & Behavior (外観と動作) -> 
System Settings (システム設定) -> 
Android SDK (Android ソフトウェア開発キット) -> 
SDK Tools (SDK ツール) (右側のウィンドウにあります)

パッケージの詳細を表示を選択し, NDKおよびCMakeをそれぞれクリックして, 対応するバージョンのツールが選択されていることを確認してください, SDKツールのバージョン情報は, AutoJs6プロジェクトのルートディレクトリにあるversion.propertiesファイルに記載されています.

JDKの準備

AutoJs6プロジェクトが依存する JDK (Java開発キット) のリリースバージョンは少なくとも 17 で, それ以下のバージョンは推奨されませんが, 最低でも 19 の使用を推奨します.

2025 年 4 月 16 日 現在, AutoJs6がサポートする最大のJDKバージョンは 24 です.

注: コンピュータシステムに適切なバージョンのJDKがインストールされている場合, この節の内容をスキップできます.

JDK は IDE から直接ダウンロードするか, Oracle サイト にアクセスしてダウンロードできます.

Android Studio ソフトウェアでショートカットキー CTRL + ALT + S を使用して設定ページを開きます:

Build, Execution, Deployment (ビルド, 実行, 展開) -> 
Build Tools (ビルドツール) -> 
Gradle

Gradle JDK で異なるバージョンの JDK を選択または追加できます.

リストに適切なバージョンのJDKが存在する場合(>= 17), それを選択してください.
または, Download JDK (JDK をダウンロード) を選択して適切な JDK をダウンロードし, Download (ダウンロード) ボタンをクリックしてダウンロードが完了するのを待ちます.
Add JDK (JDK を追加) を選択して既存のローカル JDK を追加し, そのディレクトリを指定して JDK を追加することも可能です.

AutoJs6リソースのクローン

Android Studio のメインページで Get from VCS (バージョン管理システムから取得) ボタンをクリックします.
URL (統一リソースロケーターロケーション) の欄に https://github.com/SuperMonster003/AutoJs6.git を入力します,
Directory (ディレクトリ) の欄を必要に応じて特定のパスに変更できます.
Clone (クローン) ボタンをクリックし, AutoJs6 プロジェクト リソースがデバイスにローカルにクローンされるのを待ちます.

注: 上記プロセスにはGit (バージョン管理システム)をインストールする必要がある場合があります.

AutoJs6プロジェクトのビルド

クローンが完了すると, Android Studio は AutoJs6 のプロジェクト ウィンドウを開き, Dependencies (依存関係) の初期ダウンロードおよび Gradle の構築作業を自動的に完了します.

注: 上記のプロセスは非常に時間がかかる可能性があります. ネットワーク条件が悪い場合, 異なるボタンをクリックして再試行する必要がある場合があります.

ビルドが自動的に進行しなかった場合, またはプロジェクトを再ビルドする必要がある場合は, 次の手順に従ってください:

  • ツールバーの Run/Debug Configurations メニューから app を選択します. これは AutoJs6 のメインアプリです
  • Build Project(ハンマーアイコン)のボタンを左側でクリックして, プロジェクトのビルドを開始します. デフォルトのショートカットは CTRL + F9 です
  • ビルドが完了するのを待ちます. Builder Output タブに "BUILD SUCCESSFUL in 1h 17m 34s" のようなメッセージが表示されます

ビルドに失敗した場合は, エラーメッセージを AutoJs6 プロジェクトの Issues ページに報告できます.

注: アプリのビルドおよび実行方法の詳細については, Android Docs を参照してください

AutoJs6 プロジェクトのデプロイ(アプリの実行)

プロジェクトが正常にビルドされた後, 実機(例: スマートフォン/タブレット)や仮想デバイス(例: Android エミュレーター)にアプリとしてデプロイできます.

  • ツールバーで Run/Debug Configurations メニューから app を選択します. これが AutoJs6 のメインアプリです
  • 右側の Available Devices ドロップダウンから, プロジェクトアプリを実行するデバイス(実機または仮想デバイス)を選択します
  • 右側の Run(三角形アイコン)のボタンをクリックして, アプリを起動します. デフォルトのショートカットは F10 です
  • デプロイが完了するのを待ちます. 選択したデバイスが自動的にアプリをインストールして実行します

AutoJs6 プロジェクトのデプロイAPKの生成

プロジェクトをパッケージして, Android デバイスにインストール可能な APK ファイルを生成します:

  • デバッグ版 (デバッグバージョン)
    • Build (ビルド) -> Build Bundle(s) / APK(s) -> Build APK(s)
    • デフォルトの署名が含まれたデバッグ版のインストールパッケージを生成します
    • パスの例: "D:\AutoJs6\app\build\outputs\apk\debug\"
  • リリース版 (リリースバージョン)
    • Build (ビルド) -> Generate Signed Bundle / APK
    • APK オプションを選択します
    • 署名ファイル (新規または選択) を準備して署名付きのリリース版インストールパッケージを生成します
    • パスの例: "D:\AutoJs6\app\release\"

注: ユーザー向けにリリースするアプリのビルド方法の詳細については, Android Docs を参照してください

AutoJs6 用の定義済み Gradle ビルドタスク

プロジェクトのアプリをビルドする以外にも, AutoJs6 はいくつかの定義済み Gradle ビルドタスクをサポートしており, これらは開発者がプロジェクト関連の便利な操作を行うのに役立ちます.

ツールバーの Run/Debug Configurations メニューには, 各タスクの左側に象のアイコンが表示される様々な定義済み Gradle タスクがあります.

  • AutoJs6 [inrt:assemble]

"inrt" ビルドバリアントをアセンブルします. これは主に AutoJs6 のスクリプトパッケージ機能のためのものです.

AutoJs6 プロジェクトにはさまざまなビルドバリアントがあります. その中で "inrt" バリアントは, スクリプトパッケージ機能のために使用され, パッケージ用のテンプレートファイル "template.apk" を生成します.

パッケージ機能を使用する際に, 次のエラーメッセージが表示される場合があります:

java.io.FileNotFoundException: template.apk

これはテンプレートファイルが存在しないことを示しています. テンプレートファイルを生成するために, 手動で inrt:assemble タスクを実行し, その後に再度ビルドしてデプロイしてください.

注: テンプレートファイルが存在しません. inrt:assemble タスクを手動で実行してテンプレートファイルを生成し, その後に再度ビルドしてデプロイしてください

  • AutoJs6 [app:bundle]

デバッグビルドプロセスの成果物をパッケージします. これは主に AutoJs6 型定義 プロジェクトに使用されます.

タスク実行後, AutoJs6 プロジェクトの最新の JAR ファイルが生成されます. Android d.ts GeneratorNativeScript 作)のツールを使用して, AutoJs6 メインアプリの型定義d.ts 形式のファイル)を生成できます.

  • AutoJs6 [app:digest]

リリースビルドで生成された APK ファイルにダイジェスト情報を付加します. これは, GitHub に最新バージョンの AutoJs6 を公開する前に, 最終的なファイル名を確定するためのものです.

以下は, ダイジェスト情報を付加する前後のファイル名の比較です:

前:
autojs6-v6.6.2-arm64-v8a.apk
後:
autojs6-v6.6.2-arm64-v8a-0f2a9d74.apk

参照: Android Docs


スクリプト開発アシスト


AutoJs6に対応するスクリプトを開発するには, 適切な開発ツールを使用する必要があります:

PCでスクリプトを作成してデバッグする場合, VSCodeプラグインを使用してPCと携帯電話を接続できます:

開発ツールを使用してコードを記述する際, コードのインテリセンス機能が開発者のコード記述を支援します:

AutoJs6に関するAPIおよび使用方法については, 常にアプリケーションドキュメントを参照できます:

既存のスクリプト開発プロジェクトを参考にして, 個人のスクリプトプロジェクトのインスピレーションを得ることができます:


貢献の参加


AutoJs6 プロジェクト開発に参加したすべての貢献者に感謝します.

貢献者 コミット数 最近の提出
luckyloogn 3 2025/01/01
kvii 1 2024/10/16
chenguangming (Tom) 2 2024/05/14
LZX284 (AI) 17 2023/11/19
TonyJiangWJ 4 2023/10/31
littlealei (抠脚本人) 12 2023/07/12
aiselp 6 2023/06/14
LYS86 (Lin) 2 2023/06/03

データは 2025 年 1 月 1 日 に更新されました.

データ項目は 最近の提出 の降順で並べ替えられます.

新たに発行された未処理のプルリクエストは, マージされた後にデータ統計に含まれます.

一部の貢献者は GitHub Contributors に正常に表示されず, コミット記録が空のままです. 貢献履歴は プルリクエスト から確認できます.