Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/224.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 添加/删除我的cordova插件_Android_Cordova_Npm_Cordova Plugins - Fatal编程技术网

Android 添加/删除我的cordova插件

Android 添加/删除我的cordova插件,android,cordova,npm,cordova-plugins,Android,Cordova,Npm,Cordova Plugins,我为Android应用程序制作了一个cordova插件,但与其他插件不同,这个插件只使用一个应用程序(App.java),而不使用CordovaPlugin类 当我第一次尝试使用cordova插件add安装它时,它运行良好。当我尝试使用cordova plugin rm删除它时,它不会从node_模块中删除文件夹,而是将插件依赖项名称保留在package.json中。此外,它会从属于另一个插件的清单中删除一些代码(我已经看到这是plugin.xml中编辑文件的连续部分,我需要将应用程序名称添加到

我为Android应用程序制作了一个cordova插件,但与其他插件不同,这个插件只使用一个应用程序(App.java),而不使用CordovaPlugin类

当我第一次尝试使用cordova插件add安装它时,它运行良好。当我尝试使用cordova plugin rm删除它时,它不会从node_模块中删除文件夹,而是将插件依赖项名称保留在package.json中。此外,它会从属于另一个插件的清单中删除一些代码(我已经看到这是plugin.xml中编辑文件的连续部分,我需要将应用程序名称添加到清单中),如果我再次尝试安装它,我将得到一个错误(因为它仍然保持节点\模块依赖关系)除非我更新插件的版本

这是我的plugin.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0" xmlns:android="http://schemas.android.com/apk/res/android" id="com.test.plugin.applicationTest" version="1.0.0" platform = "Android">
   <name>codova-app-plugin</name>
   <description>Test</description>
   <author>test</author>

   <license>Apache 2.0</license>

   <keywords>cordova, application</keywords>


   <platform name="android">
      <config-file parent="/*" target="res/xml/config.xml">
         <feature name="applicationTest">
            <param name="android-package" value="com.test.plugin.applicationTest" />
         </feature>
      </config-file>

      <source-file src="src/android/App.java" target-dir="src/com/test/plugin/applicationTest" />      

       <config-file target="AndroidManifest.xml" parent="/*">
         <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
       </config-file>

      <edit-config file="AndroidManifest.xml" target="/manifest/application" mode="merge">
         <application android:name="com.test.plugin.applicationTest.App"/>
      </edit-config>

   </platform>
</plugin>

codova应用程序插件
试验
测试
Apache2.0
科尔多瓦,应用
为什么不删除节点模块?我能做些什么来避免删除AndroidManifest标签呢

编辑: 如果我删除编辑配置并使用钩子,我不会删除AndroidManifest标记,但它们不会被执行或抛出EACCESS错误。此外,它还保留了节点与模块之间的依赖关系

   <hook type="after_plugin_install" src="scripts/nameManifest.js" /> -- won't execcute
   <hook type="before_plugin_uninstall" src="scripts/uninstallPackage.sh" /> -- EACCESS error
--不会执行
--每次访问错误

目前,我能做的最好的事情就是删除该编辑配置,并为应用程序名的编辑和npm卸载的执行创建挂钩