问题标签 [capacitor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - 使用 azure 进行身份验证并重定向到电容器后的混合应用程序加载问题
我正在使用 Azure 设置具有身份验证的混合应用程序,我成功通过身份验证并能够发送回重定向 URL 'capacitor://localhost/callback'。一旦我重定向到重定向 URI,应用程序显示一个空白屏幕,并且没有任何内容正在呈现或工作(React-router,react.js)。
索引.tsx
离子电容器.ts
cordova - 具有科尔多瓦和电容器的 Ionic 4 项目
我正在尝试一个 Ionic 项目,我对当前可用的 Cordova 社区插件感到满意。由于我的应用程序已经在使用 Cordova,因此可以尝试使用电容器,它是否会使现有的构建文件崩溃或有任何不匹配。
cordova - Ionic4 watchPosition 和 getCurrentPosition 的地理位置与 Ionic/Capacitor 不准确
我正在使用 Capacitor 构建我的 Ionic 应用程序。我当然想通过 GPS 在地图上显示当前位置的应用程序。
以下代码有效,并为我提供了我想要的地图上的正确标记,但是.. 它远非准确。
标记正在疯狂地四处走动。发生在我测试它的每个位置。它不是在移动几厘米,而是在我的位置周围移动几米……
我错过了什么让我的 GPS 坐标不太准确?我以为enableHighAccuracy: true
足够了,但事实并非如此。
ios - 使用 Capacitor Filesystem 在 iOS 上写入文件
我正在尝试使用电容器的文件系统插件将 txt 文件永久存储在设备上。它在 Android 上运行良好,但在 iOS 上却不行。
我已经在现有项目中尝试过它,并创建了一个新的离子项目。我在 iPhone X 上的模拟器中运行应用程序
此代码在这两个项目中都不起作用。
调试控制台输出:
在 iOS 上存储文件是否需要满足任何其他要求/配置?我错过了什么吗?(这是第一次在 Mac / iOS 上工作)
PS:我也在尝试cordova-file-plugin,但它也不起作用。
ionic4 - Capacitor Camera API 在 Web 上运行时抛出错误
我正在按照电容相机 APi 的说明https://capacitor.ionicframework.com/docs/guides/ionic-framework-app
该插件在 android 设备上运行应用程序时工作正常,ionic capacitor run android -l
但在 web 上提供应用程序时出现此运行时错误:
这是我的代码:
我还添加了这些main.ts
有什么我做错了吗,或者这是 Capacitor Camera API 中的错误
angular - 使用电容器开发跨平台应用程序时,我应该使用 Ionic 还是仅使用 Angular 开发它?
有一个我喜欢构建的软件,以后应该可以作为 Web 应用程序、Android 应用程序、iOS 甚至桌面应用程序运行。Capacitor 承诺仅使用一个代码库即可实现这一目标。现在我要开始编码了,想知道我是把它作为一个 Ionic4 + Angular 项目还是作为一个 Angular 项目开始。
该应用程序将主要用于网络和智能手机。两个平台都很重要。
typescript - 如何在 Ionic4 Angular 中使用 Capacitor 保存下载的文件?
我最近将我的 Ionic 4 Angular 应用程序发布为 Web 应用程序和原生 Android 应用程序。
在本机 Android 应用程序中,一切正常,除了保存下载的文件。
为了下载和保存文件,我一直使用file-saver
如下 npm 包(这是一个共享服务,每次我必须下载东西时调用,从 PDF 到图像等......):
正如我上面所说,这个代码片段工作正常,但只是当我必须从网络版本中保存一些东西时。
我能找到的唯一在线示例都是关于 Cordova 和/或以前/已弃用的版本。
关于电容器,我刚刚找到了这个文档,并从中找到了这个代码片段:
但问题是我上面的函数返回一个 blob,而这个函数只接受一个字符串作为数据。
那么,在作为 Web 应用程序运行和作为 Android 本机应用程序运行时,是否有任何 Capacitor-Native 等效功能可用于下载(和保存)Blob 文件?
更新
我也尝试了以下方法,但它不起作用:
更新#2
看起来GitHub 上仍有一个关于使用电容器保存 Blob 数据的未解决问题。同时,我将寻找 Cordova 解决方案。或者,如果平台是 android 或 ios,我将简单地禁用每个下载按钮。
如果我能找到一个,我将在这里发布所有有效的 Cordova 解决方法
configuration - 将 cordova-plugin 配置到电容器环境中
我有一个由离子电容器框架包装的 react-app webapp。我已经在我的代码中使用了很多 cordova-plugins,比如 phonegap-plugin-barcodescanner 或 cordova-plugin-inappbrowser。
我知道我可以使用它们: npm install --save cordova-plugin-pluginName @ionic-native/plugin-name
然后我可以将它们导入到我的 React 环境中: import {PluginName} from @ionic-native/plugin-name
它就像魔术一样工作!
问题是:当我需要使用需要配置的cordova-plugin时,它曾经是cordova add plugin plugin-name --variable var=""
但是在 react-capacitor 环境中,我无法使用它的配置安装插件!我应该稍后以某种方式添加它,通过 androidManifest.xml 或通过 cordova:config.xml。
有人能帮助我吗?多谢...
vue.js - Jest 使用 Ionic Capacitor 插件导入测试 Vue 单文件组件
我正在使用 Vue 和 Capacitor 构建一个 Ionic 应用程序。我正在使用 vue-test-utils + Jest 设置单元测试。开玩笑的单元测试在尝试将 Capacitor 插件导入 Vue 单文件组件时失败。
Vue 应用程序是使用 Vue CLI 3 (v3.4.0) 创建的。CLI 选项包括使用 Jest 进行单元测试。我完全是单元测试的新手。在导入 Vue 组件之前,我曾天真地尝试过模拟 @ capacitor /core 模块;这没有帮助。
jest.config.js(Vue CLI 默认)
我的组件.vue
MyComponent.spec.js
我希望测试能够顺利运行。相反,当 Jest 尝试在规范文件的第 2 行导入组件时,我收到以下错误消息:
Plugins
在第 36 行未定义,因此第 37 行在尝试对其进行解构时会抱怨Filesystem
。
然而,在浏览器中,Filesystem
对象如下:
我不知道问题出在哪里。我不知道我是否应该对 Jest 做一些不同的事情,我不知道我是否不应该像在某些示例中看到的那样直接在 Vue SFC 中导入 Capacitor 插件,或者...♂️。