更新记录

0.0.3(2024-11-12)

添加更改静态资源文件路径的功能

0.0.2(2024-04-26)

修复重复开启服务器造成的错误。

0.0.1(2024-04-19)

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 14.0 armeabi-v7a:支持,arm64-v8a:支持,x86:支持 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


本地Web服务器插件

  • 该插件旨在快速在本地部署一个简单的Web服务器,用于托管静态页面资源,主要可用于web-view访问本机文件。请将页面静态资源放置在 /static/public 目录下。

  • web-view内页面可通过请求以public文件夹为根目录的文件的相对路径来访问本机文件。如访问/static/public/src/test.txt文件可发送请求路径为/src/test.txt的GET请求。

使用方法

  1. 引入插件对象:

    const server = uni.requireNativePlugin("xzhao-LocalHttpServer")
  2. 设置端口号(不设置时默认为 5123):

    this.port = 5123
    server.setPort(this.port)
  3. 设置监听地址(不设置时默认为 0.0.0.0):

    server.setHostAddress("0.0.0.0")
  4. 设置是否允许跨域:

    server.setCORS(true)
  5. 初始化服务器(需要先设置好端口和监听地址):

    server.init()
  6. 启动服务器:

    server.openServer()
  7. 获取服务器的监听地址:

    server.getHostAddress((obj) => {
       this.hostAddress = obj.hostAddress
       this.url = `http://${this.hostAddress}:${this.port}?height=400px`
    })
  8. 获取本机IP地址:

    server.getLocalAddress((obj) => {
       this.localAddress = obj.localAddress
    })
  9. 查看网站在安卓设备中的存储路径:

    server.getWebPath((obj) => {
       console.log(obj.webPath)
    })
  10. 获取服务器是否正在运行:

    server.isRunning((obj) => {
        this.isRunning = obj.isRunning
    })
  11. 获取服务器端口号:

    server.getPort((obj) => {
        this.localPort = obj.port
    })
  12. 停止服务器:

    server.stopServer()
  13. 设置静态资源路径,该路径应位于uniapp静态路径下,默认为"static/public":

    server.updateStaticPath("static/public")
  14. 设置静态资源的绝对路径,默认为"/storage/emulated/0/Android/data/com.android.UniPlugin/apps/UNIE84C0BB/www/static/public":

    server.updateAbsPath("/storage/emulated/0/Android/data/com.android.UniPlugin/apps/__UNI__E84C0BB/www/static/public")

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问