我已经使用 Cordova/Phonegap 和 Web 技术开发了一个应用程序,并想对其进行一些个性化设置,但我找不到方法。
在 android 中,当用户按下概览按钮(方形按钮)时,他们可以看到每个打开的应用程序的带有卡片的概述,这些卡片有一个带有图标和应用程序名称的顶部栏。如此屏幕截图所示:

默认情况下,条形颜色为灰色,但我希望它是一种不同的颜色,以更好地匹配我的应用程序中的颜色。这可以在其他应用程序中看到,该栏具有不同的颜色(例如:Chrome 栏为蓝色,电子邮件栏为橙色等):

我尝试使用theme-color元值,但这没有做任何事情。我还尝试了状态栏插件,这个插件在应用程序打开时更改了状态栏,但在概览卡模式下仍然显示默认的灰色栏。
是否可以使用 Cordova/Phonegap 自定义此概览栏颜色?怎么做?
我使用了plugman 命令在cordova 中创建了一个插件
它创建了所有必需的文件。然后我在插件中添加了android平台。
然后我尝试将它添加到cordova应用程序中。我成功添加了它,但是当我尝试构建应用程序时,它出现以下错误
我究竟做错了什么。如何在cordova 应用程序中添加我的自定义插件。
以下是 .java 文件的代码。
package cordova-plugin-test-cordova-plugin;
import org.apache.cordova.CordovaPlugin;
import org.apache.cordova.CallbackContext;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
/**
* This class echoes a string called from JavaScript.
*/
public class TestCordovaPlugin extends CordovaPlugin {
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
if (action.equals("coolMethod")) {
String message = args.getString(0);
this.coolMethod(message, callbackContext);
return true;
}
return false;
}
private void coolMethod(String message, CallbackContext callbackContext) {
if (message != null && message.length() > …Run Code Online (Sandbox Code Playgroud) 我创建了一个简单的cordova android应用程序,我试图从一个URL下载一个图像到图片库,但我真的不知道出了什么问题。我已经在 stackoverflow 中搜索了很多,包括以下链接:
如何使用Phonegap将Image对象保存到Android中的文件中?
我已经安装了cordova File Transfer插件并尝试从官方网站上做示例,但它也不起作用:https : //cordova.apache.org/docs/en/latest/reference/cordova-plugin-file-转移/
我尝试了 2 种不同的代码,它们是:
1)第一次尝试:
document.getElementById("myBtn").addEventListener("click", function () {
download("http://cordova.apache.org/static/img/cordova_bot.png", "data", "new_file");
});
function download(URL, Folder_Name, File_Name) {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, fileSystemSuccess, fileSystemFail);
function fileSystemSuccess(fileSystem) {
var download_link = encodeURI(URL);
ext = download_link.substr(download_link.lastIndexOf('.') + 1); //Get extension of URL
var directoryEntry = fileSystem.root; // to get root path of directory
directoryEntry.getDirectory(Folder_Name, {
create: true,
exclusive: false
}, onDirectorySuccess, onDirectoryFail); // creating folder in sdcard
var rootdir …Run Code Online (Sandbox Code Playgroud) 所以我对 Ionic2 很陌生,所以我遇到了一些新手问题=/我几乎搜索了所有内容,但找不到任何示例。
我想要做的是将文件写入设备的某个目录。我正在使用 Ionic2,并且我已经看到有一个“文件 API ”可以满足我的需求。但问题是我无法设置它。
每当我这样做时,$ npm install --save @ionic-native/file我都会得到以下输出:
`project@0.0.1 D:\project\
+-- UNMET PEER DEPENDENCY @angular/core@2.2.1
+-- UNMET PEER DEPENDENCY @ionic-native/core@^3.1.0
+-- @ionic-native/file@3.2.1
-- UNMET PEER DEPENDENCY rxjs@5.0.0-beta.12`
`npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\chokidar\node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.1: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm WARN @ionic-native/file@3.2.1 requires a peer of @ionic-native/core@^3.1.0 but none was installed.
npm WARN @ionic-native/file@3.2.1 requires a peer of @angular/core@2.4.8 but none was installed. …Run Code Online (Sandbox Code Playgroud) cordova plugin add http://gitlab.com/<user>/<private-repo>.git
Run Code Online (Sandbox Code Playgroud)
我无法从 GitLab 中的私有存储库添加cordova 插件。当我运行上述命令时,它会引发以下错误:
Error: Failed to fetch plugin http://gitlab.com/<user>/<private-repo>.git via registry.
Probably this is either a connection problem, or plugin spec is incorrect.
Check your connection and plugin name/version/URL.
Error: npm: Command failed with exit code 1 Error output:
npm ERR! fetch failed http://gitlab.com/<user>/<private-repo>.git
npm WARN retry will retry, error on last attempt: Error: fetch failed with status code 401
npm ERR! fetch failed http://gitlab.com/<user>/<private-repo>.git
npm WARN retry will retry, error on last attempt: Error: …Run Code Online (Sandbox Code Playgroud) 我有一些如何设法搞砸我的 Ionic 项目......一些帮助将不胜感激。
我正在尝试添加,cordova-plugin-camera所以我正在做的是:
$ cordova plugin add cordova-plugin-camera 这将返回一个错误:
Installing "cordova-plugin-camera" for android
Android Studio project detected
Error during processing of action! Attempting to revert...
Failed to install 'cordova-plugin-camera': CordovaError: Uh oh!
"C:\xampp\htdocs\project x\anonymous-social\platforms\android\app\src\main\res\xml\camera_provider_paths.xml" already exists!
at copyNewFile (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\lib\pluginHandlers.js:261:45)
at install (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\lib\pluginHandlers.js:51:17)
at ActionStack.process (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\cordova-common\src\ActionStack.js:56:25)
at PluginManager.doOperation (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\cordova-common\src\PluginManager.js:114:20)
at PluginManager.addPlugin (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\cordova-common\src\PluginManager.js:144:17)
at C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\Api.js:247:74
at _fulfilled (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:854:54)
at self.promiseDispatch.done (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:883:30)
at Promise.promise.promiseDispatch (C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:816:13)
at C:\xampp\htdocs\project x\anonymous-social\platforms\android\cordova\node_modules\q\q.js:570:49
(node:26116) UnhandledPromiseRejectionWarning: CordovaError: …Run Code Online (Sandbox Code Playgroud) 我正在寻找一些技巧来调试手机上的 Ionic 中的 Android 应用程序的数据库,我遇到了这个项目。
我如何将它与 Ionic 一起使用?如果没有办法,我可以使用其他工具吗?
我希望从应用程序本身完全重新启动应用程序(真正重新启动应用程序(满载),而不仅仅是重新渲染索引)。
这需要发生,因为一些包也需要重新初始化,这只能在完全重新启动应用程序时完成。
我试过这个包https://www.npmjs.com/package/cordova-plugin-exit它似乎不起作用。
而且navigator.app.exitapp()这不是我正在寻找的东西,或者这是否正是我想要它做的?
创建cordova包装器插件的最佳解决方案是为android和IOS做不同的事情吗?
我正在构建一个全平台 Angular 6 APP,它将与 Cordova 8.1.2 一起打包,不幸的是我无法触发 deviceready事件。
我有两个单独的项目,一个用于 Angular,一个用于 Cordova,我能够构建以构建 Angular 项目并使用以下命令创建一个 android apk:
ng build --prod --base-href . --output-path ../Cordova/CordovaMobileApp/www/ & cd ../Cordova/CordovaMobileApp & cordova run android & cd ../../NxAngularMVI
Run Code Online (Sandbox Code Playgroud)
但是现在我需要使用 Cordova 插件,为此我需要检测deviceready事件。
在我的 index.html 头中,我已经包含了:
<script type=”text/javascript” src=”cordova.js”></script>
Run Code Online (Sandbox Code Playgroud)
在我的 main.ts 文件中,我试图等待事件发生来引导我的应用程序。
const onDeviceReady = () => {
console.log('Bootstrap ON!');
platformBrowserDynamic().bootstrapModule(AppModule).catch(err =>
console.log(err));
};
document.addEventListener('deviceready', onDeviceReady, false);
Run Code Online (Sandbox Code Playgroud)
应用程序永远不会初始化,因为 deviceready 事件永远不会被触发。我尝试了几种在这种引导方法的堆栈溢出中发现的变体,但无济于事。我尝试重新安装从框架到平台再到插件的每个cordova 部分,但没有任何帮助。我已经在 Galaxy S9 和摩托罗拉 G5 上对其进行了测试。
由于 Cordova API 提供的这个功能对于我的项目来说是必须的,我需要你们的帮助。谢谢 !