uniappx 安卓端怎么创建一个插件

首先在uni_modules 文件中新建一个插件,右键 “新建uni_modules插件”。

企业微信截图_17555827681733.png

名称为xx-yy开头

企业微信截图_17555828223281.png

package.json

最外层package.json未配置文件,里面的功能和远程依赖多可以在这里配置

interface.uts

这个文件最要写校验接口和导出方法使用的。
注意:写接口,建议用type一定,跟ts有一定的区别。
导出方法用 export declare

/* export declare   需要暴露方法,外部才能调用 */
    export declare function payOrder(orderInfo: string) : Promise<AlipayResult>
/*   


/* uts 只支持type 定义接口参数 */
export type AlipayResult = {
    resultStatus: string
    result: string
    memo: string
}

安卓端的uts开发 。

app-android 文件的index.uts中写。

import {
    AlipayResult
} from './../interface'      /*最外层的interface.uts 文件,定义接口的*/

export async function payOrder(orderInfo: string) {
     // 获取当前Activity   
         //UTSAndroid 原生安卓的实列
    const activity = UTSAndroid.getUniActivity() // UTSAndroid
    return new Promise<AlipayResult>((resolve, reject)=> {
        const resultMap = new Map<string, string>();
        resolve({
            resultStatus: resultMap.get("resultStatus") ?? "1",
            result: resultMap.get("result") ?? "2",
            memo: resultMap.get("memo") ?? "3"
        } as AlipayResult)
    })
}

index.uvue中引入 插件和使用方法

//#ifdef APP-ANDROID
    import {payOrder} from '@/uni_modules/wt-Alipay-modules'
//#endif
const createalipayData='12345678'
 const result = await payOrder()
console.log('result ----',result)
 /*   
    { 
    resultStatus: 1,
    result: 2,
    memo: 3
}
*/
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容