優れたソフトウェアと実用的なチュートリアル
Website-to-APK: 効率的なオープンソースの WebView アプリケーション構築フレームワーク
モバイルアプリケーション開発の分野では、既存のウェブサイトをネイティブAndroid APKに迅速にパッケージ化するニーズがますます高まっており、特に開発サイクルとリソース投資を最小限に抑えたい開発者にとって大きな課題となっています。Website-to-APKは、WebViewコンポーネントを用いてシームレスな変換を実現する洗練されたオープンソースツールです。Android StudioやJavaプログラミングの専門知識を必要とせず、あらゆるウェブサイトをフル機能のAPKラッパーに変換できます。このフレームワークは、ビルドプロセスを簡素化するだけでなく、デバイス間の互換性とセキュリティを確保し、静的サイトから動的ウェブアプリケーションまで、さまざまなユースケースに適しています。GitHubのデータによると、このプロジェクトは数千人の開発者が本番環境レベルのアプリケーションを展開するのを支援し、モバイルへの移行のハードルを大幅に下げました。
コア機能
- 完全に無料のオープンソース**: MIT ライセンス契約に基づいて、ソースコードはオープンかつ透明であり、ユーザーはコンプライアンスと保守性を確保するためにソースコードを自由にレビュー、変更、拡張できます。
- 直感的なコマンドライン インターフェイス**: カラフルな出力形式とユーザーフレンドリーなインタラクティブ エクスペリエンスにより、初心者でも効率的に操作できます。
- 自動化された環境依存関係: OpenJDK 17 および Android SDK ツールの自動ダウンロードおよびインストール メカニズムが組み込まれているため、手動構成の複雑さが排除されます。
- 完全な APK ライフサイクル管理: ** これには、署名、ビルド、テストをカバーするフルチェーンの自動化が含まれ、本番環境レベルの展開をサポートします。
- ユーザー スクリプトの統合**: Tampermonkey スタイルのスクリプト インジェクションと互換性があり、コアを変更することなくアプリケーションの機能を拡張します。
- 低いリソース使用量: 最適化されたビルド プロセスによりシステム要件が最小限に抑えられ、リソースが制限された環境に適しています。
クイックスタート
このリポジトリをクローンします:
git clone https://github.com/Jipok/website-to-apk cd website-to-apk
設定ファイルを作成する webapk.conf
:
id = myapp # アプリケーション ID (com.myapp.webtoapk になります) name = My App Name # アプリの表示名 mainURL = https://example.com # ターゲット ウェブサイトの URL icon = example.png # アプリ アイコンへのパス (PNG 形式) allowSubdomains = true # example.com と sub.example.com 間のナビゲーションを許可 requireDoubleBackToExit = true # アプリを終了するにはダブル バック押下が必要 enableExternalLinks = true # 外部リンクを許可 openExternalLinksInBrowser = true # 許可されている場合: 外部リンクをブラウザーまたは WebView で開きます confirmOpenInBrowser = true # 外部ブラウザーを開く前に確認を表示します allowOpenMobileApp = false # 外部アプリのリンク/スキームをブロック
署名キーを生成します(一度だけ必要、生成されたファイルは安全に保管してください)。
./make.sh キージェネレータ
構成を適用してビルドします。
./make.sh ビルド
最終的な APK は現在のディレクトリに作成されます。
注: アプリケーションのビルド時にエラーが発生した場合は、設定ファイルを確認してください。設定ファイルの id オプションにはドットを含めることはできません。
YouTubeの例
YouTubeの事前設定されたプロファイルはディレクトリで利用可能です 会議/YouTube
YouTube APK をビルドするには、次のコマンドを実行するだけです。
./make.sh で confs/youtube/webapk.conf をビルドします。
利用可能なコマンド
./make.sh build [config] - 設定を適用してビルドする
./make.sh keygen - 署名キーを生成する
./make.sh test - 接続されたデバイスに APK をインストールしてテストします
./make.sh clean - ビルドファイルをクリーンアップします
./make.sh apk - apply_config なしで APK をビルドする
./make.sh apply_config - 設定ファイルから設定を適用する
./make.sh get_java - OpenJDK 17 をローカルにダウンロードする
アプリリンク/ディープリンク
設定ファイルでオプションを設定することで、アプリでウェブサイトへのディープリンクを処理できるようになります。設定が完了すると、デバイス上でウェブサイトへのリンクがクリックされた際に、ブラウザではなくアプリでリンクが開かれるようになります。
例えば、あなたのウェブサイトが https://example.com の場合は、次のように設定してください。
ディープリンク = example.com
ユーザースクリプトのサポート
アプリケーションは設定オプションを介してユーザースクリプト(Tampermonkey/Violentmonkeyスクリプトに類似)をサポートします。 スクリプト
:
scripts = scripts/*.js # スクリプトディレクトリからすべての .js ファイルをロードします # または scripts = site-*.js # パターンに一致するすべてのファイルをロードします # または scripts = script1*.js script20.js # 特定のスクリプトファイルをロードします
ユーザー スクリプトの動作方法:
- スクリプトはTampermonkey/Violentmonkeyなどで使用できます @マッチ
そして @run-at
指示、その他は無視されます
- そうでない場合 @マッチ
指定すると、スクリプトはすべてのページで実行されます
- のみ GM_addStyle
Greasemonkey API サポート
- 持っている トースト("ショートメッセージ")
関数
- 以下の方法を使用してスクリプトコンソールの出力を監視できます(コンソール.log/アラート/警告
):
./make.sh テスト
一般的な使用例は次のとおりです:
- ウェブサイトにダークモードを追加する
- ウェブサイトの外観をカスタマイズする
- 新機能の追加
- モバイル互換性の問題を修正
役に立つスクリプトの例:
dark-mode.js - システム設定を尊重するユニバーサルダークテーマ
instant.js - ユーザーがクリックしたときにページをプリロードし、ページの読み込みを高速化します。
追加のWebViewオプション
次の詳細オプションを構成することもできます。
cookies = "key1=value1; key2=value2" # mainURL ホストの Cookie basicAuth = login:password # mainURL ホストの HTTP 基本認証 userAgent = "MyCustomUserAgent/1.0" # カスタム UserAgent ヘッダー JSEnabled = true # JavaScript 実行を有効にする JSCanOpenWindowsAutomatically = true # JS が新しい資格情報ウィンドウ/ポップアップを開くことを許可する DomStorageEnabled = true # HTML5 DOM ストレージを有効にする DatabaseEnabled = true # HTML5 Web SQL データベースを有効にする SavePassword = true # WebView でパスワードを保存することを許可する AllowFileAccess = true AllowFileAccessFromFileURLs = true forceLandscapeMode = false # 画面の向きを横長にロックする showDetailsOnErrorScreen = false # ユーザーに接続エラーの詳細を表示する confirmOpenExternalApp = true # 外部アプリを開く前に確認を表示する blockLocalhostRequests = true # 127.0.0.1 へのリクエストをブロックする trustUserCA = false # ユーザーがインストールした SSL 証明書をアプリが信頼できるようにする geolocationEnabled = false # 位置情報 API をブロックする
技術的な詳細
- - 対象 Android API: 33 (Android 13)
- - 最小 Android API: 24 (Android 7.0)
- - ビルドツールバージョン: 33.0.2
- - Gradleバージョン: 7.4
- - 必要なJavaバージョン: 17
- - すべてのアプリケーションデータはアプリケーションのプライベートディレクトリに保存されます
- - キーストア
app/my-release-key.jks
デフォルトのパスワードは「123456」です
Website-to-APKは、そのモジュール性と拡張性においてモバイル開発ツールチェーンの中でも際立っており、迅速なプロトタイピングやウェブアセットをネイティブ配布パッケージに変換するのに最適です。一人で開発する場合でも、チームで共同作業する場合でも、このフレームワークは高い互換性とセキュリティを維持しながら、構想から展開までのタイムラインを大幅に短縮します。今すぐリポジトリをクローンして、その可能性を探求してください。オープンソースコミュニティの力が、あなたのアイデアを現実のものにしてくれるでしょう。