Android調用jni全過程,方便以後操作。Android調用jni全過程,方便以後操作。

來源:互聯網
上載者:User

原文:Android調用jni全過程,方便以後操作。

個人記錄下調用jni全過程,省的自己忘記了。哎。
有些需要準備的地方,ndk環境,ndk源碼一份,cygwin要裝好,配好profile。java要配好環境變數。

1.首先建立一個工程,建個類對調用native的方法進行聲明。

package com.stay.jni;

public class CallNative {
    public CallNative() {
    }

    static {//匯入的lib名去掉前面的lib
        System.loadLibrary("skytech");
    }

    public native byte[] readCmd(String path);

    public native int writeCmd(byte[] cmd, String path);
}

2.build下項目,開啟cmd,cd到該工程bin目錄下,
D:\>cd D:\android\rayn\TestJni\bin

D:\android\rayn\TestJni\bin>javah -jni com.stay.jni.CallNative

然後在bin目錄下會出現一個.h檔案這是聲明的標頭檔

3.我們要的是裡面聲明的方法,把我們要寫的c檔案改成相同的方法名就可以了。(我做了一件非常挫的事,把實現寫到.h檔案裡了,一直拿.h檔案去編譯。。= =)

4.在工程裡建個jni目錄,將改好的c檔案和mk檔案(隨便copy一個,改下路徑和lib名就好啦)copy進去

5.然後按照NDK說的方法來編譯:

  1. Place your native sources under <project>/jni/...
  2. Create <project>/jni/Android.mk to describe your native sources to the NDK build system
  3. Optional: Create <project>/jni/Application.mk.
  4. Build your native code by running the 'ndk-build' script from your project's directory. It is located in the top-level NDK directory:
    cd <project><ndk>/ndk-build

    The build tools copy the stripped, shared libraries needed by your application to the proper location in the application's

個人記錄下調用jni全過程,省的自己忘記了。哎。
有些需要準備的地方,ndk環境,ndk源碼一份,cygwin要裝好,配好profile。java要配好環境變數。

1.首先建立一個工程,建個類對調用native的方法進行聲明。

package com.stay.jni;

public class CallNative {
    public CallNative() {
    }

    static {//匯入的lib名去掉前面的lib
        System.loadLibrary("skytech");
    }

    public native byte[] readCmd(String path);

    public native int writeCmd(byte[] cmd, String path);
}

2.build下項目,開啟cmd,cd到該工程bin目錄下,
D:\>cd D:\android\rayn\TestJni\bin

D:\android\rayn\TestJni\bin>javah -jni com.stay.jni.CallNative

然後在bin目錄下會出現一個.h檔案這是聲明的標頭檔

3.我們要的是裡面聲明的方法,把我們要寫的c檔案改成相同的方法名就可以了。(我做了一件非常挫的事,把實現寫到.h檔案裡了,一直拿.h檔案去編譯。。= =)

4.在工程裡建個jni目錄,將改好的c檔案和mk檔案(隨便copy一個,改下路徑和lib名就好啦)copy進去

5.然後按照NDK說的方法來編譯:

  1. Place your native sources under <project>/jni/...
  2. Create <project>/jni/Android.mk to describe your native sources to the NDK build system
  3. Optional: Create <project>/jni/Application.mk.
  4. Build your native code by running the 'ndk-build' script from your project's directory. It is located in the top-level NDK directory:
    cd <project><ndk>/ndk-build

    The build tools copy the stripped, shared libraries needed by your application to the proper location in the application's

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.