AppSetId
public class AppSetId
extends Object
java.lang.object | |
↳ | android.adservices.appsetid.AppSetId |
شناسه منحصربهفرد، برای هر دستگاه، برای هر حساب توسعهدهنده قابل تنظیم مجدد توسط کاربر برای موارد استفاده تبلیغاتی بدون درآمدزایی.
نشان دهنده appSetID و محدوده این appSetId از AppSetIdManager.getAppSetId(Executor, OutcomeReceiver)
API است. دامنه شناسه میتواند برای هر برنامه یا هر حساب توسعهدهنده مرتبط با کاربر باشد. AppSetId برای تجزیه و تحلیل، تشخیص هرزنامه، محدودیتهای فرکانس و موارد استفاده از جلوگیری از تقلب در یک دستگاه خاص استفاده میشود، که ممکن است نیاز باشد تا استفاده یا اقدامات را در مجموعهای از برنامههای متعلق به یک سازمان مرتبط کند.
خلاصه
ثابت ها | |
---|---|
int | SCOPE_APP appSetId به یک برنامه محدود شده است. |
int | SCOPE_DEVELOPER appSetId به یک حساب توسعه دهنده در یک فروشگاه برنامه اختصاص دارد. |
سازندگان عمومی | |
---|---|
AppSetId ( String appSetId, int appSetIdScope) یک نمونه از |
روش های عمومی | |
---|---|
boolean | equals ( Object o) نشان می دهد که آیا یک شیء دیگر "برابر" این یکی است یا خیر. |
String | getId () appSetId را بازیابی می کند. |
int | getScope () محدوده appSetId را بازیابی می کند. |
int | hashCode () مقدار کد هش را برای شی برمیگرداند. |
روش های ارثی | |
---|---|
ثابت ها
SCOPE_APP
public static final int SCOPE_APP
appSetId به یک برنامه محدود شده است. همه برنامه های موجود در یک دستگاه دارای یک appSetId متفاوت خواهند بود.
مقدار ثابت: 1 (0x00000001)
SCOPE_DEVELOPER
public static final int SCOPE_DEVELOPER
appSetId به یک حساب توسعه دهنده در یک فروشگاه برنامه اختصاص دارد. همه برنامههای یک توسعهدهنده روی یک دستگاه دارای همان appSetId با محدوده توسعهدهنده خواهند بود.
مقدار ثابت: 2 (0x00000002)
سازندگان عمومی
AppSetId
public AppSetId (String appSetId, int appSetIdScope)
یک نمونه از AppSetId
ایجاد می کند
پارامترها | |
---|---|
appSetId | String : تولید شده توسط سرویس دهنده. این مقدار نمی تواند null باشد. |
appSetIdScope | int : محدوده appSetId. مقدار SCOPE_APP یا SCOPE_DEVELOPER است |
روش های عمومی
برابر است
public boolean equals (Object o)
نشان می دهد که آیا یک شیء دیگر "برابر" این یکی است یا خیر.
متد equals
یک رابطه هم ارزی را در مراجع شی غیر تهی پیاده سازی می کند:
- بازتابی است: برای هر مقدار مرجع غیر تهی
x
،x.equals(x)
بایدtrue
برگرداند. - متقارن است: برای هر مقدار مرجع غیر تهی
x
وy
،x.equals(y)
بایدtrue
را برگرداند اگر و فقط اگرy.equals(x)
true
را برگرداند. - انتقالی است: برای هر مقدار مرجع غیر تهی
x
،y
، وz
، اگرx.equals(y)
true
وy.equals(z)
true
را برمی گرداند، آنگاهx.equals(z)
بایدtrue
برگرداند. - سازگار است: برای هر مقدار مرجع غیر تهی
x
وy
، فراخوانی های متعددx.equals(y)
به طور پیوستهtrue
یا به طور پیوستهfalse
را برمی گرداند، مشروط بر اینکه هیچ اطلاعاتی که در مقایسه هایequals
بر روی اشیاء استفاده می شود اصلاح نشود. - برای هر مقدار مرجع غیر تهی
x
،x.equals(null)
بایدfalse
برگرداند.
متد equals
برای کلاس Object
متمایزترین رابطه هم ارزی ممکن را روی اشیا پیاده سازی می کند. یعنی، برای هر مقدار مرجع غیر تهی x
و y
، این روش اگر و فقط اگر x
و y
به یک شی اشاره داشته باشند، true
را برمی گرداند ( x == y
مقدار true
را دارد).
توجه داشته باشید که به طور کلی هر زمان که این روش نادیده گرفته می شود، باید متد hashCode
را لغو کرد تا قرارداد کلی برای متد hashCode
حفظ شود که بیان می کند که اشیاء مساوی باید دارای کدهای هش برابر باشند.
پارامترها | |
---|---|
o | Object : شی مرجعی که با آن مقایسه می شود. |
برمی گرداند | |
---|---|
boolean | true اگر این شی همان آرگومان obj باشد. false در غیر این صورت |
getId
public String getId ()
appSetId را بازیابی می کند. api همیشه یک appSetId غیر خالی برمی گرداند.
برمی گرداند | |
---|---|
String | این مقدار نمی تواند null باشد. |
getScope
public int getScope ()
محدوده appSetId را بازیابی می کند.
برمی گرداند | |
---|---|
int | مقدار SCOPE_APP یا SCOPE_DEVELOPER است |
هش کد
public int hashCode ()
مقدار کد هش را برای شی برمیگرداند. این روش برای استفاده از جداول هش مانند آنهایی که توسط HashMap
ارائه شده است پشتیبانی می شود.
قرارداد کلی hashCode
به شرح زیر است:
- هر گاه در طول اجرای یک برنامه جاوا بیش از یک بار بر روی یک شیء فراخوانی شود، متد
hashCode
باید به طور پیوسته همان عدد صحیح را برگرداند، مشروط بر اینکه هیچ اطلاعاتی که در مقایسههایequals
روی شی مورد استفاده قرار میگیرد تغییر نکند. لازم نیست این عدد صحیح از یک اجرای یک برنامه به اجرای دیگری از همان برنامه ثابت بماند. - اگر دو شی با توجه به متد
equals(Object)
برابر باشند، فراخوانی متدhashCode
روی هر یک از دو شیء باید یک عدد صحیح را ایجاد کند. - لازم نیست که اگر دو شی مطابق با متد
equals(java.lang.Object)
نابرابر باشند، فراخوانی متدhashCode
روی هر یک از دو شیء باید نتایج اعداد صحیح متمایز ایجاد کند. با این حال، برنامه نویس باید آگاه باشد که تولید نتایج اعداد صحیح متمایز برای اشیاء نابرابر ممکن است عملکرد جداول هش را بهبود بخشد.
تا آنجا که عملی است، متد hashCode که توسط کلاس Object
تعریف شده است، اعداد صحیح متمایز را برای اشیاء مجزا برمی گرداند. (HashCode ممکن است به عنوان تابعی از آدرس حافظه یک شی در نقطه ای از زمان اجرا شود یا نباشد.)
برمی گرداند | |
---|---|
int | یک مقدار کد هش برای این شی. |