概述
最近做了一个小项目,项目中有个需求是,向硬件发送wifi参数,来实现硬件的联网。嵌入式工程师那边要求使用EasyLink来发送Wifi参数。
EasyLink ,可以将手机端设置的 Wi-Fi 网络参数发送到设备端,实现物联网 Wi-Fi 设备的快速网络设置。SDK官方文档
具体使用方法官方的SDK写的很详细了,照着实现就可以了。这里有一点需要注意下,也是我在使用时碰到的问题。
在implementation 'io.fogcloud.sdk:easylinkv3:0.2.7’引入库后,AndroidStudio出现了Manifest merger failed with multiple errors, see logs的错误信息,项目无法运行起来。此时通过Terminal 输入命令行
gradlewprocessDebugManifest --stacktrace -info
来查看具体的错误信息。发现三方库冲突出现在AndroidManifest里,然后去看EasyLink aar里的AndroidManifest里发现
android:allowBackup=“false”
而我项目的AndroidManifest里
android:allowBackup=“true”
就产生了冲突。
android:allowBackup属性,来借鉴下从其他博主那里看到的解释。
AllowBackup是在Android 2.2中引入的一个系统备份的功能。允许用户备份系统应用和第三方应用的apk安装包和应用数据,以便在刷机或者数据丢失后恢复应用,用户即可通过adb backup和adb restore来进行对应用数据的备份和恢复。第三方应用开发者需要在应用的 AndroidManifest.xml 文件中配置 allowBackup 标志(默认为 true )来设置应用数据是否能能够被备份或恢复。
既然发现了问题所在点,接下来就是解决问题。把android:allowBackup属性统一起来就好了,现在要做的不是把项目里的android:allowBackup设为false。因为项目中引入的其他三方库没有设置android:allowBackup这个属性,如果把项目的android:allowBackup设为false,不会和EasyLink 冲突,但是会和其他三方库冲突,这时应该做的是在项目AndroidManifest里application标签下添加
tools:replace=“android:allowBackup”
tools:replace的作用就是会替换三方库中的属性。让三方库使用项目android:allowBackup的设置。
至此,项目就可以正常运行了。
最后
以上就是威武篮球为你收集整理的android 使用EasyLink给硬件WiFi模块配网的全部内容,希望文章能够帮你解决android 使用EasyLink给硬件WiFi模块配网所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复