极简版抖音demo前后端对接运行 | 青训营

421 阅读3分钟

本篇文章使用Android Studio 内置的AVD Manager(安卓模拟器)作为虚拟设备,之后在里面安装极简抖音apk,之后在GoLand里面启动demo项目,在AVD中设置后端地址后即可将前端和后端进行对接

前端准备

Android Studio下载以及虚拟设备AVD安装

首先去网下载Android Studio官,附上地址: Download Android Studio & App Tools - Android Developers (google.cn)

之后,安装内置的安卓模拟器AVD,可以参考视频AVD安卓虚拟机部署教程_哔哩哔哩_bilibili个人感觉讲的很不错

安装完成后创建一个虚拟设备,如图:

image.png 可以看到右边出现了一个设备,名字叫Pixel 4 API 31,旁边有一个三角形的启动按钮,这样就可以了。

APK安装进AVD

首先,将apk下载过来:下载地址: ⁡‬⁤‌⁡⁣‍‬⁤⁢​⁣‌​⁡⁢⁣⁤⁡​​​⁣​​​​⁤⁤‌⁢​‍​‌⁢⁡​‍​​⁢⁣极简抖音App使用说明 - 第六届青训营版 - 飞书云文档 (feishu.cn)

1)接下来,打开虚拟设备的文件所在地

image.png

image.png 之后,往上层目录翻,直至找到目录为AVD\SDK\platform-tools的地方,将app-release.apk放进去,如图:

image.png 3)在上方的目录地址中输入cmd,并按回车 4)最后执行adb install app-release.apk命令即可执行安装。当出现success时,安装完成。

打开APK

点击三角形的启动按钮,启动模拟器。

image.png

鼠标往上划一下,找到抖声软件,打开。

image.png

双击右下角的“我”,等下一下后端项目启动后,将后端的服务地址填入这里。

image.png image.png

后端demo的运行

首先,下载后端demo,附上github地址 RaymondCode/simple-demo (github.com)

将将项目克隆到本地

git clone https://github.com/RaymondCode/simple-demo.git

使用GOLAND打开,如果这个时候直接在命令行内go run main.go或者右键main.go运行,会提示报错 .\main.go:13:2: undefined: initRouter这是因为还有一个文件router.go没有被执行。

解决办法一

鼠标直接在项目上而不是单个文件上右键 再运行 image.png

解决办法二

在终端运行的时候输入go run ./ 即可运行所有的go文件 image.png

对接前后端

运行玩后端那之后可以看到输出的一些日志 image.png 可以看到项目默认运行在localhoost:8080上,但这个时候不能直接将http://localhoost:8080 填入前端app里,因为会被定位到其他地方,因此,我们需要查出本机的地址。 windows电脑打开cmd输入ipconfig回车,找到自己的网卡,下面的有对应的ip地址

image.png 像我的电脑连接的就是wifi,所以是无线局域网适配器WLAN,可以看到Ipv4地址为192.168.1.7 因此,主机地址为192.168.1.7,我们在前端那个“我”的地方填入地址即可 http://192.168.1.7:8080 此时就可以看到前后端已经对接成功,app会播放后端项目中的一段视频。

image.png

我自己遇到的问题

有时候,因为自己的192.168.1.7:8080端口被占用,localhost:8080会被重定位到别的地址,这个时候,需要禁用掉占用8080端口的地址,否则,即使前端填入了http://192.168.1.7:8080 也访问不到后端项目。 我遇到的情况是192.168.1.7:8080被一个叫NI软件的东西占用了。打开看了一下,是大二的时候模电课程下载的电路模拟器,我以前启动tomcat也会遇到8080被占用的情况,这次终于被我发现罪魁祸首了,因此我把它一卸了之,真是舒坦! 当然,如果你不想卸载,还有第二种办法,就是在后端项目的r.Run()内设置成别的端口,比如

r.Run(":8081")

image.png 这样子后端项目就会在192.168.1.7:8081启动了,在前端填入http://192.168.1.7:8081 即可。

至此,大功告成。

参考

AVD安卓虚拟机部署教程_哔哩哔哩_bilibili