uni-app APP 查询ICCID
uni-app APP 查询ICCID
查询ICCID
        
          3 回复
        
      
      
        可以做
专业插件开发 q 1196097915
主页 https://ask.dcloud.net.cn/question/91948
更多关于uni-app APP 查询ICCID的实战教程也可以访问 https://www.itying.com/category-93-b0.html
联系:18968864472(同微)
在uni-app中查询设备的ICCID(集成电路卡识别码)通常涉及到与原生代码进行交互,因为uni-app本身是基于Vue.js的多端框架,不直接暴露设备硬件级别的接口。不过,你可以通过编写原生插件或使用已有的原生模块来实现这一功能。
以下是一个基于uni-app和原生插件的示例,展示了如何在Android和iOS平台上查询ICCID。
1. 创建原生插件
Android端
首先,在native-plugins目录下创建一个名为ICCIDPlugin的插件。
ICCIDPlugin.java
package com.example.iccidplugin;
import android.telephony.TelephonyManager;
import io.dcloud.feature.uniapp.bridge.UniJSCallback;
import io.dcloud.feature.uniapp.common.UniModule;
import android.content.Context;
public class ICCIDPlugin extends UniModule {
    @Override
    public String getName() {
        return "ICCIDPlugin";
    }
    public void getICCID(UniJSCallback callback) {
        try {
            TelephonyManager telephonyManager = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);
            String iccid = telephonyManager.getSimSerialNumber();
            callback.invoke(iccid);
        } catch (Exception e) {
            callback.invokeAndKeepAlive(new Object[]{"Error: " + e.getMessage()});
        }
    }
}
iOS端
在iOS项目中,创建一个名为ICCIDPlugin的Objective-C或Swift类。
ICCIDPlugin.m
#import <Foundation/Foundation.h>
#import <UniAppPlugin/UniModule.h>
#import <CoreTelephony/CoreTelephony.h>
@interface ICCIDPlugin : UniModule
- (void)getICCID:(UniJSCallback *)callback;
@end
@implementation ICCIDPlugin
- (NSString *)getName {
    return @"ICCIDPlugin";
}
- (void)getICCID:(UniJSCallback *)callback {
    CTTelephonyNetworkInfo *networkInfo = [[CTTelephonyNetworkInfo alloc] init];
    NSString *iccid = [networkInfo simSerialNumber];
    [callback invoke:iccid];
}
@end
2. 在uni-app中使用插件
在你的uni-app项目中,通过manifest.json配置引入这个插件,并在JavaScript代码中调用。
manifest.json
"nativePlugins": [
    {
        "plugins": {
            "ICCIDPlugin": {
                "package": "com.example.iccidplugin",
                "version": "1.0.0",
                "provider": "your_provider"
            }
        }
    }
]
在JavaScript中调用
const iccidPlugin = uni.requireNativePlugin('ICCIDPlugin');
iccidPlugin.getICCID((result) => {
    console.log('ICCID:', result);
});
这样,你就可以在uni-app应用中查询设备的ICCID了。注意,这些代码片段是示例性质的,实际应用中需要根据具体需求和环境进行调整。
 
        
       
                     
                   
                    

