2011-07-24 30 views
-1

我在C++中有一個函數,我想把它叫做java的android。 我寫它並建立它的庫,但問題是我無法在模擬器中找到文件。 我使用adb push text.txt sdcard將text.txt複製到模擬器的sdcard。 但我找不到具有C函數的文件。在android中的地址路徑

我打電話給Simple(「hello」);

這是我的C文件:

jint Java_X_XX_XXX_wipeActivity_Simple(JNIEnv* env, jobject javaThis,jstring jstr) 
{ 
    jboolean iscopy; 
    const char *address = (*env)->GetStringUTFChars(env, jstr, &iscopy); 

    return replaceZero("/sdcard/text.txt"); 
    //remove(address); 
} 
jint replaceZero(const char *address) 
{ 
    FILE *fp; 
    fp = fopen(address,"r+"); 
    if(fp == 0) 
    { 
     printf("can not find!!"); 
     return -1; 
    } 
    else 
    { 
     //do sth with file 
      return 0; 
    } 
} 

,我會看到-1主程序。

回答

0

我找到了答案 - 我需要把它添加到的manifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 

未經允許,我不能打開它。