広告

【Googleドキュメント】Android Tasker経由でドキュメント自動アーカイブ!定期実行

【Googleドキュメント】Android Tasker経由でドキュメント自動アーカイブ!定期実行
🛡️ 超解決

AndroidスマートフォンでGoogleドキュメントを定期的にバックアップしたいと思ったことはありませんか。手動でエクスポートする作業は面倒で、うっかり忘れてしまうことも多いでしょう。Taskerという自動化アプリを使えば、指定したスケジュールでドキュメントを自動的にアーカイブできます。この記事では、TaskerとGoogle Apps Scriptを連携して、Googleドキュメントを自動アーカイブする具体的な手順を解説します。

【要点】Tasker定期実行でGoogleドキュメントを自動アーカイブする方法

  • Google Apps Script(GAS)を作成: ドキュメントをPDFに変換してGoogle Driveに保存するスクリプトを準備します。
  • TaskerでHTTPリクエストを送信: スクリプトのWebアプリURLを指定し、定期実行で呼び出します。
  • 認証とエラーハンドリング: OAuth2トークンの取得とエラー対策で安定した自動化を実現します。

ADVERTISEMENT

TaskerでGoogleドキュメントを自動アーカイブする仕組み

TaskerはAndroid向けの強力な自動化アプリで、時間やイベントをトリガーに任意のアクションを実行できます。一方、Google Apps Script(GAS)はGoogleのクラウド上で動作するスクリプト環境で、ドキュメントの処理やファイル操作が可能です。この2つを組み合わせることで、スマートフォンから直接GoogleドキュメントをPDFなどの形式に変換し、Driveに保存する処理を定期実行できます。

具体的な流れは次の通りです。まず、GASでWebアプリとして公開するスクリプトを作成します。このスクリプトは、指定されたフォルダ内のドキュメントをPDFに変換し、アーカイブ先フォルダに保存します。次に、Taskerで「HTTPリクエスト」アクションを使い、そのWebアプリのURLを定期的に呼び出します。スクリプトはPOSTリクエストを受け取ると処理を実行し、結果を返します。この仕組みにより、手動操作なしでドキュメントの自動アーカイブが実現します。

Taskerを使ってドキュメントを自動アーカイブする手順

1. Google Apps Scriptの作成と公開

  1. スクリプトエディタを開く
    ブラウザでGoogle Driveを開き、新規「その他」→「Google Apps Script」を選択します。プロジェクト名を「自動アーカイブ」などに変更しましょう。
  2. コードを記述する
    以下のサンプルコードをコピーして貼り付けます。このコードは、ドキュメントファイルをPDFに変換し、指定のアーカイブフォルダに保存します。
    function doPost(e) {
    var archiveFolderId = 'YOUR_FOLDER_ID'; // アーカイブ先フォルダID
    var sourceFolderId = 'YOUR_SOURCE_FOLDER_ID'; // 対象ドキュメントのフォルダID
    var folder = DriveApp.getFolderById(sourceFolderId);
    var files = folder.getFilesByType(MimeType.GOOGLE_DOCS);
    while (files.hasNext()) {
    var doc = files.next();
    var blob = doc.getAs('application/pdf');
    var archiveFolder = DriveApp.getFolderById(archiveFolderId);
    archiveFolder.createFile(blob).setName(doc.getName() + '.pdf');
    }
    return ContentService.createTextOutput('成功');
    }
  3. Webアプリとして公開する
    「公開」→「ウェブアプリケーションとして導入」をクリックします。「次のユーザーとしてアプリケーションを実行」を「自分」に、「アプリケーションにアクセスできるユーザー」を「全員(匿名ユーザーを含む)」に設定します。ただし、セキュリティを高めるには「自分のみ」にし、Tasker側でアクセストークンを付与する方法もあります。今回は簡略化のため「全員」にします。公開後に表示されるURLをコピーしておきます。

2. Taskerで定期実行プロファイルを作成

  1. Taskerを起動し、プロファイルを追加
    Taskerアプリを開き、右下の「+」をタップして「プロファイル」を追加します。「時間」を選択し、実行したい間隔を設定します。例えば毎日午前9時に実行したい場合は、開始時間を9:00、繰り返しを「毎日」にします。
  2. タスクを作成する
    プロファイルに紐付けるタスクを新規作成します。アクションを追加するため、「+」→「ネットワーク」→「HTTPリクエスト」を選択します。
    「サーバー:ポート」には先ほどコピーしたWebアプリURLを入力します。「メソッド」は「POST」にします。「Content-Type」は「application/x-www-form-urlencoded」のままで構いません。必要に応じて「ボディ」にパラメータを追加してフィルタリングすることも可能です。
  3. 設定を保存し、テスト実行する
    タスク設定画面で左上の戻るボタンを押し、タスクに名前を付けて保存します。プロファイルの設定は自動で保存されます。初回は手動でタスクを実行(タスク画面で再生ボタン)して、アーカイブが正常に行われるか確認しましょう。スクリプトの返答が「成功」と返ってくれば成功です。

自動アーカイブで注意すべきポイント

Google Apps Scriptの実行制限

GASには1日あたりの実行時間や呼び出し回数に制限があります。無料アカウントでは1日90分の実行時間、1日あたり20,000回の呼び出しなどが上限です。大量のドキュメントを処理する場合は制限に注意しましょう。また、Webアプリの公開設定で「全員(匿名ユーザーを含む)」にすると、URLを知っていれば誰でも実行できるため、セキュリティリスクがあります。実際の運用では、アクセストークンによる認証を導入することをおすすめします。

TaskerのHTTPリクエストが失敗する場合

TaskerのHTTPリクエストアクションは、サーバーからの応答を待たずに途中でタイムアウトすることがあります。デフォルトのタイムアウトは30秒ですが、スクリプトの処理に時間がかかる場合は「タイムアウト」を長めに設定しましょう。また、Androidのバッテリー最適化設定によってTaskerがバックグラウンドで動作しない場合もあります。Taskerをバッテリー最適化の対象から除外することで、定期実行の信頼性が向上します。

ドキュメントの権限とアクセス範囲

スクリプトがアクセスできるドキュメントは、スクリプトの所有者がアクセス権を持つものに限られます。アーカイブ対象のドキュメントが自分以外のユーザーと共有している場合、スクリプトがアクセスできないこともあります。その場合は事前にスクリプトの実行権限を適切に設定するか、対象フォルダを自分のマイドライブ内に限定するなどの対策が必要です。

ADVERTISEMENT

Taskerと他の自動化ツールの比較

ツール 必要な知識 カスタマイズ性 コスト Androidでの使いやすさ
Tasker 中~高 非常に高い 有料(約600円) ◎ 自由度が高い
IFTTT 低(レシピのみ) 基本無料(一部有料) ○ 簡単だが制約あり
MacroDroid 低~中 無料(広告あり) ○ Taskerより簡単

Taskerは学習コストが高いものの、カスタマイズ性と拡張性で他のツールを大きく上回ります。今回の自動アーカイブのように、HTTPリクエストを送信して外部サービスと連携する用途にはTaskerが最適です。

まとめ

この記事では、AndroidのTaskerとGoogle Apps Scriptを連携して、Googleドキュメントを定期的に自動アーカイブする方法を解説しました。TaskerのHTTPリクエスト機能とGASのWebアプリ公開を組み合わせることで、手動操作なしでドキュメントのバックアップが可能になります。応用として、アーカイブ先フォルダを日付ごとに自動生成するスクリプトに改造したり、エラー発生時に通知を送るようにTaskerを設定したりすることもできます。

さらに高度な自動化に挑戦する場合は、TaskerでOAuth2認証を実装してスクリプトのセキュリティを強化したり、GASのトリガー機能を併用してより複雑なワークフローを構築したりしてみてください。この自動化の仕組みを応用すれば、Googleドキュメントだけでなく、スプレッドシートやスライドの自動エクスポートにも展開できます。


ADVERTISEMENT

📄
Googleドキュメントトラブル完全解決データベースこの記事以外にも、書式・共有・Apps Script・引用など様々な困りごとへの解決策をまとめています。逆引きに活用してください。
この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

SPONSORED