iis服务器助手广告
返回顶部
首页 > 资讯 > 移动开发 >uniapp导入(android)jar
  • 854
分享到

uniapp导入(android)jar

uni-app 2023-09-10 13:09:05 854人浏览 安东尼
摘要

官方文档:开发者须知 | uni小程序SDK 1.下载对应示例代码及工具 JAVA环境 jdk1.8Android Studio 下载地址:Android Studio官网 OR Android Studio中文社区App离线SDK下载:请

官方文档:开发者须知 | uni小程序SDK

1.下载对应示例代码及工具

2.项目准备(将下载的项目SDK解压导入Android Studio)

点击android-project这样可以看到其他文件

示例删除

 

插件的注册都删了

3.新建module(用于导入jar并生成插件提供uniapp使用)

 

 创建完会报错

 

 找到module下的AndroidManifest.xml添加package="java下的包路径"

 注释 namespace点击try again,发现成功了

libs下可以放需要导入的jar

module-->build.gradle下引用app的jar和自己导入的jar

compileOnly fileTree(include: ['uniapp-v8-release.aar'], dir: '../app/libs')implementation fileTree(dir: '../uniplugin_scan/libs', include: ['*.aar', '*.jar'], exclude: [])

 导入依赖:

compileOnly 'androidx.recyclerview:recyclerview:1.2.1'compileOnly 'androidx.legacy:legacy-support-v4:1.0.0'compileOnly 'com.alibaba:fastJSON:1.1.46.android'

点击右上角 Sync Now刷新依赖

4.编写插件类

 ScanModule

package com.example.uniplugin_scan;import android.content.Context;import com.alibaba.fastjson.JSONObject;import com.huayusoft.barcodeadmin.IScanCallBack;import com.raindi.scanner.RDManager;import com.taobao.weex.bridge.JSCallback;import io.dcloud.feature.uniapp.annotation.UniJSMethod;import io.dcloud.feature.uniapp.common.UniModule;public class ScanModule extends UniModule {            @UniJSMethod(uiThread = true)    public void tips(JSONObject options, JSCallback callback){        if(callback != null) {            JSONObject data = new JSONObject();            data.put("name", "调用插件成功");            //回调返回            callback.invoke(data);        }    }        @UniJSMethod(uiThread = true)    public void scan(JSONObject options, JSCallback callback){        if(callback != null) {            JSONObject data = new JSONObject();            //导入jar包的回调定义            IScanCallBack callback1 =new IScanCallBack.Stub() {                @Override                public void onSuccess(final String bean) {                    //接收条码服务返回的数据                    data.put("name", bean);                    System.out.println(bean);                    callback.invoke(data);                }                @Override                public void onFiled(int errorCode) {                    //条码服务出错的数据                    data.put("name", "服务出错");                }            };            //创建扫描对象            RDManager instance = RDManager.getInstance();            //获得窗口            Context context = this.mWXSDKInstance.getContext();            //绑定扫描            boolean b = instance.bindScannerService(context,callback1 );            //初始化扫描            instance.init(callback1);            //开启电源            instance.powerOn();            //开始扫描            instance.doScan();        }    }    }

插件注册app--》src--》asset-->dcloud_uniplugins.json

{  "nativePlugins": [    {      "plugins": [        {          "type": "module",          "name": "Uni-Plugin-Scan",          "class": "com.example.uniplugin_scan.ScanModule"        }      ]    }  ]}

 依赖添加插件 app--》build.gradle

 implementation project(':uniplugin_scan')

 5.编写Uniapp

新建一个项目选择普通模板

编写pages下的index.Vue

6.生成本地资源放入android项目中

 找到资源文件

 

 复制到apps下

 7.注册Android Key

这边本人是看这边博客的,注册key的照着一步步写就可以了

uni-app官方demo(Android sdk):未配置appkey或配置错误。(uni原生插件开发,Android插件开发)_break妖的博客-CSDN博客_未配置appkey或配置错误

本人的配置 ,配置完点击右上角 Sync Now刷新gradle (如出现未配置app key,请检查下面这几处填写是否有误!!!!!)

 签名填写

 

8.运行

插上数据线连接手机,手机设置usb调试允许,android studio会识别到设备,这样就可以在android直接运行了

 如果出现报错请检查build.gradle配置(特别是版本和依赖),下面是本人的build.gradle配置

app build:gradle

apply plugin: 'com.android.application'android {    compileSdkVersion 33    buildToolsVersion '28.0.3'    defaultConfig {        applicationId "com.android.UniPlugin"        minSdkVersion 21        targetSdkVersion 33 //建议此属性值设为21 io.dcloud.PandoraEntry 作为apk入口时   必须设置 targetSDKVersion>=21 沉浸式才生效        versionCode 1        versionName "1.0"        multiDexEnabled true        ndk {            abiFilters 'x86','armeabi-v7a'        }        compileOptions {            sourceCompatibility JavaVersion.VERSION_1_8            targetCompatibility JavaVersion.VERSION_1_8        }    }    signinGConfigs {        config {            keyAlias '__uni__****请填写自己的别名'            keyPassWord 'key的密码'            storeFile file('对应的签名文件')            storePassword 'stroe密码'            v1SigningEnabled true            v2SigningEnabled true        }    }    buildTypes {        release {            signingConfig signingConfigs.config            zipAlignEnabled true            minifyEnabled true            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }        debug {            signingConfig signingConfigs.config            zipAlignEnabled true            minifyEnabled true            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }    //使用uniapp时,需复制下面代码        aaptOptions {        additionalParameters '--auto-add-overlay'        //noCompress 'foo', 'bar'        ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"    }    }repositories {    flatDir {        dirs 'libs'    }}dependencies {    implementation fileTree(dir: 'libs', include: ['*.jar'])    implementation fileTree(dir: 'libs', include: ['*.aar'])    implementation 'androidx.legacy:legacy-support-v4:1.0.0'    implementation 'androidx.appcompat:appcompat:1.0.0'        implementation 'androidx.recyclerview:recyclerview:1.0.0'    implementation 'com.facebook.fresco:fresco:1.13.0'    implementation "com.facebook.fresco:animated-gif:1.13.0"        // 基座需要,必须添加    implementation 'com.GitHub.bumptech.glide:glide:4.9.0'    implementation 'com.alibaba:fastjson:1.1.46.android'    // 添加uni-app插件    implementation project(':uniplugin_scan')//    implementation project(':uniplugin_component')//    implementation project(':uniplugin_module')//    implementation project(':uniplugin_richalert')}

 module(uniplugin_scan) build.gradle

plugins {    id 'com.android.library'}android {    compileSdk 29//    namespace 'com.example.uniplugin_scan'//    compileSdkVersion 32    defaultConfig {        minSdkVersion 19        targetSdkVersion 33        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"        consumerProguardFiles "consumer-rules.pro"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'        }    }    compileOptions {        sourceCompatibility JavaVersion.VERSION_1_8        targetCompatibility JavaVersion.VERSION_1_8    }    buildToolsVersion '28.0.3'}dependencies {    implementation 'androidx.appcompat:appcompat:1.4.1'    implementation 'com.Google.android.material:material:1.5.0'    testImplementation 'junit:junit:4.13.2'    androidTestImplementation 'androidx.test.ext:junit:1.1.3'    androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'    //必须导入的依赖    compileOnly 'androidx.recyclerview:recyclerview:1.1.0'    compileOnly 'androidx.legacy:legacy-support-v4:1.0.0'    compileOnly 'com.alibaba:fastjson:1.1.46.android'    //导入jar    compileOnly fileTree(include: ['uniapp-v8-release.aar'], dir: '../app/libs')    implementation fileTree(dir: '../uniplugin_scan/libs', include: ['*.aar', '*.jar'], exclude: [])}

通过对比修改,不出意外是可以运行的。

手机运行成功截图

扫描

9.将andorid项目打包用uniapp调用

 

 在项目文件夹里搜索aar

把aar复制到下面的android文件夹下

 

 配置package.json(用记得删注释,这个不能写错,写错会导致后面插件识别不到)

{"name": "AndroidScan", //插件名    "id": "Uni-Plugin-Scan", //id    "version": "0.0.2",    "description": "安卓条码扫描",    "_dp_type":"nativeplugin",    "_dp_nativeplugin":{        "android": {            "plugins": [                {                    "type": "module",                    "name": "Uni-Plugin-Scan", //插件名称一般和id相同或以id为前缀                    "class": "com.example.uniplugin_scan.ScanModule" //andorid插件对应类的路径                }            ],"integrateType": "aar" //类型分为jar和aar}}}

插件配置

 

 10.uniapp运行

自定义基座---》直接打包

 

 运行就行了,如果没有设备刷新试试,还是没有请检查手机是否连接上电脑,是否开启可调试,是否是文件传输。

 运行成功!!!和上面的android运行结果是一样的,这里就不截图了。

更多细节请参考官方文档:开发者须知 | uni小程序SDK

来源地址:https://blog.csdn.net/ysfengshu/article/details/128189362

--结束END--

本文标题: uniapp导入(android)jar

本文链接: https://www.lsjlt.com/news/402312.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • uniapp导入(android)jar
    官方文档:开发者须知 | uni小程序SDK 1.下载对应示例代码及工具 JAVA环境 jdk1.8Android Studio 下载地址:Android Studio官网 OR Android Studio中文社区App离线SDK下载:请...
    99+
    2023-09-10
    uni-app
  • android怎么导入jar包
    要在Android项目中导入.jar文件,可以按照以下步骤进行操作:1. 在项目的根目录下创建一个名为`libs`的文件夹(如果已经...
    99+
    2023-09-23
    Android jar
  • android studio如何导入jar包
    要导入jar包到Android Studio中,可以按照以下步骤操作:1. 在项目的根目录下,创建一个libs文件夹(如果还没有)。...
    99+
    2023-09-26
    android
  • IDEA导入jar包
    一、导入项目内部jar包 先将jar包放入项目中在进行导入 1. 新建lib文件夹 2. 方式一:右键直接导入 要想将jar包复制到lib目录中就自动导入,一定要选中lib目录再右键选择Add as...
    99+
    2023-09-13
    intellij-idea jar java
  • Android studio中如何导入jar包(详细教程)
    进入Android studio 点击Android 选择project 复制好要导入的jar包,把jar包粘贴在app——>lib...
    99+
    2023-09-06
    android studio Powered by 金山文档
  • eclipse怎么导入jar包
    在Eclipse中导入JAR包有以下几种方法:方法一:通过“Build Path”导入1. 在Eclipse中打开你的项目。2. 右...
    99+
    2023-09-27
    eclipse jar
  • idea怎么导入jar包
    本篇内容主要讲解“idea怎么导入jar包”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“idea怎么导入jar包”吧!通过添加Libraries的方式引入:首先在根目录下创建一个 libs 的目...
    99+
    2023-07-05
  • jar包如何导入eclipse
    将jar包导入Eclipse的方法如下:1. 打开Eclipse,选择要导入jar包的工程。2. 右键点击工程名,选择 "Prope...
    99+
    2023-08-25
    jar eclipse
  • Maven怎么导入本地jar包
    这篇文章主要讲解了“Maven怎么导入本地jar包”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Maven怎么导入本地jar包”吧!1、 在本地maven仓库安装本地jar包  &...
    99+
    2023-07-02
  • maven如何批量导入jar包
    Maven可以使用以下两种方法批量导入jar包:1. 使用Maven的依赖管理功能,将所有需要导入的jar包作为依赖项添加到项目的p...
    99+
    2023-08-08
    maven jar
  • eclipse怎么导入外部jar包
    要在Eclipse中导入外部JAR包,可以按照以下步骤进行操作:1. 将需要导入的JAR包复制到项目的文件夹中(如lib文件夹)。2...
    99+
    2023-08-18
    eclipse jar
  • jquery导入jar包的三种方法
    在Web开发中,如果要使用jQuery这个JavaScript库,一般有两种方式:一种是通过CDN引入jQuery的JavaScript文件,另一种是把jQuery的JavaScript文件下载到本地,然后在HTML页面中通过<scr...
    99+
    2023-05-14
  • idea导入jar包后如何使用
    导入JAR包后,可以通过以下步骤使用:1. 创建一个Java类文件,并在文件顶部使用`import`语句导入需要使用的类或方法。例如...
    99+
    2023-09-28
    idea
  • eclipse中如何导入mysql的jar包
    这篇文章给大家分享的是有关eclipse中如何导入mysql的jar包的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。eclipse导入mysql的jar包方法:首先打开电脑的ec...
    99+
    2024-04-02
  • eclipse如何导入数据库jar包
    要在Eclipse中导入数据库的JAR包,可以按照以下步骤进行操作:1. 在Eclipse中打开你的项目。2. 右键点击项目,选择"...
    99+
    2023-10-07
    eclipse 数据库
  • eclipse如何把jar包导入项目
    将jar包导入Eclipse项目有两种方法:方法一:手动导入1. 在Eclipse的项目资源管理器中,右键点击你的项目,选择"Pro...
    99+
    2023-09-15
    eclipse jar
  • oracle12c中如何导入java的jar文件
    这篇文章主要介绍oracle12c中如何导入java的jar文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 1、创建表空间 [oracle@host0...
    99+
    2024-04-02
  • idea导入外部jar包如何使用
    要导入外部JAR包并使用其中的类和方法,你可以按照以下步骤进行操作: 将JAR包添加到项目的classpath中。这可以通过将J...
    99+
    2023-10-25
    idea jar
  • eclipse导入jar包报错如何解决
    在Eclipse导入jar包时遇到报错,可以尝试以下解决方法:1. 确保jar包文件存在:首先检查导入的jar包文件是否存在,并确保...
    99+
    2023-09-27
    eclipse jar
  • mysql jar包导入的方法是什么
    要将MySQL的JDBC驱动程序(即jar包)导入到项目中,可以按照以下步骤操作: 下载MySQL的JDBC驱动程序(jar包)...
    99+
    2024-04-09
    mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作