1

我向亚马逊应用商店提交了一个应用程序,但由于以下问题而被拒绝:

此应用似乎正在发送未加密的敏感信息。在这种情况下,电子邮件和密码以明文形式发送。请更新应用程序以加密所有敏感信息。

我将LoopJ用于我的 http 请求,但我不确定为什么我的数据没有被加密,或者如何加密它。这是我的代码。

public class MYAuthClient {
  private static final String BASE_URL = "http://www.mywebservice.net/";

  private static AsyncHttpClient client = new AsyncHttpClient();

  public static void post(String url, RequestParams params, AsyncHttpResponseHandler responseHandler) {
      client.post(getAbsoluteUrl(url), params, responseHandler);
  }

  private static String getAbsoluteUrl(String relativeUrl) {
      return BASE_URL + relativeUrl;
  }
}

提出要求。我这样做。

RequestParams params = new RequestParams();
    params.put("email", login_email);
    params.put("password", login_pass);
    MYAuthClient.post("api/v1/tokens.json", params, new AsyncHttpResponseHandler() {
         @Override
         public void onStart() {
             // Initiated the request
         }

         @Override
         public void onSuccess(String response) {
            // Successfully got a response

         }

         @Override
         public void onFailure(Throwable e, String response) {
             // Response failed :(
             Toast.makeText(getApplicationContext(), "Failed to connect to server", Toast.LENGTH_LONG).show();
         }

     });

任何帮助或链接到与 LoopJ 一起使用加密的示例?谢谢!

4

1 回答 1

2

这里最好的解决方案是https为您的 Web 服务提供一个端点。

然后在您的 Android 中,更改为端点,https如下所示:

http://www.mywebservice.net/

变成

https://www.mywebservice.net/

您需要检查托管 Web 服务的服务器是否设置为服务器 https。这个问题的解决方案超出了这个问题的范围。

于 2013-01-09T16:46:52.367 回答