[Interview] Explore V&A’s Rich and Expansive Archive Through Samsung Art Store
-
Similar Topics
-
By Samsung Newsroom
Samsung Electronics today announced that Samsung TV Plus, its leading free ad-supported streaming TV (FAST) service, will live stream the 2024 MAMA AWARDS, one of the world’s premier K-pop events. The MAMA AWARDS will be available to fans around the world through Samsung TV Plus’s exclusive K-pop channel, launched earlier this month, marking a major milestone in Samsung’s expansion of global streaming offerings.
The event will take place at the Dolby Theatre in Los Angeles on November 21 and at Kyocera Dome Osaka from November 22-23 local time. Samsung TV Plus will air all three days of the awards ceremony.
“Through strategic partnerships, we’re expanding Samsung TV Plus’s role as a key platform for bringing diverse, high-quality content to audiences worldwide,” said Yonghoon Choi, Executive Vice President of the Visual Display Business at Samsung Electronics. “We’re committed to making Samsung TV Plus a global gateway for premium entertainment, delivering unique local and international content that resonates with viewers everywhere.”
Expanding K-Pop Access Through Samsung TV Plus’s New Exclusive Channel
Launched on November 6, “K-POP by CJ ENM” — available exclusively on Samsung TV Plus — brings a rich selection of K-pop content to audiences across North America, Europe and Latin America.1 This new channel offers a diverse mix of performances, music videos, artist interviews and behind-the-scenes footage — including exclusive programming from CJ ENM’s Studio CHOOM, which showcases iconic K-artist choreography up close and in a minimalist setting.
With popular artists like TOMORROW X TOGETHER, aespa, ENHYPEN, Anderson .Paak and J.Y. Park — as well as the genre’s most-watched videos — the K-pop channel establishes Samsung TV Plus as a global leader in streaming K-content and connecting fans worldwide with top K-pop performances.
Celebrating a Decade of Streaming Innovation With Samsung TV Plus
As Samsung TV Plus celebrates its 10th anniversary, it has grown into a powerful force in streaming, with more than 88 million active users2 on Samsung smart TVs powered by Tizen OS. With the recent addition of over 4,000 hours of Korean content in the U.S., Samsung TV Plus has also solidified itself as a leading destination for K-content enthusiasts across the globe.
Through exclusive content partnerships and the inclusion of high-quality K-content like the MAMA AWARDS, Samsung TV Plus continues to deliver unique entertainment experiences to global audiences and set a new standard in free streaming.
1 The K-POP by CJ ENM channel is available exclusively on Samsung TV Plus in the U.S., Canada, UK, France, Germany, Italy, Spain, Brazil and Mexico
2 As of September, there are more than 88 million active users on Samsung smart TVs powered by Tizen OS.
View the full article
-
By Samsung Newsroom
Samsung Electronics today announced the installation of its Outdoor LED Signage XHB Series (P8) at the flagship location of Shinsegae Department Store in Seoul, South Korea. Unveiled during the “2024 Lights Up SEOUL, KOREA” event today, the installation is set to establish Myeongdong Square in Seoul as Korea’s new premier landmark, featuring a stunning media lighting display that illuminates the heart of Seoul’s iconic shopping district.
“Our LED displays present unlimited possibilities for places like Myeongdong to bear new elements of cultural significance,” said Hoon Chung, Executive Vice President of the Visual Display Business at Samsung Electronics. “This installation gives us an opportunity to showcase in the biggest way possible that our outdoor digital displays are built to engage, built to deliver impactful content, and built to last.”
Located within the Myeongdong Special Tourist Zone Area, Shinsegae Department Store is uniquely positioned as a free outdoor advertising zone that enables creative and expansive installations. Samsung’s massive outdoor LED signage featuring an anamorphic 8K display, wraps around the entire outer wall of the building, measuring 71.8 meters in width and 17.9 meters in height — equivalent in size to three basketball courts.
Spanning a total area of 1,285 square meters, the display is designed for resilience in harsh weather, featuring an IP66 rating for dust and water resistance, and UL 48 and UL 746C certifications1 for year-round durability. The installation is engineered for high visibility and vibrant color accuracy, with support for HDR10+ technology to deliver sharp contrast and rich visuals. With a max brightness of 8,000 nits,2 the display ensures exceptional clarity even in direct sunlight. Its high refresh rate of 7,680Hz minimizes flicker and the moiré effect,3 ensuring a stable display that remains visually crisp, even through camera lenses.
Samsung’s track record of success with digital signage spans prominent venues worldwide. In South Korea, Samsung provided the country’s largest ever high-definition LED signage to Coex SM Town, while transformative installations at New York’s Citi Field and Houston’s Minute Maid Park set new standards for in-stadium displays. At Citi Field, Samsung installed the largest scoreboard in professional baseball, featuring over 29,800 square feet of LED screens that immerse fans in the action from every angle. Similarly, at Minute Maid Park, Samsung’s high-definition LED technology redefined the fan experience with massive outdoor displays and a dynamic new main scoreboard, all designed to enhance the excitement of the game.
In Myeongdong, the new installation will not only host engaging advertisements and dynamic video content, but also transform into a breathtaking annual Christmas media façade, creating a festive atmosphere for visitors.
“Shinsegae’s media façade, beloved by global customers for the past 10 years, has now been recreated as Shinsegae Square. This transformation paves the way for it to become an iconic landmark of Seoul, making it not only a must-visit attraction but also a central hub for K-culture. We are excited to partner with Samsung to bring our customers unique experiences that blend heritage and digital technology,” Shinsegae spokesperson said.
Samsung’s Outdoor LED Signage is renowned for exceptional performance in demanding environments, evidenced by award-winning deployments at iconic venues such as Inglewood, California’s SoFi Stadium, which boasts the world’s largest LED videoboard ever built for sports, and the Formula 1 Las Vegas Grand Prix, where Samsung installed a 481-foot-long rooftop LED display in the shape of the F1 logo. As Myeongdong evolves into a global tourism destination, Samsung continues to lead with solutions that inspire and engage.
1 UL 48 and UL 746C certifications, issued by Underwriters Laboratories (UL), verify compliance with safety standards for electric signs and durability of materials in outdoor environments, including UV and weather resistance.
2 Maximum brightness measured post-calibration; actual values may vary with conditions.
3 The moiré effect is an undesirable visual phenomenon that occurs when repetitive patterns, such as lines, are captured in photographs.
View the full article
-
By Samsung Newsroom
Samsung Wallet is introducing a new feature called "Generic Card" for partners who cannot use other card types to fulfill their business requirements. This provides flexibility to modify various field labels for the card, according to the partners’ business needs.
Other cards, such as boarding passes and coupons serve a specific purpose, and their field labels cannot be modified. However, with a generic card, the label can be modified so it can be used for multiple purposes.
In this article, you learn how to modify a generic card to use it as an insurance card. We will explain the details specification with example of the generic card. At the end of the article a guide will be provided to implement this card for your reference, to help you modify your generic card according to your needs.
Card setup
Before you begin creating a new card template, log in to the Samsung Wallet Partner site and create a generic card.
Log in to the Samsung Wallet Partner site. Go to the Wallet Cards and then Create Wallet Card. For more details about creating a card, check the Manage Wallet Cards documentation. Select Generic Card from the available card templates. Modify the card information. When you have finished editing card information, launch the card to complete card setup. For more information on how to launch the card, see Launch Wallet Cards.
Template editor
Use the template editor to modify the card template.
From the "CardArt" view, you can modify the card color, set a background image or change the logo image properties. From the "Enlarge" view, you can modify the {{text1}} and {{text2}} labels. However, only the label itself can be changed in the Template Editor. To set the label value, you need to update the JSON file. From the "Detail" view, you can modify the "TextGroup" and "AppLink" properties. Modify the text label according to your needs. It is also possible to add new text fields, with a maximum of 12 text fields allowed. After every modification, click Save. Finally, apply all changes by clicking Apply. If you want to preview your changes, just click Preview.
Add to Samsung Wallet
Now that the card has been created in the site, it is ready to be distributed to fulfill your business needs.
Implement the "Add to Samsung Wallet" functionality to the platform where you are planning to distribute the cards. When users click "Add to Samsung Wallet," the card is added to the Wallet application on the user’s Galaxy device. This functionality can be added through the application/mobile web, MMS, or email. Additionally, you can use a QR code on a computer web browser and KIOSK. Samsung provides a Codelab guide for developers so that they can easily understand the implementation. For additional information on the Codelab guide, read Utilize the Add to Samsung Wallet service for digital cards. Further details can also be found in the Implementing ATW button documentation. Card specifications
To complete the "Add to Samsung Wallet" button implementation, you must generate the Card Data token and create a final URL. For more information, see Add to Samsung Wallet. Let’s start by reviewing the generic card specifications to generate the Card Data token. The generic card follows the specifications below. For more information on them, see the Generic Card section.
Name
Description
Title
The main title of the generic card. In the sample card, the title is "Card Title." In the image below, the title is "Insurance Identification Card."
Subtitle
The subtitle of the generic card. In the sample card, it is "Card Subtitle".
providerName
Use this field to set the card provider name. For more information, check the Card JSON Example below. However, the provider name depends on your card type and should be modified accordingly.
eventId
Enter an ID as an event identifier. In case your card is prepaid, for example a gift card, or if you have vouchers to events, such as concerts, it is possible to define an event ID. For instance: "event-001".
groupingId
Enter an identifier to group related cards.
startDate
Enter the starting date and the epoch timestamp in milliseconds.
startDate.relativeNotiTime
Enter the amount of time within which you want to provide a notification to the user. The notification time is the relative time from the startDate. The value can be up to 2880 milliseconds.
endDate
Enter the end date and the epoch timestamp in milliseconds.
endDate.relativeNotiTime
Enter the amount of time within which you want to provide a notification to the user. The notification time is the relative time from the endDate. The value can be up to 2880 milliseconds.
logoImage
Set the logo image URL. The file size must not exceed 256 KB. Also this image can be set from the Template Editor.
logoImage.darkUrl
Set the logo image URL for the dark mode. The file size must not exceed 256 KB.
logoImage.lightUrl
Set the logo image URL for the light mode. The file size must not exceed 256 KB.
bgImage
Set the background image URL. The file size must not exceed 512 KB.
text{i}
Set the label-text value that should be displayed for each field containing the details of your card. The label is defined in the Template Editor, shown in the image below.
To set the value of the label, update the JSON file.
image{i}
Enter the image URL, such as: "https://www.samsung.com/images/image1.png". This URL is just an example, you must update it according to your needs. This field only works in Generic Card Type3. We have used a Type1 card in the example. So this field in the example JSON has no effect on the card. You can find all three card type sample UIs here.
image{i}.lightUrl
Enter the image URL in light mode, such as: "https://www.samsung.com/images/light.png". This URL is just an example, you must update it according to your needs.
image{i}.darkUrl
Enter the image URL in dark mode, such as: "https://www.samsung.com/images/dark.png". This URL is just an example, you must update it according to your needs.
serial{i}
Set the serial for barcode or QR code.
serial{i}.serialType
Serial presentation type. For more information on the Presentation Types (serialType), see References.
serial{i}.ptFormat
Set the presentation format. For more details on the presentation formats (ptFormat), see References.
serial{i}.ptSubFormat
Set the presentation subformat here. For more details on the barcode formats (ptSubFormat), see References.
serial{i}.errorCorrectionLevel
Set the error correction levels in this field. The amount of redundancy or error correction data included in the code varies. QR codes offer four levels of error correction: L, M, Q, and H. The QR field looks like the following in your card:
privacyModeYn
Set the user authentication if required. Set the value to "Y" or "N"
bgColor
Set the card art color.
fontColor
Set the card art font color.
noNetworkSupportYn
Set the value to "Y" to open the wallet card when under the "No network" status. Otherwise, set the value to "N"
noticeDesc
Set the the notice description here. See the image below of how it is added to card.
appLinkLogo
Add the application link logo URL in this field.
appLinkName
Add the application link name in this field.
appLinkData
Add the application link URL in this field.
locations
List of locations where the card will be used. This information can be used to provide location-based services. Samsung Wallet can use this information to show maps, names of places, and addresses. For more information on the locations field and JSON format, check References.
Card JSON example
In previous sections, you have learned about the card specifications. Next, let’s implement the generic card fields according to your needs. In this section, as the aim is to create an insurance card, you must use the fields accordingly.
Samsung provides a specifically formatted JSON structure. You need to configure the card data objects within the structure’s data array. For more details, see the Generic Card section.
{ "card": { "type": "generic", "subType": "others", "data": [ { "createdAt": 1709712961000, "updatedAt": 1709712961000, "language": "en ", "refId": "933533e1-9284-461c-905f-bc177526a8d1", "attributes": { "title": "Insurance Identification Card", "subtitle": "Insurance Card", "providerName": "Samsung Insurance Co.", "eventId": "1", "groupingId":"1", "startDate": 1731299205000, "startDate.relativeNotiTime": 500, "endDate": 1731320805000, "endDate.relativeNotiTime": 400, "logoImage": "https://us-cdn-gpp.stg.mcsvc.samsung.com/mcp25/resource/2023/12/20/55ea769f-d14d-4c47-94cc-50cade36cdd9.png", "logoImage.darkUrl": "https://us-cdn-gpp.stg.mcsvc.samsung.com/mcp25/resource/2023/12/20/55ea769f-d14d-4c47-94cc-50cade36cdd9.png", "logoImage.lightUrl": "https://us-cdn-gpp.stg.mcsvc.samsung.com/mcp25/resource/2023/12/20/55ea769f-d14d-4c47-94cc-50cade36cdd9.png", "bgImage": "", "text1": "1234567", "text2": "Samsung Insurance Co.", "text3": "Jaqueline M", "text4": "Samsung Motors 2014 Galaxy5", "text5": "11SAM23SUNG3T", "text6": "(031)000-1235", "image1": "https://us-cdn-gpp.mcsvc.samsung.com/mcp25/resource/2024/3/5/b9445e3f-2ef5-4d81-9fca-b7a8a7cd599f.png", "image1.darkUrl": "https://us-cdn-gpp.mcsvc.samsung.com/mcp25/resource/2024/3/5/b9445e3f-2ef5-4d81-9fca-b7a8a7cd599f.png", "image1.lightUrl": "https://us-cdn-gpp.mcsvc.samsung.com/mcp25/resource/2024/3/5/b9445e3f-2ef5-4d81-9fca-b7a8a7cd599f.png", "serial1.value": ">1180MM2241B7C 0000000000000298060000000000 0 090870907 ", "serial1.serialType": "QRCODE", "serial1.ptFormat": "QRCODE", "serial1.ptSubFormat": "QR_CODE", "serial1.errorCorrectionLevel": "M", "privacyModeYn": "Y", "bgColor": "#3396ff", "fontColor": "#FFFFFF", "noNetworkSupportYn": "N", "noticeDesc": "{\"count\":2,\"info\":[{\"title\":\"NOTICE1\",\"content\":[\"DESCRIPTION1\",\"DESCRIPTION2\"]},{\"title\":\"NOTICE2\",\"content\":[\"DESCRIPTION1\",\"DESCRIPTION2\"]}]}", "appLinkLogo": "https://www.samsung.com/logo.png", "appLinkData": "https://www.samsung.com/", "appLinkName": "Samsung Insurance Co.", "locations": "[{\"lat\": 37.2573276, \"lng\": 127.0528215, \"address\": \"Suwon\", \"name\": \"Digital City\"}]" } } ] } } Generic card testing with the "Add to Wallet" test tool
Now, you can test the generic card with the "Add to Wallet" test tool provided by Samsung. Just follow these steps:
Sign in to the Add to Wallet test tool. For more information, see the Samsung Wallet Test Tool. Enter the private key in the "Enter Partner Private Key" field. In this tool, you find all cards that you have created from the Samsung Wallet Partner site in the "Select Card" section. For more information, see the Samsung Wallet Partner site. Select the generic card that you have just created. Now select JSON from the Data field and modify the existing JSON data fields according to the card specification details. After modifying the JSON data fields, check if the JSON is valid. Finally, if the private key is valid, the "Add to Samsung Wallet" button becomes active at the bottom of the page. Then, just click Add to Samsung Wallet to finish adding the generic card. If you use the provided example JSON and add the card to the wallet, the card looks like the following:
Server integration
In this step, server configuration is needed because the generated JWT token expires after 30 seconds. Developers are advised to only generate this token after a user has clicked the "Add to Wallet" button. As you have already performed testing with the "Add to Wallet" test tool, you need to configure your server.
For more information on the implementation of both the "Add to Samsung Wallet" button and server-side logic, see Implementing "Add to Wallet" in an Android Application. This article explains how you can distribute your card with your Android application and how to generate the JWT token at runtime, after pressing the "Add to Samsung Wallet" button.
Conclusion
You have now learned the basics for how to set up a generic card and test it for your business needs. In case you have further questions, contact Samsung Developer Support.
Related resources
Utilize the Add to Samsung Wallet service for digital cards Introduce Loyalty Cards to Your Application with Samsung Wallet Implementing "Add to Wallet" in an Android Application Seamlessly Integrate "Add to Wallet" for Samsung Wallet View the full blog at its source
-
By Samsung Newsroom
Samsung Electronics today announced that its proprietary cryptography module, Samsung CryptoCore,1 has earned the prestigious FIPS 140-3 certification2 from the National Institute of Standards and Technology (NIST). This certification underscores Samsung’s commitment to providing industry-leading security and data protection for Smart TV users.
“As home entertainment systems become more connected, it becomes critical for technology companies to safeguard the personal data that enables the seamless connectivity enjoyed by so many,” said Yongjae Kim, Executive Vice President and Head of the R&D Team, Visual Display Business at Samsung Electronics. “By integrating the FIPS 140-3-certified CryptoCore into our Smart TVs, Samsung is taking our commitment to secure home entertainment a step further and ensuring that our users can freely experience the value of our products.”
Beginning in 2025, Samsung CryptoCore will be fully integrated into Tizen OS,3 Samsung’s Smart TV operating system, enhancing the security of key products such as TVs, monitors and digital signage. With Samsung CryptoCore embedded in Tizen OS, personal data linked to Samsung accounts will be securely encrypted, SmartThings authentication information will be protected from external hacking threats and content viewed on TVs will benefit from enhanced copyright protection.
Since 2015, Samsung has equipped its Smart TVs with Samsung Knox,4 a security platform that has earned Common Criteria (CC) certification5 for 10 consecutive years. But with its newly acquired FIPS 140-3 certification, Samsung has strengthened its defenses against hacking and data breaches even further, proactively protecting personal information with advanced encryption technology.
Recognized by governments in 10 countries,6 the FIPS 140-3 certification requires comprehensive testing of cryptographic modules to ensure their security, integrity and reliability. For users, this means Samsung Smart TVs offer cutting-edge protection against privacy breaches, allowing them to enjoy their content, connect smart devices and engage with IoT services securely and without concerns.
1 Samsung CryptoCore is a software library that encrypts and decrypts data during both transmission and storage.
2 Federal Information Processing Standard (FIPS) 140-3 covers the security requirements for cryptographic modules.
3 Tizen OS 9.0.
4 Samsung Knox provides privacy protection on its Smart TVs through features like Tizen OS Monitoring, Phishing Site Blocking and Knox Vault. Knox Vault is available only on the QN900D and QN800D models.
5 Common Criteria (CC) certification is a global security standard recognized by 31 countries for IT product integrity.
6 Recognized in the United States, Canada, UK, Germany, France, South Korea, Japan, Singapore, Australia and New Zealand.
View the full article
-
By Samsung Newsroom
Play Asset Delivery (PAD) enhances the gaming experience by offering the advantages of application bundles, which are packages that group all necessary resources for efficient delivery, making downloads faster and installations smoother for players. Android App Bundles (AAB) are a type of PAD, the modern way of building and publishing Android applications and games in Google Play Store. The Samsung Galaxy Store recently introduced the option to upload AAB files to Galaxy Store Seller Portal. However, AABs have some Google Play Store proprietary features that might make a game non-functional when it is uploaded to Galaxy Store. This article explores ways in which you can utilize PAD while ensuring your game remains compatible with Galaxy Store.
Purpose
PAD is a very useful feature that helps reduce the game's initial download size, as it downloads various game assets at runtime. There are multiple ways of using this feature in Unity games. However, certain PAD configurations may cause the game's assets to fail to load when the game is published to Galaxy Store. In this tutorial, you learn how to properly configure PAD and adjust Unity configurations accordingly, so your game can be successfully published to Galaxy Store.
In the following sections, PAD functionalities are implemented in an existing coin collector game (referenced in the article Integrating Samsung IAP in Your Unity Game), demonstrating how to download and apply a new set of materials for the floor tile at runtime. Here, you also learn about the adjustments that are necessary for successfully publishing a game using PAD to Galaxy Store.
Prerequisites
To follow this tutorial, ensure that your setup has the following:
Unity Game Engine version 2023.2 or above The "Addressables for Android" package for Unity A Google Play developer account A Galaxy Store Seller Portal commercial seller account A game created using Unity where you want to add the PAD features To implement PAD in your Unity game, you can use the "Addressables for Android" package. This is the easiest and most convenient way to implement PAD in a game. This package is only supported on Unity version 2023.2 or above. If your game is built using a previous version of Unity, please migrate your game to the Unity 2023.2 version first.
PAD implementation considerations
There are multitude of ways to implement PAD in games built with the Unity engine. However, the most common method for implementing PAD restricts the game to being publishable exclusively on the Google Play Store and does not provide any easy method of disabling PAD for uploading these games into other storefronts. For the best experience with your game, it is recommended to use PAD to bundle all game assets together. This approach ensures that all necessary resources are downloaded right away, preventing any missing assets which could affect the user experience.
There are three types of asset packs that can be configured while using PAD: "Install Time," "Fast Follow," and "On Demand." Games that use the "Install Time" asset packs can be uploaded to Galaxy Store without any issues as these assets are installed together with the game and do not require any separate downloads. When Galaxy Store generates a universal APK from AAB files, the "Install Time" assets are directly included in the APK.
Games that are designed to only use "On Demand" or "Fast Follow" asset packs do not allow downloading their assets when they are uploaded to a storefront that is not the Google Play Store. Thus, for any game that uses either the "On Demand" or "Fast Follow" asset pack delivery method, PAD must be disabled in order to upload the game to Galaxy Store.
To ensure that your game's PAD functionality can be easily switched off and your game is successfully uploaded to Galaxy Store, the "Addressables for Android" package must be used to implement PAD.
This article assumes that you have implemented PAD in your game using the "Addressables for Android" package and that you have also configured these two assets with the following configurations:
A "Grass" asset pack set to be downloaded as a "Fast Follow" asset A "Ground" asset pack set to be downloaded as an "On Demand" asset In the next sections, you learn how to integrate PAD into your existing Unity game using the "Addressables for Android" package so that you can easily publish your game to Galaxy Store with minimal changes.
Basic steps to implement PAD in your Unity game
In this section, you learn how to configure your assets using PAD functionality that keeps your game compatible with both Google Play and Galaxy Store.
In Unity, configure "Build Settings" to run the game on Android and generate the AAB: Click File > Build Settings and then select the Android tab. On the "Android" tab, select the Build App Bundle (Google Play) checkbox.
Figure 1: Enabling the "Build App Bundle" option
Install the "Addressables for Android" package from the Unity Package Manager. This additionally installs the "Addressables" package as a dependency. Initialize PAD. Go to Window > Asset Management > Addressables and click Init Play Asset Delivery.
Figure 2: "Init Play Asset Delivery" option
Configure the "Addressables Groups" for assets: Select Window > Asset Management > Addressables > Groups. Click New > Play Asset Delivery Assets. This creates a new group. Enter a descriptive name. For the purposes of this walkthrough, name one group "Grass" and then create another group and name it "Ground."
Figure 3: Creating asset groups
Assign the assets to the Addressables Group: Select the assets you want to assign to an Addressables Group and in the "Inspector" dialog box, tick the Addressable checkbox. The asset is converted into an "Addressable" and assigned to the default Addressables Group.
Figure 4: Converting assets into Addressables
Click the folder name in the "Group" field. In the example, the folder name is "Grass."
Drag and drop the asset from the default group to the group of your choosing. For the purposes of this exercise, assign the grass material related assets to the "Grass" Addressables Group and ground material related assets to the "Ground" Addressables Group.
Figure 5: Assigning assets to groups
Configure the "Play Asset Delivery" schema for these addressable groups to add the PAD functionality to your game: Select any of the top-level Asset Group names in the "Addressables Groups" window to open the inspector window for that group. Scroll down in the "Inspector" window until you find the "Play Asset Delivery" schema. From the "Delivery Type" dropdown list, select Install Time, Fast Follow, or On Demand, based on your requirements. There is a demonstration below on how the game might behave on Galaxy Store when you choose the option "On Demand." For more information, see the Testing your PAD Enabled Game on the Play Store and Galaxy Store section.
Figure 6: Selecting the delivery type for asset groups
In the "Addressables Groups" dialog box, select Build > New Build > Play Asset Delivery. Now, the game's addressable-asset configuration is complete. Each asset assigned to an addressable group is packed into an asset pack for that group and the asset pack can be downloaded separately using PAD. Note that asset packs can only be downloaded separately from the Play Store if their delivery type is "On Demand" or "Fast Follow."
Loading and using the addressable assets with AssetReference
This section provides a script which details how to load the addressable assets that were implemented with PAD in the earlier sections. Your game is set up to load the addressable assets efficiently. If an asset has not been downloaded yet, the game automatically attempts to download it as an "On Demand" asset using PAD before it loads into the game.
To complete this setup, use the AssetReference type in your game. This feature enables you to manage and edit addressable assets dynamically at runtime, which gives you more flexibility and control over the assets that your game uses.
To use two game addressable assets in your script, follow these steps:
Create two AssetReference instances for the floor types (grass and ground) that you added in the previous section. Add the SerializeField attribute to these AssetReference instances. This enables setting up the assets directly from the Unity editor: [SerializeField] AssetReference Grass_mat; [SerializeField] AssetReference Ground_mat; In the Unity editor, drag and drop the grass and ground assets into the fields in the GameObject script section. Now the AssetReferences specifically reference these two assets during runtime.
Downloading assets during runtime is necessary for PAD. Use AsyncOperations to load these assets:
Grass_mat.LoadAssetAsync<Material>().Completed += OnGrassAssetLoaded; Ground_mat.LoadAssetAsync<Material>().Completed += OnGroundAssetLoaded; The OnGrassAssetLoaded and OnGroundAssetLoaded handler functions are defined to use the loaded assets. The LoadAssetAsync method passes the asset using an AsyncOperationHandle, and from there you can access the asset itself using the AsyncOperationHandle.Result parameter.
In this game, we are using PAD to load the grass and ground assets. Once they are successfully loaded, you can change the floor tile material using the following handler functions.
In this example, after loading the grass and ground assets, you apply the material change to all the floor tiles in the level:
void OnGroundAssetLoaded(AsyncOperationHandle<Material> handle) { groundMaterial = handle.Result; foreach (GameObject prefab in floorPrefabs) { prefab.GetComponent<MeshRenderer>().material = groundMaterial; } } Save the script and go back to the Unity editor. The new materials are loaded and applied to the floor tiles in the level.
Testing your PAD-enabled game on the Play Store and Galaxy Store
The game configuration for using addressable assets and PAD is complete. Before publishing your game, consider whether to use the "Split Application Binary" option.
On the Android Player settings, expand "Publishing Settings," and scroll down to the "Split Application Binary" checkbox. This checkbox decides how Unity handles packaging when building the game. If this checkbox is checked, Unity splits the base game files from the asset files when building the AAB and enables you to configure each PAD feature in your game. In the images below, you can see what happens when you choose this option. If this option is unchecked, Unity always generates a singular archive file and disables PAD. This is the safest option for uploading your game to Galaxy Store, if your PAD configuration is using options that are not supported by Galaxy Store.
Figure 7: "Split Application Binary" option
To enable PAD, check the "Split Application Binary" option Build the game and upload the generated AAB file to both the Play Store and Galaxy Store to check how the game behaves in both stores. If the game assets load correctly in both stores, the PAD configuration was done correctly. Below is an example of what might happen if "On Demand" configuration is used instead.
When the game is downloaded from the Play Store, Unity automatically downloads the "On Demand" assets. A notification for an "Additional file download" appears during the download process:
Figure 8: Additional file download notification
Once the download is complete, the downloaded asset is loaded in your game, replacing the previous assets. In this example game case, the old ground and grass materials are changed to the new textures configured in the previous section.
Figure 9: Assets updated in the game
However, when the same game AAB file is uploaded to Galaxy Store and a user downloads it from this store, the PAD assets are not downloaded. Thus, when the game tries to use these assets, they cannot be loaded into the game's memory and glitches might appear.
While additional error checking can be done to avoid these glitches, the functionalities which require PAD assets still cannot be used. Internally, the game checks the installation source before trying to download the PAD assets and throws an error if the game is not installed from the Play Store.
Figure 10: Issues might occur if a PAD-enabled game is uploaded to Galaxy Store
Making the game compatible with Galaxy Store
To upload your game to Galaxy Store, you can adjust the asset handling to be compatible with Galaxy Store. The best way to do this is by bundling the assets together with the base game, as explained in the previous sections.
This method is highly recommended. This ensures that the required assets are always available with the game, as well as allowing you to change the assets during runtime, if necessary. Though this can increase the game download size and require you to upload a separate AAB file to Galaxy Store, the process ensures that the assets are always available with the game for full feature parity across all storefronts.
To make your game build compatible with all storefronts, choose one of the following approaches.
Option 1: Uncheck the "Split Application Binary" checkbox
Go to Build Settings > Player Settings > Publishing Settings and uncheck the Split Application Binary checkbox. When you then compile the game, the new AAB file is compatible with Galaxy Store and all the game's functionalities remain intact.
Figure 11: "Split Application Binary" unchecked option.
With this option, the assets are packaged together with the game and no separate download is required.
Option 2: Change delivery type to "Install Time"
If you want to keep using PAD, you can achieve compatibility by changing all addressable asset groups' delivery type to "Install Time." Keep in mind that when choosing this option, all assets need to be changed to "Install Time" one by one, while the previous one is a one-click process. Unlike "On Demand" and "Fast Follow" asset packs, "Install Time" asset packs are included in the universal APK. Thus, the assets are downloaded together with the game and work as intended without causing errors.
From the user's perspective, the main difference between "Install Time" and other PAD options is whether the assets are downloaded when the game is installed or later during gameplay. The initial download size is larger when the assets are packaged together with the game, but on the other hand, the user will not need to wait for the assets to download later during gameplay. This enables offline gameplay as well.
Conclusion
In this tutorial, you have learned how to configure a Unity game with PAD so that it can easily be published to Galaxy Store without requiring massive changes or breaking any compatibility. For more information, check out the "Addressables for Android" package documentation page Build content for Play Asset Delivery. If you have any feedback or questions, reach out to us in the Samsung Developers Forum.
View the full blog at its source
-
-
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.