Android 10不支持“白名单插件”,当我添加Android平台时,它会跳过白名单插件,这会在构建或运行应用程序时导致“文件传输插件”问题
ionic cordova platform add android@latest
Installing "cordova-plugin-whitelist" for android
Plugin doesn't support this project's cordova-android version. cordova- android: 10.1.0, failed version requirement: >=4.0.0 <10.0.0
Skipping 'cordova-plugin-whitelist' for android
创建应用程序时,将出现以下错误:
ionic cordova build android
任务:应用程序:编译调试JavaWithJavac D:\工作区\SCL\平台\安卓\应用程序\源代码\主目录\java\组织\apache\cordova\文件传输\文件传输。java:48:错误:无法找到符号导入org.apache.cordova.Whitelist;^符号:类白名单位置:软件包的名称为:apache. cordova。错误:找不到符号白名单白名单=(白名单)gwl.invoke(webView);^符号:类白名单位置:文件传输的方法是:在文件传输的过程中,将一个文件传输到另一个文件。错误:找不到符号白名单白名单=(白名单)gwl.invoke(webView);^符号:类白名单位置:注意:某些输入文件使用或覆盖已弃用的API。使用-Xlint:deprecation重新编译以了解详细信息。注意:某些输入文件使用未检查或不安全的操作。注意:使用-Xlint重新编译:取消选中以了解详细信息。3个错误
似乎“文件传输”需要“白名单插件”,但添加Android〉10时跳过“白名单插件”
这在android 9中不会发生
有谁能帮忙吗?
5条答案
按热度按时间ttcibm8c1#
Cordova 10+包含白名单类,不需要外部插件。除了删除它,您还需要更新文件传输插件。
因此,您需要做两件事:
1.更新文件传输插件。虽然这个插件不再被推荐,但开发者已经更新了插件以支持新的白名单类,它现在默认包含在Cordova中。你必须直接从github repo安装来完成这一操作:
cordova插件add https://github.com/apache/cordova-plugin-file-transfer.git
1.删除白名单插件
cordova插件rm cordova插件白名单
在此thread中对原始响应的H/T
rks48beu2#
Sanjay和弗朗西斯科的回复帮助我找到了正确的解决方案。沿着修复package.json和项目中其他存在的“白名单插件”,您还需要运行以下命令从Android/iOS平台卸载它。
ionic cordova plugin rm cordova-plugin-whitelist
更新-不管什么原因,这又开始抛出错误了。看Rajath的回答。(谢谢你,Rajath!)简而言之,从github repo重新添加插件
cordova plugin add https://github.com/apache/cordova-plugin-file-transfer.git
jv4diomz3#
cordova版本10.0.0或更高版本不需要cordova-plugin-whitelist插件,您可以简单地删除它们。cordova 10.0.0或android 10.0.0(API 30)具有内置核心白名单,因此您可以删除并重新构建
ou6hu8tu4#
我想你和我有同样的问题。
转到您的Cordova文件夹路径并编辑package.json文件,删除引用cordova-plugin-whitelist的两行。
之后一切都会很完美。
lp0sw83n5#
同样的事情发生在我身上。在替换白名单类后。它对我有效,所以你可能想试试。
在中将
Whitelist
类替换为AllowList
cordova-plugin-file-transfer > src > android > FileTransfer.java