java代码:public class SipMessage { public String serverIp;
public String username;
public String password;
}在activity上有三个输入框分别对应上边三个属性,输入(英文)完成后,点击一个按钮,触发native方法register()
JNIEXPORT void JNICALL Java_com_sxsexe_study_SipUIActivity_register
(JNIEnv *env, jobject obj, jobject message)
  {
      //printf("!!!!!!!!!!!!!!!!!!!  -----------------------!!!!!!!!!!!!!!!!!!!!!!!!!!!\n");
      LOGD("Register method in C has been invoked-----");      jclass clazz = (*env)->GetObjectClass(env, message);
      jfieldID field_server_ip = (*env)->GetFieldID(env, clazz, "serverIp", "Ljava/lang/String;");
      jfieldID field_username = (*env)->GetFieldID(env, clazz, "username", "Ljava/lang/String;");
      jfieldID field_password = (*env)->GetFieldID(env, clazz, "password", "Ljava/lang/String;");      jstring str_server_ip = (*env)->GetObjectField(env, message, field_server_ip);
      jstring str_username = (*env)->GetObjectField(env, message, field_username);
      jstring str_password = (*env)->GetObjectField(env, message, field_password);      __android_log_print(ANDROID_LOG_DEBUG,"sever ip","serveri ip is %s",str_server_ip);
      __android_log_print(ANDROID_LOG_DEBUG,"username","username is %s",str_username);
      __android_log_print(ANDROID_LOG_DEBUG,"password","password is %s",str_password);  }结果输出显示成小方块了,如下:
03-01 08:03:58.502: D/sever ip(925): serveri ip is ??
03-01 08:03:58.502: D/username(925): username is ??
03-01 08:03:58.513: D/password(925): password is ??在eclipse的logcat窗口中就显示成了小方块儿有没有人可以解释一下是什么情况注:操作系统是中文的,Eclipse下编码格式为UTF-8