Chamadas JSON JQuery para PHP WebService sempre executa o retorno de chamada "Erro"

Eu estou tendo essa dor de cabeça agora, desde que eu tenho tido esse problema o dia todo e, ainda assim, não posso consertar isso. Eu olhei no Google e StackOverflow por horas, tentei muitos métodos (incluindo a mudança de JSON para JSONP, verificação de cabeçalhos em PHP, testes de localhost), perguntou amigos, etc., e eu ainda estou preso. Talvez seja apenas um detalhe, não sei.

Eu estou trabalhando em um aplicativo móvel Android, e para isso, eu tenho um webservice PHP em uma hospedagem (digamos, example.com) que está funcionando bem desde que eu testei com um cliente PHP WS PHP. O problema é que estou chamando este WS agora de um arquivo JS no meu computador usando jQuery, JSON e Ajax, e recebo a seguinte resposta do console de depuração do Google Chrome:

readyState: 4statusText: "OK"responseText: (o que eu preciso, sem erros)

Mas na resposta do servidor,Eu sempre recebo o retorno de erro, nunca o sucesso. Eu li que é porque o servidor não conseguiu analisar o JSON corretamente, mas eu realmente não sei.

Deixo o meu código.

De CLIENT.JS:

$.ajax({
    type: "POST",
    crossDomain: true,
    contentType: "application/json utf-8",
    dataType: "json",
    url: "http://www.example.com/ws/webservice.php/" + methodName,
    data: JSON.stringify(window.parameterArray),

    success: function (response)
        {
            alert('Success!');
            window.resultVar = "Success! " + response;
            console.log(response);
        },
    error: function (response)
        {
            alert('Error');
            window.resultVar = "Error: " + response;
            console.log(response);
        }
});

De SERVER.PHP:

<?php
header('Access-Control-Allow-Origin: *');  //I have also tried the * wildcard and get the same response
header("Access-Control-Allow-Credentials: true");
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Max-Age: 1000');
header('Access-Control-Allow-Headers: Content-Type, Content-Range, Content-Disposition, Content-Description');
header('Content-type: application/json; charset=utf-8');

require_once "mobilefuncts.php";

$methodName = str_replace($_SERVER["SCRIPT_NAME"]."/", "", $_SERVER["REQUEST_URI"]);

if (isset($methodName))
{
   $param = (array)json_decode($HTTP_RAW_POST_DATA);

   $access = new MobileAccess();  //From mobilefuncts.php
   $result = call_user_func_array(array($access,$methodName), $param);   //Calls the method

   echo json_encode($result);
}
?>

Alguém sabe o que pode ser feito? Talvez, como eu disse antes, o problema seja apenas um detalhe. Eu não sei realmente, eu sou meio novo nesse tipo de coisa.

Obrigado em forehand!

ATUALIZAR:

Acabei de perceber que o console do Chrome me diz isso:

GET http://localhost:81/.../cordova_plugins.json 404 (Not Found)

Poderia ser a causa do problema?

ATUALIZAÇÃO 2:

Olha aqui, eu tenho uma pista. Eu adicionei mais parâmetros à função error, e obtive este resultado:

(A mudança no erro é defunção (resposta) parafunção (jqXHR, textStatus, errorThrown))

jqXHR.responseText: [an array with the info I'm asking]
errorThrown: "SyntaxError: Unexpected token"

questionAnswers(4)

yourAnswerToTheQuestion