opengl截图代码:
char* data = new char[target->GetWidth()*target->GetHeight()*3];
glReadPixels( 0, 0, target->GetWidth(), target->GetHeight(), GL_RGB, GL_BYTE, data );
ShoppingHelper::GetInstance()->Share(data,target->GetWidth()*target->GetHeight()*3);
jni数据传输:
SkyNet_Share( const char *data, int count){ JNIEnv* env;
        g_JVM->AttachCurrentThread ( &env, NULL );
        jclass cls = env->FindClass ( "com/ck/Game" );
        CLAW_ASSERT ( cls != NULL );
jmethodID mid = env->GetStaticMethodID ( cls, "share", "([B)V" );
        CLAW_ASSERT ( mid != NULL );
jbyteArray jarray = env->NewByteArray(count);
env->SetByteArrayRegion(jarray, 0, count, (jbyte *)data);
env->CallStaticVoidMethod ( cls, mid,jarray);java通过byte[]获取图片:
    public static void share(byte[] data) {
        logout("++++++++++java share " + data.length);
        Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
        if ( null == bitmap){
            Log.i("log", "bitmap is nullllllllllll+++++++++++");
            return;
        }
        getGameInstance().savePic(bitmap);
    }