专为发布而构建的Android应用仍尝试连接到本地主机:8081

时间:2020-07-23 00:36:56

标签: android react-native build release

我试图在我的Android手机上获得我的React Native应用的Alpha版本,但是当我打开它时,它立即崩溃。幸运的是,已经对其进行了检测,因此我可以看到所有的错误是因为它仍在尝试连接到城域服务器,这是我希望从调试版本中获得的,但是我不知道如何防止在发布版本中发生这些调用。错误如下:

Cannot connect to host http://localhost:8081/inspector/device
Cannot connect to host http://localhost:8081/message

已采取的步骤:

  • 我正在通过Android Studio生成签名的APK,然后将其发送给自己并安装在手机上。
  • 即使我在“生成已签名的捆绑包或APK”对话框中选择了发布版本,我也将默认的构建变体设置为“发布”。这奇怪地将连接尝试从“ 10.0.0.22”更改为“ localhost”,但没有解决我的问题。
  • 我尝试清理项目。
  • 我已经在项目中搜索了对localhost或10.0.0.22的任何引用,但没有发现与Android构建相关的任何内容。
  • 已删除的Expo会从AndroidManifest.xml中更新元数据(例如expo.modules.updates.EXPO_UPDATES_CHECK_ON_LAUNCH)。
  • 在其他项目中构建了一个APK,并将其安装在我的手机上-可以按预期工作。

可能相关的信息:

  • 我是从世博会项目开始的,并于几周前退出,但世博会似乎还有些遗忘。

----------- 7月23日更新------------

进行一些更改后,我进入了一个错误,无法加载第三方身份验证屏幕。这是更改的地方:

  • Android Studio中的代码分析器,并删除了一些不应该存在的权限:MANAGE_DOCUMENTS,WRITE_SETTINGS,USE_FINGERPRINT
  • 还自动修复了未调用超类的错误(我忘记了确切的细节,而且由于在差异中没有任何内容,因此它似乎不在源代码控制的文件中)
  • 几天前提交的分支代码,然后添加了启动器图标和第三方监控工具。

我仍然需要调试身份验证,但是看来我可能已经开始处理新问题了。我仍然会进行一些挖掘,以了解是否可以缩小导致问题的真正原因。

------------- 7月23日晚些时候更新------------

现在一切都很好,尽管我不知道是什么造成了变化。上次更新后,构建进入一种奇怪的状态,在阅读this之后,我最终删除了.gradle文件夹。我还更新了gradle,这时的理论是实际的修复是结合删除该文件夹的升级。

我重新安装了监视软件,没有任何问题。

1 个答案:

答案 0 :(得分:0)

如果其他人遇到这个问题,我会考虑清理Android版本。我会按顺序尝试的步骤:

  1. android文件夹运行./gradlew clean,然后重新构建
  2. 如果这不起作用,请按照接受的答案here删除.gradle文件夹
  3. 检查gradle版本,如果过时则升级