-
Notifications
You must be signed in to change notification settings - Fork 0
MS_CordovaToolsExtension
- 戻る(Visual Studio+Apache Cordova、Visual Studio Code)
- CSharp for Visual Studio Code
- Python for Visual Studio Code
- Cordova Tools Extension
- Visual Studio CodeによるSPA開発
-
Android、iOS そして Windows アプリの開発に対応
-
今後、Visual Studio Tools for Apache Cordova に替わって、
Visual Studio Code + Cordova Tools Extension が
主流になっていく可能性がある。 -
機能
- Apache Cordova の入力補完機能
- エミュレーター/シミュレーターによるデバッグ実行
- ビルド等のコマンド実行
- Ionic フレームワークのサポート他
移行メモ(自己リンク): 移行元では概要の 2 番目が
[[Visual Studio Code]] + [[Cordova Tools Extension]]と
自ページへのリンクを含んでいたため、リンクを外した。
補足(この予測はどうなったか): 「主流になっていく可能性がある」という
見立ては、半分当たり、半分外れた。【当たった点】★ ・[Visual Studio Tools for Apache Cordova](MS_VSToolsForApacheCordova) は【VS 2019 で提供終了】 ・Microsoft の Cordova 支援は 【VS Code の拡張機能だけになった】 → 「VS TACO に替わって」という部分は正しかった 【外れた点】★ ・「主流になる」ことはなかった → Cordova というプラットフォーム自体が 急速に縮小したため 【Cordova 全体の現況】★★ ・Adobe PhoneGap … 2020年10月にサポート終了 ・Apache Cordova … コミッタ減少により 【Attic(休止)入りが議論される状況】 ・cordova-ios / cordova-android の OS 新バージョンへの追随が遅れがち → 【新規採用は推奨しがたい】 【Cordova Tools 拡張の現況】 ・Marketplace には現在も存在する (msjsdiag.cordova-tools) ・ただし更新頻度は低い ★ 【現在の後継】★ ・【Capacitor】(Ionic チーム製) → Cordova プラグイン互換を持ちつつ、 ネイティブ プロジェクトを 【隠さずに直接編集させる】設計 → 「ブラックボックス化して追随できなくなる」という Cordova/TACO の失敗を避けた ★ ・【PWA】… ストア配布をやめる ・【.NET MAUI Blazor Hybrid】… .NET でやるなら
- VSCode を起動し、画面左のメニューから拡張機能のメニューを選択。
- 検索欄に "cordova" と入力、表示された「Cordova Tools Extension」をインストール。
- インストール後、Visual Studio Code を再起動
- Node.js
npm(Node.js のパッケージ管理ツール) が必要なため。- Node.js
https://nodejs.org/en/
- Node.js
node -v
npm -v
- Cordova CLI
npm install cordova -g
cordova -v
移行メモ(文字化け): 移行元では
npm install cordova –g/
cordova –vのハイフンが**全角ダッシュ(–, U+2013)**になっていたため、
半角ハイフンに修正した(そのままではコマンドが実行できない)。
(Android Studioを参照)
Visual Studio のエミュレータ
(Androidのデバッグの該当節を参照)は、
Android Studioのインストールで代替できる。
※ Android Virtual Device (AVD)
(Androidのデバッグの該当節を参照)を使用するため。
-
インストール
- Java SDK
- Android Studio と SDK
(いずれも Android Studioの該当節を参照)
-
設定
- 初期設定
- PATH 設定
(いずれも Android Studioの該当節を参照)
- cordova create コマンドを使用する。
cordova create [プロジェクト用ルート・フォルダ名] [Javaパッケージ命名規約に沿ったパッケージ名] [プロジェクト名] -d
- 例
cordova create CordovaApp com.example.CordovaApp CordovaApplication -d
※ -d は途中経過を表示するスイッチ
ターゲットとなるプラットフォーム用のファイルを追加する。
-
cd コマンドで、前述の「作成」で作成したプロジェクト用フォルダに cd する。
-
ターゲットごとに以下のコマンドを実行する。
- Android 用 :
cordova platform add android
- iOS 用 :
cordova platform add ios
- Windows 用:
cordova platform add windows
- 追加コマンド
基本的には、ios, android, browser などを追加。
cordova platform add android
cordova platform add ios
cordova platform add browser
- 確認コマンド
以下でターゲット・プラットフォームを確認できる。
cordova platform ls
Installed platforms:
・・・
Available platforms:
・・・
- 削除コマンド
不要なターゲット・プラットフォームは以下で削除できる。
cordova platform rm android
cordova platform rm ios
cordova platform rm browser
移行メモ(誤字): 移行元の「[[プロジェクトを用に作成したフォルダ]]」を
「プロジェクト用に作成したフォルダ」と読み替えた。
補足(
cordova platform add windowsは使えなくなった): 概要の
「Windows アプリの開発に対応」という記述は、現在は成立しない。【cordova-windows の現況】★ ・対象は【Windows 8.1 / 10 の UWP アプリ】だった ・UWP そのものが新規開発の対象から外れ、 cordova-windows も【保守されていない】 → 現在 Windows 向けに Web 技術でアプリを作るなら - 【PWA】(Edge からインストール可能)★ - 【Electron / Tauri / WebView2】 を選ぶ 【platform フォルダの扱い】★ ・platforms/ と plugins/ は 【生成物】であり、 Git 管理から外すのが定石 → .gitignore に追加する → config.xml と package.json から `cordova prepare` で再生成できる ・逆に Capacitor は 【ネイティブ プロジェクトを Git 管理する】設計 → 思想が正反対である点が興味深い ★
- 以下のコマンドを使用して確認して構築。
>cordova requirements
Requirements check results for android:
Java JDK: installed 1.8.0
Android SDK: installed true
Android target: not installed
Please install Android target / API level: "android-28".
Hint: Open the SDK manager by running: "C:\Users\xxxx\AppData\Local\Android\Sdk\tools\android.bat"
You will require:
1. "SDK Platform" for API level android-28
2. "Android SDK Platform-tools (latest)
3. "Android SDK Build-tools" (latest)
Gradle: installed C:\Users\xxxx\.gradle\wrapper\dists\gradle-5.4.1-all\3221gyojl5jsh0helicew7rwx\gradle-5.4.1\bin\gradle
Requirements check results for browser:
Some of requirements check failed
- 以下を実施
- 前述の「Android Studio」の Cordova 開発環境のインストール
- プラットフォーム毎の前提環境の構築
(Cordova (PhoneGap)の該当節を参照)
以下何れかの方法で、Visual Studio Code に
プロジェクトをロードさせる。
- 作業ディレクトリをプロジェクトフォルダとし、「code」とコマンドを入力する。
- 手動で起動してメニュー [File] – [Open Folder] でプロジェクトフォルダをオープン。
- [F1] キーを押下すると画面上部にコンボボックスが表示される。
- cordova と入力し、表示された入力候補から Cordova: XXXX を選択。
-
Visual Studio Code から実行する場合、
- 表示された入力候補から Cordova: Prepare を選択。
-
Cordova CLI から実行する場合
(Cordova (PhoneGap)の該当節を参照)
-
iOS 以外のアプリについては、
-
Visual Studio Code から実行する場合、
- 表示された入力候補から Cordova: Build を選択。
- Cordova CLI から実行する場合
(Cordova (PhoneGap)の該当節を参照)
-
Visual Studio Code から実行する場合、
-
iOS のアプリについては、
-
.\platforms\iosフォルダに Xcode 用のプロジェクトが格納されている。 - これを Mac OS 上の Xcode でビルドする。
-
-
ブラウザで Android・iOS をシミュレートする
2 つの追加のターゲットが含まれているらしいが使用しない。 -
以下のような機能も含まれるもよう。
- 主要なコアプラグインのサポート
- live reload
- event firing
- device screen resizing (while debugging only)
- Cordova Simulate
- デバッグモードを (デバッグ・アイコン か Ctrl + Shift + D で) 開き、
- 歯車マークを押下し「Cordova」を選択する。
- この設定は「/.vscode/launch.json」に記述される。
- [メニュー] -> [デバッグ] -> [構成を開く] で launch.json ファイルが開く。
-
事前に、AVD Manager で Emulator を作成・起動しておく。
-
デバッグモードを (デバッグ・アイコン か Ctrl + Shift + D で) 開き、
-
デバッグ・ボタン([▶])横の
「Run Android on emulator」を選択し、 -
デバッグ・ボタン([▶])を押下すると、
-
Emulator にデプロイしてデバッグ実行する。
-
-
この選択肢が出てこない場合、
拡張機能が- インストールされていない場合や、
- 有効になっていない場合が
考えられる。
移行メモ(誤字): 移行元では見出しが「デバック設定」
「デプロイしてデバック実行」となっていたため、
「デバッグ」に統一した。
補足(Cordova のデバッグの実体): 「デバッグできる」の中身を
補っておくと、うまくいかない時の切り分けができる。【Cordova アプリのデバッグの構造】★ アプリの実体は【WebView 内で動く Web ページ】 → だからデバッガは 【ブラウザの開発者ツールと同じ仕組み】で繋がる Android : Chrome の【リモート デバッグ プロトコル】 → chrome://inspect でも直接繋げる ★ iOS : Safari の【Web インスペクタ プロトコル】 → Mac が必要 → VS Code の Cordova Tools 拡張は この接続を自動化しているだけである ★ 【繋がらない時の切り分け】★ ① アプリは起動しているか(=ビルド・デプロイの問題) ② 【WebView がデバッグ可能な設定か】 → android:debuggable="true"(デバッグ ビルドなら自動) ③ chrome://inspect に【手動で繋がるか】 → 繋がるなら拡張機能側の問題 → 繋がらないなら端末・USB・ドライバの問題 ④ 【Chrome と WebView のバージョン差】 → 古い端末では devtools が読み込めないことがある 【Cordova Simulate について】 ・ブラウザ上で動かしつつ、 【プラグイン API をモックする】仕組み ・実機がなくても カメラ・GPS 等の呼び出しを試せる ★ ・ただし挙動は本物と異なるため、 最終確認は実機で行う
-
Visual Studio Tools for Apache Cordova の
「Cordova プラグインの追加」のように GUI が使えないので、 -
Cordova (PhoneGap)にある手順で、
プラグインを追加する(CLI で手動インストール)。
プロジェクトに追加したプラグインを IntelliSense が受け取る。
-
既定のサポート
- cordova-plugin-battery-status
- cordova-plugin-camera
- cordova-plugin-contacts
- cordova-plugin-device
- cordova-plugin-device-motion
- cordova-plugin-device-orientation
- cordova-plugin-dialogs
- cordova-plugin-file
- cordova-plugin-file-transfer
- cordova-plugin-globalization
- cordova-plugin-inappbrowser
- cordova-plugin-media
- cordova-plugin-media-capture
- cordova-plugin-network-information
- cordova-plugin-splashscreen
- cordova-plugin-statusbar
- cordova-plugin-vibration
- cordova-plugin-websql
- cordova-plugin-x-toast
- ionic-plugin-keyboard
- phonegap-plugin-barcodescanner
- phonegap-plugin-push
-
追加のサポート
\.vscode\typingsフォルダに適切な.d.tsファイルを置く。
移行メモ(誤記): 移行元の「適切な .dts ファイル」を、
TypeScript の型定義ファイルの正しい拡張子である
「.d.ts」に修正した。
- IntelliSense で受け取りたいファンクション上に JSDoc ヘッダを作成するだけ。
- Ionic、Angular、jQuery のサポートが追加されている。
補足(型定義の入手方法は変わった):
.vscode\typingsに手で置く方式は、
現在は使われない。【型定義の変遷】★ ~2016 【tsd / typings】ツールで .d.ts を個別にダウンロードして配置 → 本ページの手順はこの世代 ★ 2016~ 【@types スコープ(DefinitelyTyped)】に統一 npm install --save-dev @types/cordova → node_modules/@types/ に入り、 TypeScript が【自動的に読み込む】★ → 手で typings フォルダを作る必要がない 【現在の書き方】 npm i -D @types/cordova npm i -D @types/cordova-plugin-camera (あるもののみ) → jsconfig.json / tsconfig.json を置くと VS Code が【プロジェクトとして認識】し、 補完精度が上がる ★ { "compilerOptions": { "checkJs": true }, "exclude": ["node_modules", "platforms"] } ※ platforms/ を除外しないと 生成物まで解析して重くなる ★
- 米Microsoft、VS Code向けのCordova拡張「Cordova Tools」を公開 | OSDN Magazine
https://mag.osdn.jp/16/02/03/170000 - 無償のVisual Studio CodeがCordovaに対応。HTML5/JavaScriptでのモバイルアプリケーション開発が可能に - Publickey
http://www.publickey1.jp/blog/16/visual_studio_code_cordova.html - Microsoft Releases Cordova Tools Extension for Visual Studio Code
http://www.eweek.com/development/microsoft-releases-cordova-tools-extension-for-visual-studio-code - Visual Studio Code で Apache Cordova を使った開発が可能に – Visual Studio 日本チーム Blog
https://blogs.msdn.microsoft.com/visualstudio_jpn/2016/01/27/visual-studio-code-apache-cordova/
- Cordova Tools - Visual Studio Marketplace
https://marketplace.visualstudio.com/items?itemName=vsmobile.cordova-tools
移行メモ(発行元 ID の変更): Marketplace 上の拡張機能 ID は
現在msjsdiag.cordova-toolsになっており、
上記のvsmobile.cordova-toolsからはリダイレクトされる。
-
MacでもLinuxでも使える! 無償の Visual Studio Code を使用した Cordova 開発 – monoe's blog
https://blogs.msdn.microsoft.com/osamum/2016/02/01/maclinux-visual-studio-code-cordova/ -
[VSCode] Cordovaの開発環境構築 │ Web備忘録
https://webbibouroku.com/Blog/Article/vscode-cordova -
Visual Studio CodeとCordovaで作るハイブリッドアプリ開発環境 - Qiita
https://qiita.com/yama-take/items/8c6434efbcd4bece6310 -
Cordova - iPhone, iOSと Android 両方で動くアプリ開発環境 - DEblog
http://nikami.org/cordova-iphone-ios-android-%E4%B8%A1%E6%96%B9%E3%81%A7%E5%8B%95%E3%81%8F%E3%82%A2%E3%83%97%E3%83%AA%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83/ -
ベーコン婆男のテックノート
- Visual Studio CodeでのIonicアプリ(Android)のデバッグ
https://www.smagai.com/visual-studio-code%E3%81%A7%E3%81%AEionic%E3%82%A2%E3%83%97%E3%83%AAandroid%E3%81%AE%E3%83%87%E3%83%90%E3%83%83%E3%82%B0/
- Visual Studio CodeでのIonicアプリ(Android)のデバッグ
-
Apache CordovaをVisual Studio Codeで開発するための道のり - Aqutras Members' Blog
http://blog.aqutras.com/entry/2016/04/25/210000 -
VSCode-Cordova開発環境 - Chipstar Lightのメモ
http://seesaawiki.jp/w/chipstar_light/d/VSCode-Cordova%B3%AB%C8%AF%B4%C4%B6%AD -
Cordova開発環境をつくる | cozy attic
https://cozyattic.wordpress.com/2016/12/26/cordova%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E3%82%92%E3%81%A4%E3%81%8F%E3%82%8B/
移行メモ(リンク切れ): 本ページの参考リンクのうち、
mag.osdn.jp(OSDN Magazine は 2022 年に更新停止)、
blogs.msdn.microsoft.com(2019〜2020 年にアーカイブへ移行)、
www.eweek.com(サイト再編で URL 体系が変更)は
到達しない可能性が高い。記録として残す。
Tags: 移行, .NET開発, モバイル系開発, プログラミング, ツール類
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。