للحصول على قائمة من الطرق لهذا المورد، راجِع نهاية هذه الصفحة.
تمثيلات الموارد
يمثل مورد "المنتجات" تطبيقًا في "متجر Google Play" متاح لبعض المستخدمين على الأقل في المؤسسة. (تقتصر بعض التطبيقات على مؤسسة واحدة، ولا تتم إتاحة أي معلومات عنها خارج تلك المؤسسة).
تهدف المعلومات المقدَّمة لكل منتج (الاسم والرمز والرابط المؤدي إلى صفحة تفاصيل Google Play الكاملة) إلى السماح بعرض المنتج بشكل أساسي ضمن واجهة المستخدم في "إدارة الخدمات الجوّالة للمؤسسات".
{ "kind": "androidenterprise#product", "productId": string, "title": string, "authorName": string, "iconUrl": string, "smallIconUrl": string, "detailsUrl": string, "workDetailsUrl": string, "requiresContainerApp": boolean, "appVersion": [ { "versionString": string, "versionCode": integer, "track": string, "targetSdkVersion": integer, "trackId": [ string ], "isProduction": boolean } ], "distributionChannel": string, "productPricing": string, "signingCertificate": { "certificateHashSha256": string, "certificateHashSha1": string }, "availableTracks": [ string ], "appTracks": [ { "trackId": string, "trackAlias": string } ], "description": string, "fullDescription": string, "screenshotUrls": [ string ], "category": string, "recentChanges": string, "minAndroidSdkVersion": integer, "contentRating": string, "lastUpdatedTimestampMillis": long, "permissions": [ { "permissionId": string, "state": string } ], "availableCountries": [ string ], "features": [ string ], "iarcGenericRating": string, "appRestrictionsSchema": { "kind": string, "restrictions": [ { "key": string, "title": string, "restrictionType": string, "description": string, "entry": [ string ], "entryValue": [ string ], "defaultValue": { "type": string, "valueBool": boolean, "valueString": string, "valueInteger": integer, "valueMultiselect": [ string ] }, "nestedRestriction": [ (AppRestrictionsSchemaRestriction) ] } ] } }
اسم الموقع | القيمة | الوصف | ملاحظات |
---|---|---|---|
appRestrictionsSchema |
nested object |
مخطط قيود التطبيق | |
appRestrictionsSchema.kind |
string |
تمّت إزالة هذا العمود. |
|
appRestrictionsSchema.restrictions[] |
list |
مجموعة القيود التي يتألف منها هذا المخطط. | |
appRestrictionsSchema.restrictions[].defaultValue |
nested object |
القيمة التلقائية للقيد. لا يتم تحديد قيمة تلقائية لقيود bundle وbundleArray أبدًا. |
|
appRestrictionsSchema.restrictions[].defaultValue.type |
string |
نوع القيمة المقدَّمة.
في ما يلي القيم المقبولة:
|
|
appRestrictionsSchema.restrictions[].defaultValue.valueBool |
boolean |
القيمة المنطقية - لن تكون موجودة إلا إذا كان النوع منطقيًا. | |
appRestrictionsSchema.restrictions[].defaultValue.valueInteger |
integer |
قيمة العدد الصحيح - لن تكون موجودة إلا إذا كان النوع عددًا صحيحًا. | |
appRestrictionsSchema.restrictions[].defaultValue.valueMultiselect[] |
list |
قائمة قيم السلسلة - لن تتوفر إلا إذا كان النوع محددًا. | |
appRestrictionsSchema.restrictions[].defaultValue.valueString |
string |
قيمة السلسلة - ستكون موجودة لأنواع السلسلة، والاختيار، والمخفي. | |
appRestrictionsSchema.restrictions[].description |
string |
وصف أطول للقيد، مع تقديم مزيد من التفاصيل حول ما يؤثر فيه. | |
appRestrictionsSchema.restrictions[].entryValue[] |
list |
بالنسبة إلى القيود choice أو multiselect ، تتوفر قائمة الإدخالات المحتملة قيم يستطيع الجهاز قراءتها. يجب استخدام هذه القيم في الإعدادات، إما كقيمة string واحدة لقيد choice أو في stringArray لقيد multiselect . |
|
appRestrictionsSchema.restrictions[].entry[] |
list |
بالنسبة إلى القيود choice أو multiselect ، تتوفر قائمة الإدخالات المحتملة أسماء يفهمها الإنسان. |
|
appRestrictionsSchema.restrictions[].key |
string |
تمثّل هذه السمة المفتاح الفريد الذي يستخدمه المنتج لتحديد القيود، مثلاً: "com.google.android.gm.fieldname". | |
appRestrictionsSchema.restrictions[].nestedRestriction[] |
list |
بالنسبة إلى القيود bundle أو bundleArray ، تمثّل هذه السمة قائمة القيود المتداخلة. يتم دائمًا دمج قيد bundle ضمن قيد bundleArray ، بينما يكون القيد bundleArray أكثر عمقًا على مستويَين. |
|
appRestrictionsSchema.restrictions[].restrictionType |
string |
نوع الحظر.
في ما يلي القيم المقبولة:
|
|
appRestrictionsSchema.restrictions[].title |
string |
اسم الحظر. | |
appTracks[] |
list |
المسارات المرئية للمؤسسة | |
appTracks[].trackAlias |
string |
اسم قابل للتعديل لمقطع صوتي. وهذا هو الاسم الذي يظهر في Play Console. | |
appTracks[].trackId |
string |
معرّف مسار فريد وغير قابل للتعديل هذا المعرّف هو releaseTrackId في عنوان URL لصفحة Play Console التي تعرض معلومات قناة الإصدار. | |
appVersion[] |
list |
إصدارات التطبيق المتوفّرة حاليًا لهذا المنتج | |
appVersion[].isProduction |
boolean |
صحيح إذا كان هذا الإصدار حزمة APK للإنتاج. | |
appVersion[].targetSdkVersion |
integer |
يشير إلى إصدار حزمة تطوير البرامج (SDK) الذي يستهدفه هذا التطبيق، على النحو المحدّد في بيان حزمة APK. راجع http://developer.android.com/guide/topics/manifest/uses-sdk-element.html | |
appVersion[].track |
string |
متوقّفة نهائيًا، واستخدِم trackId بدلاً منها.
في ما يلي القيم المقبولة:
|
|
appVersion[].trackId[] |
list |
أرقام تعريف التتبّع التي تم نشر إصدار التطبيق فيها سيحلّ محلّ حقل track (متوقف)، ولكن لا يتضمّن قناة الإصدار العلني (راجِع isProduction بدلاً من ذلك). |
|
appVersion[].versionCode |
integer |
المعرّف المتزايد الفريد لإصدار التطبيق | |
appVersion[].versionString |
string |
السلسلة التي يستخدمها مطوّر التطبيق في "متجر Play" لتحديد الإصدار. لا تكون السلسلة فريدة بالضرورة أو مترجَمة (على سبيل المثال، يمكن أن تكون السلسلة "1.4"). | |
authorName |
string |
اسم مؤلف المنتج (على سبيل المثال، مطوّر التطبيق). | |
availableCountries[] |
list |
البلدان التي يتوفّر فيها هذا التطبيق | |
availableTracks[] |
list |
متوقّفة نهائيًا، واستخدِم appTracks بدلاً منها. |
|
category |
string |
فئة التطبيق (على سبيل المثال، ألعاب سباق السرعة أو المحتوى الاجتماعي، أو غير ذلك) | |
contentRating |
string |
تقييم المحتوى لهذا التطبيق
في ما يلي القيم المقبولة:
|
|
description |
string |
تمثّل هذه السمة الوصف الترويجي المترجَم بما يناسب السوق المحلية، إذا كان ذلك متاحًا. | |
detailsUrl |
string |
رابط يؤدي إلى صفحة تفاصيل المنتج على Google Play (للمستهلك). | |
distributionChannel |
string |
طريقة توفير الطرد وهؤلاء المستخدمين تعني القيمة publicGoogleHosted أنّ الحزمة متاحة من خلال "متجر Play" ولا تقتصر على مؤسسة معيّنة. تعني القيمة privateGoogleHosted أنّ الحزمة هي تطبيق خاص (يقتصر على مؤسسة) ولكن تستضيفه Google. تعني القيمة privateSelfHosted أنّ الحزمة هي تطبيق خاص (يقتصر على مؤسسة) وتتم استضافته على نطاق خاص.
في ما يلي القيم المقبولة:
|
|
features[] |
list |
تمثّل هذه السمة الميزات البارزة (إن توفّرت) ضمن هذا المنتج. | |
fullDescription |
string |
تمثّل هذه السمة الوصف الكامل المترجَم لمتجر التطبيقات، إذا كان متاحًا. | |
iarcGenericRating |
string |
تقييم المحتوى لهذا التطبيق
في ما يلي القيم المقبولة:
|
|
iconUrl |
string |
تمثّل هذه السمة رابطًا يؤدي إلى صورة يمكن استخدامها كرمز للمنتج. هذه الصورة مناسبة للاستخدام حتى 512 بكسل × 512 بكسل. | |
kind |
string |
||
lastUpdatedTimestampMillis |
long |
الوقت التقريبي (خلال 7 أيام) لنشر التطبيق آخر مرة، ويتم التعبير عنه بالمللي ثانية منذ تاريخ بدء حساب الفترة. | |
minAndroidSdkVersion |
integer |
الحد الأدنى لحزمة تطوير البرامج (SDK) لنظام التشغيل Android اللازمة لتشغيل التطبيق. | |
permissions[] |
list |
قائمة بالأذونات التي يطلبها التطبيق | |
permissions[].permissionId |
string |
سلسلة مبهمة تحدد الإذن بشكل فريد. | |
permissions[].state |
string |
ما إذا تم قبول الإذن أم لا.
في ما يلي القيم المقبولة:
|
|
productId |
string |
سلسلة من النموذج app:<package name> . على سبيل المثال، يمثّل app:com.google.android.gm تطبيق Gmail. |
|
productPricing |
string |
ما إذا كان المنتج مجانيًا أو مجانيًا مع عمليات الشراء داخل التطبيق أو مدفوعًا إذا كان السعر غير معروف، يعني ذلك أنّ المنتج لم يعُد متوفّرًا بشكل عام (على الرغم من أنّه قد لا يزال متوفّرًا للمستخدمين الذين يملكونه).
في ما يلي القيم المقبولة:
|
|
recentChanges |
string |
وصف للتغييرات الأخيرة التي تم إجراؤها على التطبيق. | |
requiresContainerApp |
boolean |
تمّ الإيقاف. | |
screenshotUrls[] |
list |
قائمة بروابط لقطات الشاشة التي تمثّل التطبيق | |
signingCertificate |
nested object |
الشهادة المستخدمة لتوقيع هذا المنتج. | |
signingCertificate.certificateHashSha1 |
string |
تشير هذه السمة إلى تجزئة SHA1 بترميز base64 على urlsafe بترميز SHA1. (تم إيقاف هذا الحقل لصالح SHA2-256. ويجب عدم استخدامها، وقد تتم إزالتها في أي وقت.) |
|
signingCertificate.certificateHashSha256 |
string |
تشير هذه السمة إلى تجزئة الشهادة باستخدام خوارزمية SHA2-256 بترميز base64 على urlsafe. | |
smallIconUrl |
string |
تمثّل هذه السمة رابطًا يؤدي إلى صورة أصغر حجمًا يمكن استخدامه كرمز للمنتج. هذه الصورة مناسبة للاستخدام بدقة تصل إلى 128 × 128 بكسل. | |
title |
string |
اسم المنتج | |
workDetailsUrl |
string |
رابط يؤدي إلى صفحة تفاصيل "Google Play للأعمال" الخاصة بالمنتج يمكن لمشرف Enterprise استخدامه. |
الطُرق
- الموافقة
-
تتم الموافقة على المنتج المحدّد وأذونات التطبيق ذات الصلة، إن توفّرت. الحدّ الأقصى لعدد المنتجات التي يمكنك الموافقة عليها لكل عميل من عملاء المؤسسة هو 1000.
التعرُّف على كيفية استخدام "Google Play للأعمال" لتصميم متجر وإنشائه التخطيط لعرض المنتجات الموافق عليها للمستخدمين، راجع تصميم تخطيط المتجر.
- generateApprovalUrl
-
تنشئ عنوان URL يمكن عرضه في iframe لعرض
أذونات المنتج (إن وجدت). يجب أن يعرض أحد مشرفي المؤسسة هذه
الأذونات والموافقة عليها نيابةً عن مؤسستهم من أجل
الموافقة على هذا المنتج.
على المشرفين قبول الأذونات المعروضة من خلال تتفاعل مع عنصر منفصل لواجهة المستخدم في وحدة تحكم إدارة الخدمات الجوّالة للمؤسسات (EMM)، والتي بدورها استخدام عنوان URL هذا باعتباره مكان واحد (approvalUrlInfo.approvalUrl
) في طلب مكالمة (Products.approve
) للموافقة على المنتج. يمكن استخدام عنوان URL هذا لعرض الأذونات لمدة تصل إلى يوم واحد فقط. - الحصول على
- استرداد تفاصيل منتج لعرضه لأحد مشرفي المؤسسة.
- getAppRestrictionsSchema
- استرداد المخطط الذي يحدد الخصائص القابلة للتهيئة لهذا المنتج. تتضمّن جميع المنتجات مخطّطًا، ولكن قد يكون هذا المخطط فارغًا في حال عدم توفّره. بشكل كامل. يمكن استخدام هذا المخطط تعبئة واجهة مستخدم تسمح للمشرف بضبط المنتج. لتطبيق ضبط مُدار استنادًا إلى المخطط الذي تم الحصول عليه باستخدام هذا واجهة برمجة التطبيقات (API)، راجع الإعدادات المُدارة من خلال Play
- getPermissions
- استرداد أذونات تطبيق Android التي يتطلبها هذا التطبيق
- list
- للبحث عن المنتجات المعتمدة التي تتطابق مع طلب بحث، أو مع جميع المنتجات التي تمت الموافقة عليها في حال عدم وجود استعلام.
- عدم الموافقة
- لا تتم الموافقة على المنتج المحدّد (وأذونات التطبيق ذات الصلة، إن توفّرت)