Android hidl开发简单教程
Android hidl开发简单教程
开发前的准备
开发前的准备
关于hidl的前世今生就不多说了,网上百度就挺多的了,主要是我也不是很懂,哈哈哈,这个只是记录一下我在按照网上的教程开发hidl的时候遇到的一些问题,然后说一下我在跟着别人教程学习的时候遇到过的一些问题,改正后成功的例子,希望能对大家学习有一点点帮助.
开发hidl我们首先需要:
①Android的编译环境
②编译过的Android源码(我的是Android 10)
③Android 设备(我的是手机)
第一步:创建文件夹路径和.hal文件
为这个代码想一个好听的名字,我们就叫xiaoming吧,然后相应目录下创建文件夹,如下:
// 在你的Android源码的hardware/interfaces/目录下创建
mkdir -p xiaoming/1.0/default
然后,在你的1.0目录下创建Ixiaoming.hal文件
vim IXiaoming.hal
在里面输入:
1 package android.hardware.xiaoming@1.0;2 3 interface IXiaoming {4 helloWorld(string name) generates (string result);5 };
这里面只有一个简单的hellowork程序,实现会在下面介绍.
创建完成后的文件路径是这个样子的:
.
└── 1.0
├── default
└── IXiaoming.hal
第二步:使用hidl-gen工具
hidl-gen工具是Google在Android 8.1改变HAL之后,为了帮助开发者生成一些HAL层的相关代码框架和代码实例,方便开发者使用.
首先执行以下代码:(需要在源码根目录下root权限执行)
1 PACKAGE=android.hardware.xiaoming@1.0
2 LOC=hardware/interfaces/xiaoming/1.0/default/
3 make hidl-gen
4 hidl-gen -o $LOC -Lc++-impl -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport $PACKAGE
5 hidl-gen -o $LOC -Landroidbp-impl -randroid.hardware:hardware/interfaces -randroid.hidl:system/libhidl/transport $PACKAGE
执行完上面程序后更新以下你的代码目录的Android.bp文件:
./hardware/interfaces/update-makefiles.sh
这个update-makefiles.sh就是Google提供的一个可以自动更新的Android.bp的一个脚本,源码根目录下执行就行了,执行完成后你的目录框架应该是这个样子的:
.
└── 1.0
├── Android.bp
├── default
│ ├── Android.bp
│ ├── Xiaoming.cpp
│ └── Xiaoming.h
└── IXiaoming.hal
然后在你的default目录下创建两个新文件:
1 touch android.hardware.xiaoming@1.0-service.rc
2 touch service.cpp
创建完成后的目录就变成了:
.
└── 1.0
├── Android.bp
├── default
│ ├── Android.bp
│ ├── android.hardware.xiaoming@1.0-service.rc
│ ├── service.cpp
│ ├── Xiaoming.cpp
│ └── Xiaoming.h
└── IXiaoming.hal
第三步:HAL共享库的实现
主要是修改刚刚生成的Xiaoming.cpp和Xiaoming.h文件,我们先打开我们的Xiaoming.h文件,将选择实现Passthrough方式的代码的注释去掉就行了,去掉后如下:
1 // FIXME: your file license if you have one2 3 //#pragma once4 5 #ifndef ANDROID_HARDWARE_NARUTO_V1_0_XIAOMING_H6 #define ANDROID_HARDWARE_NARUTO_V1_0_XIAOMING_H7 8 9 #include <android/hardware/xiaoming/1.0/IXiaoming.h>10 #include <hidl/MQDescriptor.h>11 #include <hidl/Status.h>12 13 namespace android {14 namespace hardware {15 namespace xiaoming {16 namespace V1_0 {17 namespace implementation {18 19 using ::android::hardware::hidl_array;20 using ::android::hardware::hidl_memory;21 using ::android::hardware::hidl_string;22 using ::android::hardware::hidl_vec;23 using ::android::hardware::Return;24 using ::android::hardware::Void;25 using ::android::sp;26 27 struct Xiaoming : public IXiaoming {28 // Methods from ::android::hardware::xiaoming::V1_0::IXiaoming follow.29 Return<void> helloWorld(const hidl_string& name, helloWorld_cb _hidl_cb) override;30 31 // Methods from ::android::hidl::base::V1_0::IBase follow.32 33 };34 35 // FIXME: most likely delete, this is only for passthrough implementations36 extern "C" IXiaoming* HIDL_FETCH_IXiaoming(const char* name);37 38 } // namespace implementation39 } // namespace V1_040 } // namespace xiaoming41 } // namespace hardware42 } // namespace android43 44 45 #endif //ANDROID_HARDWARE_NARUTO_V1_0_XIAOMING_H
HIDL的实现方式有两个,一个是Binderized模式,另外一个是Passthrough模式,传说这两个实现方式没多大区别的,我也不知道,因为我也是一个菜鸡.
然后打开Xiaoming.cpp文件,然后将HIDL_FETCH的注释去掉,再增加一个hellowork函数的实现就行了,就是一个简单的字符拼接.修改后如下.
1 // FIXME: your file license if you have one2 3 #include "Xiaoming.h"4 5 namespace android {6 namespace hardware {7 namespace xiaoming {8 namespace V1_0 {9 namespace implementation {10 11 // Methods from ::android::hardware::xiaoming::V1_0::IXiaoming follow.12 Return<void> Xiaoming::helloWorld(const hidl_string& name, helloWorld_cb _hidl_cb) {13 // TODO implement14 char buf[100];15 ::memset(buf, 0x00, 100);16 ::snprintf(buf, 100, "Hello World, %s", name.c_str());17 hidl_string result(buf);18 19 _hidl_cb(result);20 21 return Void();22 }23 24 25 // Methods from ::android::hidl::base::V1_0::IBase follow.26 27 IXiaoming* HIDL_FETCH_IXiaoming(const char* /* name */) {28 return new Xiaoming();29 }30 //31 } // namespace implementation32 } // namespace V1_033 } // namespace xiaoming34 } // namespace hardware35 } // namespace android
因为我们之前的update已经帮我们创建好了Android.bp文件了,我们就直接执行就行了,你们可以看一下那个Android.bp文件,其实就是相当于makefile.我们用mmm来编译就行:
mmm hardware/interfaces/xiaoming/1.0/default/
1
然后你就会看到让人惊喜的一幕了:
这就算是编译好了,生成的库在你的路径下能够找到,像上面的图的路径就是,你的源码根目录文件下:
out/target/product/kona/vendor/lib/hw/
可以找到.
第四步:binder server端进程代码编写
要编译生成android.hardware.naruto@1.0-service模块需要依赖我们之前touch的那两个文件,首先我们修改android.hardware.xiaoming@1.0-service.rc 文件,如下:
执行
sudo vim android.hardware.xiaoming@1.0-service.rc
然后输入:
1 service xiaoming_hal_service /vendor/bin/hw/android.hardware.xiaoming@1.0-service2 class hal3 user system4 group system
保存退出后再执行:
sudo vim service.cpp
添加:
1 #define LOG_TAG "android.hardware.xiaoming@1.0-service"2 3 # include <android/hardware/xiaoming/1.0/IXiaoming.h>4 5 # include <hidl/LegacySupport.h>6 7 using android::hardware::xiaoming::V1_0::IXiaoming;8 using android::hardware::defaultPassthroughServiceImplementation;9 10 int main() {11 return defaultPassthroughServiceImplementation<IXiaoming>();12 }13
保存推出后让我们修改Android.bp文件,添加:
先执行:
sudo vim Android.bp
然后添加:
29 cc_binary {30 name: "android.hardware.xiaoming@1.0-service",31 defaults: ["hidl_defaults"],32 proprietary: true,33 relative_install_path: "hw",34 srcs: ["service.cpp"],35 init_rc: ["android.hardware.xiaoming@1.0-service.rc"],36 shared_libs: [37 "libhidlbase",38 "libhidltransport",39 "libutils",40 "liblog",41 "android.hardware.xiaoming@1.0",42 ],43 }
保存退出后执行:
mmm hardware/interfaces/xiaoming/1.0/default/
就会惊喜地发现:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200426105609122.png
这样子service就已经编译成功了,是不是转到有点头晕了?
让我们连理清一下我们刚刚生成的文件:
android.hardware.naruto@1.0-impl.so: Naruto模块实现端的代码编译生成,binder server端
android.hardware.naruto@1.0.so: Naruto模块调用端的代码,binder client端
naruto_hal_service: 通过直通式注册binder service,暴露接口给client调用
android.hardware.naruto@1.0-service.rc: Android native 进程入口
这里引用一张官方的引用流程图吧:
第五步:HIDL测试代码的编写
这里我得多说一下了,我做的时候按照教程走把文件目录放在连xiaoming里面编译,发现了两个问题,第一个就是如果放在default里面,是编译不到的,就是就算你程序是错误的,也是会编译成功的,然后我就试着拉出来1.0文件的目录下,然后就悲剧了,一编译就死机,是电脑卡死的那种,因为我是菜鸡,然后我以为自己哪里步骤错误了,或者是使用的线程太多了,因为我的电脑编译本来就会很卡,所以我也没在意,一直等,等了两个小时,还不行,强制重启,然后觉得是偶然事件,再编译,又死机,又强制重启,然后重构,再次死机,然后找方法,未果,然后理解流程,然后想它不就是要一个设备能执行的可执行文件吗?那我就在其他目录编译试试,居然成功了,当我以为我就是可以了,然而你是想不到下面还会发生什么的,操作失误和bug你永远不知道哪一个先来,故事待续…
首先,在源码根目录的external的文件夹下面建立一个test_xiaoming文件夹(其实放在哪里都一样的),然后建立client.cpp文件,文件中添加代码:
1 #include <android/hardware/xiaoming/1.0/IXiaoming.h>2 3 # include <hidl/Status.h>4 5 # include <hidl/LegacySupport.h>6 7 # include <utils/misc.h>8 9 # include <hidl/HidlSupport.h>10 11 # include <stdio.h>12 13 using android::hardware::xiaoming::V1_0::IXiaoming;14 using android::sp;15 using android::hardware::hidl_string;16 17 int main()18 {19 // int ret;20 21 android::sp<IXiaoming> service = IXiaoming::getService();22 if(service == nullptr) {23 printf("Failed to get service\n");24 return -1;25 }26 27 service->helloWorld("xiaoming", [&](hidl_string result) {28 printf("%s\n", result.c_str());29 });30 31 return 0;32 }
然后,编写Android.mk文件,如下:
1 LOCAL_PATH := $(call my-dir)2 3 include $(CLEAR_VARS)4 LOCAL_PROPRIETARY_MODULE := true5 LOCAL_MODULE := xiaoming_test6 LOCAL_SRC_FILES := \7 client.cpp \8 9 LOCAL_SHARED_LIBRARIES := \10 liblog \11 libhidlbase \12 libutils \13 android.hardware.xiaoming@1.0 \14 15 include $(BUILD_EXECUTABLE)
然后编译:
mmm external/test_xiaoming/
之后同样的,你也会欣喜的发现,你距离成功已经很近了:
在你的源码根目录下的/out/target/product/kona/vendor/bin文件夹下发现了naruto_test的身影.
第六步:将所需文件push上去设备对应的分区
如果我写到这里就不写了,估计你们是会崩溃的,我在找资料的时候还真的有,什么叫对应分区啊,我是菜鸟我不懂,可能你们懂吧.
然后既然都写到这里了,我就一次性写完吧,谁都想不到菜鸡的我,这个东东就搞了两天,还不断死机,系统都刷了五六次,因为我的设备是手机,主要我还不会刷手机,还要找别人刷,然后差点就怀疑人生了.所以才下定决心写这一个的.
在对应文件的文件夹下push,路劲我就不说了,因为你们编译完成后是会有的,每个人的都不一定一样,我说文件吧.
1 adb push android.hardware.xiaoming@1.0-service /system/vendor/bin/hw
2 adb push android.hardware.xiaoming@1.0.so /system/vendor/lib64
3 adb push android.hardware.xiaoming@1.0-impl.so /system/vendor/lib64/hw
4 adb push xiaoming_test /system/vendor/bin/hw
注意:有些人说也可以放在vendor里面的,问题也不会很大,但是最好放同一个文件夹里面,还有就是记得.-impl.so文件要放在hw里面,但是如果你将.so文件放进去是找不到的,找不到的时候你可以看看输出什么错误信息,如果没有错误信息可以用
adb logcat | grep xiaoming
看看,这是一个抓log的指令
最后一步,就是修改manifest.xml文件了,在里面添加xiaoming接口,注意,这个东西很多人说找不到的,可以在system文件夹下用指令:
find . -name manifest
试一下,一般是会能找到的,然后用指令
adb pull /system/vendor/etc/vintf/manifest.xml ./
/system/vendor/etc/vintf/manifest.xml这个路径是你自己的manifest.xml的文件路径,然后在里面添加代码:(一般你看看人家怎么添加的就行了)
<hal format="hidl"><name>android.hardware.xiaoming</name><transport>hwbinder</transport><version>1.0</version><interface><name>IXiaoming</name><instance>default</instance></interface></hal>
然后再push回去:
push manifest.xml /system/etc/vintf
然后重启,重启后再在对应目录下运行:
./android.hardware.xiaoming@1.0-service
启动服务器,然后再在对应的目录下启动客户端就行了:
./xiaoming_test
最后成功是这个样子的:
原文出自:原文链接
哈哈,这里已经是文章的结尾了,我相信很少人会看到这里的,那我就自己哔哔几句吧,应该有人会好奇我怎么会死机,系统都能够崩溃的,其实就是看了教程,有人说将manifest.xml文件放在vendor文件下面或者system下就可以成功了,因为当时一直获取服务器失败,然后文章说和你有没有添加接口有关,所以就那么干了,最后还是逐渐测试才验证到是那个问题的,不过巧合下也让我懂得了接口添加后需要重启就可以找到服务了,但是启动服务的时候也是遇到了很多问题网上的大部分教材都是编辑系统文件的,然后烧写镜像的(可能也与我不会搜有关系),然后我的代码本来就编译比较难成功的,哈哈,我就放弃了这种想法,就算成功了,我也找不到那个system,img文件,因为goole给改名字了,改成什么名字我也不知道了.因为我很菜,哈哈,希望能够给大家一点点帮助
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 中国巡航导弹市场趋势报告、技术动态创新及市场预测
巡航导弹是用于对付地面目标的制导导弹,该目标一直停留在大气中,并以近似恒定的速度飞行其飞行路径的大部分。 巡航导弹的设计目的是在远距离内高精度地发射大型弹头。 现代巡航导弹能够以超音速或高亚音速飞行,具有自航能力,并且…...
2024/4/19 12:53:01 - 中国车用尿素市场规模调研与发展趋势分析报告2022-2028年
中国车用尿素市场规模调研与发展趋势分析报告2022-2028年 详情内容请咨询鸿晟信合研究院! 【全新修订】:2022年2月 【撰写单位】:鸿晟信合研究研究【报告目录】 第1章:中国车用尿素行业综述27 1.1 车用尿素行业定义27 1.2 车用尿素…...
2024/4/18 7:25:47 - Swagger配置
1、maven依赖 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.7.0</version> </dependency> <dependency><groupId>io.springfox</groupId><arti…...
2024/4/25 21:10:45 - 中国微型SD市场趋势报告、技术动态创新及市场预测
微型SD市场的企业竞争态势 该报告涉及的主要国际市场参与者有Micron、Sandisk、Greenliant、Intel、Toshiba、Hynix、Samsung、STMicroelectronics、Micross Components等。这些参与者的市场份额、收入、公司概况和SWOT分析都包含在微型SD市场调研报告中。 产品分类:…...
2024/4/13 2:27:33 - Mybatis-plus自动代码生成
1、maven依赖 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.0.5</version> </dependency> <dependency><groupId>org.apache.velocity</group…...
2024/4/8 20:09:25 - 中国巡游帆船行业市场供需与战略研究报告
巡游帆船是一种习惯于在敞开或半封闭的船中逐点航行的船,通常留在陆地上。 巡游帆船市场的企业竞争态势 该报告涉及的主要国际市场参与者有X-Yachts、Warwick Yacht Design、BAVARIA Sailing、Bnteau Sailboats、HABER YACHTS、Jeanneau - Sailboats、Morozov Yach…...
2024/4/13 2:27:58 - maven如何搭建Nexus私服
一、下载 下载地址:https://help.sonatype.com/repomanager3/download 二、安装与启动与修改配置 2.1 总览 2.2 启动步骤 解压到任意路径下,我安装的时windos版本的。 启动 nexus.exe /run nexus登录页面:http://localhost:8081/#browse/search …...
2024/4/26 21:13:05 - 2022/2/14
let data { rows: [], total: 0 } resolve(data) listUser(this.queryParams).then(response > { this.userList response.rows; this.total response.total; this.loading false; }); 关于css浮动问题: 先写右浮动。 全局表单校验: <el-…...
2024/4/13 2:28:03 - MySQL · 数据恢复 · undrop-for-innodb
简介 undrop-for-innodb 是针对 innodb 的一套数据恢复工具,可以从文件级别恢复诸如:DROP/TRUNCATE table, 删除表中某些记录,innodb 文件被删除,文件系统损坏,磁盘 corruption 等几种情况。本文简单介绍下使用方法和…...
2024/4/13 2:27:43 - 小鼠二氧化碳室行业调研报告 - 市场现状分析与发展前景预测
小鼠二氧化碳室市场的企业竞争态势 该报告涉及的主要国际市场参与者有Animal Identification and Marking Systems、E-Z Systems、Next Advance、Kent Scientific Corporation、Stoelting、Scivena Scientific、Global Biotech、AgnThos、Midmark Corp.、Patterson Scientific、…...
2024/4/16 7:30:14 - 通用接口开放平台设计与实现——(44)API服务之日志处理
日志的重要性不多说了,为了时候追溯和排错,我们在数据库中保存了接口服务调用请求与响应的完整数据,并且为了方便地做性能分析,把每次接口调用从收到请求到返回响应的时间差也保存了下来,这一点,在实际工作…...
2024/4/8 20:09:19 - 2022-02-15 U3D全栈班 008-构建一个星系场景
文章目录 前言一、构建一个星系场景1.下载资源2.导入资源3.制作脚本4.创建材质和行星5.脚本赋值6.运行前言 星系,别称宇宙岛,指数量巨大的恒星系及星际尘埃组成的运行系统。星系是构成宇宙的基本单位。参考银河系,它是一个包含恒星、气体、宇宙尘埃和暗物质,并且受到重力束…...
2024/4/13 2:27:43 - arm开发板移植openssl
linux4.1.15开发环境移植openssl openssl版本:openssl-1.1.1c.tar.gz 交叉编译链:arm-poky-linux-gnueabi-gcc 开发板:飞凌OKMX6UL-C/OKMX6ULL-S (Linux4.1.15) 1、下载源码 https://www.openssl.org/source/old/1.1.1/2、进入目录执行./c…...
2024/4/13 2:27:33 - Linux新手入门系列:Linux/CentOS格式化xfs格式磁盘分区
本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。 注意: Linux下区分大小写; Linu…...
2024/4/15 7:06:22 - Base64原理和转换会变大33%左右的原因
图片转成base64,体积会变大33%,所以大点的图片也不建议转换 base64 生成步骤 例如:有个单词要转成base64: Hello 1. 找到每个字母对应的ASCII值 ASCII值控制字符ASCII值控制字符ASCII值控制字符ASCII值控制字符0NUT32(space)6496…...
2024/4/13 2:27:53 - 神经外科护理查房PPT模板
模板介绍 本套神经外科护理查房PPT模板,模板编号:P98979,大小10MB,共27页,比例为16:9,由封面、目录、转场页、内容、结尾5个部分构成。 内含蓝色,黄色多种配色,精美风格设计,动态播放效果,精美实用。 一份设计精美的…...
2024/4/13 2:27:48 - SpringBoot 内置工具类 不用再到处找了
断言 断言是一个逻辑判断,用于检查不应该发生的情况 Assert 关键字在 JDK1.4 中引入,可通过 JVM 参数-enableassertions开启 SpringBoot 中提供了 Assert 断言工具类,通常用于数据合法性检查 // 要求参数 object 必须为非空(Not…...
2024/4/20 0:23:06 - 反馈学习方法:提高学习积极性
生活中常常面临学习动力不足,学习效果差的困扰,通过阅读认知觉醒这本书,我了解到了改变现状的方法。 学习目的 学习首先有学习的目的和计划(例如英文单词,要想自己学到什么地步)。 要如何调动积极性 我…...
2024/4/13 2:27:48 - 【信息学奥赛】1023:Hello,World的大小C++)
今天来让我们来继续分析信息学奥赛一本通的第三十三题,也就是按照题目的要求把查看Hello,World!的大小。(并且,看了我的文章的人只有少数人点了赞,如果你觉得我写的好,或对你有帮助的话,请点赞!…...
2024/4/18 23:13:52 - 微立体岗位竞聘PPT模板
模板介绍 本套微立体岗位竞聘PPT模板,模板编号:P94511,大小10MB,共27页,比例为16:9,由封面、目录、转场页、内容、结尾5个部分构成。 内含灰色,红色多种配色,精美微立体风格设计,动态播放效果,精美实用。 一份设计精…...
2024/4/13 2:28:38
最新文章
- 100290. 使矩阵满足条件的最少操作次数
https://leetcode.cn/problems/minimum-number-of-operations-to-satisfy-conditions/description/ 正难则反。 暴力的遍历每一修改的情况,0-9;根据前一列的状态进行转移过来, 下面是状态转移方程 f ( i , j ) m a x ( f ( i , j ) , f ( i…...
2024/4/27 22:48:55 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - centos后台运行使用nohup命令
nohup ./my_script.sh & nohup命令运行后如何关闭 nohup 命令用于在用户注销系统后继续运行指定的命令。如果您想关闭使用 nohup 运行的进程,您可以使用 kill 命令。 首先,您需要找到 nohup 运行的进程的进程ID(PID)。可以使…...
2024/4/25 2:14:17 - 【Locust分布式压力测试】
Locust分布式压力测试 https://docs.locust.io/en/stable/running-distributed.html Distributed load generation A single process running Locust can simulate a reasonably high throughput. For a simple test plan and small payloads it can make more than a thousan…...
2024/4/26 22:21:09 - 深入浅出 -- 系统架构之微服务中Nacos的部署
前面我们提到过,在微服务架构中,Nacos注册中心属于核心组件,通常我们会采用高性能独立服务器进行部署,下面我们一起来看看Nacos部署过程: 1、环境准备 因为Nacos是支持windows和Linux系统的,且服务器操作…...
2024/4/23 6:26:15 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/4/26 18:09:39 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/4/26 20:12:18 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/26 23:05:52 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/4/27 4:00:35 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/26 21:56:58 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/27 9:01:45 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/4/25 18:39:16 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/25 18:39:16 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/26 22:01:59 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/25 18:39:14 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/4/26 23:04:58 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/25 2:10:52 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/25 18:39:00 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/26 19:46:12 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/4/27 11:43:08 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/27 8:32:30 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57