update: pubmatic sdk -> 3.1.0 iOS+Android -> 3.4.0

dev
胡宇飞 2024-04-17 10:29:11 +08:00
parent f5bedf4979
commit cd00d7bda0
13 changed files with 21 additions and 203 deletions

View File

@ -1,19 +1,20 @@
<!-- OpenWrap SDK plugin version: 3.0.0 --> <!-- OpenWrap SDK plugin version: 3.1.0 -->
<dependencies> <dependencies>
<iosPods> <iosPods>
<iosPod name="OpenWrapSDK" version="3.2"> <!-- Supports iOS OpenWrap SDK version 3.4.* -->
<iosPod name="OpenWrapSDK" version="~>3.4.0">
<sources> <sources>
<source>https://github.com/CocoaPods/Specs</source> <source>https://github.com/CocoaPods/Specs</source>
</sources> </sources>
</iosPod> </iosPod>
</iosPods> </iosPods>
<androidPackages> <androidPackages>
<androidPackage spec="com.pubmatic.sdk:openwrap:3.2.0"> <!-- Supports Android OpenWrap SDK version 3.4.* -->
<androidPackage spec="com.pubmatic.sdk:openwrap:3.4.+">
<repositories> <repositories>
<repository>https://repo.pubmatic.com/artifactory/public-repos</repository> <repository>https://repo.pubmatic.com/artifactory/public-repos</repository>
</repositories> </repositories>
</androidPackage> </androidPackage>
</androidPackages> </androidPackages>
</dependencies> </dependencies>

View File

@ -116,7 +116,7 @@ namespace OpenWrapSDK.Android
if (dataProvider != null && segment != null) if (dataProvider != null && segment != null)
{ {
POBLog.Info(Tag, POBLogStrings.ClientRemoveSegmentLog); POBLog.Info(Tag, POBLogStrings.ClientRemoveSegmentLog);
dataProvider.Call("removeSegment", segment.Identifier); dataProvider.Call<AndroidJavaObject>("removeSegment", segment.Identifier);
} }
else else
{ {

View File

@ -134,7 +134,9 @@ namespace OpenWrapSDK.Android
{ {
if (RequestObject != null) if (RequestObject != null)
{ {
return RequestObject.Call<int>("getVersionId"); AndroidJavaObject versionIdObj = RequestObject.Call<AndroidJavaObject>("getVersionId");
return versionIdObj.Call<int>("intValue");
} }
return 0; return 0;
} }
@ -210,7 +212,8 @@ namespace OpenWrapSDK.Android
{ {
if (RequestObject != null) if (RequestObject != null)
{ {
RequestObject.Call("setVersionId", versionId); AndroidJavaObject versionIdObj = new AndroidJavaObject(POBConstants.IntegerClassName,versionId);
RequestObject.Call("setVersionId", versionIdObj);
} }
} }
} }

View File

@ -87,20 +87,6 @@ namespace OpenWrapSDK.Android
} }
} }
/// <summary>
/// Country code using ISO-3166-1-alpha-3.
/// </summary>
public string Country
{
set
{
if (userInfo != null)
{
userInfo.Call("setCountry", value);
}
}
}
/// <summary> /// <summary>
/// City of user /// City of user
/// </summary> /// </summary>

View File

@ -75,22 +75,6 @@ namespace OpenWrapSDK.Android
OpenWrapSDKClass.CallStatic("allowLocationAccess", allow); OpenWrapSDKClass.CallStatic("allowLocationAccess", allow);
} }
/// <summary>
/// Set the CCPA compliant string, it helps publisher toward compliance with the California Consumer Privacy Act (CCPA).
/// For more details refer https://www.iab.com/guidelines/ccpa-framework/
/// Make sure that the string value you use is compliant with the IAB Specification, refer
/// https://iabtechlab.com/wp-content/uploads/2019/11/U.S.-Privacy-String-v1.0-IAB-Tech-Lab.pdf
/// <p>
/// If this is not set, SDK looks for app's default SharedPreference with key 'IABUSPrivacy_String'
/// If CCPA is applied through both options, the SDK will honour only API property.
/// If both are not set then CCPA parameter is omitted from an ad request.
/// </summary>
/// <param name="ccpaString">is the CCPA compliant string</param>
public static void SetCCPA(string ccpaString)
{
OpenWrapSDKClass.CallStatic("setCCPA", ccpaString);
}
/// <summary> /// <summary>
/// Indicates whether the visitor is COPPA-specific or not. /// Indicates whether the visitor is COPPA-specific or not.
/// For COPPA(Children's Online Privacy Protection Act) compliance, if the visitor's age is /// For COPPA(Children's Online Privacy Protection Act) compliance, if the visitor's age is
@ -105,34 +89,6 @@ namespace OpenWrapSDK.Android
OpenWrapSDKClass.CallStatic("setCoppa", enable); OpenWrapSDKClass.CallStatic("setCoppa", enable);
} }
/// <summary>
/// Sets GDPR consent string, A valid Base64 encoded consent string as per
/// https://github.com/InteractiveAdvertisingBureau/GDPR-Transparency-and-Consent-Framework.
/// The user consent string is optional, but highly recommended if the request is subject to GDPR
/// regulations(i.e.gdpr = true). The default sense of consent under GDPR is "opt-out" and
/// as such, an omitted consent string in a request subject to GDPR would be interpreted as
/// equivalent to the user fully opting out of all defined purposes for data use by all parties.
/// </summary>
/// <param name="gdprConsent">consent string to convey user consent when GDPR regulations are in effect.</param>
public static void SetGDPRConsent(string gdprConsent)
{
OpenWrapSDKClass.CallStatic("setGDPRConsent", gdprConsent);
}
/// <summary>
/// Sets GDPR compliance, it indicates whether or not the ad request is GDPR(General Data Protection Regulation) compliant.
/// </summary>
/// <param name="enable">
/// boolean value
/// - true : indicates GDPR compliant requests
/// - false : indicates that the request is not GDPR compliant
/// By default, this parameter is omitted in the ad request, indicating Unknown.
/// </param>
public static void SetGDPREnabled(bool enable)
{
OpenWrapSDKClass.CallStatic("setGDPREnabled", enable);
}
/// <summary> /// <summary>
/// Sets user's location and its source. It is useful in delivering geographically relevant ads. /// Sets user's location and its source. It is useful in delivering geographically relevant ads.
/// <p> /// <p>

View File

@ -43,6 +43,8 @@ namespace OpenWrapSDK.Android
internal readonly static string POBRewardedAdCallbackInterfaceName = "com.pubmatic.unity.openwrapsdk.POBUnityRewardedAdListener"; internal readonly static string POBRewardedAdCallbackInterfaceName = "com.pubmatic.unity.openwrapsdk.POBUnityRewardedAdListener";
internal readonly static string POBExternalUserIdClassName = "com.pubmatic.sdk.common.models.POBExternalUserId"; internal readonly static string POBExternalUserIdClassName = "com.pubmatic.sdk.common.models.POBExternalUserId";
internal readonly static string POBDataProviderClassName = "com.pubmatic.sdk.common.models.POBDataProvider"; internal readonly static string POBDataProviderClassName = "com.pubmatic.sdk.common.models.POBDataProvider";
internal readonly static string IntegerClassName = "java.lang.Integer";
} }
} }
#endif #endif

View File

@ -45,11 +45,6 @@ namespace OpenWrapSDK.Common
/// </summary> /// </summary>
POBGender Gender { set; } POBGender Gender { set; }
/// <summary>
/// Country code using ISO-3166-1-alpha-3.
/// </summary>
string Country { set; }
/// <summary> /// <summary>
/// City of user /// City of user
/// </summary> /// </summary>

View File

@ -56,9 +56,6 @@ namespace OpenWrapSDK.iOS
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUSetUserInfoRegion(IntPtr userInfo, string region); internal static extern void POBUSetUserInfoRegion(IntPtr userInfo, string region);
[DllImport("__Internal")]
internal static extern void POBUSetUserInfoCountry(IntPtr userInfo, string country);
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUSetUserInfoKeywords(IntPtr userInfo, string keywords); internal static extern void POBUSetUserInfoKeywords(IntPtr userInfo, string keywords);
@ -127,20 +124,6 @@ namespace OpenWrapSDK.iOS
} }
} }
/// <summary>
/// Country code using ISO-3166-1-alpha-3.
/// </summary>
public string Country
{
set
{
if (userInfoPtr != IntPtr.Zero)
{
POBUSetUserInfoCountry(userInfoPtr, value);
}
}
}
/// <summary> /// <summary>
/// City of user /// City of user
/// </summary> /// </summary>

View File

@ -50,12 +50,6 @@ namespace OpenWrapSDK.iOS
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUSetLogLevel(int logLevel); internal static extern void POBUSetLogLevel(int logLevel);
[DllImport("__Internal")]
internal static extern void POBUSetGDPREnabled(bool enable);
[DllImport("__Internal")]
internal static extern void POBUSetGDPRConsent(string gdprConsent);
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUAllowLocationAccess(bool enable); internal static extern void POBUAllowLocationAccess(bool enable);
@ -77,9 +71,6 @@ namespace OpenWrapSDK.iOS
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUAllowAVAudioSessionAccess(bool allow); internal static extern void POBUAllowAVAudioSessionAccess(bool allow);
[DllImport("__Internal")]
internal static extern void POBUSetCCPA(string ccpaString);
[DllImport("__Internal")] [DllImport("__Internal")]
internal static extern void POBUSetApplicationInfo(ref POBApplicationInfoInternal appInfoInternal); internal static extern void POBUSetApplicationInfo(ref POBApplicationInfoInternal appInfoInternal);
@ -123,26 +114,11 @@ namespace OpenWrapSDK.iOS
POBUAllowLocationAccess(allow); POBUAllowLocationAccess(allow);
} }
public static void SetCCPA(string ccpaString)
{
POBUSetCCPA(ccpaString);
}
public static void SetCOPPAEnabled(bool enable) public static void SetCOPPAEnabled(bool enable)
{ {
POBUSetCOPPAEnabled(enable); POBUSetCOPPAEnabled(enable);
} }
public static void SetGDPRConsent(string gdprConsent)
{
POBUSetGDPRConsent(gdprConsent);
}
public static void SetGDPREnabled(bool enable)
{
POBUSetGDPREnabled(enable);
}
public static void SetLocation(double longitude, double latitude, POBLocSource source) public static void SetLocation(double longitude, double latitude, POBLocSource source)
{ {
POBUSetLocation(longitude, latitude, ((int)source)); POBUSetLocation(longitude, latitude, ((int)source));

View File

@ -38,16 +38,6 @@ void POBUSetLogLevel(NSInteger logLevel) {
} }
} }
// Set GDPR enabled
void POBUSetGDPREnabled(BOOL enable) {
[OpenWrapSDK setGDPREnabled:enable];
}
// Set GDPR consent
void POBUSetGDPRConsent(const char* gdprConsent) {
[OpenWrapSDK setGDPRConsent:[POBUUtil POBUNSStringFromCharsArray:gdprConsent]];
}
// Set allow location access // Set allow location access
void POBUAllowLocationAccess(BOOL enable) { void POBUAllowLocationAccess(BOOL enable) {
[OpenWrapSDK allowLocationAccess:enable]; [OpenWrapSDK allowLocationAccess:enable];
@ -86,11 +76,6 @@ void POBUAllowAVAudioSessionAccess(BOOL allow) {
[OpenWrapSDK allowAVAudioSessionAccess:allow]; [OpenWrapSDK allowAVAudioSessionAccess:allow];
} }
// Set CCPA
void POBUSetCCPA(const char *ccpaString) {
[OpenWrapSDK setCCPA:[POBUUtil POBUNSStringFromCharsArray:ccpaString]];
}
// Set POBApplicationInfo // Set POBApplicationInfo
void POBUSetApplicationInfo(POBApplicationInfoInternal *appInfoInternal) { void POBUSetApplicationInfo(POBApplicationInfoInternal *appInfoInternal) {
POBApplicationInfo *applicationInfo = [[POBApplicationInfo alloc] init]; POBApplicationInfo *applicationInfo = [[POBApplicationInfo alloc] init];

View File

@ -57,11 +57,6 @@ void POBUSetUserInfoRegion(POBUUserInfoRef userInfo, const char *region) {
internalUserInfo.region = [POBUUtil POBUNSStringFromCharsArray:region]; internalUserInfo.region = [POBUUtil POBUNSStringFromCharsArray:region];
} }
void POBUSetUserInfoCountry(POBUUserInfoRef userInfo, const char *country) {
POBUserInfo *internalUserInfo = (__bridge POBUserInfo *)userInfo;
internalUserInfo.country = [POBUUtil POBUNSStringFromCharsArray:country];
}
void POBUSetUserInfoKeywords(POBUUserInfoRef userInfo, const char *keywords) { void POBUSetUserInfoKeywords(POBUUserInfoRef userInfo, const char *keywords) {
POBUserInfo *internalUserInfo = (__bridge POBUserInfo *)userInfo; POBUserInfo *internalUserInfo = (__bridge POBUserInfo *)userInfo;
internalUserInfo.keywords = [POBUUtil POBUNSStringFromCharsArray:keywords]; internalUserInfo.keywords = [POBUUtil POBUNSStringFromCharsArray:keywords];
@ -178,7 +173,7 @@ void POBUBidSetHasWon(POBUTypeBidRef bid, bool hasWon) {
// Get the PubMatic partner id // Get the PubMatic partner id
const char* POBUBidGetPubMaticPartnerId(POBUTypeBidRef bid) { const char* POBUBidGetPubMaticPartnerId(POBUTypeBidRef bid) {
POBBid *internalBid = (__bridge POBBid *)bid; POBBid *internalBid = (__bridge POBBid *)bid;
return [POBUUtil POBUCharArrayFromNSString:internalBid.pubmaticPartnerId]; return [POBUUtil POBUCharArrayFromNSString:internalBid.partner];
} }
/// Get targeting information /// Get targeting information

View File

@ -38,7 +38,6 @@ namespace OpenWrapSDK
private string zip; private string zip;
private string city; private string city;
private string region; private string region;
private string country;
private string keywords; private string keywords;
#endregion #endregion
@ -130,23 +129,6 @@ namespace OpenWrapSDK
} }
} }
/// <summary>
/// Country code using ISO-3166-1-alpha-3.
/// </summary>
public string Country
{
get => country;
set
{
country = value;
if (client != null)
{
client.Country = value;
}
}
}
/// <summary> /// <summary>
/// City of user /// City of user
/// </summary> /// </summary>

View File

@ -31,7 +31,7 @@ namespace OpenWrapSDK
private static List<POBExternalUserId> externalUserIds = new List<POBExternalUserId>(); private static List<POBExternalUserId> externalUserIds = new List<POBExternalUserId>();
// OpenWrap SDK plugin version. Please make sure to update it with every release. // OpenWrap SDK plugin version. Please make sure to update it with every release.
private static readonly string OpenWrapSDKPluginVersion = "3.0.0"; private static readonly string OpenWrapSDKPluginVersion = "3.1.0";
private static readonly string Tag = "POBOpenWrapSDK"; private static readonly string Tag = "POBOpenWrapSDK";
@ -70,34 +70,6 @@ namespace OpenWrapSDK
#endif #endif
} }
/// <summary>
/// Sets GDPR compliance, it indicates whether or not the ad request is GDPR(General Data Protection Regulation) compliant.
/// <para>- true : indicates GDPR compliant requests
/// <br/>- false : indicates that the request is not GDPR compliant</para>
/// </summary>
/// <param name="enable">bool value</param>
public static void SetGDPREnabled(bool enable)
{
#if UNITY_IOS
iOS.OpenWrapSDKClient.SetGDPREnabled(enable);
#else
Android.OpenWrapSDKClient.SetGDPREnabled(enable);
#endif
}
/// <summary>
/// Sets GDPR consent string, A valid Base64 encoded consent string as per
/// </summary>
/// <param name="gdprConsent"></param>
public static void SetGDPRConsent(string gdprConsent)
{
#if UNITY_IOS
iOS.OpenWrapSDKClient.SetGDPRConsent(gdprConsent);
#else
Android.OpenWrapSDKClient.SetGDPRConsent(gdprConsent);
#endif
}
/// <summary> /// <summary>
/// Used to enable/disable location access. /// Used to enable/disable location access.
/// <br/>This value decides whether the OpenWrap SDK should access device location usings Core Location APIs to serve location-based ads. When set to NO, the SDK will not attempt to access device location. When set to YES, the SDK will periodically try to fetch location efficiently. /// <br/>This value decides whether the OpenWrap SDK should access device location usings Core Location APIs to serve location-based ads. When set to NO, the SDK will not attempt to access device location. When set to YES, the SDK will periodically try to fetch location efficiently.
@ -202,24 +174,6 @@ namespace OpenWrapSDK
} }
#endif #endif
/// <summary>
/// Set the CCPA compliant string, it helps publisher toward compliance with the California Consumer Privacy Act (CCPA).
/// <br/>For more details refer https://www.iab.com/guidelines/ccpa-framework/
/// <br/>Make sure that the string value you use is compliant with the IAB Specification, refer https://iabtechlab.com/wp-content/uploads/2019/11/U.S.-Privacy-String-v1.0-IAB-Tech-Lab.pdf
/// <br/>If this is not set, SDK looks for app's NSUserDefault with key 'IABUSPrivacy_String'
/// <br/>If CCPA is applied through both options, the SDK will honour only API property.
/// <br/>If both are not set then CCPA parameter is omitted from an ad request.
/// </summary>
/// <param name="ccpaString">The CCPA compliant string</param>
public static void SetCCPA(string ccpaString)
{
#if UNITY_IOS
iOS.OpenWrapSDKClient.SetCCPA(ccpaString);
#else
Android.OpenWrapSDKClient.SetCCPA(ccpaString);
#endif
}
/// <summary> /// <summary>
/// Sets Application information, which contains various attributes about app, such as /// Sets Application information, which contains various attributes about app, such as
/// <br/>application category, store URL, domain, etc for more relevant ads. /// <br/>application category, store URL, domain, etc for more relevant ads.