diff --git a/pages.json b/pages.json
index 0c9f07fd8b208288fc2ada1cd1d47622f7cf7c09..3ec5d2abdf22e498d16877ec05e028fa291b7753 100644
--- a/pages.json
+++ b/pages.json
@@ -1052,13 +1052,6 @@
"enablePullDownRefresh": false
}
},
- {
- "path": "pages/API/virtual-payment/virtual-payment-uni-pay",
- "style": {
- "navigationBarTitleText": "苹果虚拟支付(uni-pay)",
- "enablePullDownRefresh": false
- }
- },
// #endif
// #ifdef APP-IOS
{
diff --git a/pages/component/native-view/native-view.test.js b/pages/component/native-view/native-view.test.js
new file mode 100644
index 0000000000000000000000000000000000000000..d0578f0594d197ce4806af05229a15a0f645fa5c
--- /dev/null
+++ b/pages/component/native-view/native-view.test.js
@@ -0,0 +1,17 @@
+describe('native-view.uvue', () => {
+ if (process.env.uniTestPlatformInfo.indexOf('web') > -1 || process.env.UNI_AUTOMATOR_APP_WEBVIEW == 'true') {
+ it('object', () => {
+ expect(1).toBe(1)
+ })
+ return
+ }
+ beforeAll(async () => {
+ page = await program.reLaunch('/pages/component/native-view/native-view')
+ });
+
+ it('native-view检测init函数是否响应', async () => {
+ await page.waitFor(600)
+ const value = await page.data('isLoad')
+ expect(value).toBe(true)
+ })
+})
diff --git a/pages/component/native-view/native-view.uvue b/pages/component/native-view/native-view.uvue
new file mode 100644
index 0000000000000000000000000000000000000000..4207eb8300ff0033097c04350936267c8aaf82ce
--- /dev/null
+++ b/pages/component/native-view/native-view.uvue
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/uni_modules/native-button/package.json b/uni_modules/native-button/package.json
new file mode 100644
index 0000000000000000000000000000000000000000..dff99bced771453d053b8024f6f4775d878f6376
--- /dev/null
+++ b/uni_modules/native-button/package.json
@@ -0,0 +1,87 @@
+{
+ "id": "uni-native-button",
+ "displayName": "uni-native-button",
+ "version": "0.0.1",
+ "description": "vue开发button原生组件",
+ "keywords": [
+ "tencent",
+ "map",
+ "tmap"
+ ],
+ "repository": "",
+ "engines": {
+ "HBuilderX": "^4.25"
+ },
+ "dcloudext": {
+ "type": "uts",
+ "sale": {
+ "regular": {
+ "price": "0.00"
+ },
+ "sourcecode": {
+ "price": "0.00"
+ }
+ },
+ "contact": {
+ "qq": ""
+ },
+ "declaration": {
+ "ads": "无",
+ "data": "插件不采集任何数据",
+ "permissions": "无"
+ },
+ "npmurl": ""
+ },
+ "uni_modules": {
+ "dependencies": [],
+ "encrypt": [],
+ "platforms": {
+ "cloud": {
+ "tcb": "y",
+ "aliyun": "y"
+ },
+ "client": {
+ "Vue": {
+ "vue2": "n",
+ "vue3": "y"
+ },
+ "App": {
+ "app-android": {
+ "minVersion": "21"
+ },
+ "app-ios": {
+ "minVersion": "9"
+ }
+ },
+ "H5-mobile": {
+ "Safari": "y",
+ "Android Browser": "y",
+ "微信浏览器(Android)": "y",
+ "QQ浏览器(Android)": "y"
+ },
+ "H5-pc": {
+ "Chrome": "y",
+ "IE": "y",
+ "Edge": "y",
+ "Firefox": "y",
+ "Safari": "y"
+ },
+ "小程序": {
+ "微信": "y",
+ "阿里": "y",
+ "百度": "y",
+ "字节跳动": "u",
+ "QQ": "y",
+ "钉钉": "u",
+ "快手": "u",
+ "飞书": "u",
+ "京东": "u"
+ },
+ "快应用": {
+ "华为": "u",
+ "联盟": "u"
+ }
+ }
+ }
+ }
+}
diff --git a/uni_modules/native-button/readme.md b/uni_modules/native-button/readme.md
new file mode 100644
index 0000000000000000000000000000000000000000..ee8a09e0bb5421602c1a1fa3d791cf40974c6a7e
--- /dev/null
+++ b/uni_modules/native-button/readme.md
@@ -0,0 +1,3 @@
+## native-button
+
+通过 object 封装原生平台Button按钮
diff --git a/uni_modules/native-button/utssdk/app-android/config.json b/uni_modules/native-button/utssdk/app-android/config.json
new file mode 100644
index 0000000000000000000000000000000000000000..5defc8f1450e357c18fda507aaea7dbc43da1a16
--- /dev/null
+++ b/uni_modules/native-button/utssdk/app-android/config.json
@@ -0,0 +1,3 @@
+{
+ "minSdkVersion": "21"
+}
diff --git a/uni_modules/native-button/utssdk/app-android/index.uts b/uni_modules/native-button/utssdk/app-android/index.uts
new file mode 100644
index 0000000000000000000000000000000000000000..5118215fe139dbec5184bd2de8dc3d1f785181e9
--- /dev/null
+++ b/uni_modules/native-button/utssdk/app-android/index.uts
@@ -0,0 +1,37 @@
+import { Button } from "android.widget"
+
+export class NativeButton {
+ $element: UniNativeViewElement;
+
+ constructor(element: UniNativeViewElement) {
+ this.$element = element;
+ this.bindView();
+ }
+
+ button: Button | null = null;
+ bindView() {
+ //通过UniElement.getAndroidActivity()获取android平台activity 用于创建view的上下文
+ this.button = new Button(this.$element.getAndroidActivity()!); //构建原生view
+ //限制原生Button 文案描述不自动大写
+ this.button?.setAllCaps(false)
+ //监听原生Button点击事件
+ this.button?.setOnClickListener(_ => {
+ const detail = {}
+ //构建自定义UniNativeViewEvent返回对象
+ const event = new UniNativeViewEvent("customClick", detail)
+ //响应分发原生Button的点击事件
+ this.$element.dispatchEvent(event)
+ })
+ //UniNativeViewEvent 绑定 安卓原生view
+ this.$element.bindAndroidView(this.button!);
+ }
+
+ updateText(text: string) {
+ //更新原生Button 文案描述
+ this.button?.setText(text)
+ }
+
+ destroy() {
+ //数据回收
+ }
+}
diff --git a/uni_modules/native-button/utssdk/app-ios/config.json b/uni_modules/native-button/utssdk/app-ios/config.json
new file mode 100644
index 0000000000000000000000000000000000000000..33128280047aec14037956c90de097dc72b33486
--- /dev/null
+++ b/uni_modules/native-button/utssdk/app-ios/config.json
@@ -0,0 +1,3 @@
+{
+ "deploymentTarget": "12"
+}