1

I am trying to implement beginner NDK application .

Program runs and giving output but sometimes on Orientation change ,

it gives error

03-03 16:48:24.992: D/dalvikvm(21338): No JNI_OnLoad found in /data/app-lib/com.example.ndkdemo_scan-1/libnative.so 0x41fe7b90, skipping init

03-03 16:48:25.018: A/libc(21338): Fatal signal 11 (SIGSEGV) at 0x5f0f605c (code=2), thread 21338 (le.ndkdemo_scan)

I am writing my code below :

#include <jni.h>
#include <stdio.h>
#include <string.h>

jstring Java_com_example_ndkdemo_scan_MainActivity_getString(JNIEnv * env,jobject object , jstring s){

    const char *string1  = (*env)->GetStringUTFChars(env,s,NULL);

    if(string1==NULL) return NULL;
    char *c = "input is :%s";
    printf(c,string1);
    char out[129];
    printf("Enter A String : ");
    scanf("%s",out);
    printf("String entered is :%s",out);

    strcat(string1,string1);

    jstring string_to_return = (*env)->NewStringUTF(env,string1);
    return string_to_return;
}
Avi K.
  • 1,734
  • 2
  • 18
  • 28
Gaganpreet Singh
  • 886
  • 1
  • 9
  • 20
  • Execute " ./adb logcat | $(NDK)/ndk-stack -sym $(PROJECT)/obj/local/armeabi" to see detail – cxphong Mar 03 '15 at 13:08
  • IMO - ignore the first warn. Its the signal 11 u need to resolve – Robert Rowntree Mar 03 '15 at 15:44
  • `strcat(string1,string1);` <-- you're trying to concatenate a string to itself in-place, even though you don't know whether there's room to concatenate any additional characters. Even if we ignore that fact, `GetStringUTFChars` returns a pointer to `const char`, which means that you shouldn't write to that memory. – Michael Mar 03 '15 at 21:27
  • @RobertRowntree : I am new to NDK , I dont know when this error comes and how to resolve it. – Gaganpreet Singh Mar 04 '15 at 04:54
  • http://stackoverflow.com/questions/17840521/android-fatal-signal-11-sigsegv-at-0x636f7d89-code-1-how-can-it-be-tracked – Robert Rowntree Mar 04 '15 at 16:19

0 Answers0