最新Android Studio开发NDK步骤(自动版)
来源:互联网 发布:ubuntu 开启ssh服务 编辑:程序博客网 时间:2024/05/01 05:05
- 根据《开发NDK手动版》步骤,为Android Studio安装好NDK。
- 新建项目HelloNdk,修改build.gradle(Project)
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle-experimental:0.6.0-alpha8' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }}allprojects { repositories { jcenter() }}task clean(type: Delete) { delete rootProject.buildDir}
注意到classpath要用com.android.tools.build:gradle-experimental:0.6.0-alpha8等测试版本,否则无法自动集成NDK。
3. 修改build.gradle(Module)
apply plugin: 'com.android.model.application'model{ android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig.with { applicationId = "com.onion.hellondk" minSdkVersion.apiLevel = 16 targetSdkVersion.apiLevel = 23 } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.+' compile 'com.android.support:design:23.+' } } android.ndk { moduleName = "hello-l2c" } android.buildTypes { release { minifyEnabled false proguardFiles.add(file('proguard-rules.txt')) } } /*android.productFlavors { create("x86-64") { ndk.abiFilters.add("x86_64") } }*/}
默认生成所有CPU平台的so库,如果需要指定某种CPU平台,将注释打开自行编辑即可。
4. 编辑MainActivity.java
package com.onion.hellondk;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.widget.Toast;public class MainActivity extends AppCompatActivity { static { System.loadLibrary("hello-l2c"); } private native String stringFromJNI(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toast.makeText(this, stringFromJNI(), Toast.LENGTH_LONG).show(); }}
library要和第3步的moduleName一致。
5. File->New->Folder->JNI Folder,新建jni目录,新建c文件如下,注意函数名的写法:
#include <jni.h>jstring Java_com_onion_hellondk_MainActivity_stringFromJNI( JNIEnv* env,jobject thiz ) { return (*env)->NewStringUTF(env, "Hello Learn2Crack from JNI !");}
6.切换至Project,编辑gradle-wrapper.properties文件
#Sun Mar 27 19:42:31 CST 2016distributionBase=GRADLE_USER_HOMEdistributionPath=wrapper/distszipStoreBase=GRADLE_USER_HOMEzipStorePath=wrapper/distsdistributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
因为需要制定某个版本的gradle才有效。如果出现错误, File->Settings->Gradle->Use default gradle wrapper(recommended),不要勾选offline, OK.
7. 切换回Android,Build->Make Project, 然后run即可。
0 1
- 最新Android Studio开发NDK步骤(自动版)
- Android Studio下的ndk开发步骤
- Android使用最新版本NDK开发步骤与环境配置
- Android studio NDK开发
- Android Studio开发NDK
- Android Studio ndk开发
- Android studio开发NDK
- Android Studio NDK开发
- Android Studio NDK 开发
- android studio ndk 开发
- Android Studio NDK开发
- Android Studio NDK开发
- Android Studio NDK开发
- Android Studio NDK开发
- Android Studio NDK 开发
- Android Studio NDK 开发
- android studio ndk开发
- Android Studio NDK开发
- StringUtils中 isNotEmpty 和isNotBlank的区别
- 向量vector
- HDU4012 Paint on a Wall(BFS)
- leetcode118. Pascal's Triangle
- Android官方开发文档Training系列课程中文版:使用Fragment构建动态UI之与其它Fragment通信
- 最新Android Studio开发NDK步骤(自动版)
- c++实验2—标准体重
- mybatis的增删查改
- 指纹拼接
- Xcode安装XAlign
- Eclipse配置默认新建文件类型
- 九月十月百度,迅雷,华为,阿里巴巴笔试面试六十题(第411~470题)
- 【分享】PotPlayer播放器【整合硬盘版】[带LAV0.68+madVR0.90.13+234皮肤+OpenCodec解码+DSP插件++mad设置注册表+电视直播+免设置&卸载补丁]
- python3使用pickle读取文件提示TypeError或者UnicodeDecodeError的解决办法