Cordova 设备 UUID 是否与电容器设备 UUID 相同?
Is the Cordova Device UUID the same as the Capacitor Device UUID?
我们正在从 Ionic Cordova 应用程序迁移到 Ionic Capacitor 应用程序。虽然我知道 Capacitor 仍然支持 Cordova 插件,但我们尝试尽可能多地迁移。
我们的应用程序依赖于 Cordova 设备插件提供的设备 UUID。这个和Capacitor提供的设备UUID一样吗?我试图比较两个存储库,但我不完全确定 Android 是否实际上相同(下面给出的方法中的第一个参数是什么)?
这是我的比较:
iOS科尔多瓦:
[[device identifierForVendor] UUIDString]
Android科尔多瓦:
Settings.Secure.getString(this.cordova.getActivity().getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
iOS 电容:
UIDevice.current.identifierForVendor!.uuidString
Android电容:
Settings.Secure.getString(this.context.getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
iOS
一样。 iOS 的唯一区别是访问 uuidString
的方式。 Cordova 插件是用 Objective-C 编写的,而 Capacitor 插件是 Swift。不过两者应该返回相同的值。
Android
Android 插件似乎也引用相同的值,只是方式不同。两者都将来自应用 Activity 上下文的内容解析器作为第一个参数传递给 Settings.Secure.getString()
。 this.context.getContentResolver()
和 this.cordova.getActivity().getContentResolver()
之间的区别在于访问上下文的方式(Android 开发中的一个大 topic)。
Cordova 插件
来自 Cordova 插件 guidelines,
getContext() and getActivity() can return the required Context object
电容器插件
如果您查看 Capacitor 插件的代码,file that is the main entry point calls getContext()
and directly passed it to the Device()
constructor。
简而言之,两者指的是相同的 Activity 上下文。 this.context
等同于 this.cordova.getActivity()
我们正在从 Ionic Cordova 应用程序迁移到 Ionic Capacitor 应用程序。虽然我知道 Capacitor 仍然支持 Cordova 插件,但我们尝试尽可能多地迁移。
我们的应用程序依赖于 Cordova 设备插件提供的设备 UUID。这个和Capacitor提供的设备UUID一样吗?我试图比较两个存储库,但我不完全确定 Android 是否实际上相同(下面给出的方法中的第一个参数是什么)?
这是我的比较:
iOS科尔多瓦:
[[device identifierForVendor] UUIDString]
Android科尔多瓦:
Settings.Secure.getString(this.cordova.getActivity().getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
iOS 电容:
UIDevice.current.identifierForVendor!.uuidString
Android电容:
Settings.Secure.getString(this.context.getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);
iOS
一样。 iOS 的唯一区别是访问 uuidString
的方式。 Cordova 插件是用 Objective-C 编写的,而 Capacitor 插件是 Swift。不过两者应该返回相同的值。
Android
Android 插件似乎也引用相同的值,只是方式不同。两者都将来自应用 Activity 上下文的内容解析器作为第一个参数传递给 Settings.Secure.getString()
。 this.context.getContentResolver()
和 this.cordova.getActivity().getContentResolver()
之间的区别在于访问上下文的方式(Android 开发中的一个大 topic)。
Cordova 插件
来自 Cordova 插件 guidelines,
getContext() and getActivity() can return the required Context object
电容器插件
如果您查看 Capacitor 插件的代码,file that is the main entry point calls getContext()
and directly passed it to the Device()
constructor。
简而言之,两者指的是相同的 Activity 上下文。 this.context
等同于 this.cordova.getActivity()