一号优惠经验分享网
51福利网的各种薅羊毛福利经验笔记

uni-app获取设备信息

由现成的api可用,具体查看官网 系统信息的概念 | uni-app官网

uniapp 获取设备唯一标识信息

51福利网

uniapp 获取安卓id 还可以获取更多信息 uniapp获取版本信息,设备信息,网络信息等

获取uuid,imei的方式已经不推荐,

下面是;我写一个uni-app的vue文件,获取手机设备的相关信息,系统名称,系统版本,设备型号,系统语言信息,网络类型,设备的唯一标识uuid(无法获取就随机生成一个唯一的),APP版本信息。并将信息保存到数据表

<template>  
  <view>  
    <text>设备信息</text>  
    <text>系统名称: {{ systemName }}</text>  
    <text>系统版本: {{ systemVersion }}</text>  
    <text>设备型号: {{ deviceModel }}</text>  
    <text>系统语言: {{ systemLanguage }}</text>  
    <text>网络类型: {{ networkType }}</text>  
    <text>安卓id: {{ deviceId }}</text>  
	<text>应用版本: {{ appVersion }}</text> 
    
    <button @click="saveDeviceInfo">保存设备信息</button>  
  </view>  
</template>  
  
<script>  

export default {  
  data() {  
    return {  
      systemName: '',  
      systemVersion: '',  
      deviceModel: '',  
      systemLanguage: '',  
      networkType: '',  
      deviceId: '',  
	  identifier: '', 
      appVersion: ''  
    };  
  },  
  methods: {  
    async getDeviceInfo() {  
      try {  
        // 获取系统信息  
        const systemInfo = uni.getSystemInfoSync();  
        this.systemName = systemInfo.system;  
        this.systemVersion = systemInfo.version;  
        this.deviceModel = systemInfo.model;  
        this.systemLanguage = systemInfo.language; 
		 this.deviceId = systemInfo.deviceId;
		 this.appVersion = systemInfo.appVersion;
	     
    
	
	
	
        uni.getNetworkType({  
                  success: (networkRes) => {  
                    this.networkType = networkRes.networkType;  
                    this.getAppAndDeviceInfo(); // 确保在这里调用以获取安卓ID和APP版本  
                  },  
                  fail: (error) => {  
                    console.error('获取网络类型失败', error);  
                  }  
                });  
              } catch (error) {  
                console.error('获取系统信息失败', error);  
              }  
            },  
		
            
    
    async saveDeviceInfo() {  
      try {  
        // 确保所有必要的信息都已经被获取  
        // (在实际应用中,你可能需要在调用此方法之前确保这些信息是可用的)  
    
        const apiUrl =  '你的后台api';  
        const deviceInfo = {  
          systemName: this.systemName,  
          systemVersion: this.systemVersion,  
          deviceModel: this.deviceModel,  
          systemLanguage: this.systemLanguage,  
          networkType: this.networkType,  
          uuid: this.deviceId, // 使用deviceId作为唯一标识符  
		  appVersion: this.appVersion, 
         
        };  
    
        // 注意:确保后端API能够接收JSON格式的数据,并且你的uni.request调用正确设置了Content-Type  
        const res = await uni.request({  
          url: apiUrl,  
          method: 'POST',  
          data: JSON.stringify(deviceInfo), // 如果后端需要JSON字符串,则使用JSON.stringify  
          header: {  
            'Content-Type': 'application/json'  
          },  
          success: (response) => {  
            if (response.statusCode === 200) {  
              uni.showToast({  
                title: '设备信息保存成功',  
                icon: 'success'  
              });  
            } else {  
              // 根据实际后端API的响应来处理错误情况  
              uni.showToast({  
                title: '设备信息保存失败,状态码:' + response.statusCode,  
                icon: 'none'  
              });  
            }  
          },  
          fail: (error) => {  
            console.error('保存设备信息请求失败', error);  
            uni.showToast({  
              title: '设备信息保存失败',  
              icon: 'none'  
            });  
          }  
        });  
    
        // 注意:上面的success和fail回调已经处理了响应和错误情况,  
        // 因此通常不需要在这里再次处理res变量(除非你有额外的逻辑需要处理)。  
    
      } catch (error) {  
        // 这个catch块主要捕获uni.request之外的异常,  
        // 但由于uni.request已经使用了自己的错误处理回调,  
        // 因此这里的catch块可能不会被触发(除非uni.request本身抛出异常)。  
        console.error('保存设备信息过程中发生未捕获的异常', error);  
        uni.showToast({  
          title: '设备信息保存过程中发生异常',  
          icon: 'none'  
        });  
      }  
    }  
  },
  onLoad() {  
    this.getDeviceInfo();  
	_self = this;
	sign.sign(this.apiServer);
  }  
};  
</script>  
  
<style scoped>  
view {  
  padding: 20px;  
}  
text {  
  display: block;  
  margin: 10px 0;  
}  
button {  
  margin-top: 20px;  
}  
</style>

一号优惠 · 51福利网薅羊毛福利具有时效性,如已失效,请留言
文章名称:《uni-app获取设备信息》-一号优惠 · 51福利网
免责申明:本站所有活动信息均来自网络,如有失效、违规、不实或侵权,请联系我们删除。谢谢

评论 抢沙发

一号优惠经验分享网最新最全薅羊毛,现金红包线报网

一号优惠经验分享网提供每日最新内部优惠,薅羊毛活动,现金红包领取,免费福利和网赚福利手机赚钱线报,打造中国最受欢迎的网赚信息发布平台!51福利网

51联盟线报群赚钱·合作·帮助

登录

找回密码

注册