diff --git a/README.md b/README.md index 0f77983..b420ecf 100644 --- a/README.md +++ b/README.md @@ -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 进行开发与体验时,常见的问题与指引信息 diff --git a/examples/electron/README.md b/examples/electron/README.md index aaf7af9..44db5ba 100644 --- a/examples/electron/README.md +++ b/examples/electron/README.md @@ -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` ## 快速开始 diff --git a/examples/win32/README.md b/examples/win32/README.md index 3cb774a..0db5977 100644 --- a/examples/win32/README.md +++ b/examples/win32/README.md @@ -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"); ``` \ No newline at end of file diff --git a/examples/win32/finclip-win32-demo.cpp b/examples/win32/finclip-win32-demo.cpp index feae3ec..705e880 100644 --- a/examples/win32/finclip-win32-demo.cpp +++ b/examples/win32/finclip-win32-demo.cpp @@ -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: {