SdkSandbox ম্যানেজার

public final class SdkSandboxManager
extends Object

java.lang.অবজেক্ট
android.app.sdksandbox.SdkSandboxManager


SDK স্যান্ডবক্স প্রক্রিয়ায় SDKs লোড করার জন্য API প্রদান করে এবং তারপর তাদের সাথে ইন্টারঅ্যাক্ট করে।

SDK স্যান্ডবক্স হল একটি জাভা প্রক্রিয়া যা একটি পৃথক uid পরিসরে চলছে। প্রতিটি অ্যাপের নিজস্ব SDK স্যান্ডবক্স প্রক্রিয়া থাকতে পারে।

অ্যাপটিকে প্রথমে <uses-sdk-library> ট্যাগ ব্যবহার করে তার ম্যানিফেস্টে নির্ভর করে SDK ঘোষণা করতে হবে। অ্যাপগুলি শুধুমাত্র SDK গুলি লোড করতে পারে যেগুলির উপর তারা SDK স্যান্ডবক্সে নির্ভর করে৷

সারাংশ

নেস্টেড ক্লাস

interface SdkSandboxManager.SdkSandboxProcessDeathCallback

SDK স্যান্ডবক্স মৃত্যুর ঘটনা ট্র্যাক করার জন্য একটি কলব্যাক৷

ধ্রুবক

String EXTRA_DISPLAY_ID

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রগুলিতে ব্যবহার করা কীটির নাম, এর মানটির পূর্ণসংখ্যা আইডি নির্ধারণ করা উচিত SurfacePackage প্রদর্শনের জন্য লজিক্যাল ডিসপ্লে।

String EXTRA_HEIGHT_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রে ব্যবহার করা কী-এর নাম, এর মানটির পূর্ণসংখ্যার উচ্চতা নির্ধারণ করা উচিত পিক্সেলে SurfacePackage

String EXTRA_HOST_TOKEN

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রগুলিতে ব্যবহার করা কীটির নাম , এর মানটি SurfaceView.getHostToken() দ্বারা প্রত্যাবর্তিত টোকেন উপস্থাপন করা উচিত। SurfaceView.getHostToken() একবার SurfaceView ভিউ হায়ারার্কিতে যোগ করা হয়েছে।

String EXTRA_SURFACE_PACKAGE

বান্ডেলের কী-এর নাম যা OutcomeReceiver এর onResult ফাংশনে পাঠানো হয় যা requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) , এর মান অনুরোধ করা SurfacePackage উপস্থাপন করে।

String EXTRA_WIDTH_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রে ব্যবহার করা কী-এর নাম, এর মানটির পূর্ণসংখ্যার প্রস্থ নির্ধারণ করা উচিত পিক্সেলে SurfacePackage

int LOAD_SDK_ALREADY_LOADED

SDK ইতিমধ্যেই লোড হয়েছে৷

int LOAD_SDK_INTERNAL_ERROR

SDK লোড করার সময় অভ্যন্তরীণ ত্রুটি৷

int LOAD_SDK_NOT_FOUND

SDK পাওয়া যায়নি।

int LOAD_SDK_SDK_DEFINED_ERROR

লোড হওয়ার পরে SDK ত্রুটি৷

int LOAD_SDK_SDK_SANDBOX_DISABLED

SDK স্যান্ডবক্স অক্ষম আছে।

int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

একটি SurfacePackage অনুরোধ করার সময় অভ্যন্তরীণ ত্রুটি৷

int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

SurfacePackage অনুরোধ করার সময় SDK লোড হয় না।

int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

SDK স্যান্ডবক্স প্রক্রিয়া উপলব্ধ নয়৷

String SDK_SANDBOX_SERVICE

এই ক্লায়েন্ট অ্যাপ্লিকেশনের অন্তর্গত SDK-এর সাথে ইন্টারঅ্যাক্ট করার জন্য একটি SdkSandboxManager পুনরুদ্ধার করতে Context#getSystemService(String) এর সাথে ব্যবহার করুন।

int SDK_SANDBOX_STATE_DISABLED

SDK স্যান্ডবক্স অক্ষম আছে।

int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

SDK স্যান্ডবক্স সক্ষম করা আছে।

পাবলিক পদ্ধতি

void addSdkSandboxProcessDeathCallback ( Executor callbackExecutor, SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

একটি কলব্যাক যোগ করে যা SDK স্যান্ডবক্স লাইফসাইকেল ইভেন্টগুলির জন্য নিবন্ধিত হয়, যেমন SDK স্যান্ডবক্স মৃত্যু৷

void addSyncedSharedPreferencesKeys ( Set < String > keys)

অ্যাপের ডিফল্ট SharedPreferences থেকে SDK স্যান্ডবক্সে সিঙ্ক হওয়া কীগুলির সেটে কী যোগ করে।

List < AppOwnedSdkSandboxInterface > getAppOwnedSdkSandboxInterfaces ()

একটি অ্যাপের জন্য নিবন্ধিত AppOwnedSdkSandboxInterface এর একটি তালিকা নিয়ে আসে

List < SandboxedSdk > getSandboxedSdks ()

স্যান্ডবক্সে লোড করা SDK সম্পর্কে তথ্য নিয়ে আসে।

static int getSdkSandboxState ()

SDK স্যান্ডবক্স বৈশিষ্ট্যের উপলব্ধতার বর্তমান অবস্থা প্রদান করে।

Set < String > getSyncedSharedPreferencesKeys ()

অ্যাপের ডিফল্ট SharedPreferences থেকে SDK স্যান্ডবক্সে সিঙ্ক করা সেট কীগুলি ফেরত দেয়।

void loadSdk ( String sdkName, Bundle params, Executor executor, OutcomeReceiver < SandboxedSdk , LoadSdkException > receiver)

একটি SDK স্যান্ডবক্স জাভা প্রক্রিয়ায় SDK লোড করে।

void registerAppOwnedSdkSandboxInterface ( AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

একটি অ্যাপ প্রক্রিয়ার জন্য AppOwnedSdkSandboxInterface নিবন্ধন করে।

void removeSdkSandboxProcessDeathCallback ( SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

একটি SdkSandboxProcessDeathCallback সরিয়ে দেয় যা আগে addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback) ব্যবহার করে যোগ করা হয়েছিল

void removeSyncedSharedPreferencesKeys ( Set < String > keys)

addSyncedSharedPreferencesKeys(java.util.Set) ব্যবহার করে যোগ করা কীগুলির সেট থেকে কীগুলি সরিয়ে দেয়

সরানো কীগুলি SDK স্যান্ডবক্স থেকে মুছে ফেলা হবে যদি সেগুলি ইতিমধ্যেই সিঙ্ক হয়ে থাকে৷

void requestSurfacePackage ( String sdkName, Bundle params, Executor callbackExecutor, OutcomeReceiver < Bundle , RequestSurfacePackageException > receiver)

SDK-এ একটি পৃষ্ঠ প্যাকেজের জন্য একটি অনুরোধ পাঠায়।

void startSdkSandboxActivity ( Activity fromActivity, IBinder sdkActivityToken)

SDK স্যান্ডবক্সে একটি Activity শুরু করে।

void unloadSdk ( String sdkName)

একটি SDK আনলোড করে যা আগে কলারের দ্বারা লোড করা হয়েছে৷

void unregisterAppOwnedSdkSandboxInterface ( String name)

একটি অ্যাপ প্রক্রিয়ার জন্য ERROR(/AppOwnedSdkSandboxInterfaces) নিবন্ধনমুক্ত করে।

উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতি

ধ্রুবক

EXTRA_DISPLAY_ID

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String EXTRA_DISPLAY_ID

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রগুলিতে ব্যবহার করা কীটির নাম, এর মানটির পূর্ণসংখ্যা আইডি নির্ধারণ করা উচিত SurfacePackage প্রদর্শনের জন্য লজিক্যাল ডিসপ্লে।

ধ্রুবক মান: "android.app.sdksandbox.extra.DISPLAY_ID"

EXTRA_HEIGHT_IN_PIXELS

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String EXTRA_HEIGHT_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রে ব্যবহার করা কী-এর নাম, এর মানটির পূর্ণসংখ্যার উচ্চতা নির্ধারণ করা উচিত পিক্সেলে SurfacePackage

ধ্রুবক মান: "android.app.sdksandbox.extra.HEIGHT_IN_PIXELS"

EXTRA_HOST_TOKEN

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String EXTRA_HOST_TOKEN

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রগুলিতে ব্যবহার করা কীটির নাম , এর মানটি SurfaceView.getHostToken() দ্বারা প্রত্যাবর্তিত টোকেন উপস্থাপন করা উচিত। SurfaceView.getHostToken() একবার SurfaceView ভিউ হায়ারার্কিতে যোগ করা হয়েছে। ANR রিপোর্টিং সক্ষম করতে শুধুমাত্র একটি নন-নাল মান গ্রহণ করা হয়।

ধ্রুবক মান: "android.app.sdksandbox.extra.HOST_TOKEN"

EXTRA_SURFACE_PACKAGE

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String EXTRA_SURFACE_PACKAGE

বান্ডেলের কী-এর নাম যা OutcomeReceiver এর onResult ফাংশনে পাঠানো হয় যা requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) , এর মান অনুরোধ করা SurfacePackage উপস্থাপন করে।

ধ্রুবক মান: "android.app.sdksandbox.extra.SURFACE_PACKAGE"

EXTRA_WIDTH_IN_PIXELS

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String EXTRA_WIDTH_IN_PIXELS

requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর বান্ডেল ক্ষেত্রে ব্যবহার করা কী-এর নাম, এর মানটির পূর্ণসংখ্যার প্রস্থ নির্ধারণ করা উচিত পিক্সেলে SurfacePackage

ধ্রুবক মান: "android.app.sdksandbox.extra.WIDTH_IN_PIXELS"

LOAD_SDK_ALREADY_LOADED

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int LOAD_SDK_ALREADY_LOADED

SDK ইতিমধ্যেই লোড হয়েছে৷

এটি নির্দেশ করে যে ক্লায়েন্ট অ্যাপ্লিকেশনটি সফলভাবে লোড হওয়ার পরে loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) কল করে একই SDK পুনরায় লোড করার চেষ্টা করেছে৷

ধ্রুবক মান: 101 (0x00000065)

LOAD_SDK_INTERNAL_ERROR

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int LOAD_SDK_INTERNAL_ERROR

SDK লোড করার সময় অভ্যন্তরীণ ত্রুটি৷

এটি নির্দেশ করে যে ক্লায়েন্ট অ্যাপ্লিকেশন থেকে কল করার সময় একটি সাধারণ অভ্যন্তরীণ ত্রুটি ঘটেছে।

ধ্রুবক মান: 500 (0x000001f4)

LOAD_SDK_NOT_FOUND

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int LOAD_SDK_NOT_FOUND

SDK পাওয়া যায়নি।

এটি ইঙ্গিত করে যে ক্লায়েন্ট অ্যাপ্লিকেশনটি loadSdk(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) কল করে একটি অস্তিত্বহীন SDK লোড করার চেষ্টা করেছে৷

ধ্রুবক মান: 100 (0x00000064)

LOAD_SDK_SDK_DEFINED_ERROR

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int LOAD_SDK_SDK_DEFINED_ERROR

লোড হওয়ার পরে SDK ত্রুটি৷

এটি ইঙ্গিত করে যে SDK পোস্ট-লোড ইনিশিয়ালাইজেশনের সময় একটি ত্রুটির সম্মুখীন হয়েছে৷ এর বিশদ বিবরণ SdkSandboxManager#loadSdk এ পাস করা OutcomeReceiver মাধ্যমে LoadSdkException এ ফেরত দেওয়া বান্ডেল থেকে পাওয়া যেতে পারে।

ধ্রুবক মান: 102 (0x00000066)

LOAD_SDK_SDK_SANDBOX_DISABLED

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int LOAD_SDK_SDK_SANDBOX_DISABLED

SDK স্যান্ডবক্স অক্ষম আছে।

এটি নির্দেশ করে যে SDK স্যান্ডবক্স অক্ষম করা হয়েছে৷ এই বুটে SDK লোড করার পরবর্তী যেকোনো প্রচেষ্টাও ব্যর্থ হবে।

ধ্রুবক মান: 103 (0x00000067)

REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int REQUEST_SURFACE_PACKAGE_INTERNAL_ERROR

একটি SurfacePackage অনুরোধ করার সময় অভ্যন্তরীণ ত্রুটি৷

এটি নির্দেশ করে যে একটি SurfacePackage অনুরোধ করার সময় একটি সাধারণ অভ্যন্তরীণ ত্রুটি ঘটেছে৷

ধ্রুবক মান: 700 (0x000002bc)

REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 5
public static final int REQUEST_SURFACE_PACKAGE_SDK_NOT_LOADED

SurfacePackage অনুরোধ করার সময় SDK লোড হয় না।

এটি নির্দেশ করে যে যে SDKটির জন্য SurfacePackage অনুরোধ করা হচ্ছে সেটি লোড করা হয়নি, হয় স্যান্ডবক্সটি মারা যাওয়ার কারণে বা এটি প্রথমে লোড করা হয়নি।

ধ্রুবক মান: 701 (0x000002bd)

SDK_SANDBOX_PROCESS_NOT_AVAILABLE

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final int SDK_SANDBOX_PROCESS_NOT_AVAILABLE

SDK স্যান্ডবক্স প্রক্রিয়া উপলব্ধ নয়৷

এটি ইঙ্গিত দেয় যে SDK স্যান্ডবক্স প্রক্রিয়াটি উপলব্ধ নয়, কারণ এটি মারা গেছে, সংযোগ বিচ্ছিন্ন হয়েছে বা প্রথম স্থানে তৈরি হয়নি।

ধ্রুবক মান: 503 (0x000001f7)

SDK_SANDBOX_SERVICE

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public static final String SDK_SANDBOX_SERVICE

এই ক্লায়েন্ট অ্যাপ্লিকেশনের অন্তর্গত SDK-এর সাথে ইন্টারঅ্যাক্ট করার জন্য একটি SdkSandboxManager পুনরুদ্ধার করতে Context#getSystemService(String) এর সাথে ব্যবহার করুন।

ধ্রুবক মান: "sdk_sandbox"

SDK_SANDBOX_STATE_DISABLED

API লেভেল 33 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 3
public static final int SDK_SANDBOX_STATE_DISABLED

SDK স্যান্ডবক্স অক্ষম আছে।

SdkSandboxManager APIগুলি লুকানো আছে৷ তাদের কল করার প্রচেষ্টার ফলে UnsupportedOperationException হবে।

ধ্রুবক মান: 0 (0x00000000)

SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

API লেভেল 33 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 3
public static final int SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

SDK স্যান্ডবক্স সক্ষম করা আছে।

অ্যাপটি SDKs লোড করতে SdkSandboxManager API ব্যবহার করতে পারে এটি সংশ্লিষ্ট SDK স্যান্ডবক্স প্রক্রিয়ার উপর নির্ভর করে।

ধ্রুবক মান: 2 (0x00000002)

পাবলিক পদ্ধতি

addSdkSandboxProcessDeathCallback

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public void addSdkSandboxProcessDeathCallback (Executor callbackExecutor, 
                SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

একটি কলব্যাক যোগ করে যা SDK স্যান্ডবক্স লাইফসাইকেল ইভেন্টগুলির জন্য নিবন্ধিত হয়, যেমন SDK স্যান্ডবক্স মৃত্যু৷ এটিকে কল করার সময় যদি স্যান্ডবক্সটি এখনও তৈরি না হয়ে থাকে, একটি স্যান্ডবক্স তৈরি না হওয়া পর্যন্ত অনুরোধটি সংরক্ষণ করা হবে, যে সময়ে এটি সেই স্যান্ডবক্সের জন্য সক্রিয় করা হয়। মৃত্যু শনাক্ত করতে একাধিক কলব্যাক যোগ করা যেতে পারে এবং স্যান্ডবক্স মারা গেলে সরানো হবে না।

পরামিতি
callbackExecutor Executor : যে Executor কলব্যাক শুরু করতে হবে এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে।

callback SdkSandboxManager.SdkSandboxProcessDeathCallback : SdkSandboxProcessDeathCallback যা SDK স্যান্ডবক্স লাইফসাইকেল ইভেন্টগুলি পাবে৷ এই মানটি null হতে পারে না।

SyncedSharedPreferencesKeys যোগ করুন

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 5
public void addSyncedSharedPreferencesKeys (Set<String> keys)

অ্যাপের ডিফল্ট SharedPreferences থেকে SDK স্যান্ডবক্সে সিঙ্ক হওয়া কীগুলির সেটে কী যোগ করে।

SdkSandboxController.getClientSharedPreferences() API ব্যবহার করে পড়ার জন্য SDK-এর জন্য সিঙ্ক করা ডেটা পাওয়া যাবে।

এই API ব্যবহার করে যোগ করা কোনো কী সিঙ্ক করা বন্ধ করতে, removeSyncedSharedPreferencesKeys(java.util.Set) ব্যবহার করুন।

অ্যাপ রিস্টার্ট হলে সিঙ্ক ভেঙে যায় এবং সিঙ্ক করার জন্য কীগুলির পুল পুনর্নির্মাণ করতে ব্যবহারকারীকে আবার এই API কল করতে হবে।

দ্রষ্টব্য: এই ক্লাস একাধিক প্রক্রিয়া জুড়ে ব্যবহার সমর্থন করে না।

পরামিতি
keys Set : কীগুলির সেট যা স্যান্ডবক্সে সিঙ্ক করা হবে। এই মানটি null হতে পারে না।

getAppOwnedSdkSandboxInterfaces

public List<AppOwnedSdkSandboxInterface> getAppOwnedSdkSandboxInterfaces ()

একটি অ্যাপের জন্য নিবন্ধিত AppOwnedSdkSandboxInterface এর একটি তালিকা নিয়ে আসে

রিটার্নস
List < AppOwnedSdkSandboxInterface > খালি তালিকা যদি কলিং ইনফো মানচিত্রে পাওয়া না যায় অন্যথায় AppOwnedSdkSandboxInterface এর একটি তালিকা এই মানটি null হতে পারে না।

স্যান্ডবক্সডএসডিক্স পান

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 5
public List<SandboxedSdk> getSandboxedSdks ()

স্যান্ডবক্সে লোড করা SDK সম্পর্কে তথ্য নিয়ে আসে।

রিটার্নস
List < SandboxedSdk > SandboxedSdk তালিকায় বর্তমানে লোড করা সমস্ত SDK রয়েছে৷ এই মানটি null হতে পারে না।

getSdkSandboxState

API লেভেল 33 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 3
public static int getSdkSandboxState ()

SDK স্যান্ডবক্স বৈশিষ্ট্যের উপলব্ধতার বর্তমান অবস্থা প্রদান করে।

রিটার্নস
int মান হল SDK_SANDBOX_STATE_DISABLED বা SDK_SANDBOX_STATE_ENABLED_PROCESS_ISOLATION

GetSyncedSharedPreferencesKeys

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 5
public Set<String> getSyncedSharedPreferencesKeys ()

অ্যাপের ডিফল্ট SharedPreferences থেকে SDK স্যান্ডবক্সে সিঙ্ক করা সেট কীগুলি ফেরত দেয়।

রিটার্নস
Set < String > এই মানটি null হতে পারে না।

loadSdk

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public void loadSdk (String sdkName, 
                Bundle params, 
                Executor executor, 
                OutcomeReceiver<SandboxedSdkLoadSdkException> receiver)

একটি SDK স্যান্ডবক্স জাভা প্রক্রিয়ায় SDK লোড করে।

SDK লাইব্রেরি sdkName সহ একটি SDK স্যান্ডবক্স প্রক্রিয়া অ্যাসিঙ্ক্রোনাসভাবে লোড করে৷ কলকারীকে receiver মাধ্যমে অবহিত করা হবে।

কলার ইতিমধ্যেই <uses-sdk-library> ট্যাগ ব্যবহার করে তার ম্যানিফেস্টে নির্ভরশীল SDKs ঘোষণা করা উচিত৷ কলার শুধুমাত্র SDKs লোড করতে পারে যা SDK স্যান্ডবক্সে নির্ভর করে।

যখন ক্লায়েন্ট অ্যাপ্লিকেশন প্রথম SDK লোড করে, তখন একটি নতুন SDK স্যান্ডবক্স প্রক্রিয়া তৈরি করা হবে। যদি ক্লায়েন্ট অ্যাপ্লিকেশনের জন্য ইতিমধ্যেই একটি স্যান্ডবক্স তৈরি করা হয়ে থাকে, অতিরিক্ত SDK একই স্যান্ডবক্সে লোড করা হবে৷

এই API শুধুমাত্র কল করা যেতে পারে যখন কলার অগ্রভাগে চলছে। ব্যাকগ্রাউন্ড থেকে কলের ফলে receiver LoadSdkException ফিরে আসবে।

পরামিতি
sdkName String : লোড করা SDK-এর নাম। এই মানটি null হতে পারে না।

params Bundle : ক্লায়েন্ট এবং SDK-এর মধ্যে সম্মতি অনুযায়ী অতিরিক্ত প্যারামিটারগুলি একটি Bundle আকারে SDK-এ পাঠানো হবে৷ এই মানটি null হতে পারে না।

executor Executor : Executor যার উপর রিসিভারকে আহ্বান করতে হয়। এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে।

receiver OutcomeReceiver : এটি হয় একটি সফল রানে একটি SandboxedSdk পায়, অথবা LoadSdkException । এই মানটি null হতে পারে না।

registerAppOwnedSdkSandboxInterface

public void registerAppOwnedSdkSandboxInterface (AppOwnedSdkSandboxInterface appOwnedSdkSandboxInterface)

একটি অ্যাপ প্রক্রিয়ার জন্য AppOwnedSdkSandboxInterface নিবন্ধন করে।

একটি AppOwnedSdkSandboxInterface রেজিস্টার করার ফলে পূর্বে নিবন্ধিত ইন্টারফেসের মতো একই নাম রয়েছে IllegalStateException

AppOwnedSdkSandboxInterface#getName() ইন্টারফেসের নাম বোঝায়।

পরামিতি
appOwnedSdkSandboxInterface AppOwnedSdkSandboxInterface : যে AppOwnedSdkSandboxInterface নিবন্ধিত হতে হবে এই মানটি null হতে পারে না।

RemoveSdkSandboxProcessDeathCallback

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public void removeSdkSandboxProcessDeathCallback (SdkSandboxManager.SdkSandboxProcessDeathCallback callback)

একটি SdkSandboxProcessDeathCallback সরিয়ে দেয় যা আগে addSdkSandboxProcessDeathCallback(java.util.concurrent.Executor, android.app.sdksandbox.SdkSandboxManager.SdkSandboxProcessDeathCallback) ব্যবহার করে যোগ করা হয়েছিল

পরামিতি
callback SdkSandboxManager.SdkSandboxProcessDeathCallback : SdkSandboxProcessDeathCallback যা পূর্বে SdkSandboxManager#addSdkSandboxProcessDeathCallback(Executor, SdkSandboxProcessDeathCallback) ব্যবহার করে যোগ করা হয়েছিল এই মানটি হতে পারে null

SyncedSharedPreferencesKeys রিমুভ করুন

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 5
public void removeSyncedSharedPreferencesKeys (Set<String> keys)

addSyncedSharedPreferencesKeys(java.util.Set) ব্যবহার করে যোগ করা কীগুলির সেট থেকে কীগুলি সরিয়ে দেয়

সরানো কীগুলি SDK স্যান্ডবক্স থেকে মুছে ফেলা হবে যদি সেগুলি ইতিমধ্যেই সিঙ্ক হয়ে থাকে৷

পরামিতি
keys Set : কী নামের সেট যা আর স্যান্ডবক্সে সিঙ্ক করা উচিত নয়। এই মানটি null হতে পারে না।

অনুরোধ সারফেস প্যাকেজ

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public void requestSurfacePackage (String sdkName, 
                Bundle params, 
                Executor callbackExecutor, 
                OutcomeReceiver<BundleRequestSurfacePackageException> receiver)

SDK-এ একটি পৃষ্ঠ প্যাকেজের জন্য একটি অনুরোধ পাঠায়।

ক্লায়েন্ট অ্যাপ্লিকেশনটি একটি সফল SDK লোডিং সম্পর্কে একটি সংকেত পাওয়ার পরে, এবং ভিউ হায়ারার্কিতে একটি SurfaceView যোগ করার পরে, এটি SDK থেকে একটি ভিউ রেন্ডার করার জন্য অ্যাসিঙ্ক্রোনাসভাবে একটি SurfacePackage অনুরোধ করতে পারে।

SurfacePackage প্রস্তুত হলে, পাস করা receiver OutcomeReceiver#onResult কলব্যাক ডাকা হবে। এই কলব্যাকে একটি Bundle অবজেক্ট থাকবে, এতে SdkSandboxManager#EXTRA_SURFACE_PACKAGE কী থাকবে যার সংশ্লিষ্ট মান হল অনুরোধ করা SurfacePackage

পাস করা params অবশ্যই নিম্নলিখিত কী থাকতে হবে: EXTRA_WIDTH_IN_PIXELS , SdkSandboxManager#EXTRA_HEIGHT_IN_PIXELS , SdkSandboxManager#EXTRA_DISPLAY_ID এবং SdkSandboxManager#EXTRA_HOST_TOKEN । যদি এই কীগুলির মধ্যে কোনটি অনুপস্থিত বা অবৈধ হয়, তাহলে একটি IllegalArgumentException নিক্ষেপ করা হবে।

এই API শুধুমাত্র কল করা যেতে পারে যখন কলার অগ্রভাগে চলছে। ব্যাকগ্রাউন্ড থেকে কলের ফলে receiver RequestSurfacePackageException ফিরে আসবে।

পরামিতি
sdkName String : SDK স্যান্ডবক্সে লোড করা SDK-এর নাম। এই মানটি null হতে পারে না।

params Bundle : ক্লায়েন্ট অ্যাপ্লিকেশন SDK-তে যে প্যারামিটারগুলি পাস করে। এই মানটি null হতে পারে না।

callbackExecutor Executor : যে Executor কলব্যাক শুরু করতে হবে এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে।

receiver OutcomeReceiver : এটি হয় সাফল্যের উপর একটি Bundle ফেরত দেয় যাতে একটি SurfacePackage মান সহ SdkSandboxManager#EXTRA_SURFACE_PACKAGE কী থাকবে, অথবা ব্যর্থতার ক্ষেত্রে RequestSurfacePackageException । এই মানটি null হতে পারে না।

নিক্ষেপ করে
IllegalArgumentException যদি params সমস্ত প্রয়োজনীয় কী থাকে না।

startSdkSandboxActivity

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 7
public void startSdkSandboxActivity (Activity fromActivity, 
                IBinder sdkActivityToken)

SDK স্যান্ডবক্সে একটি Activity শুরু করে।

এই ফাংশনটি পাস করা fromActivity একই টাস্কে একটি নতুন Activity শুরু করবে এবং এটি SDK-তে পাস করবে যেটি পাস করা sdkActivityToken শেয়ার করেছে যেটি এই Activity স্ট্যাট করার জন্য সেই SDK থেকে একটি অনুরোধ সনাক্ত করে।

নিম্নলিখিত ক্ষেত্রে Activity শুরু হবে না:

  • এই API কলিং অ্যাপটি ব্যাকগ্রাউন্ডে রয়েছে।
  • পাস করা sdkActivityToken কলার অ্যাপের সাথে শেয়ার করা SDK-এর একটি Activity অনুরোধে ম্যাপ করে না।
  • পাস করা sdkActivityToken শেয়ার করা SDK এই Activity জন্য তার অনুরোধ সরিয়ে দিয়েছে।
  • স্যান্ডবক্স Activity ইতিমধ্যে তৈরি করা হয়েছে.

পরামিতি
fromActivity Activity : Activity এর বিরুদ্ধে Activity#startActivity(Intent) কল করে নতুন স্যান্ডবক্স Activity শুরু করতে ব্যবহার করা হবে। এই মানটি null হতে পারে না।

sdkActivityToken IBinder : SDK দ্বারা ভাগ করা শনাক্তকারী যা Activity অনুরোধ করে। এই মানটি null হতে পারে না।

আনলোড এসডিকে

API স্তর 34 এ যোগ করা হয়েছে
এছাড়াও বিজ্ঞাপন পরিষেবা এক্সটেনশন 4
public void unloadSdk (String sdkName)

একটি SDK আনলোড করে যা আগে কলারের দ্বারা লোড করা হয়েছে৷

এই SDK-এর জন্য বরাদ্দ করা মেমরি অবিলম্বে মুক্ত করা হবে এমন নিশ্চয়তা নেই৷ প্রদত্ত sdkName এর জন্য requestSurfacePackage(java.lang.String, android.os.Bundle, java.util.concurrent.Executor, android.os.OutcomeReceiver) এর পরবর্তী সমস্ত কল ব্যর্থ হবে৷

এই API শুধুমাত্র কল করা যেতে পারে যখন কলার অগ্রভাগে চলছে। ব্যাকগ্রাউন্ড থেকে কল করার ফলে একটি SecurityException নিক্ষেপ করা হবে।

পরামিতি
sdkName String : আনলোড করা SDK এর নাম। এই মানটি null হতে পারে না।

unregisterAppOwnedSdkSandboxInterface

public void unregisterAppOwnedSdkSandboxInterface (String name)

একটি অ্যাপ প্রক্রিয়ার জন্য ERROR(/AppOwnedSdkSandboxInterfaces) নিবন্ধনমুক্ত করে।

পরামিতি
name String : যে নামটির অধীনে AppOwnedSdkSandboxInterface নিবন্ধিত হয়েছিল। এই মানটি null হতে পারে না।