簡體   English   中英

Dalvik是否在Android中使用本機庫?

[英]Does Dalvik use native library in Android?

我讀了很多關於它的文章,但是不能清楚地理解一個非常重要的問題。 因此,例如,我編寫了一個程序(使用Java),該程序在將我的程序編譯為在Dalvik中執行后使用了OpenGL API(包含該API的隨附程序包)。 以及此字節代碼如何與opengles.so通信? 該通信何時出現?

如果我錯了,請糾正我,因為以下只是一個猜測:

Android框架附帶了一組Java類,這些類實現OpenGL功能。 這些Java類僅通過JNI調用本地OpenGL函數,從而利用本地OpenGL庫。

如果查看Android框架資源,則可以看到以下內容:

public class GLES20 {

    public static native void glClearColor(
            float red,
            float green,
            float blue,
            float alpha
        );

        // C function void glClearDepthf ( GLclampf depth )

        public static native void glClearDepthf(
            float depth
        );

        // C function void glClearStencil ( GLint s )

        public static native void glClearStencil(
            int s
        );
        // More functions
}

所以,我認為這只是JNI。 全部都是開源的,只需去那里看看。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM