当debuggable设置为false时,来自Volley的NetworkError

时间:2015-08-14 16:15:43

标签: android android-volley ioexception

我正在尝试将MoPub用于应用内广告,该广告使用Volley作为其HTTP网络库。在尝试加载广告时,Volley会抛出NetworkError,但在build.gradle中将debuggable设置为false时,

堆栈跟踪:

var 
   myForm = document.querySelector('#myForm'),

myForm.addEventListener('submit', function ( event ) {
  event.preventDefault();
  myFormData = new FormData( this );
  $( this ).request( 'onHandler', {
    data: myFormData,
    contentType: false,
    // this would make work
    proccessData: false,
    success: function ( response ) {
      // do something
    }, 
    error: function ( jqXHR ) {
      // do something    
    },
    complete: function () {
      // do something
    }
  });
});

通过BasicNetwork回溯,您可以在catch块中看到IOException here的错误消息。

这对我来说是一个难以调试的问题,因为据我所知,将debuggable设置为false应该对应用程序代码的运行没有影响,只能通过DDMS调试应用程序。任何人都知道为什么Volley会在这种情况下获得IOException?

编辑:也许它与堆栈跟踪here的操作有关?到目前为止只是猜测;如果是这样的话,我不确定如何解决问题,因为MoPub将Volley作为JAR出口。

1 个答案:

答案 0 :(得分:0)

/叹...这个问题无效。我根据BuildConfig.DEBUG的值获取了不正确的MoPub API密钥,假设这反映了debug / release的值而不是debuggable标志。我的生产MoPub API密钥设置不正确,因此我无法检索广告。如果我替换我的测试API密钥,我可以在发布版本中使用debuggable = false加载广告。

来源:http://tekeye.biz/2013/android-debug-vs-release-build