33054


Ionic2でURLをタップしたらアプリを起動するようにしたいのですが、やり方がわからず困っています。  
[myapp://****] 左のようなURLをクリックしたらアプリを起動するようにできると思うのですが、いまいちうまくいきません。  
Ionic2のホームページにあるionic-plugin-deeplinksを用いてできそうなのですが、プラグインのインストールでエラーが出てしまいます。  
[Error: spawnSync npm.cmd ENOENT]  
AndroidのPlatformが入っているとエラーが出るみたいなので、何か干渉しているみたいなのですがよくわかりません。  
他のプラグインでもいいのですがcustom URL schemeで起動する方法があれば教えてください。

実際に行った手順  
1.ionic start TestApp --v2  
2.ionic pratform add android  
3.ionic plugin add ionic-plugin-deeplinks --variable URL_SCHEME=myapp
--variable DEEPLINK_SCHEME=https --variable DEEPLINK_HOST=example.com
--variable ANDROID_PATH_PREFIX=/

発生したエラーコード

[code]

        Failed to install 'ionic-plugin-deeplinks':Error: spawnSync npm.cmd ENOENT
    at exports._errnoException (util.js:1028:11)
    at spawnSync (child_process.js:468:20)
    at module.exports (C:\BFM\source\Linktest\plugins\ionic-plugin-deeplinks\hooks\beforePluginInstallHook.js:51:16)
    at runScriptViaModuleLoader (C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\cordova-lib\src\hooks\HooksRunner.js:187:18)
    at runScript (C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\cordova-lib\src\hooks\HooksRunner.js:165:16)
    at C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\cordova-lib\src\hooks\HooksRunner.js:133:20
    at _fulfilled (C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\q\q.js:787:54)
    at self.promiseDispatch.done (C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\q\q.js:816:30)
    at Promise.promise.promiseDispatch (C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\q\q.js:749:13)
    at C:\Program Files (x86)\Nodist\bin\node_modules\cordova\node_modules\q\q.js:810:14
    Error: spawnSync npm.cmd ENOENT
    
[/code]

実行環境  
npm:3.9.6  
Cordova CLI: 6.5.0  
Ionic Framework Version: 2.0.1  
Ionic CLI Version: 2.2.1  
Ionic App Lib Version: 2.2.0  
Ionic App Scripts Version: 1.1.0  
ios-deploy version: Not installed  
ios-sim version: Not installed  
OS: Windows 10  
Node Version: v6.2.2


CC BY-SA 3.0
2017-03-03T01:01:24.617
33053
2017-03-06T14:11:14.860
2017-03-06T14:11:14.860
20272
20898
question
npm ionic2
ionic-plugin-deeplinksプラグインのインストールで「Error: spawnSync npm.cmd ENOENT」が発生する


おそらくこの部分の処理でのエラー発生でしょう。  
<https://github.com/driftyco/ionic-plugin-
deeplinks/blob/master/hooks/beforePluginInstallHook.js>

[code]

    var npm = (process.platform === "win32" ? "npm.cmd" : "npm");
    var result = spawnSync(npm, ['install', '--production'], { cwd: './plugins/' + ctx.opts.plugin.id });
    if (result.error) {
      throw result.error;
    }
    
[/code]

npm.cmdが見つからずに実行できないというエラーです。  
nodeはインストールされていますでしょうか？

* * *

一応この部分についても補足しておきます。

> AndroidのPlatformが入っているとエラーが出るみたいなので、何か干渉しているみたいなのですがよくわかりません。

Android環境をビルドする為(apkを作成)に必要なファイル群が/platforms/android/配下に用意されます。プラグインを追加すると/platforms/配下の各環境に対して適用されます。  
上記エラーが出るということは/platforms/android/配下のAndroid環境に対してプラグインを適用しようとしているということになります。


CC BY-SA 3.0
2017-03-03T01:18:17.013
33054
2017-03-06T01:28:38.037
2017-03-06T01:28:38.037
20272
20272
33053
answer