我有一个带有调试配置的简单Flutter应用程序。在更改gradle配置和其他内容以在发布模式下构建apk之后,我根据文档进行了所有配置,发布版本运行良好。但是现在我无法在调试模式下运行应用程序。它显示此错误
I/flutter (15809): Observatory server failed to start after 11 tries
I/flutter (15809): Could not start Observatory HTTP server:
I/flutter (15809): SocketException: Failed to create server socket (OS Error: Permission denied, errno = 13), address = 127.0.0.1, port = 0
I/flutter (15809): #0 _NativeSocket.bind (dart:io/runtime/binsocket_patch.dart:545:7)
I/flutter (15809): <asynchronous suspension>
I/flutter (15809): #1 _RawServerSocket.bind (dart:io/runtime/binsocket_patch.dart:1138:10)
I/flutter (15809): #2 _ServerSocket.bind (dart:io/runtime/binsocket_patch.dart:1385:10)
I/flutter (15809): #3 ServerSocket.bind (dart:io/runtime/binsocket_patch.dart:1375:26)
I/flutter (15809): #4 _HttpServer.bind (dart:_http/http_impl.dart:2503:10)
I/flutter (15809): #5 HttpServer.bind (dart:_http:276:19)
I/flutter (15809): #6 Server.startup.poll (dart:vmservice_io/server.dart:352:36)
I/flutter (15809): <asynchronous suspension>
I/flutter (15809): #7 Server.startup (dart:vmservice_io/server.dart:364:23)
I/flutter (15809): <asynchronous suspension>
I/flutter (15809): #8 main (dart:vmservice_io:239:12)
I/flutter (15809):
它显示白屏,没有任何内容。
答案 0 :(得分:4)
在构建发行版本时,它说如果应用程序不需要它,则删除Internet许可。但是,当我们进行开发时,我们必须保持这一点。它需要工作热装。在我添加
之后 <uses-permission android:name="android.permission.INTERNET"/>
一切都很好
答案 1 :(得分:2)
很长一段时间后,我解决了同样的问题。 这不仅是AndroidManifest.xml中的INTERNET权限。 就我而言,我收到了相同的错误,但是我注意到我的项目在app> src中没有调试文件夹。
我需要手动创建此文件夹并插入文件AndroidManifest.xml。 使用以下代码:
loadElement: function() {
var me = this,
complete = function(){
// me.el.onerror = me.el.onload = emptyFn;
me.el.onload = emptyFn;
if (me.el.src && me.el.src.includes('app.js?')) {
alert('error loading app.js');
}
me.el = null;
me.loaded = me.evaluated = me.done = true;
me.notifyRequests();
};
me.createLoadElement(function(){
complete();
});
me.evaluateLoadElement();
return true;
},