SDK های سرویسهای گوگل پلی گاهی اوقات شامل کتابخانههای متنباز هستند یا به آنها وابستهاند. برای رعایت الزامات مجوز کتابخانههای متنباز، شما به عنوان یک توسعهدهنده مسئول نمایش مناسب اعلانهای مربوط به کتابخانههای متنبازی هستید که برنامه شما از آنها استفاده میکند.
سرویسهای گوگل پلی شامل مجموعهای از ابزارها هستند که برای ارائه روشی آسانتر به توسعهدهندگان جهت بیان اطلاعیههای نرمافزار متنباز (OSS) در مورد کتابخانههای مورد استفاده در برنامههایشان طراحی شدهاند. افزونه oss-licenses-plugin و SDK سرویسهای گوگل پلی oss-licenses، شرایط مجوز را از کتابخانههای موجود، همانطور که در فایلهای POM آنها اعلام شده است، جمعآوری میکنند و فعالیتی ایجاد میکنند که میتواند برای نمایش این شرایط استفاده شود. درباره نحوه یافتن و بستهبندی اطلاعات مجوز توسط این ابزار بیشتر بدانید.
افزونه Gradle را اضافه کنید
در تنظیمات پروژه خود در pluginManagement ، موارد زیر را انجام دهید:
- مخزن Google Maven را اضافه کنید.
- مشکل افزونهی
oss-licensesرا درPluginManagementحل کنید.
قطعه کد زیر این مراحل را نشان میدهد:
کاتلین DSL
تنظیمات.gradle.kts
pluginManagement { repositories { ... google() } resolutionStrategy { eachPlugin { if (requested.id.id == "com.google.android.gms.oss-licenses-plugin") { useModule("com.google.android.gms:oss-licenses-plugin:0.10.10") } } } }
گرووی دیاسال
ساخت.gradle
pluginManagement { repositories { ... google() } resolutionStrategy { eachPlugin { if (requested.id.id == "com.google.android.gms.oss-licenses-plugin") { useModule("com.google.android.gms:oss-licenses-plugin:0.10.10") } } } }
در فایل ساخت سطح برنامه خود، افزونه را با اضافه کردن خط زیر در زیر تعریف افزونه com.android.application موجود در بالای فایل، اعمال کنید:
کاتلین DSL
app/build.gradle.kts
plugins { id("com.android.application") id("com.google.android.gms.oss-licenses-plugin") }
گرووی دیاسال
برنامه/ساخت.gradle
plugins { id 'com.android.application' id 'com.google.android.gms.oss-licenses-plugin' }
میتوانید کد این افزونه را در گیتهاب مشاهده کنید .
کتابخانه play-services-oss-licenses را به برنامه خود اضافه کنید.
در بخش dependencies فایل ساخت سطح برنامه خود، یک وابستگی به کتابخانه play-services-oss-licenses اضافه کنید:
کاتلین DSL
ساخت.gradle.kts
implementation("com.google.android.gms:play-services-oss-licenses:17.4.0")
گرووی دیاسال
ساخت.gradle
implementation 'com.google.android.gms:play-services-oss-licenses:17.4.0'
نمایش اطلاعات مجوز
وقتی برنامه شما ساخته میشود، افزونه Gradle مجوزها را پردازش کرده و آنها را به منابع برنامه شما اضافه میکند. برای نمایش آسان مجوز، میتوانید یک activity که توسط کتابخانه play-services-oss-licenses ارائه میشود را در نقطه مناسبی از برنامه خود، همانطور که در قطعه کد زیر نشان داده شده است، راهاندازی کنید:
کاتلین
import com.google.android.gms.oss.licenses.v2.OssLicensesMenuActivity ... // When the user selects an option to see the licenses: startActivity(Intent(this, OssLicensesMenuActivity::class.java))
جاوا
import com.google.android.gms.oss.licenses.v2.OssLicensesMenuActivity; ... // When the user selects an option to see the licenses: startActivity(new Intent(this, OssLicensesMenuActivity.class));
وقتی اکتیویتی اجرا میشود، فهرستی از کتابخانههای متنباز که در برنامه شما کامپایل شدهاند، از جمله کتابخانههای مورد استفاده برنامه، همانطور که در شکل ۱ نشان داده شده است، نمایش داده میشود. کاربران میتوانند روی نام یک کتابخانه ضربه بزنند تا اطلاعات مجوز اضافی برای آن کتابخانه را مشاهده کنند.
شکل ۱. فعالیت منوی مجوزها، فهرستی قابل انتخاب از کتابخانههای متنباز مورد استفاده یک برنامه را نشان میدهد.
عنوان فعالیت را تنظیم کنید
به طور پیشفرض، عنوان اکتیویتی نمایش داده شده "مجوزهای متنباز" است. میتوانید عنوان اکتیویتی را با فراخوانی setActivityTitle() سفارشی کنید، همانطور که در قطعه کد زیر نشان داده شده است:
کاتلین
OssLicensesMenuActivity.setActivityTitle(getString(R.string.custom_license_title))
جاوا
OssLicensesMenuActivity.setActivityTitle(getString(R.string.custom_license_title));
اعمال یک تم به فعالیت
شما میتوانید یک تم را به اکتیویتی اعمال کنید تا با تم مورد استفاده در سایر اکتیویتیهای برنامه شما مطابقت داشته باشد. برای انجام این کار، اکتیویتی دارای مجوز متنباز را در یک عنصر <activity> در فایل مانیفست برنامه خود قرار دهید، همانطور که در قطعه کد زیر نشان داده شده است:
<application android:theme="@style/AppTheme" ...> <activity android:name="com.google.android.gms.oss.licenses.v2.OssLicensesMenuActivity" tools:replace="android:theme" android:theme="@style/AppTheme" /> </application>
نحوه تعیین فهرست مجوزها
در زمان کامپایل، افزونه Gradle وابستگیهای POM پروژه برنامه شما را اسکن میکند. وقتی یک POM Maven برای یک وابستگی مستقیم برنامه وجود دارد، افزونه هر عنصر <licenses> را پردازش میکند و لینک و عنوان هر مجوز را در یک دارایی اندروید که همراه برنامه شما است، جاسازی میکند.
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2026-02-07 بهوقت ساعت هماهنگ جهانی.