Crea una classe C ++ e usa quella classe in un'altra classe C ++ che contiene metodi JNI in Android ndk

Amjad Khan 07/27/2017. 1 answers, 51 views
android android c++ android-ndk android-ndk native

In Android, sto affrontando problemi nel collegamento di due classi cpp in Android nativo. Ho provato con la singola classe che funziona bene.

ma quando ho creato un altro file e ora affrontato un problema nel collegarlo con il file cpp corrente.

MainClass.cpp

#include #include "native-handler.h"

extern "C"
JNIEXPORT jstring JNICALL
Java_com_example_fragment_SampleFragment_setTitle(JNIEnv *env,jobject instance,jobject context) {

    ClassNativeHandler classNativeHandler;
    return classNativeHandler.getType(env,context);
} 

native-handler.cpp

#include #include "native-handler.h"

jstring jstringObject;

jstring ClassNativeHandler::getType(JNIEnv *env, jobject contextObject) {
    jstring jstringObject = env->NewStringUTF("Hello world");
    return jstringObject;
}

void ClassNativeHandler::setType(jstring string) {
    myType = string;
    jstringObject = string;
} 

native-handler.h

#ifndef SAMPLE_NATIVE_HANDLER_H
#define SAMPLE_NATIVE_HANDLER_H

#include #include class ClassNativeHandler
{
private:
    jstring myType;

public:
    void setType(jstring string);
    jstring getType(JNIEnv *env, jobject contextObject);
    jstring getHeaderName(JNIEnv *env);

};

#endif //SAMPLE_NATIVE_HANDLER_H 

Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := Native
LOCAL_SRC_FILES := ../cpp/mainClass.cpp
LOCAL_C_INCLUDES := ../cpp/native-handler.h
LOCAL_LDLIBS := -lz -llog -ljnigraphics
include $(BUILD_SHARED_LIBRARY) 

Errore: riferimento non definito a `ClassNativeHandler :: getType (_JNIEnv *, _jobject *) '

su questa riga return classNativeHandler.getType (env, context);

Quindi non sono in grado di creare il file .so. Per favore guidami

1 Comments
Joe C 07/27/2017
Che cosa ha a che fare questa domanda con Java?

1 Answers


taskinoor 07/27/2017.

Non hai compilato native-handler.cpp . Devi specificarlo in LOCAL_SRC_FILES modo tale che NDK lo LOCAL_SRC_FILES .

LOCAL_SRC_FILES := ../cpp/mainClass.cpp ../cpp/native-handler.cpp

3 comments
Amjad Khan 07/27/2017
Ora posso compilare il file, ma ottengo errore nell'esecuzione dell'applicazione come {JNI RILEVATO ERRORE NELL'APPLICAZIONE: uso del riferimento locale cancellato 0x7f5bc55a3d}
taskinoor 07/27/2017
All'interno di ClassNativeHandler::getType è stato definito jstring jstringObject locale che ombreggia efficacemente il jstringObject globale che potrebbe causare l'errore di riferimento locale non valido.
Amjad Khan 07/27/2017
Non viene memorizzato nella memoria quando punta di nuovo al punto che ClassNativeHandler::getType nullo, ottenendo così un errore su ClassNativeHandler::getType che sta usando la variabile jstring jstringObject

HighResolutionMusic.com - Download Hi-Res Songs

1 (G)I-DLE

POP/STARS flac

(G)I-DLE. 2018. Writer: Riot Music Team;Harloe.
2 Ariana Grande

​Thank U, Next flac

Ariana Grande. 2018. Writer: Crazy Mike;Scootie;Victoria Monét;Tayla Parx;TBHits;Ariana Grande.
3 Imagine Dragons

Bad Liar flac

Imagine Dragons. 2018. Writer: Jorgen Odegard;Daniel Platzman;Ben McKee;Wayne Sermon;Aja Volkman;Dan Reynolds.
4 Backstreet Boys

Chances flac

Backstreet Boys. 2018.
5 Clean Bandit

Baby flac

Clean Bandit. 2018. Writer: Jack Patterson;Kamille;Jason Evigan;Matthew Knott;Marina;Luis Fonsi.
6 BTS

Waste It On Me flac

BTS. 2018. Writer: Steve Aoki;Jeff Halavacs;Ryan Ogren;Michael Gazzo;Nate Cyphert;Sean Foreman;RM.
7 BlackPink

Kiss And Make Up flac

BlackPink. 2018. Writer: Soke;Kny Factory;Billboard;Chelcee Grimes;Teddy Park;Marc Vincent;Dua Lipa.
8 Lady Gaga

I'll Never Love Again flac

Lady Gaga. 2018. Writer: Benjamin Rice;Lady Gaga.
9 Kelly Clarkson

Never Enough flac

Kelly Clarkson. 2018. Writer: Benj Pasek;Justin Paul.
10 Fitz And The Tantrums

HandClap flac

Fitz And The Tantrums. 2017. Writer: Fitz And The Tantrums;Eric Frederic;Sam Hollander.
11 Little Mix

Told You So flac

Little Mix. 2018. Writer: Eyelar;MNEK;Raye.
12 Halsey

Without Me flac

Halsey. 2018. Writer: Halsey;Delacey;Louis Bell;Amy Allen;Justin Timberlake;Timbaland;Scott Storch.
13 Cher Lloyd

None Of My Business flac

Cher Lloyd. 2018. Writer: ​iamBADDLUCK;Alexsej Vlasenko;Kate Morgan;Henrik Meinke;Jonas Kalisch;Jeremy Chacon.
14 Bradley Cooper

Always Remember Us This Way flac

Bradley Cooper. 2018. Writer: Lady Gaga;Dave Cobb.
15 Calum Scott

No Matter What flac

Calum Scott. 2018. Writer: Toby Gad;Calum Scott.
16 Ashley Tisdale

Voices In My Head flac

Ashley Tisdale. 2018. Writer: John Feldmann;Ashley Tisdale.
17 Imagine Dragons

Machine flac

Imagine Dragons. 2018. Writer: Wayne Sermon;Daniel Platzman;Dan Reynolds;Ben McKee;Alex Da Kid.
18 Diplo

Close To Me flac

Diplo. 2018. Writer: Ellie Goulding;Savan Kotecha;Peter Svensson;Ilya;Swae Lee;Diplo.
19 Billie Eilish

When The Party's Over flac

Billie Eilish. 2018. Writer: Billie Eilish;FINNEAS.
20 Little Mix

Woman Like Me flac

Little Mix. 2018. Writer: Nicki Minaj;Steve Mac;Ed Sheeran;Jess Glynne.

Related questions

Hot questions

Language

Popular Tags