Android: ¿Cómo configurar la codificación en JSONStringer para las peticiones de servicio web?

Terminé la versión en inglés de mi aplicación y actualmente estoy trabajando en mi versión de aplicación en árabe. Aunque mis servicios de web en inglés estaban funcionando bien, parece que hay un problema con mi webservices árabe, creo que necesito especificar el tipo de codificación (utf-8) cuando construyo mi solicitud de JSON usando la clase JSONStringer. ¿Hay una manera de hacer eso?

He aquí un ejemplo de un método que construye mi solicitud JSON,

public static String initLoginJSONRequest(String username, String password){ String parentString = null; String childString = null; try{ childString = new JSONStringer() .object() .key("username").value(username) .key("password").value(password) .endObject() .toString(); parentString = new JSONStringer() .object() .key("UserCredentials").value(childString) .endObject() .toString(); }catch(JSONException e){ e.printStackTrace(); } return parentString; 

}

EDITAR

También me gustaría añadir que especifico que mi codificación es utf-8 en mi HttpPost como se muestra a continuación,

 HttpPost post = new HttpPost(getUrl); StringEntity se = new StringEntity(jsonString); se.setContentType("application/json;charset=UTF-8");//text/plain;charset=UTF-8 se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,"application/json;charset=UTF-8")); post.setEntity(se); response = client.execute(post); 

Pero no está recibiendo mis charecters árabes en el final del webservice (escrito en. NET) correctamente.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.