Filter
-
Content Type
-
Category
Mobile/Wearable
Visual Display
Digital Appliance
Platform
Recommendations
Filter
Connect Samsung Developer Conference
webspeakers get to know samsung developer conference speakers. jh han vice chairman & ceo, device experiencesamsung electronics jaehyeon jung evp, smartthings teamsamsung electronics cathy you svp, global business and strategyaqara anil yadav head of north america, bixby labsamsung electronics shin-chul baik principal engineer of security team, mobile experience businesssamsung electronics hobum kwon corporate vp, platform teamsamsung electronics bongjun ko evp, application s/w r&d groupsamsung electronics sally hyesoon jeong vp & head of framework r&d group, mobile experience businesssamsung electronics hon pak vice president, head of digital health team(mx)samsung electronics pattie maes professor of media technology at mitmit nick holzherr whisk aaron swift director of product, developer experiencesmartthings alex jun gao head of digital health labsamsung research america ben asaf chief technology officerclika byungwoo min software engineer, framework r&d team(mx)samsung electronics changwoo kim software engineer, basic platform r&d group(mx)samsung electronics charles kim software architect, smartthings team(dpc)samsung electronics charles lim tizen licensing pm(vd)samsung electronics daehwa rayer lee chief executive officerdr.tail daniel moneta marketing & strategy, smartthings | marketing chair, matter work groupsmartthings david berger senior software engineerunity technologies donghun shin ux engineer, next generation ux group(vd)samsung electronics dongkyun son software engineer, se team(sr)samsung electronics dongmin chwa software engineer, system platform r&d group(mx)samsung electronics dongsun lim software engineer,smartthings r&d group(dpc)samsung electronics dongwan kang software engineer, smartthings server r&d group(dpc)samsung electronics dongyeon jeong staff engineer, data analytics lab(sr)samsung electronics eric song head of data service lab(sr)samsung electronics erik jorgensen senior computer vision and machine learning research engineersmartthings euna ko software engineer, se lab(vd)samsung electronics gennady petrov principal software developer, display drivernvidia hyeonseok lee software engineer, soc architecture team(sr)samsung electronics hyunseok cha principal s/w engineer, s/w platform lab(vd)samsung electronics james geraci master, data intelligence team(sr)samsung electronics ji-hoon lee software engineer, tizen platform lab(isr)samsung electronics jiman cho software engineer, smartthings r&d group(dpc)samsung electronics joan soskin director, product operationssmartthings jong woo vp games, service business team(mx)samsung electronics jongho kim engineer, h/w platform lab(vd)samsung electronics junho lee principal s/w engineer, security lab(vd)samsung electronics kangwook lee software engineer, ai methods team(sr)samsung electronics kwang pyo choi master, visual technology team(sr)samsung electronics kwanyoung kim h/w engineer, h/w platform lab(vd)samsung electronics kyungyoun won software engineer, s/w platform group(da)samsung electronics madhukar budagavi senior director, multimedia standardssamsung research america markus höckner senior software developerocilion iptv technologies gmbh michael barnes head of lab, framework r&d group(mx)samsung research uk michael hwang co-founder/chief strategy officerdatumo olivier li overseas sales directorcvte pankaj agarwal chief executive officertaghive inc. rajan joshi principal engineersamsung research america rajiv kavuri senior director, product management, samsung walletsamsung electronics america robert white sr. directorsamsung electronics rongchun wu software engineer, framework r&d group(vd)samsung electronics ryan yunil kim principal s/w engineer, product s/w lab(vd)samsung electronics sangchul song corporate vice president, advertising service group(mx)samsung electronics sanghun kim picture quality engineersamsung electronics seikwon kim software engineer, mde lab(sr)samsung electronics seong-il hahm master, senior architect, s/w platform group(da)samsung electronics seongnam oh senior technical director, video systemssamsung research america steve herbert director, global business developmentsmartthings sungchull lee software engineer, health s/w r&d group(mx)samsung electronics suzie hyun director, industry relationssamsung research america yongseon lee co-founder & head of infrastructurevessl ai youngjun kim software engineer, service s/w lab(vd)samsung electronics zach michel engineering managersmartthings back to previous page
Connect Samsung Developer Conference
webspeakers get to know samsung developer conference speakers. jh han vice chairman & ceosamsung electronics daehyun kim evp, head of global ai centersamsung electronics sally, hyesoon jeong evp, head of framework r&d teamsamsung electronics moonsoo kim vp , head of application s/w r&d groupsamsung electronics alex yw lee evp, head of visual experience pmsamsung electronics young ah lee vp, head of ux teamsamsung electronics hobum kwon vp, head of platform teamsamsung electronics jaeyeon jung evp, head of smartthings teamsamsung electronics laura e. kohler chief sustainable living officer, member, board of directorskohler co. tobin richardson president and ceoconnectivity standards alliance girish naganathan evp, chief technology officerdexcom shin baik head of security assurance groupsamsung electronics aram kim software engineer, smartthings r&d groupsamsung electronics bill mandel vp industry relations, dmssamsung electronics bokdeuk jeong software engineer, security&privacy teamsamsung electronics changgun ko principal engineer, s/w architectsamsung electronics chong hee kim corporate vp, head of b2b r&d groupsamsung electronics david morin executive directoraswf en-tien hu software engineer, language intelligence teamsamsung electronics fyodor kyslov technical leader, android visual codecs teamgoogle hwan chang software engineer, kitchen solution s/w groupsamsung electronics hyoungjin lee software engineer, service s/w groupsamsung electronics hyukwoo park software engineer, platform teamsamsung electronics hyunju shin principle engineer, platform teamsamsung electronics hyuntae bak staff engineer, smartthings server r&d group(dpc)samsung electronics il-young jeong co-founder and research scientistcochl jaeyoung jun ceo and co-founderomnious jeongsik cheon principal engineer, s/w architectsamsung electronics jiho shin software engineer, language intelligence teamsamsung electronics jonggab park software engineer, smartthings r&d groupsamsung electronics juyong song software engineer, visual intelligence teamsamsung electronics keehwan ka software engineer, ai solution groupsamsung electronics kiljong kim software engineer, data service labsamsung electronics kwang pyo choi master, visual technology teamsamsung electronics leo yang professional, product managementsamsung electronics matt frost director of product management chairman of aom's steering committeegoogle michelle menkiti professional, product managementsamsung electronics moohyun shin software engineer, smartthings r&d groupsamsung electronics moonbae song software engineer, health s/w r&d groupsamsung electronics namjin kim software engineer, smartthings r&d groupsamsung electronics rajan joshi principle engineer multimedia standards (samsung research america)samsung electronics sandra martocchia senior product managersmartthings saverio labella principal software architectharman seongjae choi software engineer, data service labsamsung electronics soyoung lee principal software engineer, security labsamsung electronics tiffany janzen software developer, tech foundertiffintech and taekoff yeaseul song software engineer, speech intelligence teamsamsung electronics yong song software engineer, health s/w r&d groupsamsung electronics youngkwon lim principle engineer multimedia standards (samsung research america)samsung electronics back to previous page
Design One UI Watch for Tizen
docprovide timely information when users need it consider the key information that users will want from your app, and how to deliver the information within seconds examples provide fitness and health status provide real-time eta alerts using location service enable contactless payment provide notifications for important events things to check is your app’s function relevant to the user's current state or context? how can your app utilize the user's physical states that it monitors? can the user process information at a glance? did you make sure your screens don't provide too much information all at once?
events iot, health, game, design, mobile, galaxy watch, foldable
blogthe samsung developer conference 2023 (sdc23) happened on october 5, 2023, at moscone north in san francisco and online. among the many exciting activities at the conference for developers and tech enthusiasts, code lab offered a unique opportunity to learn about the latest samsung sdks and tools. code lab is a hands-on learning experience, providing participants with a platform to explore the diverse world of samsung development. code lab activities are accessible for developers of all skill levels and interests, ensuring that everyone, from beginners to experts, can find something exciting to explore. covering a wide array of topics within the code lab, the conference catered to the diverse interests of the participants. here's a quick look at some of the sdc23 topics: 1. smartthings participants had the chance to build a matter iot app using the smartthings home api and create virtual devices that they could control using the smartthings app or their own iot apps. they also learned how to develop a smartthings find-compatible device. these topics are all about connecting and enhancing the smart home experience. 2. galaxy z participants, who are interested in foldable technology, were able to develop a widget for the flex window. this topic opens new possibilities in app design and user interaction. 3. samsung wallet participants learned to integrate the "add to samsung wallet" button into sample partner services. they also learned to implement in-app payment into a sample merchant app using the samsung pay sdk. these topics focus on enhancing the mobile wallet experience for samsung users. 4. gamedev game developers and enthusiasts had the opportunity to optimize game performance with adaptive performance in unity. they also learned to implement flex mode into unity games for foldable phones. these topics offer insights into the gaming industry's latest trends and technologies. 5. watch face studio code lab also provided an activity for participants to create a watch face design with customized styles using watch face studio. participants also learned how to convert the watch face design for galaxy z flip5's flex window display using the good lock plugin. 6. samsung health the health-focused code lab topics covered measuring skin temperature on galaxy watch and transferring heart rate data from galaxy watch to a mobile device with the samsung privileged health sdk. participants also learned how to create health research apps using the samsung health stack. these topics provide valuable insights into the health and fitness tech landscape. from creating virtual devices to building health-related apps, participants left the conference with new knowledge they could apply to their development projects. the samsung developer conference is a celebration of innovation and collaboration in the tech world. with a diverse range of topics in code lab, participants were equipped with the tools and knowledge to push the boundaries of what is possible in samsung's ecosystem. though sdc23 has ended, the innovation lives on! whether you missed the event or just want to try other activities, you can visit the code lab page anytime, anywhere. we can't wait to see you and the innovations that will emerge from this conference in the coming years. see you at sdc24!
Christopher Marquez
tutorials mobile, health, game, blockchain, galaxy watch, foldable, iot
blogif you are looking for an opportunity to boost your skills and learn how to use samsung sdks and tools through various hands-on learning experiences, code lab is the right place for you. code lab is a learning platform where you can get started with the latest technologies and services in samsung. through its series of tutorials, it introduces you to the use cases or scenarios for a specific technology. it engages anyone through the step-by-step process of building a sample application or adding a new feature to an existing one. with that, you can integrate your learnings from code lab into your individual or business needs. you can start, by trying out one topic or use case that interests you, and get to know how to easily use a service or tool. it covers topics related to mobile, ai, iot, health, game, security, blockchain, web, or wearables. new topics have been published in code lab for you to learn about samsung’s latest cutting-edge technologies, enabling you to use them to your advantage. with the advent of foldable smartphones, contents like camera web app on foldables, flex mode, app continuity, and multi-window will help you create or modify your applications to adapt seamlessly with different form factors. code lab also provides tutorials on designing your watch face and tracking exercises for the newly released galaxy watch4, operating on wear os powered by samsung. to enhance your hands-on learning experience with code lab, you can simply test sample applications in remote test lab even if you don’t have any physical galaxy devices. it’s a service that allows you to test your apps virtually and remotely, on thousands of samsung galaxy mobile and watch devices. flagship devices are widely available like the galaxy s21 series and the latest galaxy z fold3 and z flip3. not only can you learn with code lab, but you can also test anytime, anywhere. now, are you ready to start your learning journey? visit: https://developer.samsung.com/codelab
Christopher Marquez
Connect Samsung Developer Conference
webtech square products and services using our new technology are displayed in the space by each field, and you can find details in the keynote speech and sessions. platform innovation home & health experience mobile & screen experience sustainability category platform innovation home & health experience mobile & screen experience sustainability smartthings matter/hub the most comprehensive iot platform for matter. the matter-compatible smartthings hub has been deeply integrated across samsung tvs, family hub refrigerators, smart monitors, and mobile chargers. working together, these hubs can form a multi-hub network for wider coverage and better reliability. setting up a new hub is also easier than ever with our new hub replacement tool. smartthings find & galaxy smarttag2 to keep your belongings and loved ones safe, you can use the newly updated smartthings find and smarttag2. with the new lost mode, someone who has found your misplaced key simply can tap their phone to the tag2 to contact you. you can even use tag2 to keep your pets healthy. attach a tag2 to your dog’s collar and keep track of their walking habits. smartthings home view smartthings home view provides an indoor map of your home, allows you to set the location of rooms and easily control your home devices at once, and displays environmental information such as room temperature and humidity, making your smart device experience easier and more intuitive. we also provide various ways to create indoor maps using ai technology. smartthings tv experience find out more about enhanced tv experiences with smartthings, including ring my phone, built-in smart home hub and home monitoring, and on a galaxy smart phone, the quick tv remote functionality. wwst partner find out about upcoming "works with smartthings" partner devices, including interesting gadgets, harman speakers, and presence sensors. calm onboarding calm onboarding is a stepping stone to a convenient life. it allows the user to complete device registration in the background by linking product purchase information, or by temporarily registering nearby devices and completing the final confirmation - the user just needs to have a previously registered device to connect to. smartthings ecosystem wall smartthings has been developed with support for the matter protocol and hca standards. it's an ever-evolving system, continually expanding user device options and enhancing usability. in close partnership with major home iot companies like philips hue / aeotec and other device-focused allies, we're delivering unique advantages to both partners and end-users. back to previous page vision ai pro cooking: bespoke view camera oven and camera wall oven the vision ai pro cooking camera oven optimizes cooking settings while monitoring food. if the oven is set to cook a recognized dish, it recommends a cooking mode, temperature, and time. the user can see how their meal is coming along in real time. during cooking, the oven detects cooking status, and afterwards, creates a time-lapse. screens everywhere at home we are building a screen ecosystem by expanding the tizen os to all of our home appliances. in this booth, we will display a family hub refrigerator with a 32-inch screen and a wall oven with a 7-inch screen, which you can use to experience various services such as multimedia, iot, and ai. samsung food: food your way samsung food offers a single platform to take you from "what’s for dinner?" to food on the table. discover recipe inspiration and storage, meal planning, nutritional information, automatic shopping lists, guided cooking, and sharing recipes and reviews with your friends. we put the world’s food knowledge at your fingertips! expand your health experience with samsung health making healthy habits easier with samsung health and new galaxy watch. samsung health can help you develop healthy habits by providing insights on what you’re doing well and what needs improvement, based on measurement data. leveraging galaxy watch's advanced health sensors tracking of raw or processed health sensor data from a galaxy watch is available through the samsung privileged health sdk. specialized features of the galaxy watch, like body composition and skin temperature measurements, can easily be utilized in wear os applications. the sdk maintains low watch battery consumption during continuous data tracking. empowering research & clinical experiences with samsung health stack samsung health stack is an open source project that provides end-to-end solutions such as application sdk, web portal, and backend systems for various use cases from medical research studies to clinician services using wearable devices. in this booth, you can explore all features of samsung health stack and check out some of its real-world use cases. back to previous page where gaming comes together gaming hub is an all-in-one platform where users can spend more time together and enjoy a variety of games through streaming, with over 3,000 titles from industry-leading partners. in addition, we'll be demonstrating to game developers how to utilize gamepads effectively with live demos, and have content for gamepad manufacturers interested in tv integration. deliver the best multi-device experience between samsung devices multi-control allows you to control two or more devices at the same time with a keyboard or mouse. you can access content such as news and netflix using your mouse, without needing the remote control, and then immediately continue using the mouse to work with your pc. introduction to iris (instant rendering & immediate sign-off) for hdr10+ gaming iris is a software tool that provides real-time, simulated rendering of hdr10+ gaming, hdr10, or sdr on multiple connected displays. this exhibition covers the overview of hdr10+ gaming, iris features, and how game developers can utilize it for their development and qc process. currently, iris works based on an nvidia api for the hdr10+ gaming communication protocols. feel the pleasure and value of being together with witty conversations chat together lets you talk remotely while watching your favorite tv programs. a click on a pop-up notification will start a chat together session. you can chat using either ai-recommended text and emojis, voice input, or mobile application and web browser. we are also developing other tv applications that provide togetherness experiences with a tv chat open api and platform. camera experience for tv any application that uses a camera can join camera experience. so far, we have a video call, workout, health care and gesture applications. you can easily create camera applications for tv by using our open api and platform. cheering together with emoticons and enjoyable events while watching sports cheer together lets you move beyond just watching tv, by providing experience that family and others can share while watching sports, through cheering emoticons and co-participating in events according to the cheering mood. we are planning to auto-generate emoticons with the user's voice to provide them with more ways to express enjoyment. remote test lab for tv remote test lab is a solution that makes it easy for tv application developers to use any real tvs they want. if you have an internet-connected pc, you can configure a remote development environment using a real tv. we support various models based on product and year, and no further effort is required to get access to specific models. all you need is your pc. smart edge blending - merge screens using two freestyle 2023 projectors. to use smart edge blending, two freestyle projectors are placed horizontally or vertically, and the edge blending function, which connects the images, is set up by taking a picture on the smartthings mobile application. samsung wallet: add to wallet add to samsung wallet is an e-wallet service that allows customers using samsung devices to add various digitized contents to samsung wallet. users can add their event tickets, coupons, boarding passes, and other types of data into samsung wallet using "add to samsung wallet" buttons in applications, web pages, e-mail, or social media messages by various content providers. samsung wallet: online payment check out faster in our payment apps. there's no need to enter your credit card number for in-app or online purchases—simply select samsung pay at checkout and authenticate the purchase with your fingerprint or pin. samsung wallet: student / company id add your student or company id to samsung wallet to make access simple. open doors, get into the library and events, pay for lunch, and more with just a tap of your phone or watch. experience the convenience of your student or company id working when your screen is off and your phone is locked, and even when your battery runs out. samsung wallet: mobile driver’s license / state id users will soon be able to add their driver’s license or state id to samsung wallet. initially, mobile driver’s licenses / state ids will work in a limited number of states at select tsa checkpoints to verify an id with just a tap. advanced professional video codec the advanced professional video (apv) codec is a new video codec for prosumers who want cinematic-quality video recording and post-production with smart phones. the apv codec provides perceptually lossless video quality and consumes 20% less storage compared to existing formats. back to previous page net zero home: build a sustainable home with smartthings energy smartthings energy connects everything from solar panels to your ev chargers to build a sustainable home. through partnership, smartthings energy lets you manage your energy production, storage and consumption and lowers your monthly energy bill and carbon footprint. open license for solar cell remote tech the solar cell remote is eco-friendly remote controller made out of recyclable materials that creates no battery waste, and incorporates improvements based on research into the potential environmental pollutants caused in remote control production. by opening the solar cell remote control technology to everyone, eco-friendly technology can be distributed wider. intelligent power saving intelligent power saving is power reduction based on human vision characteristics. a deep learning algorithm identifies regions of non-interest, which helps in reducing power consumption without letting the user notice any changes in the image. relumino mode relumino mode improves visual accessibility by making it easier to recognize objects. the edge thickness and colors in the image can be controlled depending on the user's vision level. the "together mode" supports a social tv watching experience, by displaying the original and relumino mode videos at the same time, allowing users to watch tv with their families. spoken subtitles people with low vision, or who cannot read the subtitles, will better understand foreign content such as movies if the tv gives them narration by reading the subtitles out loud. resource circulation gallery our goal at samsung is to apply recycled resin to 100% of the plastic components used in our products by 2050. we're using materials like fishing nets and recycled glass for samsung galaxy products, crafting tv covers from low-carbon resin captured from carbon emissions, and developing microplastic-filtering technology to reduce marine pollution. circular factory we’re highlighting samsung's processes for upcycling waste, showing how our research is integrated into products. we’re uncovering recyclable materials from waste products and are creating a roadmap for how that waste can be reintegrated into samsung products. back to previous page
Develop Health
docnotesamsung health sdk for android partners, please migrate to samsung health data sdk to access additional health data types and continue to utilize existing data types supported via samsung health sdk for android samsung health sdk for android has been deprecated please find instructions to migrate to samsung health data sdk migration guide from samsung health sdk for android to samsung health data sdk following the release of samsung health data sdk, samsung health sdk for android will be deprecated in few months after this transition, partner apps that currently use samsung health sdk for android need to transition to samsung health data sdk benefits of migrating to samsung health data sdk samsung health data sdk enables apps to access health data in the samsung health app on android smartphones not only does it offer the functionality as samsung health sdk for android, but it also provides various additional advantages compared to samsung health sdk for android, samsung health data sdk applies the service logic displayed in the samsung health app's trackers and provides more specialized data from the app this allows health service providers to gain a better understanding of users' health indicators for example, to retrieve the same step count data displayed in the samsung health app when using samsung health sdk for android, you need to set the data type as stepdailytrend set filters for both the time period source_type_all this ensures that you receive the same step count data that`s displayed in the samsung health app samsung health sdk for android code val healthdataresolver = healthdataresolver healthdatastore, null val date = localdate now atstartofday toinstant zoneoffset utc toepochmilli val filter = filter and filter eq stepdailytrend day_time, date , filter eq stepdailytrend source_type, stepdailytrend source_type_all val stepsrequest = healthdataresolver readrequest builder setdatatype stepdailytrend health_data_type setfilter filter build with samsung health data sdk, you can simplify a data request by utilizing the total aggregator and only applying a time filter this data request allows you to retrieve the daily total step count displayed in the samsung health app without considering the potential oversight of setting the source type to `all' samsung health data sdk code val starttime = localdate now atstartofday val endtime = localdatetime now val localtimefilter = localtimefilter of starttime, endtime val stepsrequest = datatype stepstype total requestbuilder setlocaltimefilter localtimefilter build samsung health data sdk provides various goal data types, such as step goal, sleep goals, and active calories burned goal goal data types help to provide appropriate guidance to users samsung health data sdk can read, write, update, and delete health data in the samsung health app it can also retrieve associated data related to specific data for example, the samsung health app continuously measures blood oxygen and skin temperature during sleep samsung health data sdk allows you to easily retrieve blood oxygen and skin temperature data related to this specific sleep data samsung health sdk for android will remain operational for at least 2 years after its deprecation after a certain period, this sdk will be removed, so we recommend updating your app to use samsung health data sdk instead development process previously samsung health sdk for android required developers to submit requires a partner request to get access to be applied for and approved before use now with samsung health data sdk you can download and use the sdk in developer mode without submitting a partner request to enhance the convenience of more developers, the samsung health data sdk has improved its developer mode functionality if you only need to read the samsung health app's data, you can activate the developer mode and proceed with development and testing without requiring the partner request if you want to test writing data to the samsung health app using the samsung health data sdk or to distribute your app, you need to submit a partner request registration is necessary if you want to see the detailed process for developing an app with the samsung health data sdk can be found on, please refer to the process page checking supported data types of samsung health data sdk before you start using samsung health data sdk, please, compare it with samsung health sdk for android and its existing data types to determine whether the data types you want to use in your app are supported and what additional data can be utilized category data type of the samsung health sdk for android sdk corresponding data type in the samsung health data sdk activity healthconstants exercise exercisetype healthconstants floorsclimbed floorsclimbedtype healthconstants stepdailytrend read-only stepstype read-only healthconstants stepcount read-only not provided not provided stepgoaltype read-only not provided activitysummarytype read-only not provided activecaloriesburnedgoaltype read-only not provided activetimegoaltype read-only food intake healthconstants nutrition nutritiontype not provided nutritiongoaltype read-only healthconstants waterintake waterintaketype not provided waterintakegoaltype read-only rest healthconstants sleep sleeptype healthconstants sleepstage not provided not provided sleepgoaltype read-only healthcare healthconstants bloodglucose bloodglucosetype healthconstants bloodpressure bloodpressuretype healthconstants bodytemperature bodytemperature healthconstants heartrate heartratetype healthconstants oxygensaturationtype bloodoxygentype healthconstants weight bodycompositiontype not provided skintemperature score not provided energyscoretype read-only user profile healthuserprofile read-only userprofiledatatype read-only checking the user experience to access health data from samsung health data sdk, you need to receive data permissions and obtain user consent in order to do that, please, follow the same process as samsung health sdk for android you can request data permissions at requesting data permissions note when using both sdks together, the data permissions of each sdk are displayed to the user, which can result in an inconvenient ui for the user hence, we recommend to use samsung health data sdk data permission of samsung health sdk for android data permission of samsung health data sdk getting started 1 download samsung health data sdk visit samsung health data sdk page to download samsung health data sdk 2 enabling samsung health data sdk’s developer mode if you only need to read data from samsung health app, you can enable the developer mode feature without submitting an additional partner request refer to the developer mode for instructions on how to enable it if you want to write data to samsung health app, you need to submit a partner request 3 importing samsung health data sdk's library remove the library of samsung health sdk for android from your app project samsung-health-data-a b c aar and add samsung health data sdk's library to the app/libs folder samsung-health-data-api-a b c aar note that 'a b c' is the sdk's version 4 update app manifest if your app's manifest has the element for the samsung health app, please remove it app manifest - remove the element for samsung health sdk for android <manifest > <queries> <package android name="com sec android app shealth" /> </queries> </manifest> if the app manifest has the element lines related to health data permissions of samsung health sdk for android, please remove it app manifest - remove the data permission declarations for samsung health sdk for android <manifest > <application > <meta-data android name="com samsung android health permission read" android value="com samsung health exercise;com samsung shealth step_daily_trend"/> <meta-data android name="com samsung android health permission write" </application> </manifest> 5 gradle settings in the app/builde gradle, remove the dependency for samsung health sdk for android app/build gradle - remove the dependency for samsung health sdk for android dependencies { implementation files 'src/main/libs/samsung-health-data-1 5 1 aar' } add the dependency for samsung health data sdk instead app/build gradle - add the dependency for samsung health data sdk dependencies { implementation filetree mapof "dir" to "libs", "include" to listof "* aar" } add the gson library in the dependency app/build gradle - add the dependency for samsung health data sdk dependencies { implementation "com google code gson gson 2 9 0" } and apply the kotlin-parcelize plugin to the app/build gradle app/build gradle - add the plugin for samsung health data sdk plugins { id "kotlin-parcelize" } 6 connecting with samsung health to access health data in the samsung health app, you need to connect the sdk with the samsung health app if the samsung health app is not installed or you have an earlier version of the samsung health app than the supported version, an exception occurs after the connection request if it is a resolvable exception, call the resolve api is to resolve the exception below is an example code snippet when using samsung health sdk for android connecting with samsung health with samsung health sdk for android lateinit var healthdatastore healthdatastore fun connect activity activity { healthdatastore = healthdatastore context, object healthdatastore connectionlistener { override fun onconnected { log i app_tag, "health data service is connected" } override fun onconnectionfailed error healthconnectionerrorresult { if error hasresolution { error resolve activity } else { log i app_tag, "health data service is not available" } } override fun ondisconnected { log i app_tag, "health data service is disconnected" } } runcatching { healthdatastore connectservice } onfailure { error -> error message? let { log i app_tag, it } } } to connect to the samsung health app using samsung health data sdk, you can do so as shown in the code below connecting with samsung health with samsung health data sdk lateinit var healthdatastore healthdatastore fun connect activity activity { runcatching { healthdatastore = healthdataservice getstore context } onsuccess { log i app_tag, "health data service is connected" } onfailure { error -> if error is resolvableplatformexception && error hasresolution { error resolve activity } // handle other types of healthdataexception error message? let { log i app_tag, it } } } 7 requesting data permissions after you have successfully connected to the samsung health app, you need to request data permissions for the health data you want to access from the user upon obtaining an explicit consent from the user, you will be able to access the health data before requesting data permission, check if the user has already granted the data permission if the required data permission has not been obtained, proceed to request the necessary data permission the following code is an example of requesting data permissions to read daily step count, nutrition, and user profile data when using samsung health sdk for android requesting data permission with samsung health sdk for android private val permissionlistener healthresultholder resultlistener<permissionresult> = healthresultholder resultlistener<permissionresult> { result -> if result resultmap values contains false { log i app_tag, "not all required permissions granted" } else { log i app_tag, "all required permissions granted" } } fun requestpermissions activity activity, healthdatastore healthdatastore { val permissionset = setof permissionkey stepdailytrend health_data_type, healthpermissionmanager permissiontype read , permissionkey nutrition health_data_type, healthpermissionmanager permissiontype read , permissionkey healthconstants user_profile_data_type, healthpermissionmanager permissiontype read val permissionmanager = healthpermissionmanager healthdatastore runcatching { val grantedpermissions = permissionmanager ispermissionacquired permissionset if grantedpermissions values all { it } { log i app_tag, "all required permissions granted" } else { log i app_tag, "not all required permissions granted" permissionmanager requestpermissions permissionset, activity setresultlistener permissionlistener } } onfailure { error -> error message? let { log i app_tag, it } } } when the above code is executed, the following screenshot shows the data permission popup displayed to the user when using the samsung health data sdk, you can do the following requesting data permission with samsung health data sdk suspend fun requestpermissions healthdatastore healthdatastore, activity activity { val permissionset = setof permission of datatypes steps, accesstype read , permission of datatypes nutrition, accesstype read , permission of datatypes user_profile, accesstype read val grantedpermissions = healthdatastore getgrantedpermissions permissionset if grantedpermissions containsall permissionset { log i app_tag, "all required permissions granted" } else { healthdatastore requestpermissions permissionset, activity } } when requesting data permissions with samsung health data sdk, the following screenshot will be displayed to the user 8 data request asynchronous request asynchronous operations allow the application to continue processing other tasks without waiting for the current task to complete it prevents the main thread from being blocked it enhances user experience by keeping the application interactive during long-running tasks and supports efficient handling of concurrent operations below you can see a code example of when using samsung health sdk for android to make an asynchronous request asynchronous request when with samsung health sdk for android fun readstepsasync healthdatastore healthdatastore { val healthdataresolver = healthdataresolver healthdatastore, null val date = localdate now atstartofday toinstant zoneoffset utc toepochmilli val filter = filter and filter eq stepdailytrend day_time, date , filter eq stepdailytrend source_type, stepdailytrend source_type_all val stepsrequest = healthdataresolver readrequest builder setdatatype stepdailytrend health_data_type setfilter filter build try { healthdataresolver read stepsrequest setresultlistener { result -> try { val iterator = result iterator if iterator hasnext { val healthdata = iterator next val stepcount = healthdata getint stepdailytrend count log i mainactivity app_tag, "step count $stepcount" } } finally { result close } } } catch exception exception { exception message? let { log i mainactivity app_tag, it } } } when using samsung health data sdk, you can perform the same operation as follows use an api that includes async asynchronous request with samsung health data sdk fun readstepsasync healthdatastore healthdatastore, activity activity { val starttime = localdate now atstartofday val endtime = localdatetime now val localtimefilter = localtimefilter of starttime, endtime val stepsrequest = datatype stepstype total requestbuilder setlocaltimefilter localtimefilter build healthdatastore aggregatedataasync stepsrequest setcallback looper getmainlooper , { result -> val stepcount = result datalist first value log i mainactivity app_tag, "step count $stepcount" } { error -> if error is resolvableplatformexception && error hasresolution { error resolve activity } } } synchronous request synchronous operations execute tasks sequentially, requiring the application to wait for the current task to complete before proceeding to the next while this approach is simple to implement and ensures a predictable execution flow, it can block the main thread this makes synchronous operations more suitable for straightforward, short tasks rather than complex or concurrent processes to perform synchronous operations when using samsung health sdk for android, you can use the await api synchronous request with samsung health sdk for android fun readstepssync healthdatastore healthdatastore { val healthdataresolver = healthdataresolver healthdatastore, null val date = localdate now atstartofday toinstant zoneoffset utc toepochmilli val filter = filter and filter eq stepdailytrend day_time, date , filter eq stepdailytrend source_type, stepdailytrend source_type_all val stepsrequest = healthdataresolver readrequest builder setdatatype stepdailytrend health_data_type setfilter filter build try { healthdataresolver read stepsrequest await run { try { val iterator = iterator if iterator hasnext { val healthdata = iterator next val stepcount = healthdata getint stepdailytrend count log i mainactivity app_tag, "step count $stepcount" } } finally { close } } } catch exception exception { exception message? let { log i mainactivity app_tag, it } } } for synchronous operations involving samsung health data sdk, please, use the following approach synchronous request with samsung health data sdk suspend fun readstepssync healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val stepsrequest = datatype stepstype total requestbuilder setlocaltimefilterwithgroup localtimefilter companion of starttime, endtime , localtimegroup of localtimegroupunit hourly, 1 build try { val readresult = healthdatastore aggregatedata stepsrequest val stepcount = readresult datalist first value log i mainactivity app_tag, "step count $stepcount" } catch e exception { e printstacktrace } } 9 implementing and testing app accessing the health data is required by the app to test to ensure the functionality works properly for detailed information on accessing health data, refer to accessing health data 10 partner request before distributing your app the developer mode of samsung health data sdk is a feature provided only for development purposes to ensure that an app that`s using samsung health data sdk functions properly without enabling developer mode, you need to submit a partner request through the developer site before distributing your app on app market places after partner app approval, the app's detailed information will be registered in samsung's system accessing health data steps samsung health measures step data from smartphones with samsung health installed and from connected galaxy wearable devices, such as the galaxy watch, galaxy fit, or galaxy ring it aggregates and eliminates duplicate data to provide daily step counts step count data is read-only the corresponding steps data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants stepdailytrend read-only healthconstants stepcount read-only stepstype read-only here is an example of code that reads today's total step count when using samsung health sdk for android reading today's total steps with samsung health sdk for android fun readtodaystepcountdata healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val filter = filter and filter eq stepdailytrend day_time, starttime , filter eq stepdailytrend source_type, stepdailytrend source_type_all val healthdataresolver = healthdataresolver healthdatastore, null val request = healthdataresolver readrequest builder setdatatype stepdailytrend health_data_type setfilter filter build try { healthdataresolver read request setresultlistener { result -> try { val iterator = result iterator if iterator hasnext { val healthdata = iterator next val totalcount = healthdata getint stepdailytrend count log i mainactivity app_tag, "today steps count $totalcount" } else { log i mainactivity app_tag, "no step data available" the code to retrieve today's total step count when using samsung health data sdk is as follows reading today's total steps with samsung health data sdk suspend fun readtodaystepcountdata healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val readrequest = datatype stepstype total requestbuilder setlocaltimefilter localtimefilter of starttime, endtime build try { val readresult = healthdatastore aggregatedata readrequest val data = readresult datalist first val totalcount = data value log i mainactivity app_tag, "today steps count $totalcount" } catch e exception { e printstacktrace } } exercise the samsung health app records the user's exercise data when the user wears a galaxy watch, galaxy fit, or galaxy ring and records exercise data, the app records their heart rate, exercise speed, and distance the corresponding exercise data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants exercise exercisetype example code for reading today's exercise data when using samsung health sdk for android is as follows reading exercise data with samsung health sdk for android fun readtodayexercise healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdate now plusdays 1 atstartofday toinstant zoneoffset utc toepochmilli val healthdataresolver = healthdataresolver healthdatastore, null val readrequest = healthdataresolver readrequest builder setdatatype exercise health_data_type setlocaltimerange floorsclimbed start_time, floorsclimbed time_offset, starttime, endtime build try { healthdataresolver read readrequest setresultlistener { result -> try { val iterator = result iterator iterator foreach { healthdata -> val exercisetype = healthdata getint exercise exercise_type val duration = healthdata getlong exercise duration val calories = healthdata getfloat exercise calorie log i mainactivity app_tag, "exercise type $exercisetype, duration $duration, calories $calories" } } finally { result close } } } catch exception exception { exception message? let { log i mainactivity app_tag, it } } } example code for reading today's exercise data when using samsung health data sdk is as follows reading exercise data with samsung health data sdk suspend fun readtodayexercise healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val readrequest = datatypes exercise readdatarequestbuilder setlocaltimefilter localtimefilter of starttime, endtime build try { val readresult = healthdatastore readdata readrequest val datapoints = readresult datalist if datapoints isempty { log i mainactivity app_tag, "no exercises today" return } datapoints foreach { datapoint -> val exercisetype = datapoint getvalue datatype exercisetype exercise_type val sessions = datapoint getvalue datatype exercisetype sessions sessions? foreach { session -> val exercisesessiontype = session exercisetype val exercisesessionduration = session duration val exercisesessioncalories = session calories log i mainactivity app_tag, "exercise type $exercisetype, session type $exercisesessiontype, duration $exercisesessionduration, calories $exercisesessioncalories" } } } catch e exception { e printstacktrace } } example code for writing exercise data when using samsung health sdk for android is as follows writing running exercise data with samsung health sdk for android fun insertrunningexercise healthdatastore healthdatastore { val fiveminutesasseconds = 300l val exercisetype = 1002 val calories = 73f val distance = 1000f val deviceid = healthdevicemanager healthdatastore localdevice uuid val starttime = instant now minusseconds fiveminutesasseconds val endtime = instant now val timeoffset = timezone getdefault getoffset endtime toepochmilli tolong val duration = duration between starttime, endtime val healthdataresolver = healthdataresolver healthdatastore, null val livedata = createlivedata listof exerciselivedata start_time = starttime toepochmilli , heart_rate = 144f, speed = 1 6f , exerciselivedata start_time = starttime plusseconds 30 toepochmilli , heart_rate = 146f, speed = 1 8f , exerciselivedata start_time = starttime plusseconds 60 toepochmilli , heart_rate = 146f, speed = 1 9f , exerciselivedata start_time = starttime plusseconds 90 toepochmilli , heart_rate = 152f, speed = 2f , exerciselivedata start_time = starttime plusseconds 120 toepochmilli , heart_rate = 154f, speed = 2 1f , exerciselivedata start_time = starttime plusseconds 150 toepochmilli , heart_rate = 161f, speed = 2 2f , exerciselivedata start_time = starttime plusseconds 180 toepochmilli , heart_rate = 159f, speed = 2 1f , exerciselivedata start_time = starttime plusseconds 210 toepochmilli , heart_rate = 160f, speed = 2 2f , exerciselivedata start_time = starttime plusseconds 240 toepochmilli , heart_rate = 159f, speed = 2 1f , exerciselivedata start_time = starttime plusseconds 270 toepochmilli , heart_rate = 161f, speed = 2 2f , exerciselivedata start_time = starttime plusseconds 300 toepochmilli , heart_rate = 160f, speed = 2f val healthdata = healthdata apply { sourcedevice = deviceid putlong exercise start_time, starttime toepochmilli putlong exercise end_time, endtime toepochmilli putlong exercise time_offset, timeoffset putint exercise exercise_type, exercisetype putlong exercise duration, duration tomillis putfloat exercise calorie, calories putfloat exercise distance, distance putblob exercise live_data, livedata } val insertrequest = healthdataresolver insertrequest builder setdatatype exercise health_data_type build insertrequest addhealthdata healthdata try { val result = healthdataresolver insert insertrequest await if result status == status_successful { log i mainactivity app_tag, "inserted running exercise count of data ${result count}" } else { log i mainactivity app_tag, "inserting failed" } } catch e exception { e printstacktrace } } private fun createlivedata livedatalist list<exerciselivedata> bytearray { val zip = healthdatautil getjsonblob livedatalist return zip } data class exerciselivedata val start_time long, val heart_rate float, val speed float example code for writing exercise data when using samsung health data sdk is as follows one exercise session of exercise data is writable writing running exercise data with samsung health data sdk suspend fun insertrunningexercise healthdatastore healthdatastore { val fiveminutesasseconds = 300l val calories = 73f val distance = 1000f val starttime = instant now minusseconds fiveminutesasseconds val endtime = instant now val duration = duration between starttime, endtime val exerciselog = listof exerciselog of timestamp = starttime, heartrate = 144f, speed = 1 6f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 30 , heartrate = 146f, speed = 1 8f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 60 , heartrate = 146f, speed = 1 9f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 90 , heartrate = 152f, speed = 2f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 120 , heartrate = 154f, speed = 2 1f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 150 , heartrate = 161f, speed = 2 2f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 180 , heartrate = 159f, speed = 2 1f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 210 , heartrate = 160f, speed = 2 2f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 240 , heartrate = 159f, speed = 2 1f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 270 , heartrate = 161f, speed = 2 2f, cadence = null, count = null, power = null , exerciselog of timestamp = starttime plusseconds 300 , heartrate = 160f, speed = 2f, cadence = null, count = null, power = null try { val session = exercisesession builder setstarttime starttime setendtime endtime setexercisetype datatype exercisetype predefinedexercisetype running setduration duration setcalories calories setdistance distance setlog exerciselog build val healthdatapoint = healthdatapoint builder setstarttime starttime setendtime endtime addfielddata datatype exercisetype exercise_type, datatype exercisetype predefinedexercisetype running addfielddata datatype exercisetype sessions, listof session build val insertrequest = datatypes exercise insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest log i mainactivity app_tag, "inserted running exercise" } catch e exception { e printstacktrace } } floors climbed floors climbed data is one of the activity health data types it is displayed in the activity tracker in the samsung health app the corresponding floors climbed data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants floorsclimbed floorsclimbedtype to read today's floors climbed data when using samsung health sdk for android, the following example code can be used reading floors climbed data with samsung health sdk for android fun readtodayfloorsclimbed healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdate now plusdays 1 atstartofday toinstant zoneoffset utc toepochmilli val healthdataresolver = healthdataresolver healthdatastore, null val readrequest = healthdataresolver readrequest builder setdatatype floorsclimbed health_data_type setlocaltimerange floorsclimbed start_time, floorsclimbed time_offset, starttime, endtime build try { healthdataresolver read readrequest setresultlistener { result -> try { val iterator = result iterator if iterator hasnext { val healthdata = iterator next val totalcount = healthdata getfloat floorsclimbed floor log i mainactivity app_tag, "today floors climbed $totalcount" } else { log i mainactivity app_tag, "today floors climbed 0" } } finally { result close } } } catch exception exception { exception message? let { log i mainactivity app_tag, it } } } when using samsung health data sdk to read today's floors climbed data is as follows reading floors climbed data with samsung health data sdk suspend fun readtodayfloorsclimbed healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val readrequest = datatype floorsclimbedtype total requestbuilder setlocaltimefilter localtimefilter of starttime, endtime build try { val readresult = healthdatastore aggregatedata readrequest val data = readresult datalist val totalcount = if data isnotempty data first value else 0 log i mainactivity app_tag, "today floors climbed $totalcount" } catch e exception { e printstacktrace } } to write floors climbed data when using samsung health sdk for android, the following example code can be used writing floors climbed data with samsung health sdk for android fun inserttodayfloorsclimbed healthdatastore healthdatastore { val oneminuteasseconds = 60l val floor = 2f val deviceid = healthdevicemanager healthdatastore localdevice uuid val starttime = instant now minusseconds oneminuteasseconds toepochmilli val endtime = instant now toepochmilli val timeoffset = timezone getdefault getoffset endtime tolong val healthdataresolver = healthdataresolver healthdatastore, null val healthdata = healthdata apply { sourcedevice = deviceid putlong floorsclimbed start_time, starttime putlong floorsclimbed end_time, endtime putlong floorsclimbed time_offset, timeoffset putfloat floorsclimbed floor, floor } val insertrequest = healthdataresolver insertrequest builder setdatatype floorsclimbed health_data_type build insertrequest addhealthdata healthdata try { val result = healthdataresolver insert insertrequest await if result status == status_successful { log i mainactivity app_tag, "inserted floor climbed count of data ${result count}" } else { log i mainactivity app_tag, "inserting failed" } } catch e exception { e printstacktrace } } when using samsung health data sdk to write today's floors climbed data is as follows writing floors climbed data with samsung health data sdk suspend fun inserttodayfloorclimbed healthdatastore healthdatastore { val oneminuteasseconds = 60l val floor = 2f val starttime = instant now minusseconds oneminuteasseconds val endtime = instant now try { val healthdatapoint = healthdatapoint builder setstarttime starttime setendtime endtime addfielddata datatype floorsclimbedtype floor, floor build val insertrequest = datatypes floors_climbed insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest log i mainactivity app_tag, "inserted floor climbed" } catch e exception { e printstacktrace } } nutrition the samsung health app provides a food tracker that allows users to record and manage their eating data for each meal type, such as breakfast, lunch, and dinner the corresponding nutrition data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants nutrition nutritiontype here is an example code to read today's nutrition data when using samsung health sdk for android reading nutrition data with samsung health sdk for android fun readtodaynutrition healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdate now plusdays 1 atstartofday toinstant zoneoffset utc toepochmilli val healthdataresolver = healthdataresolver healthdatastore, null val nutritionrequest = healthdataresolver readrequest builder setdatatype nutrition health_data_type setlocaltimerange nutrition start_time, nutrition time_offset, starttime, endtime build try { healthdataresolver read nutritionrequest setresultlistener { result -> try { val iterator = result iterator iterator foreach { healthdata -> val title = healthdata getstring nutrition title val mealtype = healthdata getint nutrition meal_type val calories = healthdata getfloat nutrition calorie log i mainactivity app_tag, "today nutrition $title, $mealtype, $calories" } } finally { result close } } } catch exception exception { exception message? let { log i mainactivity app_tag, it } } } when using samsung health data sdk to read today's nutrition data is as follows reading nutrition data with samsung health data sdk suspend fun readtodaynutrition healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val readrequest = datatypes nutrition readdatarequestbuilder setlocaltimefilter localtimefilter of starttime, endtime build try { val readresult = healthdatastore readdata readrequest if readresult datalist isempty { log i mainactivity app_tag, "no nutrition today" return } readresult datalist foreach { healthdata -> val title = healthdata getvalue datatype nutritiontype title val mealtype = healthdata getvalue datatype nutritiontype meal_type val calories = healthdata getvalue datatype nutritiontype calories log i mainactivity app_tag, "today nutrition $title, $mealtype, $calories" } } catch e exception { e printstacktrace } } here is an example code to write nutrition data when using samsung health sdk for android writing nutrition data with samsung health sdk for android fun insertnutrition healthdatastore healthdatastore { val mydevice = healthdevicemanager healthdatastore val mealtitle = "toast and coffee" val calories = 66f val totalfat = 0 8f val saturatedfat = 0 1f val protein = 2 1f val carbohydrate = 11 9f val totalsugars = 1f val dietaryfiber = 0 6f val sodium = 135f val calcium = 40 3f val iron = 0 78f val potassium = 140f //for females, age 19 - 50, according to https //nap nationalacademies org/catalog/11537/dietary-reference-intakes-the-essential-guide-to-nutrient-requirements val referenceindexforironinmilligrams = 8 1f // for age 19-50, refer to the link above val referenceindexforcalciuminmilligrams = 1000f val starttime = instant now toepochmilli val timeoffset = timezone getdefault getoffset starttime tolong val data = healthdata apply { sourcedevice = mydevice localdevice uuid putlong healthconstants nutrition start_time, starttime ; putlong healthconstants nutrition time_offset, timeoffset ; putint healthconstants nutrition meal_type, meal_type_breakfast putstring healthconstants nutrition title, mealtitle putfloat healthconstants nutrition calorie, calories putfloat healthconstants nutrition total_fat, totalfat putfloat healthconstants nutrition saturated_fat, saturatedfat putfloat healthconstants nutrition protein, protein putfloat healthconstants nutrition carbohydrate, carbohydrate putfloat healthconstants nutrition sugar, totalsugars putfloat healthconstants nutrition dietary_fiber, dietaryfiber putfloat healthconstants nutrition sodium, sodium putfloat healthconstants nutrition potassium, potassium val calciumaspercentofreferenceintake = calcium / referenceindexforcalciuminmilligrams * 100 val ironinpercentofreferenceintake= iron / referenceindexforironinmilligrams * 100 putfloat healthconstants nutrition calcium, calciumaspercentofreferenceintake putfloat healthconstants nutrition iron, ironinpercentofreferenceintake } val insertrequest = healthdataresolver insertrequest builder setdatatype healthconstants nutrition health_data_type build val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler try { insertrequest addhealthdata data val insertresult = healthdataresolver insert insertrequest await log i tag, "insertnutrition status ${insertresult status}" } catch e exception { e printstacktrace } } when using samsung health data sdk to write nutrition data is as follows writing nutrition data with samsung health data sdk suspend fun insertnutrition healthdatastore healthdatastore { val starttime = localdatetime now val mealtitle = "toast and coffee" val calories = 66f val totalfat = 0 8f val saturatedfat = 0 1f val protein = 2 1f val carbohydrate = 11 9f val sugar = 1f val dietaryfiber = 0 6f val sodium = 135f val calcium = 40 3f val iron = 0 78f val potassium = 140f try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime addfielddata datatype nutritiontype meal_type, mealtype breakfast addfielddata datatype nutritiontype title, mealtitle addfielddata datatype nutritiontype calories, calories addfielddata datatype nutritiontype total_fat, totalfat addfielddata datatype nutritiontype saturated_fat, saturatedfat addfielddata datatype nutritiontype protein, protein addfielddata datatype nutritiontype carbohydrate, carbohydrate addfielddata datatype nutritiontype sugar, sugar addfielddata datatype nutritiontype dietary_fiber, dietaryfiber addfielddata datatype nutritiontype sodium, sodium addfielddata datatype nutritiontype calcium, calcium addfielddata datatype nutritiontype iron, iron addfielddata datatype nutritiontype potassium, potassium build val insertdatarequest = datatypes nutrition insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertdatarequest } catch e exception { e printstacktrace } } water intake the data types of samsung health sdk for android and samsung health data sdk are as follows samsung health sdk for android samsung health data sdk healthconstants waterintake waterintaketype example code for reading today's water intake data when using samsung health sdk for android is as follows reading water intake data with samsung health sdk for android fun readtodaytotalwaterintake healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdatetime now toinstant zoneoffset utc toepochmilli val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val waterintakeid = "water_intake_sum" val aggregaterequest = healthdataresolver aggregaterequest builder addfunction healthdataresolver aggregaterequest aggregatefunction sum, healthconstants waterintake amount, waterintakeid setlocaltimerange healthconstants waterintake start_time, healthconstants waterintake time_offset, starttime, endtime setdatatype healthconstants waterintake health_data_type build try { healthdataresolver aggregate aggregaterequest setresultlistener { result -> try { result? foreach { healthdata -> val waterintakesum = healthdata getfloat waterintakeid } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read today's water intake data is as follows reading water intake data with samsung health data sdk suspend fun readtodaytotalwaterintake healthdatastore com samsung android sdk health data healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val localtimefilter = localtimefilter of starttime, endtime val readrequest = datatype waterintaketype total requestbuilder setlocaltimefilter localtimefilter build try { val result = healthdatastore aggregatedata readrequest result datalist lastornull ? let { datapoint -> val waterintake = datapoint value } } catch e exception { e printstacktrace } } example code for writing water intake data when using samsung health sdk for android is as follows writing water intake data with samsung health sdk for android fun insertwaterintake healthdatastore healthdatastore { val mydevice = healthdevicemanager healthdatastore val wateramountinmilliliters = 250f val unitamount = 250f val starttime = instant now toepochmilli val timeoffset = timezone getdefault getoffset starttime tolong val data = healthdata apply { sourcedevice = mydevice localdevice uuid putlong healthconstants waterintake start_time, starttime ; putlong healthconstants waterintake time_offset, timeoffset ; putfloat healthconstants waterintake amount, wateramountinmilliliters putfloat healthconstants waterintake unit_amount, unitamount } val insertrequest = healthdataresolver insertrequest builder setdatatype healthconstants waterintake health_data_type build val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler try { insertrequest addhealthdata data val insertresult = healthdataresolver insert insertrequest await log i tag, "insertwaterintake status ${insertresult status}" } catch e exception { e printstacktrace } } when using samsung health data sdk to write water intake data is as follows writing water intake data with samsung health data sdk suspend fun insertwaterintake healthdatastore healthdatastore { val starttime = localdatetime now val wateramountinmilliliters = 250f try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime addfielddata datatype waterintaketype amount, wateramountinmilliliters build val insertdatarequest = datatypes water_intake insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertdatarequest } catch e exception { e printstacktrace } } sleep and sleep stage the data types of samsung health sdk for android and samsung health data sdk are as follows samsung health sdk for android samsung health data sdk healthconstants sleep healthconstants sleepstage sleeptype code for reading the last night's sleep data when using samsung health sdk for android is as follows reading the last night's sleep data with samsung health sdk for android fun readlastsleep healthdatastore healthdatastore { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val resultcount = 1 val resultoffset = 0 val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants sleep health_data_type setsort healthconstants sleep start_time, sortorder desc setresultcount resultoffset, resultcount build try { healthdataresolver read request setresultlistener { result -> try { result lastornull ? let { healthdata -> val sleepid = healthdata getstring healthconstants sleep uuid val sleepstarttime = instant ofepochmilli healthdata getlong healthconstants sleep start_time val sleependtime = instant ofepochmilli healthdata getlong healthconstants sleep end_time readsleepstagesforsleepid healthdatastore, sleepid } } finally { result close } } } catch e exception { e printstacktrace } } fun readsleepstagesforsleepid healthdatastore healthdatastore, sleepid string { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants sleepstage health_data_type setfilter filter eq healthconstants sleepstage sleep_id, sleepid build try { healthdataresolver read request setresultlistener { result -> try { result? foreach { sleepstagedata -> val sleepstagename = sleepstagenamebyid sleepstagedata getint healthconstants sleepstage stage val sleepstagestarttime = instant ofepochmilli sleepstagedata getlong healthconstants sleepstage start_time val sleepstageendtime = instant ofepochmilli sleepstagedata getlong healthconstants sleepstage end_time } } finally { result close } } } catch e exception { e printstacktrace } } fun sleepstagenamebyid id int string { return when id { healthconstants sleepstage stage_awake -> "awake" healthconstants sleepstage stage_deep -> "deep" healthconstants sleepstage stage_light -> "light" healthconstants sleepstage stage_rem -> "rem" else -> "" } } when using samsung health data sdk to read the last night's sleep data is as follows reading the last night's sleep data with samsung health data sdk suspend fun readsleeptotalduration healthdatastore healthdatastore { val daysbackoffset = 400l val starttime = localdate now minusdays daysbackoffset val endtime = localdate now val localdatefilter = localdatefilter of starttime, endtime val request = datatype sleeptype total_duration requestbuilder setlocaldatefilter localdatefilter build try { val result = healthdatastore aggregatedata request result datalist foreach { aggregateddata -> val starttime = aggregateddata starttime val endtime = aggregateddata endtime val totalduration = aggregateddata value } } catch e exception { e printstacktrace } } suspend fun readlastsleep healthdatastore healthdatastore { val resultcount = 1 val readrequest = datatypes sleep readdatarequestbuilder setordering ordering desc setlimit resultcount build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { sleepdata -> val sleepid = sleepdata uid val sleepstarttime = sleepdata starttime val sleependtime = sleepdata endtime val sleepsessions = sleepdata getvalue datatype sleeptype sessions sleepsessions? foreach { sleepsession -> val sessionduration = sleepsession duration val sessionstarttime = sleepsession starttime val sessionendtime = sleepsession endtime val sleepstages = sleepsession stages sleepstages? foreach { sleepstage -> val sleepstagename = sleepstage stage name val sleepstagestarttime = sleepstage starttime val sleepstageendtime = sleepstage endtime } } } } catch e exception { e printstacktrace } } code for writing sleep data when using samsung health sdk for android is as follows writing the last night's sleep data with samsung health sdk for android fun insertsleepdata healthdatastore healthdatastore { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val healthdevicemanager = healthdevicemanager healthdatastore val zoneoffset = zoneoffset systemdefault rules getoffset instant now val starttime = localdate now minusdays 1 attime 23, 10 toinstant zoneoffset val endtime = localdate now attime 6, 30 toinstant zoneoffset val timeoffset = timezone getdefault getoffset instant now toepochmilli val sleepdata = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleep start_time, starttime toepochmilli putlong healthconstants sleep end_time, endtime toepochmilli putlong healthconstants sleep time_offset, timeoffset tolong } val insertrequest = insertrequest builder setdatatype healthconstants sleep health_data_type build insertrequest addhealthdata sleepdata try { val insertresult = healthdataresolver insert insertrequest await if insertresult status != baseresult status_successful { log i mainactivity app_tag, "error inserting sleep data error code ${insertresult status}" } } catch e exception { e printstacktrace } val resultcount = 1 val resultoffset = 0 val readrequest = healthdataresolver readrequest builder setdatatype healthconstants sleep health_data_type setsort healthconstants sleep update_time, sortorder desc setresultcount resultoffset, resultcount build try { val readresult = healthdataresolver read readrequest await val sleepid = readresult last getstring healthconstants sleep uuid writesleepstages healthdatastore, sleepid } catch e exception { e printstacktrace } } private fun writesleepstages healthdatastore healthdatastore, sleepid string { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val healthdevicemanager = healthdevicemanager healthdatastore val startdate = localdate now minusdays 1 val enddate = localdate now val zoneoffset = zoneoffset systemdefault rules getoffset instant now val timeoffset = timezone getdefault getoffset instant now toepochmilli val sleepstages = mutablelistof<healthdata> var sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, startdate attime 23, 10 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, startdate attime 23, 35 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_light } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, startdate attime 23, 35 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 1, 50 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_deep } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 1, 50 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 2, 20 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_rem } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 2, 20 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 2, 55 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_light } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 2, 55 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 3, 10 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_awake } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 3, 10 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 4, 30 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_deep } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 4, 30 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 5, 10 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_rem } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 5, 10 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 6, 20 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_light } sleepstages add sleepstage sleepstage = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants sleepstage time_offset, timeoffset tolong putstring healthconstants sleepstage sleep_id, sleepid putlong healthconstants sleepstage start_time, enddate attime 6, 20 toinstant zoneoffset toepochmilli putlong healthconstants sleepstage end_time, enddate attime 6, 30 toinstant zoneoffset toepochmilli putint healthconstants sleepstage stage, healthconstants sleepstage stage_awake } sleepstages add sleepstage val insertrequest = insertrequest builder setdatatype healthconstants sleepstage health_data_type build insertrequest addhealthdata sleepstages try { val insertresult = healthdataresolver insert insertrequest await if insertresult status != baseresult status_successful { log i mainactivity app_tag, "error inserting stages data error code ${insertresult status}" } } catch e exception { e printstacktrace } } when using samsung health data sdk to write sleep data is as follows writing the last night's sleep data with samsung health data sdk suspend fun insertsleepdata healthdatastore healthdatastore { val startdate = localdate now minusdays 1 val enddate = localdate now val starttime = startdate attime 23, 10 val endtime = enddate attime 6, 30 val zoneoffset = zoneoffset systemdefault rules getoffset instant now val duration = duration between starttime, endtime val sleepstagelist = listof sleepsession sleepstage of startdate attime 23, 10 toinstant zoneoffset , startdate attime 23, 35 toinstant zoneoffset , datatype sleeptype stagetype light , sleepsession sleepstage of startdate attime 23, 35 toinstant zoneoffset , enddate attime 1, 50 toinstant zoneoffset , datatype sleeptype stagetype deep , sleepsession sleepstage of enddate attime 1, 50 toinstant zoneoffset , enddate attime 2, 20 toinstant zoneoffset , datatype sleeptype stagetype rem , sleepsession sleepstage of enddate attime 2, 20 toinstant zoneoffset , enddate attime 2, 55 toinstant zoneoffset , datatype sleeptype stagetype light , sleepsession sleepstage of enddate attime 2, 55 toinstant zoneoffset , enddate attime 3, 10 toinstant zoneoffset , datatype sleeptype stagetype awake , sleepsession sleepstage of enddate attime 3, 10 toinstant zoneoffset , enddate attime 4, 30 toinstant zoneoffset , datatype sleeptype stagetype deep , sleepsession sleepstage of enddate attime 4, 30 toinstant zoneoffset , enddate attime 5, 10 toinstant zoneoffset , datatype sleeptype stagetype rem , sleepsession sleepstage of enddate attime 5, 10 toinstant zoneoffset , enddate attime 6, 20 toinstant zoneoffset , datatype sleeptype stagetype light , sleepsession sleepstage of enddate attime 6, 20 toinstant zoneoffset , enddate attime 6, 30 toinstant zoneoffset , datatype sleeptype stagetype awake val sleepsession = sleepsession of starttime toinstant zoneoffset , endtime toinstant zoneoffset , duration, sleepstagelist try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime setlocalendtime endtime addfielddata datatype sleeptype duration, duration addfielddata datatype sleeptype sessions, listof sleepsession build val insertdatarequest = datatypes sleep insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertdatarequest } catch e exception { e printstacktrace } } weight the corresponding weight data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants weight bodycompositiontype to read the latest weight data when using samsung health sdk for android, the following example code can be used reading the last weight data with samsung health sdk for android fun readlatestweight healthdatastore healthdatastore { val resultcount = 1 val resultoffset = 0 val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants weight health_data_type setsort healthconstants oxygensaturation start_time, sortorder desc setresultcount resultoffset, resultcount build try { healthdataresolver read request setresultlistener { result -> try { result lastornull ? let { healthdata -> val measurementstarttime = instant ofepochmilli healthdata getlong healthconstants weight start_time val weight = healthdata getfloat healthconstants weight weight val bodyfat = healthdata getfloat healthconstants weight body_fat } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read the latest weight data is as follows reading the last weight data with samsung health data sdk suspend fun readlatestweight healthdatastore healthdatastore { val resultcount = 1 val readrequest = datatypes body_composition readdatarequestbuilder setordering ordering desc setlimit resultcount build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { datapoint -> val weight = datapoint getvalue datatype bodycompositiontype weight val bodyfat = datapoint getvalue datatype bodycompositiontype body_fat val measurementstarttime = datapoint starttime } } catch e exception { e printstacktrace } } here is an example code to write weight data when using samsung health sdk for android writing weight data with samsung health sdk for android fun insertweightdata healthdatastore healthdatastore { val weight = 75f val zoneid = zoneoffset systemdefault val starttime = localdate now attime 9, 0 atzone zoneid toinstant toepochmilli val timeoffset = timezone getdefault getoffset starttime tolong val mhealthdataresolver = healthdataresolver healthdatastore, handler looper getmainlooper val healthdevicemanager = healthdevicemanager healthdatastore val data = healthdata apply { putlong healthconstants weight start_time, starttime putlong healthconstants weight time_offset, timeoffset putfloat healthconstants weight weight, weight // register local device as the source of data sourcedevice = healthdevicemanager localdevice uuid } try { val insertrequest = insertrequest builder setdatatype healthconstants weight health_data_type build insertrequest addhealthdata data val result = mhealthdataresolver insert insertrequest await log i mainactivity app_tag, "insert result status ${result status}" } catch e exception { e printstacktrace } } writing weight data with samsung health data sdk suspend fun insertweightdata healthdatastore healthdatastore { val weight = 75f val localdatetime = localdate now attime 9, 0 val zoneid = zoneoffset systemdefault val zoneoffset = zoneid rules getoffset localdatetime try { val healthdatapoint = healthdatapoint builder addfielddata datatype bodycompositiontype weight, weight setlocalstarttime localdatetime, zoneoffset build val insertrequest = datatypes body_composition insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest } catch e exception { e printstacktrace } } heart rate the corresponding heart rate data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants heartrate heartratetype example code for reading today's heart rate data when using samsung health sdk for android is as follows reading today's heart rate data with samsung health sdk for android class readheartrate { fun readtodayheartrate healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdatetime now toinstant zoneoffset utc toepochmilli val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants heartrate health_data_type setlocaltimerange healthconstants heartrate start_time, healthconstants heartrate time_offset, starttime, endtime build try { healthdataresolver read request setresultlistener { result -> try { result? foreach { healthdata -> val heartrate = healthdata getfloat healthconstants heartrate heart_rate val measurementstarttime = instant ofepochmilli healthdata getlong healthconstants heartrate start_time val measurementendtime = instant ofepochmilli healthdata getlong healthconstants heartrate end_time val binningdata = healthdata getblob healthconstants heartrate binning_data val livedatalist = healthdatautil getstructureddatalist binningdata, heartratelivedata class java livedatalist foreach { livedatapoint -> val heartrate = livedatapoint heart_rate val starttime = instant ofepochmilli livedatapoint start_time } } } finally { result close } } } catch e exception { e printstacktrace } } } data class heartratelivedata val heart_rate float, val heart_rate_min float, val heart_rate_max float, val start_time long, val end_time long when using samsung health data sdk to read today's heart rate data is as follows reading today's heart rate data with samsung health data sdk suspend fun readtodayheartrate healthdatastore healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val localtimefilter = localtimefilter of starttime, endtime val readrequest = datatypes heart_rate readdatarequestbuilder setlocaltimefilter localtimefilter build try { val result = healthdatastore readdata readrequest result datalist foreach { datapoint -> val starttime = datapoint starttime val endtime = datapoint endtime val heartrate = datapoint getvalue datatype heartratetype heart_rate val heartrateseriesdata = datapoint getvalue datatype heartratetype series_data heartrateseriesdata? foreach { seriesdata -> val starttime = seriesdata starttime val heartrate = seriesdata heartrate } } } catch e exception { e printstacktrace } } to write heart rate data when using samsung health sdk for android, the following example code can be used writing heart rate data with samsung health sdk for android fun inserttodayheartrate healthdatastore healthdatastore { val tenminutesasseconds = 600l val heartrate = 76f val heartbeatcount = 1 val deviceid = healthdevicemanager healthdatastore localdevice uuid val starttime = instant now minusseconds tenminutesasseconds toepochmilli val endtime = instant now toepochmilli val timeoffset = timezone getdefault getoffset endtime tolong val healthdataresolver = healthdataresolver healthdatastore, null val healthdata = healthdata apply { sourcedevice = deviceid putlong heartrate start_time, starttime putlong heartrate end_time, endtime putlong heartrate time_offset, timeoffset putfloat heartrate heart_rate, heartrate putint heartrate heart_beat_count, heartbeatcount } val insertrequest = healthdataresolver insertrequest builder setdatatype heartrate health_data_type build insertrequest addhealthdata healthdata try { val result = healthdataresolver insert insertrequest await if result status == status_successful { log i mainactivity app_tag, "inserted heart rate count of data ${result count}" } else { log i mainactivity app_tag, "inserting failed" } } catch e exception { e printstacktrace } } when using samsung health data sdk to write heart rate data is as follows writing heart rate data with samsung health data sdk suspend fun inserttodayheartrate healthdatastore healthdatastore { val tenminutesasseconds = 600l val heartrate = 76f val starttime = localdatetime now minusseconds tenminutesasseconds val endtime = localdatetime now try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime setlocalendtime endtime addfielddata datatype heartratetype heart_rate, heartrate build val insertrequest = datatypes heart_rate insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest log i mainactivity app_tag, "inserted heart rate" } catch e exception { e printstacktrace } } blood glucose the corresponding blood glucose data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants bloodglucose bloodglucosetype here is an example code to read today's blood glucose data when using samsung health sdk for android reading today's blood glucose data with samsung health sdk for android fun readtodaybloodglucose healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdatetime now toinstant zoneoffset utc toepochmilli val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants bloodglucose health_data_type setlocaltimerange healthconstants oxygensaturation start_time, healthconstants oxygensaturation time_offset, starttime, endtime build try { healthdataresolver read request setresultlistener { result -> try { result foreach { healthdata -> val measurementstarttime = instant ofepochmilli healthdata getlong healthconstants bloodglucose start_time val bloodglucose = healthdata getfloat healthconstants bloodglucose glucose //refer to the documentation for meal_type, measurement_type, sample_source_type mapping val mealtype = healthdata getint healthconstants bloodglucose meal_type val measurementtype = healthdata getint healthconstants bloodglucose measurement_type val samplesourcetype = healthdata getint healthconstants bloodglucose sample_source_type } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read today's blood glucose data is as follows reading today's blood glucose data with samsung health data sdk fun readtodaybloodglucose healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdatetime now toinstant zoneoffset utc toepochmilli val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants bloodglucose health_data_type setlocaltimerange healthconstants oxygensaturation start_time, healthconstants oxygensaturation time_offset, starttime, endtime build try { healthdataresolver read request setresultlistener { result -> try { result foreach { healthdata -> val measurementstarttime = instant ofepochmilli healthdata getlong healthconstants bloodglucose start_time val bloodglucose = healthdata getfloat healthconstants bloodglucose glucose //refer to the documentation for meal_type, measurement_type, sample_source_type mapping val mealtype = healthdata getint healthconstants bloodglucose meal_type val measurementtype = healthdata getint healthconstants bloodglucose measurement_type val samplesourcetype = healthdata getint healthconstants bloodglucose sample_source_type } } finally { result close } } } catch e exception { e printstacktrace } } code for writing sleep data when using samsung health sdk for android is as follows writing blood glucose data with samsung health sdk for android fun insertbloodglucosedata healthdatastore healthdatastore { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val healthdevicemanager = healthdevicemanager healthdatastore val tenminutesasseconds = 600l val starttime = instant now minusseconds tenminutesasseconds val timeoffset = timezone getdefault getoffset starttime toepochmilli val glucose = 4 8f val bloodglucosedata = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants bloodpressure start_time, starttime toepochmilli putlong healthconstants bloodglucose time_offset, timeoffset tolong putfloat healthconstants bloodglucose glucose, glucose putint healthconstants bloodglucose measurement_type, healthconstants bloodglucose measurement_type_whole_blood putint healthconstants bloodglucose meal_type, healthconstants bloodglucose meal_type_fasting } val insertrequest = insertrequest builder setdatatype healthconstants bloodglucose health_data_type build insertrequest addhealthdata bloodglucosedata try { val insertresult = healthdataresolver insert insertrequest await if insertresult status != baseresult status_successful { log i mainactivity app_tag, "error inserting blood glucose data error code ${insertresult status}" } } catch e exception { e printstacktrace } } example code for writing blood glucose data when using samsung health data sdk is as follows writing blood glucose data with samsung health data sdk suspend fun insertbloodglucosedata healthdatastore healthdatastore { val starttime = localdatetime now minusminutes 10 val glucose = 4 8f try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime setlocalendtime starttime addfielddata datatype bloodglucosetype glucose_level, glucose addfielddata datatype bloodglucosetype measurement_type, datatype bloodglucosetype measurementtype whole_blood addfielddata datatype bloodglucosetype meal_status, datatype bloodglucosetype mealstatus fasting build val insertdatarequest = datatypes blood_glucose insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertdatarequest } catch e exception { e printstacktrace } } blood oxygen the corresponding blood oxygen data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants oxygensaturationtype bloodoxygentype example code for reading the latest blood oxygen data when using samsung health sdk for android is as follows reading the latest blood oxygen data with samsung health sdk for android fun readlatestbloodoxygen healthdatastore healthdatastore { val resultoffset = 0; val resultcount = 1 val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants oxygensaturation health_data_type setsort healthconstants oxygensaturation start_time, sortorder desc setresultcount resultoffset, resultcount build try { healthdataresolver read request setresultlistener { result -> try { result lastornull ? let { healthdata -> val bloodoxygen = healthdata getfloat healthconstants oxygensaturation spo2 val measurementstarttime = instant ofepochmilli healthdata getlong healthconstants oxygensaturation start_time } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read the latest blood oxygen data is as follows reading the latest blood oxygen data with samsung health data sdk suspend fun readlatestbloodoxygen healthdatastore healthdatastore { val resultcount = 1 val readrequest = datatypes blood_oxygen readdatarequestbuilder setordering ordering desc setlimit resultcount build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { datapoint -> val bloodoxygen = datapoint getvalue datatype bloodoxygentype oxygen_saturation val measurementstarttime = datapoint starttime } } catch e exception { e printstacktrace } } here is an example code to write blood oxygen data when using samsung health sdk for android writing blood oxygen data with samsung health sdk for android fun insertbloodoxygendata healthdatastore healthdatastore { val bloodoxygen = 98f val tenminutesasseconds = 10l * 60l val zoneid = zoneoffset systemdefault val time = localdatetime now minusseconds tenminutesasseconds atzone zoneid toinstant toepochmilli val timeoffset = timezone getdefault getoffset time tolong val mhealthdataresolver = healthdataresolver healthdatastore, handler looper getmainlooper val healthdevicemanager = healthdevicemanager healthdatastore val data = healthdata apply { putlong healthconstants oxygensaturation start_time, time putlong healthconstants oxygensaturation end_time, time putlong healthconstants oxygensaturation time_offset, timeoffset putfloat healthconstants oxygensaturation spo2, bloodoxygen // register local device as the source of data sourcedevice = healthdevicemanager localdevice uuid } try { val insertrequest = insertrequest builder setdatatype healthconstants oxygensaturation health_data_type build insertrequest addhealthdata data val result = mhealthdataresolver insert insertrequest await log i mainactivity app_tag, "insert result status ${result status}" } catch e exception { e printstacktrace } } example code for writing blood oxygen data when using samsung health data sdk is as follows writing blood oxygen data with samsung health data sdk suspend fun insertbloodoxygendata healthdatastore healthdatastore { val bloodoxygen = 98f val tenminutesasseconds = 10l * 60l val time = localdatetime now minusseconds tenminutesasseconds val zoneid = zoneoffset systemdefault val zoneoffset = zoneid rules getoffset time try { val healthdatapoint = healthdatapoint builder addfielddata datatype bloodoxygentype oxygen_saturation, bloodoxygen setlocalstarttime time, zoneoffset setlocalendtime time, zoneoffset build val insertrequest = datatypes blood_oxygen insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest } catch e exception { e printstacktrace } } blood pressure the corresponding blood pressure data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants bloodpressure bloodpressuretype code for reading the latest blood pressure data when using samsung health sdk for android is as follows reading the latest blood pressure data with samsung health sdk for android fun readlatestbloodpressure healthdatastore healthdatastore { val resultoffset = 0; val resultcount = 1 val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants bloodpressure health_data_type setsort healthconstants bloodpressure start_time, sortorder desc setresultcount resultoffset, resultcount build try { healthdataresolver read request setresultlistener { result -> try { result? lastornull ? let { healthdata -> val starttime = instant ofepochmilli healthdata getlong healthconstants bloodpressure start_time val systolicpressure = healthdata getfloat healthconstants bloodpressure systolic val diastolicpressure = healthdata getfloat healthconstants bloodpressure diastolic val mean = healthdata getfloat healthconstants bloodpressure mean val pulse = healthdata getint healthconstants bloodpressure pulse val sourcepackagename = healthdata getstring healthconstants common package_name val sourcedeviceid = healthdata getstring healthconstants common device_uuid } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read the latest blood pressure data is as follows reading the latest blood pressure data with samsung health data sdk suspend fun readlatestbloodpressure healthdatastore healthdatastore { val resultcount = 1 val readrequest = datatypes blood_pressure readdatarequestbuilder setordering ordering desc setlimit resultcount build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { datapoint -> val starttime = datapoint starttime val systolicpressure = datapoint getvalue datatype bloodpressuretype systolic val diastolicpressure = datapoint getvalue datatype bloodpressuretype diastolic val mean = datapoint getvalue datatype bloodpressuretype mean val pulse = datapoint getvalue datatype bloodpressuretype pulse_rate val sourcepackagename = datapoint datasource? appid val sourcedeviceid = datapoint datasource? deviceid } } catch e exception { e printstacktrace } } code for writing blood pressure data when using samsung health sdk for android is as follows writing blood pressure data with samsung health sdk for android fun insertbloodpressuredata healthdatastore healthdatastore { val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val healthdevicemanager = healthdevicemanager healthdatastore val tenminutesasseconds = 600l val starttime = instant now minusseconds tenminutesasseconds val timeoffset = timezone getdefault getoffset starttime toepochmilli val systolic = 119f val diastolic = 87f val mean = 0f val bloodpressuredata = healthdata apply { sourcedevice = healthdevicemanager localdevice uuid putlong healthconstants bloodpressure start_time, starttime toepochmilli putlong healthconstants bloodpressure time_offset, timeoffset tolong putfloat healthconstants bloodpressure systolic, systolic putfloat healthconstants bloodpressure diastolic, diastolic putfloat healthconstants bloodpressure mean, mean } val insertrequest = insertrequest builder setdatatype healthconstants bloodpressure health_data_type build insertrequest addhealthdata bloodpressuredata try { val insertresult = healthdataresolver insert insertrequest await if insertresult status != baseresult status_successful { log i mainactivity app_tag, "error inserting blood pressure data error code ${insertresult status}" } } catch e exception { e printstacktrace } } example code for writing blood pressure data when using samsung health data sdk is as follows writing blood pressure data with samsung health data sdk suspend fun insertbloodpressuredata healthdatastore healthdatastore { val starttime = localdatetime now minusminutes 10 val systolic = 119f val diastolic = 87f val mean = 0f try { val healthdatapoint = healthdatapoint builder setlocalstarttime starttime addfielddata datatype bloodpressuretype systolic, systolic addfielddata datatype bloodpressuretype diastolic, diastolic addfielddata datatype bloodpressuretype mean, mean build val insertdatarequest = datatypes blood_pressure insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertdatarequest } catch e exception { e printstacktrace } } body temperature the corresponding body temperature data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthconstants bodytemperature bodytemperaturetype here is an example of code that reads today's body temperature data when using samsung health sdk for android reading today's body temperature data with samsung health sdk for android fun readtodaybodytemperature healthdatastore healthdatastore { val starttime = localdate now atstartofday toinstant zoneoffset utc toepochmilli val endtime = localdatetime now toinstant zoneoffset utc toepochmilli val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val readrequest healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants bodytemperature health_data_type setlocaltimerange healthconstants bodytemperature start_time, healthconstants bodytemperature time_offset, starttime, endtime build try { healthdataresolver read readrequest setresultlistener { result -> try { result lastornull ? let { healthdata -> val measurementstarttime = date healthdata getlong healthconstants bodytemperature start_time val bodytemperature = healthdata getfloat healthconstants bodytemperature temperature } } finally { result close } } } catch e exception { e printstacktrace } } when using samsung health data sdk to read today's body temperature data is as follows reading today's body temperature samsung health data sdk suspend fun readtodaybodytemperature healthdatastore com samsung android sdk health data healthdatastore { val starttime = localdate now atstartofday val endtime = localdatetime now val localtimefilter = localtimefilter of starttime, endtime val readrequest = datatypes body_temperature readdatarequestbuilder setlocaltimefilter localtimefilter build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { datapoint -> val measurementstarttime = datapoint starttime val bodytemperature = datapoint getvalue datatype bodytemperaturetype body_temperature } } catch e exception { e printstacktrace } } example code for writing body temperature data when using samsung health sdk for android is as follows writing body temperature data with samsung health sdk for android fun insertbodytemperaturedata healthdatastore healthdatastore { val bodytemperature = 37f val tenminutesasseconds = 10l * 60l val zoneid = zoneoffset systemdefault val starttime = localdatetime now minusseconds tenminutesasseconds atzone zoneid toinstant toepochmilli val timeoffset = timezone getdefault getoffset starttime tolong val mhealthdataresolver = healthdataresolver healthdatastore, handler looper getmainlooper val healthdevicemanager = healthdevicemanager healthdatastore val data = healthdata apply { putlong healthconstants bodytemperature start_time, starttime putlong healthconstants bodytemperature time_offset, timeoffset putfloat healthconstants bodytemperature temperature, bodytemperature // register local device as the source of data sourcedevice = healthdevicemanager localdevice uuid } try { val insertrequest = insertrequest builder setdatatype healthconstants bodytemperature health_data_type build insertrequest addhealthdata data val result = mhealthdataresolver insert insertrequest await log i mainactivity app_tag, "insert result status ${result status}" } catch e exception { e printstacktrace } } when using samsung health data sdk to write body temperature data is as follows writing body temperature data with samsung health data sdk suspend fun insertbodytemperaturedata healthdatastore healthdatastore { val bodytemperature = 37f val tenminutesasseconds = 10l * 60l val time = localdatetime now minusseconds tenminutesasseconds val zoneid = zoneoffset systemdefault val zoneoffset = zoneid rules getoffset time try { val healthdatapoint = healthdatapoint builder addfielddata datatype bodytemperaturetype body_temperature, bodytemperature setlocalstarttime time, zoneoffset setlocalendtime time, zoneoffset build val insertrequest = datatypes body_temperature insertdatarequestbuilder adddata healthdatapoint build healthdatastore insertdata insertrequest } catch e exception { e printstacktrace } } user profile the corresponding user profile data types in samsung health sdk for android and samsung health data sdk are as following samsung health sdk for android samsung health data sdk healthuserprofile userprofiledatatype example code for getting user profile data when using samsung health sdk for android is as follows getting user profile data with samsung health sdk for android fun readuserprofile healthdatastore healthdatastore { val userprofile = healthuserprofile getprofile healthdatastore val gender = gendernamebyid userprofile gender val height = userprofile height val weight = userprofile weight } fun gendernamebyid id int string { return when id { healthuserprofile gender_male -> "male" healthuserprofile gender_female -> "female" else -> "unknown" } } example code for getting user profile data when using samsung health data sdk is as follows getting user profile data with samsung health data sdk suspend fun readuserprofile healthdatastore healthdatastore { val readrequest = datatypes user_profile readdatarequestbuilder build try { val result = healthdatastore readdata readrequest result datalist lastornull ? let { datapoint -> val gender = datapoint getvalue datatype userprofiledatatype gender val height = datapoint getvalue datatype userprofiledatatype height val weight = datapoint getvalue datatype userprofiledatatype weight } } catch e exception { e printstacktrace } } getting data's source device code for getting source device information that provided sleep data when using samsung health sdk for android is as follows getting data's source device information with samsung health sdk for android fun getsourcedeviceinfoofsleepdata healthdatastore healthdatastore { val resultcount = 1 val resultoffset = 0 val handler = handler looper getmainlooper val healthdataresolver = healthdataresolver healthdatastore, handler val request healthdataresolver readrequest = healthdataresolver readrequest builder setdatatype healthconstants sleep health_data_type setsort healthconstants sleep start_time, sortorder desc setresultcount resultoffset, resultcount build try { healthdataresolver read request setresultlistener { result -> try { result? foreach { healthdata -> val deviceid = healthdata getstring healthconstants sleep device_uuid val healthdevice = healthdevicemanager healthdatastore getdevicebyuuid deviceid val devicename = healthdevice customname val devicetype = devicegroupnamebyid healthdevice group } } finally { result close } } } catch e exception { e printstacktrace } } fun devicegroupnamebyid id int string { return when id { healthdevice group_mobile -> "mobile" healthdevice group_external -> "external" healthdevice group_companion -> "companion or watch" else -> "unknown" } } to get source device information that provided sleep data when using samsung health data sdk, the following example code can be used getting data's source device information with samsung health data sdk suspend fun getsourcedeviceinfoofsleepdata healthdatastore healthdatastore { val resultcount = 1 val readrequest = datatypes sleep readdatarequestbuilder setordering ordering desc setlimit resultcount build try { val result = healthdatastore readdata readrequest result datalist foreach { sleepdata -> val devicemanager = healthdatastore getdevicemanager sleepdata datasource? let { datasource -> val device = devicemanager getdevice datasource deviceid val deviceid = device? id val devicename = device? name val devicetype = device? devicetype } } } catch e exception { e printstacktrace } } having a trouble? we are operating a developer support channel on the samsung developer site if you encounter any issue or any question, please visit https //developer samsung com/dev-support and submit your query after logging in your samsung account
events marketplace, mobile
blogafter spending the last 20 years of my career working in the us, two years ago i packed up and moved over 10,000 miles to korea to work for samsung. i was curious. as a korean-american, i wanted to join one of the largest companies in the world and see for myself how both the country and the company operated. best-known for its massive consumer electronics hardware business, samsung makes beautiful products that touch the lives of millions of people, including my family. exciting, right? but not the obvious fit for my background in banking and startup environments. navigating life in a new country and learning a totally new industry is tough! i admit it – initially i was clueless. but soon i realized that i had joined samsung at a very important and transformational time. the company is putting a huge strategic focus on software and services, creating intelligent platforms that connect all the samsung devices and services to create a seamless user experience. it is also increasing its engagement and support of third party developers and the innovations they can provide on top of samsung platforms. it is clear to me that we are tasked with collaborating with developers to create future success together. of course this kind of evolution raises a lot of questions. what kind of experiences and services will new “connected thinking” technologies give rise to? what type of business models and partnerships are needed to generate maximum revenue in the new service economy? how will experiences be developed and delivered to users? **#sdc2017 ** we look forward to exploring the possibilities of 'connected thinking' with you at sdc 2017 – our 2 day developer conference taking place on october 18 & 19th at moscone west in san francisco. during the keynotes, you’ll hear more about samsung’s software and services plans and new initiatives from dj koh, president of mobile communications business at samsung electronics and executive vice presidents injong rhee, head of r&d, software & services of mobile communications business and eui suk chung, head of service intelligence of mobile communications business. we are also thrilled to have some very inspiring industry leaders joining us this year including stan lee, world renowned former editor-in-chief of marvel comics. artist and creator rob prior whose commercial works include illustrations and covers for dungeons & dragons, sculptures and props for joss whedon’s firefly, and original monster creations for buffy the vampire slayer, rain paris, musician and youtube star who will join stan lee to discuss how connected thinking motivates creativity and disruption in a session called “comics, movies and music”. in addition, arianna huffington, thrive global founder and ceo, will join marc mathieu, cmo of samsung electronics america in a keynote conversation with on samsung and thrive’s shared philosophy on the use of technology to create social good. we have a packed schedule of interesting technical, business and panel sessions, addressing a wide variety of technologies and topics such as intelligence, iot, vr, health, internet. sdc is also an opportunity for you to meet and network with technology experts and thought leaders from samsung and the industry. check out all the conference details and browse the session catalog. join us! register now for sdc2017 so we can innovate and prosper together in the new, intelligent software and services economy. i look forward to meeting you there.
Thomas Ko
Develop Mobile Samsung eSE SDK
docsamsung ese sdk overview description of secure element a secure element is a tamper-resistant platform typically a one chip secure microcontroller capable of securely hosting applications and their confidential and cryptographic data such as cryptographic keys and sensitive data in accordance with the rules and security requirements set by well-identified trusted authorities there are various form factors of secure element subscriber identity module sim / universal integrated circuit card uicc embedded secure element microsd secure elements offers a separate hardware-backed security so that sensitive information or transaction can be performed independently from other processors ap, cp, cpu, and etc due to this, secure elements have been supporting immense needs of various industries that require additional protections, such as payment cards, e-id cards, health insurance cards, driver licenses, digital car keys, and door lock keys embedded secure element ese chips on samsung devices have been certified by authorities such as globalplatform, emvco and common criteria all of them have at least an eal5+ evaluation assurance level , which can provide equal or higher security level as an electronic passport can samsung is ready to open ese for service providers who wants to utilize our products our ese also supports industry standards such as javacard and globalplatform card specifications use cases the following are some use cases for ese on samsung devices transits payments digital key access door key, car key, and etc identification / authentication secure storage / certificate manager samsung devices with ese allow customers to use secure services in general, certain levels of security are required for services that deal with sensitive information with a highly secured samsung device, the service provider can provide their services securely to its customers samsung ese sdk samsung ese sdk provides the way for the service provider to deploy a service using ese on samsung devices it enables the service provider to manage their own service on each customer’s device it requires communication between, not only on the client application and ese, but also the server and device hence, there are a few requirements for the service provider to proceed with service development you can use samsung ese sdk to deploy a service on a customer’s device communicate with ese using a client application manage service provider’s own storage within ese requirements for the service provider applet development resides within ese tsm trusted service manager server service provider can choose one of the options below service provider tsm server samsung tsm tsm-less how to request partnership to use the samsung ese sdk, you must become a samsung partner to request partnership open the partnership request form if prompted, log in to your samsung account if you do not already have a samsung account, create one enter your company and developer information your name, email address, and country are filled in for you enter information about the application for which you are applying to use the samsung ese sdk provide the name and description for the application, and attach documents that detail the application features and use cases when you are ready to submit the request, click “submit ” your partnership request will be reviewed when it is approved, you will receive confirmation letter nda non-disclosure agreement shall be established between samsung and service provider after confirmation letter samsung ese sdk can be accessed under nda faq q 01 is there a device list for ese eligibility? a the device list will be provided after an nda non-disclosure agreement has been completed between the service provider and samsung q 02 do i need to have/develop an javacard applet for service? a yes, samsung will only provide certain storage within ese the service provider shall prepare an applet itself to be loaded / installed within ese q 03 who can apply for partnership? a samsung intends to provide service opportunities for 3rd parties who can manage secure service stable for a valuable customer however individual developer can't apply partnership for samsung ese sdk
Develop Mobile Samsung Automation
docopen source samsung automation studio is one way to integrate samsung services with open source or 3rd-part services we are actively using open source and trying to contribute to the open source ecosystem check out the following article samsung electronics migrates iot developer tools to cloud foundry based on node-red samsung automation studio was forked from node-red version 0 17 5 and developed to support the easy development of smartthings automation webhook in early 2016 low-code programming for event-driven applications node-red is a programming tool for wiring together hardware devices, apis and online services in new and interesting ways it provides a browser-based editor that makes it easy to wire together flows using the wide range of nodes in the palette that can be deployed to its runtime in a single-click flow-based programming invented by j paul morrison in the 1970s, flow-based programming is a way of describing an application’s behavior as a network of black-boxes, or “nodes” as they are called in node-red each node has a well-defined purpose; it is given some data, it does something with that data and then it passes that data on the network is responsible for the flow of data between the nodes it is a model that lends itself very well to a visual representation and makes it more accessible to a wider range of users if someone can break down a problem into discrete steps they can look at a flow and get a sense of what it is doing; without having to understand the individual lines of code within each node more details are available at nodered org contributes samsung automation studio team published custom nodes on the node-red site we are improving it through open source see the following github https //github com/samsung/samsungautomationstudio and we continue to engage the nodered community running on cloud foundry automation studio deploys flows in secured and isolated containers whose healths and lifecycles are managed automatically by the reliable container platform cf cloud platform cloud platforms let anyone deploy network apps or services and make them available to the world in a few minutes when an app becomes popular, the cloud scales it to handle more traffic, replacing build-out and migration efforts that once took months with a few keystrokes cloud platforms enable you to focus exclusively on your apps and data without worrying about underlying infrastructure the following diagram shows the layers of a typical technology stack, and compares the traditional it model to the cloud platform model about the cloud foundry platform this section describes why cloud foundry is an industry-standard cloud platform not all cloud platforms are created equal some have limited language and framework support, lack key app services, or restrict deployment to a single cloud as an industry-standard cloud platform, cloud foundry offers the following open source code the platform’s openness and extensibility prevent its users from being locked into a single framework, set of app services, or cloud deployment automation developers can deploy their apps to cloud foundry using their existing tools and with zero modification to their code flexible infrastructure you can deploy cloud foundry to run your apps on your own computing infrastructure, or deploy on an iaas like vsphere, aws, azure, gcp, or openstack commercial options you can also use a paas deployed by a commercial cloud foundry cloud provider community support a broad community contributes to and supports cloud foundry cloud foundry is ideal for anyone interested in removing the cost and complexity of configuring infrastructure for their apps more details are available at cloudfoundry org get started - samsung automation studio beta
We use cookies to improve your experience on our website and to show you relevant advertising. Manage you settings for our cookies below.
These cookies are essential as they enable you to move around the website. This category cannot be disabled.
These cookies collect information about how you use our website. for example which pages you visit most often. All information these cookies collect is used to improve how the website works.
These cookies allow our website to remember choices you make (such as your user name, language or the region your are in) and tailor the website to provide enhanced features and content for you.
These cookies gather information about your browser habits. They remember that you've visited our website and share this information with other organizations such as advertisers.
You have successfully updated your cookie preferences.