mad*_*max -1 nodes cordova ionic-framework ionic3 angular
我需要唯一地识别每个设备。我认为获得IMEi num的最佳方法。但我怎么能做到这一点。
我已阅读文档https://ionicframework.com/docs/native/uid/但不清楚。
如果有任何其他过程可以建议我。
小智 5
我同样需要以独特的方式识别每个设备,我找到的解决方案如下。
获取IMEI
它必须安装在指定的版本中,一个插件和两个依赖项,并且最新版本与我正在处理的项目不兼容(离子 3)
ionic cordova plugin add cordova-plugin-uid
npm install --save @ionic-native/uid@^4.20.0
npm install --save @ionic-native/android-permissions@^4.20.0
cordova plugin add cordova-plugin-android-permissions
cordova plugin add cordova-plugin-permission
Run Code Online (Sandbox Code Playgroud)
必须将依赖应用程序导入 app.module.ts 文件并将同一文件的提供程序添加到对象中。
app.module.ts 文件
import {Uid} from '@ionic-native/uid';
import {AndroidPermissions} from '@ionic-native/android-permissions';
providers: [
StatusBar,
Uid,
AndroidPermissions,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler},
]
Run Code Online (Sandbox Code Playgroud)
在捕获图像的文件中,必须导入之前安装的依赖项,在本例中为 home.ts。
我们构建函数 getIMEI() 并在构造函数中声明它。
home.ts 文件
import {Uid} from '@ionic-native/uid';
import {AndroidPermissions} from '@ionic-native/android-permissions';
device_id: any;
builder(
public uid: Uid,
public androidPermissions: AndroidPermissions
) {
this.getIMEI();
}
async getIMEI() {
const {hasPermission} = await this.androidPermissions.checkPermission(
this.androidPermissions.PERMISSION.READ_PHONE_STATE
);
if (!hasPermission) {
const result = await this.androidPermissions.requestPermission(
this.androidPermissions.PERMISSION.READ_PHONE_STATE
);
if (!result.hasPermission) {
throw new Error ('Permissions required');
}
// ok, a user gave us permission, we can get identifiers after
restart the application
return 0;
}
this.device_id = this.uid.IMEI
return this.uid.IMEI;
}
Run Code Online (Sandbox Code Playgroud)
要在屏幕上显示图像,在这种情况下只需要编辑 html home.html
home.html 文件
<ion-content padding>
<p> {{device_id}} </p>
</ion-content>
Run Code Online (Sandbox Code Playgroud)
请记住,当使用这些本机依赖项时,我们只能在从模拟器或物理设备运行应用程序时才能看到结果,在浏览器中它将无法运行。
在我的情况下它有效,我希望它为某人服务
| 归档时间: |
|
| 查看次数: |
4822 次 |
| 最近记录: |