精华内容
下载资源
问答
  • Android Studio导入so文件

    2019-07-16 09:27:18
    Android Studio导入so文件 导入文件的方式大概有两种 第一种,so文件放到libs文件下 libs目录下放对应架构的so文件,然后需要在build.gradle文件中配置 android { .... sourceSets { main { jniLibs.srcDirs =...

    Android Studio导入so文件

    导入文件的方式大概有两种

    第一种,so文件放到libs文件下

    工程目录
    libs目录下放对应架构的so文件,然后需要在build.gradle文件中配置

    android {
        ....
    
        sourceSets {
            main {
                jniLibs.srcDirs = ['libs']
            }
        }
    }
    

    第二种,放到jinLibs文件夹

    项目目录结构
    在src/main目录下新建“jinLibs”文件夹,在其中放入对应架构的so文件即可,无需其他配置。

    展开全文
  • 首先,在我们的Module的根目录中建立libs目录,将jpush集成SDK中的so文件分别拷入,截图如下: 然后就是编写我们的build.gradle文件。 关于so文件引入的配置很简单,代码配置如下: task nativeLibsToJar...

    基本上导入看起来都挺简单的,分以下几步

    首先,在我们的Module的根目录中建立libs目录,将jpush集成SDK中的so文件分别拷入,截图如下:

    然后就是编写我们的build.gradle文件。

    关于so文件引入的配置很简单,代码配置如下:

        task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {  
                destinationDir file("$projectDir/libs")  
                baseName "Native_Libs2"  
                extension "jar"  
                from fileTree(dir: "libs", include: "**/*.so")  
                into "lib"  
            }  
          
            tasks.withType(JavaCompile) {  
                compileTask -> compileTask.dependsOn(nativeLibsToJar)  
            }  
    
    

    自定义一个任务,在其中指定项目所依赖的so文件的目录,这里用了**/*.so来写,为了省事,指定需要拷入的目录 into "lib",那么动态运行库就被拷入到lib目录中。

    完整的build.gradle文件如下:

        apply plugin: 'com.android.application'  
          
        android {  
            compileSdkVersion 21  
            buildToolsVersion "21.1.0"  
          
            defaultConfig {  
                applicationId "com.wujay.footerballstar"  
                minSdkVersion 8  
                targetSdkVersion 21  
                versionCode 1  
                versionName "1.0"  
            }  
          
            buildTypes {  
                release {  
                    runProguard false  
                    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'  
                }  
            }  
          
            task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {  
                destinationDir file("$projectDir/libs")  
                baseName "Native_Libs2"  
                extension "jar"  
                from fileTree(dir: "libs", include: "**/*.so")  
                into "lib"  
            }  
          
            tasks.withType(JavaCompile) {  
                compileTask -> compileTask.dependsOn(nativeLibsToJar)  
            }  
        }  
          
        dependencies {  
            compile fileTree(dir: 'libs', include: ['*.jar'])  
            compile 'com.android.support:appcompat-v7:21.0.0'  
            compile files('libs/jpush-sdk-release1.7.2.jar')  
            compile files('libs/umeng_sdk.jar')  
            compile files('libs/libammsdk.jar')  
        }  

    之后出现了

    “undefined reference to `android_log_print”

    这类问题的解决方法是

      1、在源文件中添加如下头文件:

      #include <utils/Log.h>

      2、在 Android.mk 文件中包含相关的库:

      

    • 如果你生成的模块是一个共享库(.so),则将相关的库文件包含入共享库目录:

      ... ...

      LOCAL_SHARED_LIBRARIES := liblog libcutils   #相关的库文件,加入共享库目录

      ... ...

      include $(BUILD_SHARED_LIBRARY) #注意:生成共享库 .so 文件

      

    • 如果你生成的模块不是一个共享库,比如是可执行文件,则将相关的库文件包含入静态库目录:

      ... ...

      LOCAL_STATIC_LIBRARIES := liblog libcutils   #相关的库文件,加入静态库目录

      ... ...

      include $(BUILD_EXECUTABLE) #注意:生成可执行文件

      3、在源代码中需要打印 log 的地方执行:

      LOGE(logformat); //如:LOGE("my num is: %d", i); 或者LOGD, LOGW,大家应该知道怎么区别吧



    展开全文
  • android studio导入so文件

    2015-10-11 16:55:27
    1) 在硬盘任意位置建立空文件夹 "lib" (注意名字是 "lib" ... (armeabi文件夹中的.so文件也会被一并拷入) 3) 将刚建立的 "lib" 目录打包压缩成 .zip 文件, 同时改名为 “armeabi.jar" 4) 将 armeabi.jar 放入原来的
    1) 在硬盘任意位置建立空文件夹 "lib" (注意名字是 "lib" 而不是 "libs" )
    2) 把原来的 libs 目录下的 armeabi 文件夹拷贝至 刚建立的 lib 目录下. (armeabi文件夹中的.so文件也会被一并拷入)
    3) 将刚建立的 "lib" 目录打包压缩成 .zip 文件, 同时改名为 “armeabi.jar"

    4) 将 armeabi.jar 放入原来的 libs 目录下 (和其他第三方jar包放在一起)

    4)同步

    展开全文
  • so文件放到libs文件夹里的对应cpu文件夹里 build.gradle里加上jni的sourceSets配置 sourceSets { main { jniLibs.srcDirs = ['libs'] } }   ...

    把so文件放到libs文件夹里的对应cpu文件夹里

    build.gradle里加上jni的sourceSets配置

    sourceSets {
            main {
                jniLibs.srcDirs = ['libs']
            }
        }

     

    展开全文
  • 主要介绍了Android Studio导入so文件到项目中的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
  • 对于java来说,jar文件和so文件都可以认为是Library文件(库文件),但是本质上还是有区别的; jar文件:是有java编写的打包的库文件; so文件:是由C或者C++文件编写的库文件,然后通过jni(本地方法编译)技术,...
  • 1.复制到project目录下的libs文件夹, 2.在当前项目的gradle中的xml中最后两行编辑如下代码: sourceSets{  main{  jniLibs.srcDirs=['libs']  }  }
  • Android Studio导入so文件到项目中

    千次阅读 2017-09-26 09:31:09
    1、采用最简单直接的方式导入s0文件:在app下新建jniLibs/armeabi目录,并将指定so文件拷贝到这一目录。 2、一般来说其他第三方的开放平台的so文件都是已经把对应的本地Java接口类一起封装到so或者其他库文件里了,...
  • 需要在项目的目下下的 app/src/main目录下创建一个名叫jniLibs文件夹。将对应的so文件拷贝到该目录下。拷贝后的结构如下图所示: 转载于:https://www.cnblogs.com/BruceStack/p/4765742.html...
  • 1、根目录中建立libs 目录(如果有直接拷贝),将不同 arm 版本的 libdu.so 文件分别拷 贝到对应版本目录下: 2、编写 build.gradle 文件,在 build.gradle 文件中添加标红的段落 : } task nativeLibsToJar(type:...
  • main 内建立jniLibs文件夹,并将所有的so文件放入此文件夹内 然后在android视图下 Gradle Scripts>build.gradle文件中android{} 的大括号内插入下面这段代码就可以了 这段代码的意思,个人理解是将ma...
  • 在单位的项目中,需要一个算法来计算一个... 这里在导入so文件和调用其中的方法时,遇到很多坑,这里做一个记录,以备以后查询。  我使用的as1.5版本,一直没有升级呢。所以这里的所有方法,都是针对这个版本来的。
  • 1.在libs下放入so文件库 2.在build.gradle中加入如下代码 sourceSets { main (){ jniLibs.srcDirs = ['libs'] } }
  • 一般 Android 项目从 Eclipse 导入Android Studio(以下简称AS) 后,会出现各种问题,最主要的就是 “gradle” 目前为止还不支持 .so文件打包入 apk 。 也就是说,如果你用的第三方库中包含 .so 文件 (一般是 ...
  • Android Studio导入so文件异常,以及与eclipse的差异性。
  • android studio 导入.so文件有两种方法 推荐第一种  两种解决方法 方法1、 新建一个 在src/main文件中新建 jniLibs文件夹,将.so文件都拷贝进去 方法2、.so文件还是放在libs中但是,要告诉android studio去哪里...
  • studio导入 so ,jar 文件。 分类: android2014-12-22 13:03 397人阅读 评论(2) 收藏 举报 环境为: Android Studio 1.0.2 如果是jar文件的话,请直接拷贝jar文件到项目的libs文件夹下,然后...
  • 在大家导入sdk时,帮助文档经常要求导入so,bat文件, 更坑的是,有些so,bat文件必须在指定文件夹下, 比这还要坑的是eclipose 和 android studio的文件夹目录还TM是不一样的 对我们新手来说,太痛苦了 现在附上...
  • 如果是jar文件的话,请直接拷贝jar文件到项目的libs文件夹下,然后运行:Sync Project with...如何将so文件导入android studio的项目中呢? 需要在项目的目下下的 app/src/main目录下创建一个名叫jniLibs文件夹。
  • Android Studio导入.so文件的两种方法

    千次阅读 2017-02-05 11:35:42
    Android Studio导入.so文件
  • 关于Android studio导入so文件失败

    千次阅读 2016-07-08 16:39:36
    最近在做讯飞语音开发的时候导入文件出现了失败的情况,记录一下情况 07-07 14:42:43.641 8541-8541/...
  • Android Studio导入.so文件

    千次阅读 2015-12-16 22:39:39
    最近由于需要接一个摄像头的sdk(萤石sdk,不知道大家接没接过,过程有点艰辛~),通过Android Studio去集成的过程中发现了一个坑,就是sdk所包含的.so文件无法被我们的sdk所包含,所以在运行我们的sdk的时候,就...
  • 在工程gradle文件中配置 apply plugin: 'com.android.application' android { // 导入.so文件 sourceSets { main { jniLibs.srcDirs = ['libs']//libs文件夹 } } }

空空如也

空空如也

1 2 3 4 5 ... 17
收藏数 324
精华内容 129
关键字:

androidstudio导入so文件