1
0
Fork 0
master
dengyucheng@finogeeks.com 2022-04-14 12:09:01 +08:00
parent 073762e120
commit 020f4babeb
4 changed files with 34 additions and 75 deletions

View File

@ -76,7 +76,7 @@
|---|---|---|---|---|---|
| C++ | win32 | 测试中 | Windows | [win32](examples/win32) | 无 |
| Python | pyqt 5 | 开发中 | Windows / Mac | [Pyqt](examples/pyqt) | |
| JavaScript | Electron | 测试中 | Windows | [Electron](examples/electron) | |
| JavaScript | Electron | 测试中 | Windows | [Electron](examples/electron) | [node](https://github.com/finogeeks/finclip-win32-demo/releases) |
## DEMO 运行与 SDK 集成说明
@ -94,9 +94,9 @@
查看文档,在准备好相应的文件后,即可运行 FinClip DEMO
### 查看集成文档
您可以点击这里查看 [Windows 集成](https://www.finclip.com/mop/document/runtime-sdk/windows/windows-integrate.html) 的集成开发文档。
## 查看集成文档
在demo文档中, 我们也描述了在该语言环境下, 如何集成FinClip SDK
## 🔗 常用链接
以下内容是您在 FinClip 进行开发与体验时,常见的问题与指引信息

View File

@ -1,8 +1,8 @@
# finclip-electron-demo
## 添加二进制依赖
## 📦 安装第三方依赖
下载finclip二进制包到`vendor`的对应目录下,如`vendor/win/x64`
[下载finclip二进制包](https://github.com/finogeeks/finclip-win32-demo/releases)到`vendor`的对应目录下,如`vendor/win/x64`
## 快速开始

View File

@ -1,46 +1,41 @@
## 📦 安装第三方依赖
# 📦 安装第三方依赖
Windows 小程序运行环境需要安装以下依赖,请提前配置环境:
- 请下载依赖包[点我下载](https://public-1251849568.cos.ap-guangzhou.myqcloud.com/sdk/lib.zip)
- 下载完后解压到vendor/finclip目录中
- 建议使用 Visual Studio 2019 版本 [点我下载](https://support.microsoft.com/en-us/topic/the-latest-supported-visual-c-downloads-2647da03-1eea-4433-9aff-95f26a218cc0)
- 请下载依赖包[点我下载](https://github.com/finogeeks/finclip-win32-demo/releases)
- 如果您使用的是64位版本, 请解压至vendor/win/x64文件
- 建议使用 Visual Studio 2019或以上版本
# demo运行
## 下载依赖
[下载finclip二进制包](https://github.com/finogeeks/finclip-win32-demo/releases)到`vendor`的对应目录下,如`vendor/win/x64`
## 快速开始
环境准备就绪后, 双击finclip-win32-demo.sln, 在vs中即可运行
# 集成
**注意:依赖包必须随缩主程序一同发布,并在独立目录中存放。**
解压后文件目录结构如下:
```
vendor
|--finclip
| |--lib
| |--****
| |--****
| |--****
...
```
### 第一步 引入头文件
头文件: https://github.com/finogeeks/finclip-win32-demo/tree/master/src
```c++
#include "finclip_wrapper.h" //引入头文件
#include "finclip_api.h" //引入头文件
#pragma comment(lib, "FinClipSDKWrapper.lib") //引入链接库
```
### 第二步 初始化SDK
```c++
FinConfig config = {
1,
"https://api.finclip.com",
"/api/v1/mop",
"这里输入SDK KEY",
"这里输入SDK SECRET",
"",
1
};
IFinConfigPacker* configpacker = NewFinConfigPacker();
configpacker->AddConfig(config);
Initialize(hInstance, configpacker);
auto* factory = finclip_get_packer_factory();
auto* packer = finclip_packer_factory_get_config_packer(factory);
auto* config = finclip_config_packer_new_config(packer);
finclip_config_packer_add_config(packer, config);
finclip_config_set_app_store(config, 1);
finclip_config_set_app_key(config, "这里输入SDK KEY");
finclip_config_set_secret(config, "这里输入SDK SECRET");
finclip_config_set_domain(config, "https://api.finclip.com");
```
- **SDK KEY****SDK SECRET** 可以从 [FinClip](https://finclip.com/#/home) 获取,点 [这里](https://finclip.com/#/register) 注册账号;
@ -53,13 +48,6 @@ vendor
### 第三步 打开小程序
```c++
int server_type = 1;
init_finclipsdk(server_type,wappkey, wsecret);
IFinPacker* packer = NewFinPacker();
packer->BeginPacker();
packer->AddField("appId");
packer->AddValue("appId");
packer->EndPacker();
StartApplet(server_type, utf8_encode(wappid).c_str(), packer, finclip_applet_callback);
packer->Release();
int appstore = 1; // 与第二步一致
finclip_start_applet(appstore, "这里输入 APP ID");
```

View File

@ -286,36 +286,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam,
return 0;
}
InitFinclipsdk(appstore, wappkey, wsecret, wdomain);
// IPackerFactory* factory = GetPackerFactory();
// IFinConfigPacker* configpacker = factory->GetFinConfigPacker();
// IFinConfig* config = configpacker->GetConfig(appstore);
// config->SetAppWindowStyle(std::stol(wtype));
// IFinPacker* packer = factory->GetFinPacker();
// packer->BeginPacker();
// packer->Add("appId", Utf8Encode(wappid).c_str());
// packer->Add("query", "1");
// packer->EndPacker();
// int len = packer->GetBufferSize() + 1;
// auto* ret = new unsigned char[len];
// memset(ret, 0, len);
// packer->Dump(ret, &len);
// delete[] ret;
if (wtype == L"1") {
// 嵌入模式, 准备一个窗口, 用于嵌入小程序
if (hWnd_container == nullptr) {
hWnd_container =
CreateWindowW(L"child_finclip", L"child_finclip",
WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0, 0, 1024, 768,
nullptr, nullptr, hInst, nullptr);
}
finclip_start_applet(appstore, Utf8Encode(wappid).c_str());
} else {
finclip_start_applet(appstore, Utf8Encode(wappid).c_str());
}
// packer->Release();
finclip_start_applet(appstore, Utf8Encode(wappid).c_str());
}
break;
case WM_SIZE: {