在Android开发中,如果遇到“Android调试版本端口8081已被占用”的问题,可以尝试以下几种解决方法。
关闭占用8081端口的进程:
sudo lsof -i :8081
kill -9 <进程号>
修改React Native项目的调试端口:
在React Native项目的根目录下,找到android/app/src/main/java/com/
文件。在该文件中,找到以下代码:
.setUseDeveloperSupport(BuildConfig.DEBUG)
将其修改为:
.setUseDeveloperSupport(BuildConfig.DEBUG)
.setInitialLifecycleState(LifecycleState.RESUMED)
.setJSMainModulePath("index.android")
.setJSBundleFile("http://localhost:<新的端口号>/index.android.bundle?platform=android")
修改React Native Packager的端口:
在React Native项目的根目录下,找到node_modules/react-native/local-cli/server/server.js
文件。在该文件中,找到以下代码:
var DEFAULT_PORT = process.env.PORT || 8081;
将其修改为:
var DEFAULT_PORT = process.env.PORT || <新的端口号>;
使用其他可用端口:
如果以上方法都无法解决问题,可以尝试使用其他可用的端口号。可以在MainApplication.java
文件中修改setJSBundleFile
方法的端口号,或者修改server.js
文件中的DEFAULT_PORT
变量。
注意:在修改端口号之后,需要重新启动React Native Packager和Android应用程序,才能使修改生效。