不同的android手机,平板,有的设备无法获取到唯一的IMEI号,通过获取五种不同的ID组合,并通过MD5编码,来获取唯一的ID

需要源文件的可以到以下地址下载:

http://download.csdn.net/detail/cicilover/7425377

下面是源码:

public class GetDeviceId {

private Context mContext;
public GetDeviceId(Context context){
mContext=context;
}

//cc 1 The IMEI
//only useful for Android Phone(android.permission.READ_PHONE_STATE in Manifest)
public String getIMEI(){
TelephonyManager TelephonyMgr = (TelephonyManager)mContext.getSystemService(Context.TELEPHONY_SERVICE); 
String szImei = TelephonyMgr.getDeviceId();
return szImei; 
}

//cc 2 Pseudo-Unique ID
//useful for phone/pad
//通过取出ROM版本、制造商、CPU型号、以及其他硬件信息来实现这一点。这样计算出来的ID不是唯一的(因为如果两个手机应用了同样的硬件以及Rom 镜像)
public String getPUID(){
String m_szDevIDShort = "35" + //make this look like a valid IMEI 
Build.BOARD.length()%10 + 
Build.BRAND.length()%10 + 
Build.CPU_ABI.length()%10 + 
Build.DEVICE.length()%10 + 
Build.DISPLAY.length()%10 + 
Build.HOST.length()%10 + 
Build.ID.length()%10 + 
Build.MANUFACTURER.length()%10 + 
Build.MODEL.length()%10 + 
Build.PRODUCT.length()%10 + 
Build.TAGS.length()%10 + 
Build.TYPE.length()%10 + 
Build.USER.length()%10 ; //13 digits
return m_szDevIDShort;
}

//cc 3 Android ID
//sometimes it will be null,cause this id can be changed by the manufacturer
public String getAndroidId(){
String m_szAndroidID = Secure.getString(mContext.getContentResolver(), Secure.ANDROID_ID);
return m_szAndroidID;
}

//cc 4 The WLAN MAC Address String
//need android.permission.ACCESS_WIFI_STATE,or it will return null
public String getWLANMAC(){
WifiManager wm = (WifiManager)mContext.getSystemService(Context.WIFI_SERVICE); 
String m_szWLANMAC = wm.getConnectionInfo().getMacAddress();
return m_szWLANMAC;
}

//cc 5 the BT MAC Address String
//need android.permission.BLUETOOTH,or it will return null
public String getBTMAC(){
BluetoothAdapter m_BluetoothAdapter = null; // Local Bluetooth adapter      
m_BluetoothAdapter = BluetoothAdapter.getDefaultAdapter();      
String m_szBTMAC = m_BluetoothAdapter.getAddress();
return m_szBTMAC;
}

//cc Combined Device ID
public String getCombinedId(){
String szImei=getIMEI();
String m_szDevIDShort=getPUID();
String m_szAndroidID=getAndroidId();
String m_szWLANMAC=getWLANMAC();
String m_szBTMAC=getBTMAC();
String m_szLongID=szImei+m_szDevIDShort+m_szAndroidID+m_szWLANMAC+m_szBTMAC;
Log.i("szImei","cccc|"+szImei);
Log.i("m_szDevIDShort","cccc|"+m_szDevIDShort);
Log.i("m_szAndroidID","cccc|"+m_szAndroidID);
Log.i("m_szWLANMAC","cccc|"+m_szWLANMAC);
Log.i("m_szBTMAC","cccc|"+m_szBTMAC);
Log.i("m_szLongID","cccc|"+m_szLongID);
// compute md5     
MessageDigest m = null;   
try {
m = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();   
}   
m.update(m_szLongID.getBytes(),0,m_szLongID.length());   
// get md5 bytes   
byte p_md5Data[] = m.digest();   
// create a hex string   
String m_szUniqueID = new String();   
for (int i=0;i<p_md5Data.length;i++) {   
    int b =  (0xFF & p_md5Data[i]);    
// if it is a single digit, make sure it have 0 in front (proper padding)    
   if (b <= 0xF) 
       m_szUniqueID+="0";    
// add number to string    
   m_szUniqueID+=Integer.toHexString(b); 
  }   // hex string to uppercase   
m_szUniqueID= m_szUniqueID.toUpperCase();
return m_szUniqueID;
}

}












---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

如何检索Android设备的唯一ID      http://samsungapps.csdn.net/text.html?arcid=304625

关于本文档

Android的开发者在一些特定情况下都需要知道手机中的唯一设备ID例如,跟踪应用程序的安装,生成用于复制保护的DRM时需要使用设备的唯一ID在本文档结尾处提供了作为参考的示例代码片段。

范围

本文提供有关如何读取各种Android设备的 ID的介绍,用以使用标识号。本文假定用户已经安装了Android以及开发应用程序必要的工具。并且,本文假定用户已了解Android的基本知识。

简介在搭载Android操作系统的设备中,已经存在好几种类型的设备标识号。先前的所有Android设备都具有电话功能,因此查找每部设备硬件唯一的IMEIMEID,或ESN也很容易。但仅能使用Wifi的设备或音乐播放器没有电话硬件,所以没有这种类型的唯一标识号。本文阐述了如何读取不同Android设备的标识号。检索Android设备ID各种方式

以下是Android设备不同类型的识别设备ID

· 唯一编号(IMEIMEIDESNIMSI

· MAC地址

· 序列号

· ANDROID_ID

 

唯一编号(IMEIMEIDESNIMSI

说明在以前,当Android设备均作为电话使用时,寻找唯一标识号比较简单:()可用于找到(取决于网络技术)手机硬件唯一的IMEIMEIDESNIMSI编号。

TelephonyManager.getDeviceId

IMEIMEIDESNIMSI的定义如下:

•IMEI(国际移动设备识别码)唯一编号,用于识别 GSMWCDMA手机以及一些卫星电话(移动设备识别码)全球唯一编号,用于识别CDMA移动电台设备的物理硬件,MEID出现的目的是取代ESN号段(电子序列号)(电子序列号)唯一编号,用于识别CDMA手机(国际移动用户识别码)与所有GSMUMTS网络手机用户相关联的唯一识别编号如需要检索设备的ID,在项目中要使用以下代码:

•MEID

•ESN

•IMSI

import android.telephony.TelephonyManager;   

import android.content.Context;                                                     

 

String   imeistring = null;                                                        

String   imsistring = null;                                                                                     

{                                                                                   

    TelephonyManager    telephonyManager;                                            

                                                                                    

    telephonyManager =

         ( TelephonyManager )getSystemService( Context.TELEPHONY_SERVICE );

                    

    /*

      * getDeviceId() function Returns the unique device ID.

     * for example,the IMEI for GSM and the MEID or ESN for CDMA phones.

     */                                                              

    imeistring = telephonyManager.getDeviceId();

  

   /*

    * getSubscriberId() function Returns the unique subscriber ID,

 * for example, the IMSI for a GSM phone.

 */

   imsistring = telephonyManager.getSubscriberId();  

}

如要只读取手机的状态,则需添加READ_PHONE_STATE许可到AndroidManifest.xml文件中。

<uses-permission

  android:name="android.permission.READ_PHONE_STATE" >

</uses-permission>

缺点

•Android设备要具有电话功能

其工作不是很可靠

序列号

当其工作时,该值保留了设备的重置信息(恢复出厂设置),从而可以消除当客户删除自己设备上的信息,并把设备转另一个人时发生的错误。

Mac地址

说明

可通过检索找到设备的Wi - Fi或蓝牙硬件的Mac地址。但是,不推荐使用Mac地址作为唯一的标识号。

缺点设备要具备Wi – Fi功能(并非所有的设备都有Wi – Fi功能)如果设备目前正在使用Wi - Fi,则不能报告Mac地址

序列号

Android 2.3姜饼)开始,通过android.os.Build.SERIAL方法序列号可被使用。没有电话功能的设备也都需要上给出唯一的设备ID;  某些手机也可以需要这样做。序列号可以用于识别MID(移动互联网设备)或PMP(便携式媒体播放器),这两种设备都没有电话功能。通过读取系统属性值“ro.serialno”的方法,可以使用序列号作为设备ID 如检索序列号并作为设备ID使用,请参考下面的代码示例。

import java.lang.reflect.Method;                                 

 

String serialnum = null;                                                                                                                                        

try {                                                           

 Class<?> c = Class.forName("android.os.SystemProperties"); 

 Method get = c.getMethod("get", String.class, String.class );     

 serialnum = (String)(   get.invoke(c, "ro.serialno", "unknown" )  );   

}                                                                                

catch (Exception ignored)                                                        

{                              

}

 

缺点

序列号无法在所有Android设备上使用。

ANDROID_ID

 

说明

更具体地说,Settings.Secure.ANDROID_ID 是一串64位的编码(十六进制的字符串),是随机生成的设备的第一个引导,其记录着一个固定值,通过它可以知道设备的寿命(在设备恢复出厂设置后,该值可能会改变)。 ANDROID_ID也可视为作为唯一设备标识号的一个好选择。如要检索用于设备ID ANDROID_ID,请参阅下面的示例代码

String androidId = Settings.Secure.getString(getContentResolver(),Settings.Secure.ANDROID_ID);

 

缺点

• 对于Android 2.2“Froyo”)之前的设备不是100%的可靠

• 此外,在主流制造商的畅销手机中至少存在一个众所周知的错误,每一个实例都具有相同的ANDROID_ID 

 

结论

对于绝大多数应用来说,只需识别特定的安装配置,而不需要识别物理设备。所幸是,这样做就省去了麻烦。

下面是部分使用设备ID的最佳途径:

支持各种设备类型的另一种方法是使用getDeviceID()APIro.serialno的组合

有许多值得参考的原因,来提醒开发者避免试图识别特定的设备。对于那些想做一下这方面尝试的用户, 最好的办法可能是使用ANDROID_ID,并在一些传统设备上做尝试。

示例代码

下面是用于追踪Android设置的示例代码

: ReadDeviceID.java

package com.deviceid;

 

import java.lang.reflect.Method;

 

import android.app.Activity;

import android.content.Context;

import android.os.Bundle;

import android.provider.Settings;

import android.telephony.TelephonyManager;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.TextView;

 

public class ReadDeviceID extends Activity {

 

 Button bt;

 TextView idView;

 

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.main);

 

        bt=(Button)findViewById(R.id.button1);

        idView=(TextView)findViewById(R.id.textView1);      

        bt.setOnClickListener(new OnClickListener() {  

 @Override

 public void onClick(View v) {

   String imeistring=null;   

              String imsistring=null;

  

 TelephonyManager   telephonyManager = 

( TelephonyManager)getSystemService( Context.TELEPHONY_SERVICE );

      

            /*

 * getDeviceId() function Returns the unique device ID.

 * for example,the IMEI for GSM and the MEID or ESN for CDMA phones.

 */      

 imeistring = telephonyManager.getDeviceId();

 idView.append("IMEI No : "+imeistring+"\n");    

            /*

             * getSubscriberId() function Returns the unique subscriber ID,

             * for example, the IMSI for a GSM phone.

             */                                                                                         

  imsistring = telephonyManager.getSubscriberId();               

  idView.append("IMSI No : "+imsistring+"\n");

       

            /*

  * System Property ro.serialno returns the serial number as unique number

  * Works for Android 2.3 and above        

  */

       

  String hwID = android.os.SystemProperties.get("ro.serialno", "unknown");

  idView.append( "hwID : " + hwID + "\n" );

      String serialnum = null;     

  try {        

    Class<?> c = Class.forName("android.os.SystemProperties");                          

    Method get = c.getMethod("get", String.class, String.class );                

               serialnum = (String)(   get.invoke(c, "ro.serialno", "unknown" )  );

     idView.append( "serial : " + serialnum + "\n" );

         } catch (Exception ignored) {      

           }

 String serialnum2 = null;

           try {

 Class myclass = Class.forName( "android.os.SystemProperties" );

        Method[] methods = myclass.getMethods();

        Object[] params = new Object[] { new String( "ro.serialno" ) , new String( 

              "Unknown" ) };         

         serialnum2 = (String)(methods[2].invoke( myclass, params ));         

            idView.append( "serial2 : " + serialnum2 + "\n" );

           }catch (Exception ignored)

 {       

 }  

   /*

    * Settings.Secure.ANDROID_ID returns the unique DeviceID

    * Works for Android 2.2 and above        

    */

 String androidId = Settings.Secure.getString(getContentResolver(), 

                                                    Settings.Secure.ANDROID_ID);         

            idView.append( "AndroidID : " + androidId + "\n" );   

         }

    });

       

    }

}

 

: SystemProperties.java

 

package android.os;

 

/**

 * Gives access to the system properties store. The system properties

 * store contains a list of string key-value pairs.

 *

 * {@hide}

 */

public class SystemProperties

{

    public static final int PROP_NAME_MAX = 31;

    public static final int PROP_VALUE_MAX = 91;

    private static native String native_get(String key);

    private static native String native_get(String key, String def);

    private static native int native_get_int(String key, int def);

    private static native long native_get_long(String key, long def);

    private static native boolean native_get_boolean(String key, boolean def);

    private static native void native_set(String key, String def);

 

    /**

     * Get the value for the given key.

     * @return an empty string if the key isn't found

     * @throws IllegalArgumentException if the key exceeds 32 characters

     */

    public static String get(String key) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        return native_get(key);

    }

 

    /**

     * Get the value for the given key.

     * @return if the key isn't found, return def if it isn't null, or an empty string otherwise

     * @throws IllegalArgumentException if the key exceeds 32 characters

     */

    public static String get(String key, String def) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        return native_get(key, def);

    }

 

    /**

     * Get the value for the given key, and return as an integer.

     * @param key the key to lookup

     * @param def a default value to return

     * @return the key parsed as an integer, or def if the key isn't found or

     *         cannot be parsed

     * @throws IllegalArgumentException if the key exceeds 32 characters

     */

    public static int getInt(String key, int def) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        return native_get_int(key, def);

    }

 

    /**

     * Get the value for the given key, and return as a long.

     * @param key the key to lookup

     * @param def a default value to return

     * @return the key parsed as a long, or def if the key isn't found or

     *         cannot be parsed

     * @throws IllegalArgumentException if the key exceeds 32 characters

     */

    public static long getLong(String key, long def) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        return native_get_long(key, def);

    }

 

    /**

     * Get the value for the given key, returned as a boolean.

     * Values 'n', 'no', '0', 'false' or 'off' are considered false.

     * Values 'y', 'yes', '1', 'true' or 'on' are considered true.

     * (case insensitive).

     * If the key does not exist, or has any other value, then the default

     * result is returned.

     * @param key the key to lookup

     * @param def a default value to return

     * @return the key parsed as a boolean, or def if the key isn't found or is

     *         not able to be parsed as a boolean.

     * @throws IllegalArgumentException if the key exceeds 32 characters

     */

    public static boolean getBoolean(String key, boolean def) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        return native_get_boolean(key, def);

    }

 

    /**

     * Set the value for the given key.

     * @throws IllegalArgumentException if the key exceeds 32 characters

     * @throws IllegalArgumentException if the value exceeds 92 characters

     */

    public static void set(String key, String val) {

        if (key.length() > PROP_NAME_MAX) {

            throw new IllegalArgumentException("key.length > " + PROP_NAME_MAX);

        }

        if (val != null && val.length() > PROP_VALUE_MAX) {

            throw new IllegalArgumentException("val.length > " +

                PROP_VALUE_MAX);

        }

        native_set(key, val);

    }

}

使用"ReadDeviceID" activity 创建"com.deviceid"项目。将布局"main.xml"改写成下面的代码

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:orientation="vertical"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    >

<TextView 

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/hello"

    />

<Button

    android:text="GetDeviceID"

    android:id="@+id/button1"

    android:layout_width="wrap_content"

    android:layout_height="wrap_content">

</Button>

<TextView    

    android:id="@+id/textView1"   

    android:layout_width="fill_parent"

    android:layout_height="wrap_content">

</TextView>

</LinearLayout>

"AndroidManifest.xml"文件中添加"READ_PHONE_STATE"许可,使应用程序可以登陆互联网。

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

      package="com.deviceid"

      android:versionCode="1"

      android:versionName="1.0">

    <uses-sdk android:minSdkVersion="7" />

 

    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <activity android:name=".ReadDeviceID"

                  android:label="@string/app_name">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

 

    </application>

  

    <uses-permission

            android:name="android.permission.READ_PHONE_STATE" >

      </uses-permission>

   

</manifest>

 

输出结果

上方示例代码的输出结果如下图所示: 


查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 哈尔滨双眼皮排行榜

    ...

    2024/4/21 6:11:14
  2. ELK-部署Kibana

    根据部署计划,kibana部署在node1节点上。下面我们开始部署kibana安装jdk8具体不讲解安装Kibana71、下载地址wget https://artifacts.elastic.co/downloads/kibana/kibana-7.0.1-linux-x86_64.tar.g2、解压kibanatar -zxvf /opt/zip/kibana-7.0.0-linux-x86_64.tar.gz -C /opt/…...

    2024/4/21 6:11:13
  3. Android 实现限制EditText输入文字的数量

    前段时间比较忙 没来的及时分享出来.需求是这样的要求用户只能输入12个字符或者6位中文的数据&#xff1a;作为一个菜鸟遇到这样的问题第一反应就是 Android:maxLength"12"这么个属性然而去测试发现中文也是十二个的瞬间被上司叫过去就是一顿说。没办法还得改方法可是…...

    2024/4/21 6:11:12
  4. android studio 导入support v4,Android studio中怎么导入android.support.v4包

    如何给现有的PDF文件添加页码如何给现有的PDF文件添加页码 之前我写了如何打印PDF文件,有人qq问我怎样在打印时给PDF文件添加页码,的确,给PDF文件添加页码,可以帮助我们区分纸质档的PDF文件页面的先后顺序,方便我们对它的 ...HTML流动布局各种宽度自适应炫&#xff01;一组单元…...

    2024/4/20 19:11:17
  5. Angular+ionic+cordova实现天气App

    开发环境及工具 参考教程&#xff1a;CordovaVue实现Android APP开发中的环境配置&#xff08;https://www.jianshu.com/p/fd7448e2985a&#xff09; Angular&#xff0c;ionic&#xff0c;cordova版本 angualr5.0.0 ionic3.16.0 cordova8.0.0 创建项目 1.安装ionic和cordova C…...

    2024/4/20 19:11:15
  6. 那里做双眼皮便宜

    ...

    2024/4/20 19:11:14
  7. android json格式解析,android之解析json数据格式详解

    1.JSON解析(1).解析Object之一:解析方法&#xff1a;1JSONObject demoJson newJSONObject(jsonString);2String url demoJson.getString("url");(2).解析Object之二:1{"name":"android","name":"iphone"}解析方法:1JSONObj…...

    2024/4/20 19:11:13
  8. (4)opencv在android平台上实现 物体跟踪

    最近项目时间很紧&#xff0c;抓紧时间集中精力去研究android平台的opencv里的物体跟踪技术 其他几篇文章有时间再去完善吧 从网上找到了一些实例代码&#xff0c;我想采取的学习方法是研究实例代码和看教程相结合&#xff0c;教程是ndk编程方面的编程规则等、opencv人脸识别、…...

    2024/4/21 6:11:10
  9. Android+RealSense D435i数据录制 VINS离线运行

    聪明者戒太察&#xff0c;刚强者戒太暴&#xff0c;温良者戒无断。——&#xff08;清&#xff09;金缨《格言联璧持躬类》 经过之前坚持不懈的探索&#xff0c;已经先后实现了VINS在公开数据集上的运行、PC端相机VINS在线运行、PC端数据录制VINS离线运行以及ROSbag数据的生成…...

    2024/4/20 9:26:46
  10. Ionic3 Android 检测并下载安装app

    在应用不被发布到应用超市的情况下&#xff0c;而又想实现提醒用户升级APP&#xff0c;除了客户端要获取版本外&#xff0c;还需要服务器有API可以获取到当前维护进来的最新的APP版本号&#xff0c;以及最新的下载地址&#xff0c;废话不多讲了&#xff0c;上代码 首先准备工作…...

    2024/4/27 0:07:31
  11. 双眼皮刚做好是不是很丑

    ...

    2024/4/21 6:11:07
  12. UI组件库Kendo UI for Angular入门指南教程 - Button(按钮)

    Kendo UI for Angular的按钮组件提供了具有任意内容的可点击UI功能。 Kendo UI for Angular最新版工具下载 安装 使用快速设置 (Angular CLI) 或手动添加包。 使用 Angular CLI 进行快速设置 Angular CLI 支持通过 ng add 命令添加包&#xff0c;该命令一步执行一组其他单…...

    2024/4/20 10:44:52
  13. ELK-部署elasticsearch

    部署计划node1 xxx.xxx.xxxnode2 xxx.xxx.xxxnode3 xxx.xxx.xxx上面代表3个节点,且配置好/etc/hosts,为了方便最好配置ssh免密,定时同步网络时间等部署计划(由于学习机器资源有限,使用最精简方式部署)精简版部署架构图:部署说明:1、node1上放置测试日志文件2、node1安装…...

    2024/5/2 19:48:49
  14. Kendo UI for jQuery数据管理使用教程:打印

    Kendo UI for jQuery R2 2020 SP1试用版下载 Kendo UI目前最新提供Kendo UI for jQuery、Kendo UI for Angular、Kendo UI Support for React和Kendo UI Support for Vue四个控件。Kendo UI for jQuery是创建现代Web应用程序的最完整UI库。 打印 即使Grid的内容可能不是页面…...

    2024/4/21 6:11:05
  15. Android自定义控件-Path之贝赛尔曲线和手势轨迹、水波纹效果

    《Android自定义控件三部曲文章索引》 文章出处&#xff1a;http://blog.csdn.net/harvic880925/article/details/50995587 从这篇开始&#xff0c;我将延续androidGraphics系列文章把图片相关的知识给大家讲完&#xff0c;这一篇先稍微进阶一下&#xff0c;给大家把《andro…...

    2024/4/21 6:11:03
  16. Kendo UI常用示例汇总(树列表示例)

    2019独角兽企业重金招聘Python工程师标准>>> 通过70多个可自定义的UI组件&#xff0c;Kendo UI Professional可以创建数据丰富的桌面、平板和移动Web应用程序。通过响应式的布局、强大的数据绑定、跨浏览器兼容性和即时使用的主题&#xff0c;Kendo UI Professional…...

    2024/4/21 6:11:02
  17. 双眼皮平行还是扇形

    ...

    2024/4/21 6:11:01
  18. Kendo UI常用示例汇总(I树列表示例)

    通过70多个可自定义的UI组件&#xff0c;Kendo UI Professional可以创建数据丰富的桌面、平板和移动Web应用程序。通过响应式的布局、强大的数据绑定、跨浏览器兼容性和即时使用的主题&#xff0c;Kendo UI Professional将开发时间加快了50%。 Kendo UI Professional目前最新提…...

    2024/4/21 6:11:03
  19. Web界面开发工具——看Kendo UI如何自适应渲染

    Kendo UI for jQuery R2 2020 SP1试用版下载 Kendo UI目前最新提供Kendo UI for jQuery、Kendo UI for Angular、Kendo UI Support for React和Kendo UI Support for Vue四个控件。Kendo UI for jQuery是创建现代Web应用程序的最完整UI库。 自适应渲染 Kendo UI for jQuery通…...

    2024/4/20 9:27:46
  20. Web界面开发必看!Kendo UI for jQuery编辑功能指南第二弹

    Kendo UI for jQuery最新试用版下载 Kendo UI目前最新提供Kendo UI for jQuery、Kendo UI for Angular、Kendo UI Support for React和Kendo UI Support for Vue四个控件。Kendo UI for jQuery是创建现代Web应用程序的最完整UI库。 某些Kendo UI窗口小部件提供了编辑功能&…...

    2024/4/24 15:56:09

最新文章

  1. 【实战教程】结合自定义损失函数采用LoRA微调Llama3-8B

    文章目录 准备工作LoRA微调效果评估分类微调模型评估生成式微调模型评估 准备工作 准备特定场景微调数据1000左右的量级作为训练集&#xff0c;300左右的数据作为测试集&#xff08;最好是英文版&#xff09;&#xff0c;数据集的格式示例如下&#xff1a; // 判别式分类任务…...

    2024/5/3 23:59:21
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 巨控科技新品发布:全方位升级,引领智能控制新纪元

    标签: #巨控科技 #智能控制 #新品发布 #GRM560 #OPC560 #NET400 在智能控制领域&#xff0c;巨控科技始终以其前沿技术和创新产品引领着市场的潮流。近日&#xff0c;巨控科技再次以其行业领先的研发实力&#xff0c;推出了三大系列的新产品&#xff0c;旨在为各行各业提供更…...

    2024/5/1 13:03:39
  4. AI小程序的创业方向:深度思考与逻辑引领

    随着人工智能技术的快速发展&#xff0c;AI小程序逐渐成为创业的新热点。在这个充满机遇与挑战的时代&#xff0c;我们有必要深入探讨AI小程序的创业方向&#xff0c;以把握未来的发展趋势。 一、目标市场定位 首先&#xff0c;我们要明确目标市场。针对不同的用户需求&#x…...

    2024/5/2 22:54:21
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/1 17:30:59
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/2 16:16:39
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/29 2:29:43
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/3 23:10:03
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/30 9:43:09
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/2 15:04:34
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/29 20:46:55
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/30 22:21:04
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/1 4:32:01
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/30 9:42:22
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/2 9:07:46
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/30 9:42:49
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57