文档章节

在Android Studio中使用So包

空天啸鹤
 空天啸鹤
发布于 2017/02/06 20:06
字数 176
阅读 6
收藏 0
点赞 0
评论 0

1. 在工程-app目录下,新建libs目录;

2.在libs目录下,新建armeabi目录;

3.将so包拷贝到此目录下;列如 

lib_file_so.so

4.在app的gradle文件中加入:

sourceSets {    main {        jniLibs.srcDirs = ['libs']    }} // so包打包***
apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.bangoli.testwebview"
        minSdkVersion 17
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    sourceSets {    main {        jniLibs.srcDirs = ['libs']    }} // so包打包***
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.4.0'
}

5.使用so包的位置:

System.load("lib_file_so.so");
或者:
System.loadLibrary("file_so");
static {
    try {
        System.out.println("libpropertyplus init start.2..");
        String file_so = "";       

        //if ( System.getProperty("sun.arch.data.model").equals("64") ){
            //file_so = "propertyplus-64";
        //}else{
            file_so = "propertyplus-32";
        //}
        //System.load(file_so);
        System.loadLibrary(file_so);
        //so.delete();

        System.out.println("libpropertyplus init ok");
    } catch (Exception e) {
        System.out.println("libpropertyplus init Error;" + e.getMessage());
        System.out.println(e.getMessage());
    }
}

© 著作权归作者所有

共有 人打赏支持
空天啸鹤
粉丝 0
博文 16
码字总数 5632
作品 0
深圳
程序员
Gradle/Studio构建问题(Ant/Gradle)

> 使用Gradle遇到的问题及其他: Android Studio安装过程常见问题图解-- http://jingyan.baidu.com/article/fd8044fad5bdca5031137ab7.html 1. 将GitHub上的新项目导入Studio中 Pano360-mast......

shareus ⋅ 05/11 ⋅ 0

从eclipse到Android studio/迁移eclipse的Android项目到Android studio平台的注意事项

整体要注意的地方 先说明一下整体需要注意的地方 1在Android studio建立项目的时候,要注意包名和原来的完全一致,不然会有很多需要改动. 2依赖的jar一定一定要找齐,不然新建项目引用不到,要么...

amiba.org ⋅ 2015/09/07 ⋅ 0

Android Studio 3.2新功能特性

android studio3.2预览版本已经发布了,下面这些功能在最新的版本已经提供,但可能尚未在测试版本中发布渠道中提供。 什么是新的助理 Android Studio 3.2有一个新的Assistant面板,可以通知您...

我就是马云飞 ⋅ 06/14 ⋅ 0

在 Ubuntu 和 Linux Mint 中轻松安装 Android Studio

Android Studio 是谷歌自己的 Android 开发 IDE,是带 ADT 插件的 Eclipse 的不错替代品。Android Studio 可以通过源代码安装,但在这篇文章中,我们将看到如何在 Ubuntu 18.04、16.04 和相应...

作者: Abhishek Prakash ⋅ 05/10 ⋅ 0

浅谈Kotlin(一):简介及Android Studio中配置

浅谈Kotlin(一):简介及Android Studio中配置 浅谈Kotlin(二):基本类型、基本语法、代码风格 浅谈Kotlin(三):类 浅谈Kotlin(四):控制流 前言:   今日新闻:谷歌宣布,将Kotli...

听着music睡 ⋅ 2017/05/18 ⋅ 0

安卓应用安全指南 5.3.3 将内部账户添加到账户管理器 高级话题

5.3.3 将内部账户添加到账户管理器 高级话题 原书:Android Application Secure Design/Secure Coding Guidebook 译者:飞龙 协议:CC BY-NC-SA 4.0 5.3.3.1 账户管理和权限的使用 要使用类的...

apachecn_飞龙 ⋅ 04/01 ⋅ 0

Android Studio 查看Android内部隐藏源码

问题的发现 今天查看AlertDialog源码的时候,看到AlertController,发现关于这部分的代码全都报红,原来AlertController类在com.android.internal.app这个包下,看这个包名internal(内部的)...

zhang_pan ⋅ 04/10 ⋅ 0

ButterKnife注解框架详解

  Android 懒人注解框架 :https://github.com/JakeWharton/butterknife   前言:     注解,相信很多同学都用到了,对控件进行初始化的时候需要用到 findViewById() ,当一个activit...

听着music睡 ⋅ 2017/04/12 ⋅ 0

Android动态化框架App Bundles

Android App Bundles 在今年的Google I/O大会上,Google向 Android 引入了新 App 动态化框架(即Android App Bundle,缩写为AAB),与Instant App不同,AAB是借助Split Apk完成动态加载,使用...

code_xzh ⋅ 05/16 ⋅ 0

应用迁移至 Android P 操作指南

Android P 已经按照既定的计划进入到了 Beta 2 版本,且终版 API 也已经发布。相信大家已经对 Android P 所带来的行为变化以及新功能有了足够的了解。本文将详细说明如何将您的应用迁移至 An...

谷歌开发者 ⋅ 06/22 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

oAuth2 升级Spring Cloud Finchley.RELEASE踩坑分享

背景 6.19号,spring团队发布了期待已久的 Spring Cloud Finchley.RELEASE 版本。 重要变化: 基于Spring Boot 2.0.X 不兼容 Spring Boot 1.5.X 期间踩过几个坑,分享出来给大伙,主要是关于...

冷冷gg ⋅ 41分钟前 ⋅ 0

OSChina 周一乱弹 —— 理发师小姐姐的魔法

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @冰冰棒- :分享田馥甄的单曲《My Love》 《My Love》- 田馥甄 手机党少年们想听歌,请使劲儿戳(这里) @Li-Wang :哎,头发又长了。。。又要...

小小编辑 ⋅ 今天 ⋅ 4

Kafka1.0.X_消费者API详解2

偏移量由消费者管理 kafka Consumer Api还提供了自己存储offset的功能,将offset和data做到原子性,可以让消费具有Exactly Once 的语义,比kafka默认的At-least Once更强大 消费者从指定分区...

特拉仔 ⋅ 今天 ⋅ 0

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 今天 ⋅ 0

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 今天 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 今天 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 今天 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部