Application generation in a wireless communication system

A cloud-based AI system generates custom apps on demand by interpreting user requests and device context, addressing the inefficiencies of traditional app development by providing quick, personalized app creation directly on user devices.

WO2026073591A1PCT designated stage Publication Date: 2026-04-09LENOVO INT COÖPERATIEF U A
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-07-28
Publication Date
2026-04-09

AI Technical Summary

Technical Problem

Existing app development processes are time-consuming, require programming expertise, and do not allow users to easily create personalized apps that meet immediate, specific requirements, often resulting in inefficient installation and configuration of apps for one-time or temporary use.

Method used

A cloud-based AI system using large language models (LLMs) generates application code dynamically in response to user requests, incorporating context and device information to create custom apps without manual coding, and deploys them securely on user devices through a comprehensive Apps-On-Demand platform.

Benefits of technology

Enables quick, personalized app creation directly on user devices, improving user experience by automating the app generation and deployment process, reducing time-to-market, and adapting to device-specific hardware and user preferences.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025071686_09042026_PF_FP_ABST
    Figure EP2025071686_09042026_PF_FP_ABST
Patent Text Reader

Abstract

Various aspects of the present disclosure relate to a user equipment (UE) for wireless communication. The UE may be configured to, capable of, or operable to transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.
Need to check novelty before this filing date? Find Prior Art

Description

APPLICATION GENERATION IN A WIRELESS COMMUNICATIONSYSTEMTECHNICAL FIELD

[0001] The present disclosure relates generally to wireless communication, including application generation.BACKGROUND

[0002] A wireless communications system may include one or multiple network communication devices, which may be otherwise knowns as NE supporting wireless communications for one or multiple user communication devices, which may be otherwise known as UE, or other suitable terminology. The wireless communications system may support wireless communications with one or multiple user communication devices by utilizing resources of the wireless communication system (e.g., time resources (e.g., symbols, slots, subframes, frames, or the like) or frequency resources (e.g., subcarriers, carriers, or the like). Additionally, the wireless communications system may support wireless communications across various radio access technologies including third generation (3G) radio access technology, fourth generation (4G) radio access technology, fifth generation (5G) radio access technology, among other suitable radio access technologies beyond 5G (e.g., sixth generation (6G)).SUMMARY

[0003] An article “a” before an element is unrestricted and understood to refer to “at least one” of those elements or “one or more” of those elements. The terms “a,” “at least one,” “one or more,” and “at least one of one or more” may be interchangeable. As used herein, including in the claims, “or” as used in a list of items (e.g., a list of items prefaced by a phrase such as “at least one of’ or “one or more of’ or “one or both of’) indicates an inclusive list such that, for example, a list of at least one of A, B, or C means A or B or C or AB or AC or BC or ABC (i.e., A and B and C). Also, as used herein, the phrase “based on” shall not be construed as a reference to a closed set of conditions. For example, an example step that is described as “based on condition A” may be based on both a condition A and aDocket No. SMM920250081-GR-NPcondition B without departing from the scope of the present disclosure. In other words, as used herein, the phrase “based on” shall be construed in the same manner as the phrase “based at least in part on. Further, as used herein, including in the claims, a “set” may include one or more elements.

[0004] The following abbreviations are relevant in the field addressed by this document: Al - Artificial intelligence; API - Application Programming Interface; APK - Android Package Kit; App - Application; AR - Augmented Reality; CSS - Cascading Style Sheets; GPS - Global Positioning System; CPU - Central Processing Unit; GPU - Graphics Processing Unit; HTML - Hypertext Markup Language ;HTTPS - Hypertext Transfer Protocol Secure; loT - Internet of Things; JS - JavaScript; LLM - Large Language Model; NE - Network Equipment; NLP - Natural Language Processing; OS - Operating System; UE - User Equipment; UI - User Interface; URL - Uniform Resource Locator; US - United States; XML - Extensible Markup Language.

[0005] A UE for wireless communication is described. The UE may be configured to, capable of, or operable to perform one or more operations as described herein. For example, the UE may include at least one memory, and at least one processor coupled with the at least one memory and configured to cause the UE to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0006] A method performed or performable by the UE is described herein. The method may comprise: transmitting, to a network entity, an application generation request comprising an application parameter and context information; and receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0007] A processor for wireless communication is described. The processor may be configured to, capable of, or operable to perform one or more operations as describedDocket No. SMM920250081-GR-NPherein. For example, the processor may comprise at least one controller coupled with at least one memory and configured to cause the processor to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0008] A network entity for wireless communication is described. The network entity may be configured to, capable of, or operable to perform one or more operations as described herein. For example, the network entity may include at least one memory, and at least one processor coupled with the at least one memory and configured to cause the network entity to: receive, from a UE, an application generation request comprising an application parameter and context information; and transmit, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0009] A method performed or performable by the network entity is described herein. The method may comprise: receiving, from a UE, an application generation request comprising an application parameter and context information; and transmitting, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0010] A processor for wireless communication is described. The processor may be configured to, capable of, or operable to perform one or more operations as described herein. For example, the processor may comprise at least one controller coupled with at least one memory and configured to cause the processor to: receive, from a UE, an application generation request comprising an application parameter and context information; and transmit, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.Docket No. SMM920250081-GR-NPBRIEF DESCRIPTION OF THE DRAWINGS

[0011] Figure 1 illustrates an example of a wireless communications system in accordance with aspects of the present disclosure.

[0012] Figure 2 illustrates a system architecture for application generation in accordance with aspects of the present disclosure.

[0013] Figure 3 illustrates an example of a process flow for application generation in accordance with aspects of the present disclosure.

[0014] Figure 4 illustrates an example of a UE 400 in accordance with aspects of the present disclosure.

[0015] Figure 5 illustrates an example of a processor 500 in accordance with aspects of the present disclosure.

[0016] Figure 6 illustrates an example of a NE 600 in accordance with aspects of the present disclosure.

[0017] Figure 7 illustrates a flowchart of a method 700 performed by a UE in accordance with aspects of the present disclosure.

[0018] Figure 8 illustrates a flowchart of a method 800 performed by a NE in accordance with aspects of the present disclosure.DETAILED DESCRIPTION

[0019] A wireless communication system, including one or more UE and NE may use apps for various tasks. Apps may be developed by software developers which tends to be time consuming and slow response. Apps may also be developed using Al-generated app platforms (e.g., no-code or Al-assisted app building platforms) which enable a user to create an app by providing a prompt (e.g., text prompt, voice prompt). There is an on-going requirement for improvements in app development to improve user experience. Examples described herein tend to improve the user experience by improving operation of AI- generated apps on a user’s device (e.g., UE).Docket No. SMM920250081-GR-NP

[0020] Aspects of the present disclosure are described in the context of a wireless communications system.

[0021] Figure 1 illustrates an example of a wireless communications system 100 in accordance with aspects of the present disclosure. The wireless communications system 100 may include one or more NE 102, one or more UE 104, and a core network (CN) 106. The wireless communications system 100 may support various radio access technologies. In some implementations, the wireless communications system 100 may be a 4G network, such as an LTE network or an LTE- Advanced (LTE-A) network. In some other implementations, the wireless communications system 100 may be a NR network, such as a 5G network, a 5G- Advanced (5G-A) network, or a 5G ultrawideband (5G-UWB) network. In other implementations, the wireless communications system 100 may be a combination of a 4G network and a 5G network, or other suitable radio access technology including Institute of Electrical and Electronics Engineers (IEEE) 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20. The wireless communications system 100 may support radio access technologies beyond 5G, for example, 6G. Additionally, the wireless communications system 100 may support technologies, such as time division multiple access (TDMA), frequency division multiple access (FDMA), or code division multiple access (CDMA), etc.

[0022] The one or more NE 102 may be dispersed throughout a geographic region to form the wireless communications system 100. One or more of the NE 102 described herein may be or include or may be referred to as a network node, a base station, a network element, a network function, a network entity, a radio access network (RAN), a NodeB, an eNodeB (eNB), a next-generation NodeB (gNB), or other suitable terminology. An NE 102 and a UE 104 may communicate via a communication link, which may be a wireless or wired connection. For example, an NE 102 and a UE 104 may perform wireless communication (e.g., receive signalling, transmit signalling) over a Uu interface.

[0023] An NE 102 may provide a geographic coverage area for which the NE 102 may support services for one or more UEs 104 within the geographic coverage area. For example, an NE 102 and a UE 104 may support wireless communication of signals related to services (e.g., voice, video, packet data, messaging, broadcast, etc.) according to one orDocket No. SMM920250081-GR-NPmultiple radio access technologies. In some implementations, an NE 102 may be moveable, for example, a satellite associated with a non-terrestrial network (NTN). In some implementations, different geographic coverage areas associated with the same or different radio access technologies may overlap, but the different geographic coverage areas may be associated with different NE 102.

[0024] The one or more UE 104 may be dispersed throughout a geographic region of the wireless communications system 100. A UE 104 may include or may be referred to as a remote unit, a mobile device, a wireless device, a remote device, a subscriber device, a transmitter device, a receiver device, or some other suitable terminology. In some implementations, the UE 104 may be referred to as a unit, a station, a terminal, or a client, among other examples. Additionally, or alternatively, the UE 104 may be referred to as an loT device, an Internet-of-Everything (loE) device, or machine-type communication (MTC) device, among other examples.

[0025] A UE 104 may be able to support wireless communication directly with other UEs 104 over a communication link. For example, a UE 104 may support wireless communication directly with another UE 104 over a device-to-device (D2D) communication link. In some implementations, such as vehicle-to-vehicle (V2V) deployments, vehicle-to-everything (V2X) deployments, or cellular-V2X deployments, the communication link may be referred to as a sidelink. For example, a UE 104 may support wireless communication directly with another UE 104 over a PC5 interface.

[0026] An NE 102 may support communications with the CN 106, or with another NE 102, or both. For example, an NE 102 may interface with other NE 102 or the CN 106 through one or more backhaul links (e.g., SI, N2, N2, or network interface). In some implementations, the NE 102 may communicate with each other directly. In some other implementations, the NE 102 may communicate with each other or indirectly (e.g., via the CN 106. In some implementations, one or more NE 102 may include subcomponents, such as an access network entity, which may be an example of an access node controller (ANC). An ANC may communicate with the one or more UEs 104 through one or more other access network transmission entities, which may be referred to as a radio heads, smart radio heads, or transmission-reception points (TRPs).Docket No. SMM920250081-GR-NP

[0027] The CN 106 may support user authentication, access authorization, tracking, connectivity, and other access, routing, or mobility functions. The CN 106 may be an evolved packet core (EPC), or a 5G core (5GC), which may include a control plane entity that manages access and mobility (e.g., a mobility management entity (MME), an access and mobility management functions (AMF)) and a user plane entity that routes packets or interconnects to external networks (e.g., a serving gateway (S-GW), a Packet Data Network (PDN) gateway (P-GW), or a user plane function (UPF)). In some implementations, the control plane entity may manage non-access stratum (NAS) functions, such as mobility, authentication, and bearer management (e.g., data bearers, signal bearers, etc.) for the one or more UEs 104 served by the one or more NE 102 associated with the CN 106.

[0028] The CN 106 may communicate with a packet data network over one or more backhaul links (e.g., via an SI, N2, N2, or another network interface). The packet data network may include an application server. In some implementations, one or more UEs 104 may communicate with the application server. A UE 104 may establish a session (e.g., a protocol data unit (PDU) session, or the like) with the CN 106 via an NE 102. The CN 106 may route traffic (e.g., control information, data, and the like) between the UE 104 and the application server using the established session (e.g., the established PDU session). The PDU session may be an example of a logical connection between the UE 104 and the CN 106 (e.g., one or more network functions of the CN 106).

[0029] In the wireless communications system 100, the NEs 102 and the UEs 104 may use resources of the wireless communications system 100 (e.g., time resources (e.g., symbols, slots, subframes, frames, or the like) or frequency resources (e.g., subcarriers, carriers)) to perform various operations (e.g., wireless communications). In some implementations, the NEs 102 and the UEs 104 may support different resource structures. For example, the NEs 102 and the UEs 104 may support different frame structures. In some implementations, such as in 4G, the NEs 102 and the UEs 104 may support a single frame structure. In some other implementations, such as in 5 G and among other suitable radio access technologies, the NEs 102 and the UEs 104 may support various frame structures (i.e., multiple frame structures). The NEs 102 and the UEs 104 may support various frame structures based on one or more numerologies.Docket No. SMM920250081-GR-NP

[0030] One or more numerologies may be supported in the wireless communications system 100, and a numerology may include a subcarrier spacing and a cyclic prefix. A first numerology (e.g., / r=0) may be associated with a first subcarrier spacing (e.g., 15 kHz) and a normal cyclic prefix. In some implementations, the first numerology (e.g., / r=0) associated with the first subcarrier spacing (e.g., 15 kHz) may utilize one slot per subframe. A second numerology (e.g., / r=l) may be associated with a second subcarrier spacing (e.g., 30 kHz) and a normal cyclic prefix. A third numerology (e.g., / r=2) may be associated with a third subcarrier spacing (e.g., 60 kHz) and a normal cyclic prefix or an extended cyclic prefix. A fourth numerology (e.g., / r=3) may be associated with a fourth subcarrier spacing (e.g., 120 kHz) and a normal cyclic prefix. A fifth numerology (e.g., / r=4) may be associated with a fifth subcarrier spacing (e.g., 240 kHz) and a normal cyclic prefix.

[0031] A time interval of a resource (e.g., a communication resource) may be organized according to frames (also referred to as radio frames). Each frame may have a duration, for example, a 10 millisecond (ms) duration. In some implementations, each frame may include multiple subframes. For example, each frame may include 10 subframes, and each subframe may have a duration, for example, a 1 ms duration. In some implementations, each frame may have the same duration. In some implementations, each subframe of a frame may have the same duration.

[0032] Additionally or alternatively, a time interval of a resource (e.g., a communication resource) may be organized according to slots. For example, a subframe may include a number (e.g., quantity) of slots. The number of slots in each subframe may also depend on the one or more numerologies supported in the wireless communications system 100. For instance, the first, second, third, fourth, and fifth numerologies (i.e., / r=0, jU=l , / r=2, jU=3, / r=4) associated with respective subcarrier spacings of 15 kHz, 30 kHz, 60 kHz, 120 kHz, and 240 kHz may utilize a single slot per subframe, two slots per subframe, four slots per subframe, eight slots per subframe, and 16 slots per subframe, respectively. Each slot may include a number (e.g., quantity) of symbols (e.g., OFDM symbols). In some implementations, the number (e.g., quantity) of slots for a subframe may depend on a numerology. For a normal cyclic prefix, a slot may include 14 symbols. For an extended cyclic prefix (e.g., applicable for 60 kHz subcarrier spacing), a slot may include 12Docket No. SMM920250081-GR-NPsymbols. The relationship between the number of symbols per slot, the number of slots per subframe, and the number of slots per frame for a normal cyclic prefix and an extended cyclic prefix may depend on a numerology. It should be understood that reference to a first numerology (e.g., / r=0) associated with a first subcarrier spacing (e.g., 15 kHz) may be used interchangeably between subframes and slots.

[0033] In the wireless communications system 100, an electromagnetic (EM) spectrum may be split, based on frequency or wavelength, into various classes, frequency bands, frequency channels, etc. By way of example, the wireless communications system 100 may support one or multiple operating frequency bands, such as frequency range designations FR1 (410 MHz - 7.125 GHz), FR2 (24.25 GHz - 52.6 GHz), FR3 (7.125 GHz - 24.25 GHz), FR4 (52.6 GHz - 114.25 GHz), FR4a or FR4-1 (52.6 GHz - 71 GHz), and FR5 (114.25 GHz - 300 GHz). In some implementations, the NEs 102 and the UEs 104 may perform wireless communications over one or more of the operating frequency bands. In some implementations, FR1 may be used by the NEs 102 and the UEs 104, among other equipment or devices for cellular communications traffic (e.g., control information, data). In some implementations, FR2 may be used by the NEs 102 and the UEs 104, among other equipment or devices for short-range, high data rate capabilities.

[0034] FR1 may be associated with one or multiple numerologies (e.g., at least three numerologies). For example, FR1 may be associated with a first numerology (e.g., / r=0), which includes 15 kHz subcarrier spacing; a second numerology (e.g., / r=l), which includes 30 kHz subcarrier spacing; and a third numerology (e.g., / r=2), which includes 60 kHz subcarrier spacing. FR2 may be associated with one or multiple numerologies (e.g., at least 2 numerologies). For example, FR2 may be associated with a third numerology (e.g., / r=2), which includes 60 kHz subcarrier spacing; and a fourth numerology (e.g., / r=3), which includes 120 kHz subcarrier spacing.

[0035] Examples described herein generally relate to the one or more NE 102 comprising a cloud Al service. The one or more UEs 104 may transmit an application generation request to the one or more NE 102. The application generation request may comprise an application parameter (which may comprise a user requirement) and context information. The one or more NE 102 may generate application code for the UE based onDocket No. SMM920250081-GR-NPthe application parameter and context information. The one or more NE 102 may transmit an application generation response comprising the application code to the one or more UEs 104. The user(s) of the one or more UEs 104 may execute the application code for the user requirement.

[0036] Mobile app development is a complex, time-consuming process that tends to require programming expertise and significant time-to-market. Users with specific or niche requirements are often unable to develop their own apps easily, and developers attempt to anticipate a wide range of requirements in advance. Although there a large number of apps available in app stores, users may be unable to find an app that precisely matches an immediate, personalized requirement. Even if a suitable app exists, installing and configuring a new app for one-time or temporary use tends to be inefficient.

[0037] An app may be developed using a no-code (or Al -assisted app builder) platform. Such platforms may assist a user with creating simple apps by describing their ideas. An Al app generator may enable a user to share an idea through a simple text or speech prompt. An Al builder may instantly transform the prompt into a working app. Thus, there is a demand for quick app creation from natural language descriptions. However, previous solutions require manual customization steps. Previous solutions are also limited to predefined templates. Previous solutions may also result in web-based apps that are not tightly integrated with device hardware. Previous solution also do not provide fully automated end-to-end app generation and deployment directly to a user’s device.

[0038] In some examples described herein, cloud computing and Al (e.g., large language models, LLMs, capable of generating programming code) may be used to dynamically create software on the fly. Cloud-based Al may generate code, user interface layouts, or adapt user interfaces contextually. Generative UI techniques may point to interfaces that adapt based on context (e.g., device type) and user behaviour or preferences.

[0039] In some examples described herein, Al-driven systems may capture user interaction data and continuously improve through feedback loops. Some examples described herein may relate to a system that automatically generates and personalizes applications for users on demand, improving with experience. Some examples described herein relate to a system that allows users to obtain “apps on demand”. Some examplesDocket No. SMM920250081-GR-NPdescribed herein relate to a process performed by a system for creating custom software applications generated immediately in response to the user’s request. The process tends to be performed without requiring coding from the user, without long delays or without requiring the user to search an app marketplace. The system may handle the entire process from understanding the user’s intent, creating a tailored app, delivering it to the device, and running it in a secure environment. In some examples described herein, the system uses knowledge of the user’s device (e.g., for hardware integration). For example, the system may use context information relating to the user device. In some examples described herein, the system learns from past interactions; this tends to improve the system’s ability to create the custom software applications based on the user’s request. Examples described herein generally relate to a comprehensive Apps-On-Demand platform.

[0040] Figure 2 illustrates a system architecture 200 for application generation in accordance with aspects of the present disclosure. The system architecture 200 comprises a UE 201, a Network 210 and a Cloud Al Service 220. The UE 201 comprises an Apps-On- Demand Client App 202 which comprises an Intent Capture Module 204, a Context Collector 206 and a Runtime Environment 208. The Runtime Environment 208 may comprise sandbox execution or native app deployment. The Network 210 may be a 5G, 6G or 5G / 6G network. The Cloud Al Service 220 may comprise an Al Agent 222, an LLM 224, and Tools 226. The Tools 226 may comprise at least one of: a code verification tool, a code compilation tool, a code build tool, and a delivery manager tool. The UE 201 may transmit, to the Al Agent 222 via the Network 210, User Intent + Content Data 230. The UE 201 may receive, from the Al Agent 222 via the Network 210, Generated app package 232. The UE 201 may transmit, to the Al Agent 222 via the Network 210, User feedback 234.

[0041] The UE 201 with Apps-On-Demand Client 202 may comprise at least one of: a computing device such as a smartphone, tablet, wearable, a PC, and a specialized loT device. The UE 201 may be a user device that the user uses to run a generated app. The UE 201 hosts the Apps-On-Demand client application 202. The Apps-On-Demand client application 202 provides a UI for making requests and the Runtime Environment 208 for executing generated apps. The Apps-On-Demand client application 202 may comprise aDocket No. SMM920250081-GR-NPmodule for capturing user input (e.g., a text field, microphone access for voice), a module for communicating with the Cloud Al Service 220, or a module for managing the lifecycle of on-demand apps (e.g., installation, sandboxing, execution, deletion).

[0042] The Cloud Al Service 220 is a cloud-hosted platform that executes an LLM- based pipeline for generating the requested application. The Cloud Al Service 220 may run on one or multiple servers in a cloud environment. The Cloud Al Service 220 may be hosted either by a mobile operator or by a third-party, e.g., by the UE 201 vendor.

[0043] The LLM 224 is a central sub-component that operates as an orchestrator for building the requested app. The LLM 224 receives from the Al Agent 222 the user's request (e.g., the user intent) and the associated context (e.g., context information) and uses NLP to interpret this request and break it down into a specification or plan for the desired application. For example, if the user says "I want an app to remind me to drink water," the LLM 224 identifies the need for a reminder feature on a schedule, possibly a log to track water intake, and a user interface to input or display information. The LLM 224 uses this input, along with any context information (e.g., device capabilities, user preferences), to determine the functional requirements for the requested app.

[0044] The LLM 224 may receive an indication of the available Tools 226 in the Cloud Al Service 220 and instructs the Al Agent 222 to call specific tools to perform specific tasks. For example, if there is a Code Synthesis Engine to generate the actual source code, the LLM 224 requests (e.g., asks) the Al Agent 222 to invoke (e.g., call, execute, request) this tool and to receive the generated source code. The LLM 224 may request the Al Agent 222 to invoke a Code Verification tool to identify (e.g., determine) whether the generated source code contains any errors.

[0045] The LLM 224 serves as a central orchestrator of the application generation process. Upon receiving the user's natural language intent and context information, the LLM 224 interprets the request, plans the structure and features of the requested application, generates source code and UI components (unless there is a specialized tool for code generation), issues follow-up instructions to the Al Agent 222 to carry out downstream operations such as compiling the code, packaging the application, and delivering it back to the UE 201.Docket No. SMM920250081-GR-NP

[0046] The Al Agent 222 acts as an execution manager. The Al Agent 222 receives task directives from the LLM 224 and carries them out (e.g., performs one or more tasks according to the task directives) by interacting with the available tools. For example, upon receiving an instruction from the LLM 224 to compile the generated source code, the Al Agent 222 may submit the source code to a compiler tool for compilation. The LLM 224 may determine to package the code. The LLM 224 may instruct the Al Agent 222 to call a Packaging tool. The Al Agent 222 returns a tool output or status report to the LLM 224 which tends to enable the LLM 224 to continue or adjust the workflow.

[0047] The Tools 226 are specialized modules that perform discrete tasks at the request of the Al Agent 222. The Tools 226 may comprise at least one of: a Code Synthesis Engine, a Code Verification Server, a Compilation / Build Server, a Delivery Manager, and Networking & Security.

[0048] The Code Synthesis Engine is used for generating the source code when the LLM 224 cannot perform this operation. The source code may be generated by the LLM 224.

[0049] The Code Verification Server may be called by the LLM 224 to verify whether the generated source code is correct or whether it contains errors.

[0050] The Compilation / Build Server is a module that compiles the source code into an executable package. The Compilation / Build Server may compile the source code into an executable package for a native app. The Compilation / Build Server may run (e.g., execute) a build tool to produce an APK file e.g., for Android. The Compilation / Build Server may run a build tool to produce an IPA file e.g., for iOS. The Compilation / Build Server may compress the files e.g., for a web app. The Compilation / Build Server may also handle (e.g., perform) code signing, encryption, or compression as required for delivery. The code might be interpreted rather than compiled which tends to be quicker. The interpreted code may comprise a bytecode generation or bundling files.

[0051] The Delivery Manager handles sending the generated app package back to the requesting device. The Delivery Manager may store the generated app locally and create a URL where the client app can be downloaded from. It communicates with the client app viaDocket No. SMM920250081-GR-NPsecure channels (e.g., HTTPS). The delivery may include metadata about the app; for example an icon, a name, a version, or required permissions, e.g., for the client (e.g., the Apps-On-Demand Client App 202) to present and run the app.

[0052] Networking & Security comprise communication between the Apps-On- Demand Client App 202 and the Cloud Al Service 220 is performed over a secure network connection e.g., by a 5G / 6G mobile network. The requests from the UE 201 (including the user’s app description and context information) are transmitted to the Cloud Al Service 220, and the app package plus any logs / feedback are transmitted back. Security measures may comprise at least one of: authentication of the UE 201 with the Cloud Al Service 220, encryption of data in transit, and a user confirmation step e.g., if sensitive device capabilities are requested by the generated app (for example, if the generated app will use the camera or location, the system may prompt the user to approve this usage).

[0053] Figure 3 illustrates an example of a process flow 300 for application generation in accordance with aspects of the present disclosure.

[0054] The process flow 300 may implement or be implemented by aspects of the wireless communication system 100. For example, the process flow 300 may include an Apps-On-Demand Client App 302 (which may be referred to as the client herein) and a Cloud Al Service 320, which may be one or more examples of devices described herein with reference to Figure 1.

[0055] The process flow 300 may be referred to as a procedure, including one or more operations performed by one or more of the Apps-On-Demand Client App 302 and the Cloud Al Service 320. In the example of Figure 3, the process flow 300 may include one complete cycle for generating and deploying an app on demand.

[0056] In the following description of the process flow 300, the operations or signalling performed between one or more of the Apps-On-Demand Client App 302 and the Cloud Al Service 320may be performed or signalled (e.g., transmitted, received) in a different order than the example order shown, or the operations or signalling performed by one or more of the Apps-On-Demand Client App 302 and the Cloud Al Service 320 may be performed or signalled (e.g., transmitted, received) in different orders or at different times. SomeDocket No. SMM920250081-GR-NPoperations or signalling may also be omitted from the process flow 300. Additionally, although some operations or signalling may be shown to occur at different times, these operations or signalling may occur at the same time or in overlapping time periods.

[0057] The process flow 300 begins at step 371 “User Input Capture”. A user opens the Apps-On-Demand Client App 302 on their device (e.g., UE) and provides a description of the desired app (e.g., a user input, a user requirement). This may be achieved by typing a request (e.g., on a keyboard of the UE) or speaking aloud (e.g., into a microphone of the UE). The Apps-On-Demand Client App 302 will perform speech-to-text transcription for voice inputs. The user input may be unstructured natural language, for example: “Create an app that logs my workouts and calories burned, with weekly summary charts” or “I need a tool to control my office loT thermostats and get alerts if temperature exceeds 80°F”. The Apps-On-Demand Client App 302 may prompt the user for further clarification of the user input e.g., if the user input is unclear or vague. Alternatively, the Apps-On-Demand Client App 302 may accept the user input e.g., regardless of whether the user input is unclear or vague.

[0058] At step 372 “Context Gathering”, the Apps-On-Demand Client App 302 collects (e.g., receives) relevant context information from the device. This may comprise at least one of: hardware capabilities (e.g., presence of GPS, accelerometer, camera, biometric sensors); OS details; screen dimensions; memory / CPU profile; and any user-specific settings / preferences. The user may have a profile in the app indicating general preferences comprising at least one of: default language, colour theme (e.g., light / dark), and accessibility needs (e.g., large text or voice feedback). The context information is packaged with the request (e.g., application generation request). For example, the Cloud Al Service 320 may receive a user input “workout logger app” and context information: device: Motorola Edge 50 Ultra, Android 15, 1080x2400 screen, with GPS / NFC / Camera, user prefers dark mode, locale English (US).

[0059] At step 373 “App Generation Request”, the Apps-On-Demand Client App 302 securely sends the request and context information to the Cloud Al Service 320. The request may be sent via an API call over the Internet (e.g., via a 5G / 6G mobile network). The system (e.g., the Apps-On-Demand Client App 302) may queue requests if there areDocket No. SMM920250081-GR-NPmultiple requests to send (e.g., simultaneously or within a defined period of time). The system may process each of the multiple requests on demand (e.g., as quickly as resources allow).

[0060] At step 374 “Al Interpretation”, upon receiving the request, the Cloud Al Service 320 parses the natural language description using an LLM. The LLM identifies the key features and goals of the requested app. For example, “logs my workouts and calories burned” may imply the app requires input forms or sensors for workouts and calories, and some data storage. For example, “weekly summary charts” may imply generating a visual summary (e.g., graphs) per week. The Cloud Al Service 320 may comprise an Al Agent. The Al Agent may use external knowledge or ask follow-up questions via the Apps-On- Demand Client App 302 if the user input is unclear or ambiguous (e.g., “Do you want to input workouts manually or track via a wearable device?”). The Al agent may make reasonable assumptions and proceed.

[0061] In step 375 “Application Specification & Planning”, the Al agent forms an internal specification (e.g., a plan) for the app which may comprise a planning phase. The internal specification may comprise information relating to at least one of: a data model, a feature, a function, UI layout, integration points, and device-specific considerations.

[0062] The information relating to the data model may comprise what information will be stored or processed (e.g., dates of workouts, type of exercise, calories). The information relating to the features / functions may comprise the required features or function (e.g., an input screen for workouts, a way to calculate or input calories, a storage mechanism, a screen for weekly summary with a chart). The information relating to the UI layout may comprise at least one of: how many screens, what UI controls on each screen, and navigation flow between screens. The information relating to the integration points may comprise connecting to a health API (or loT devices); this may comprise using device sensors, network calls or APIs. The information relating to the device-specific considerations may comprise e.g., for a watch, the UI may be simplified; for a phone, a full chart may be shown; for an enterprise request, a login may be controlled or use certain security measures.Docket No. SMM920250081-GR-NP

[0063] The planning stage may be performed implicitly within the Al (e.g., if using an LLM, the LLM may perform reasoning in the prompt internally), or explicitly using a planning module.

[0064] In step 376 “Code generation”, an Al code generator produces the actual code (e.g., source code) for the app according to the plan. If the device is Android based, the code may comprise Java or Kotlin code with Android SDK usage. If the device uses a web app, the code may comprise HTML / JavaScript. If the device uses an loT dashboard, the code may comprise a web interface or a small native app depending on the device. The code may comprise at least one of: UI definitions, event handling logic, and any necessary cloud communication or database usage.

[0065] The Al code generator incorporates the user preferences and device optimizations. For example, if the user prefers dark mode, the code may set the app theme to dark by default. If the user device has a large screen, the layout may include detailed charts. If the device has a small screen, the code may use a simpler UI. If the app requires periodic reminders (e.g., notifications), the code may utilize the device’s scheduling APIs. If the device is low on processing power, the Al may generate a more lightweight app or determine to perform heavy computations on the cloud side; if possible.

[0066] During code generation, the Al code generator may leverage existing code from a library (e.g., a chart-drawing module or a sensor-reading function). This tends to ensure reliability. The Al code generator effectively writes a custom program tailored to the request.

[0067] In step 377 “Verification / Adaptation”, after initial code generation, the system may include a verification step. The verification step may comprise at least one of: compiling the code to identify any errors, running static analysis to ensure safety (e.g., determining whether the code comprises disallowed operations), and testing the UI layout on a virtual screen matching the device to determine whether it fits. If any issues are identified during the verification step (e.g., syntax errors or missing references), the Al code generator may automatically adjust or correct the code. Adjusting (e.g., correcting, refining) the code may comprise an iterative process; for example, generate the code, testDocket No. SMM920250081-GR-NPthe code, refine the code. Adjusting the code tends to improve the performance of the packaged code on the user device.

[0068] In step 378 “Compilation / Packaging”, the refined code is compiled (e.g., packaged). For example, an Android app code may be compiled into Dalvik bytecode and packaged into an APK file along with resources (e.g., images, layout XML). The packaging process may also include embedding any required libraries. If the app is web-based, packaging may comprise zipping up the HTML / CSS / JS files or preparing a single HTML file with embedded scripts. The package may be assigned a unique identifier and version. A cryptographic signature may be applied (e.g., for native apps) which tends to ensure integrity and allow the client to verify it came from a trusted server.

[0069] In step 379 “App Generation Response”, the Cloud Al Service 320 delivers (e.g., transmits, outputs, transfers, communicates) the generated application package to the user device. This may comprise sending a response message (e.g., application generation response) to the UE. The response message may comprise at least one of: the generated app package, and a URL where the generated app package may be retrieved from. The generated app package may be pushed to the Apps-On-Demand Client App 302 (e.g., by sending the generated app package by the response message). The generated app package may be pulled by the Apps-On-Demand Client App 302 (e.g., via the URL). The communication ensures the whole package is transmitted. The progress of the communication may be shown to the user (e.g., if the app is large). However, on-demand apps may be relatively small given their focused purpose.

[0070] The LLM in the Cloud Al Service 320 may operate as an orchestrator that invokes one or more tools to execute a sequence of steps (e.g., steps 374-379 discussed above) for generating the application package. For example, step 378 may invoke a tool that compiles and packages the generated code. Step 379 may invoke a tool to deliver the generated application package to the user device.

[0071] In step 380 “Installation / Deployment in Sandbox”, upon receiving the generated app package, the Apps-On-Demand Client App 302 deploys it (e.g., installs it). Deploying the app may comprise internal sandbox execution or native installation (which may depend on implementation).Docket No. SMM920250081-GR-NP

[0072] For internal sandbox execution, the Apps-On-Demand Client App 302 unpacks the application and runs it within a sandboxed environment (the sandboxed environment may be it’s own sandboxed environment). The App-On-Demand Client App 302 may load the code in an internal engine (e.g., using a plugin module). The app may not be installed as a separate system-wide app. The app may be a contained component inside an Apps-On- Demand container. This tends to simplify cleanup and security, as the App-On-Demand Client App 302 can control permissions and resource access tightly.

[0073] For native installation, the Apps-On-Demand Client App 302 may programmatically install the app as a separate application on the device (e.g., using appropriate APIs for side-loading). This may require user consent or appropriate permissions. The Apps-On-Demand Client App 302 may require authorisation to install apps. The user may be required to accept an installation prompt. The app may appear on the device e.g., in a similar manner to a normal (e.g., conventional, regular) app (e.g., with an icon). The host may manage the app, e.g., uninstall it when no longer needed.

[0074] In step 381 “Execution of generated app”, the app is live on the user device. The user can interact with it e.g., according to the user input in step 371 discussed above. For example, in the workout logger example, the user may see a UI to input workouts and calories, and graphs of progress, etc. The generated app may run in a similar manner to a conventional app e.g., the generated app may respond to touches or other inputs, store data (e.g., on the device or in cloud), or utilize hardware if applicable, e.g., using a sensor or sending a notification. The performance of the generated app may be comparable to a regular app.

[0075] In step 382a “User feedback and usage monitoring”, as the user uses the generated app, the system (e.g., the Apps-On-Demand Client App 302) monitors certain aspects (e.g., usage monitoring). The Apps-On-Demand Client App 302 may receive information relating to the user interaction with the generated app. The information relating to the user interaction with the generated app may comprise a track of any runtime errors. The Apps-On-Demand Client App 302 report any runtime errors back to the Cloud Al Service 320 for the Al to learn to avoid those issues in the future. The information relating to the user interaction with the generated app may comprise usage patterns (e.g., observingDocket No. SMM920250081-GR-NPusage patterns may require user permission and may require compliance with privacy rules). The usage pattern may comprise information relating to at least one of: how often the user uses the generated app, if the user uses all features or only some, if the user’s request appears to be fully satisfied, whether the user immediately issued a follow-up request e.g., indicating something was missing. The Apps-On-Demand Client App 302 may present a feedback prompt e.g., “Did this app meet your needs? [Yes / No].” The information relating to the user interaction with the generated app may be sent to the Cloud Al Service 320 after a session or at intervals. The Al model updates its parameters or stored preferences for the user. The Al model therefore learns the user’s style and requirements. For example, the Al model may learn that the user prefers simple interfaces without clutter and therefore the Al model responds such that any future apps requested by the user is generated with a minimalistic UI. The Al model may learn that the user often requests “reminder” type apps and therefore the Al model may proactively include a standard reminder feature or suggest it if the description is slightly unclear. The system’s learning component may involve machine learning algorithms that adjust the Al’s prompt templates. The learning component may comprise a recommendation to use all or part of an existing code. The learning component may comprise a feedback success metric e.g., analogous to reinforcement learning reward signals for successful app outcomes.

[0076] In step 382b “Refinement and learning”, the system iteratively refines the code e.g., if the generated app does not meet the users requirement. The user may provide a further user input (e.g., text prompt, voice input) e.g., “It’s good, but I also wanted it to have feature X,” or “the app isn’t doing Y correctly.” The Apps-On-Demand Client App 302 may send this feedback to the Cloud Al Service 320 as an updated prompt or error report. The Al may adjust the code or add the missing feature and send an updated app package to the Apps-On-Demand Client App 302. This iterative loop may continue / repeat until the user is satisfied. The learning component tends to reduce the number of iterations over time by predicting better what the user meant initially.

[0077] In step 383 “App lifestyle management”, the Apps-On-Demand Client App 302 may provide a dashboard where the user can see on-demand apps, launch an app, or remove an app. If an app was for one-time use (e.g., a quick unit converter the user requested butDocket No. SMM920250081-GR-NPonly used once), the user may delete the app to free resources. The system may comprise an expiration policy; for example, apps not used for 30 days might auto-delete, unless the user saves them. If the user wants to modify an app, they could either request a new one or possibly ask the Al to regenerate or update the current one with changes (e.g., “make the text bigger in my workout app”). This may trigger a new iteration of code generation which could either patch the existing app or create a new variant.

[0078] The process flow 300 tends to provide a seamless user experience. In process flow 300, the user speaks or types a request, waits a short period (e.g., a few seconds to a couple minutes depending on complexity) while the system builds (e.g., generates) the app in the background, and may use a new app tailored for them. Thus, the complexity of software development tends to be hidden behind the Al service.

[0079] Some examples described herein relate to adaptation of the application code (e.g., source code, generated code) to device capabilities and user preferences (e.g., from a user input). Some examples described herein relate to the dynamic adaptation of apps to different device environments and user-specific settings. In some examples described herein, an app generated for one user / device may be different from that generated for another user / device, even if the request description (e.g., user input) is similar, because the system optimizes the app for a used based on the device’s context information.

[0080] Device Capabilities may be defined based on device profile data. The cloud Al agent uses the device profile data (e.g., context information) to adjust the app’s implementation. The context information may comprise at an indication of least one of: hardware utilisation, sensor / data sources, performance constraints, offline mode, and platform differences.

[0081] Hardware Utilization: If the device has special hardware, the Al may integrate it. For example, if the user requests an astronomy app and the device has a magnetometer and gyroscope, the Al may incorporate an AR star map feature that moves with the device’s orientation. If another user’s device lacks those, the Al may use a simpler list or static map for the stars.Docket No. SMM920250081-GR-NP

[0082] Sensor / Data Sources: For loT scenarios, the system may consider external device capabilities. Suppose an enterprise user on a rugged loT gateway requests an app to monitor temperature sensors: the Al may know from the device profile or enterprise context (e.g., context information for the enterprise) which sensors or APIs are accessible and generate code to fetch from those sensors. On a smartphone, that same request may assume a connected loT cloud API to fetch sensor data.

[0083] Performance Constraints: On low-end devices, the Al may avoid heavy graphics or large memory usage. The Al may choose algorithms with lower computational load or lower resolution images to ensure the app runs smoothly. On a high-end device, the Al may enable more complex features (e.g., animations, higher graph detail) since the device is able to handle it.

[0084] Offline Mode: If the device has intermittent or no internet (e.g., the device context may report connectivity type), the Al may design the app to function offline (e.g., by caching data, deferring network calls) whereas with constant connectivity it may use cloud services (e.g., cloud Al services).

[0085] Platform Differences: one implementation may target Android (as an example). The system may adapt the Android code for another OS. The Al may generate a web app as a fallback if it is unable to natively run code on a particular device (e.g., on an loT smart display, a web dashboard may be more appropriate). The system may be platform-agnostic. The Al may generate code for multiple runtime environments and select the one of the generated code that is determined to be suitable for the UE.

[0086] User Preferences may include the user’s aesthetic or functional preferences. The system may use the user preferences to generate the app. The user preferences may comprise at information relating to at least one of: UI Theme and Accessibility, Language and Locale, Feature Preferences, and Security / Privacy Settings. Further information related to the user preferences is given below.

[0087] UI Theme and Accessibility: As noted, the Al may incorporate preferences such as dark mode vs light mode, font size, or contrast settings. If a user has a disability and uses assistive technologies (which may be indicated in preferences, device settings, orDocket No. SMM920250081-GR-NPaccessibility settings), the app may be generated to be compatible with the accessibility settings (for example, ensuring all images have alternative text for screen readers, or providing voice control if the user cannot use touch).

[0088] Language and Locale: The system may localize the generated app to the user’s preferred language. The prompt from the user is likely in their preferred language, and the Al, being language-capable, may output the app’s text (e.g., labels, messages) in that same language. If a user says "Cree une application pour gerer mes depenses" in French, the resulting app’s interface would be in French. Units, date formats, etc., can be adjusted based on locale.

[0089] Feature Preferences: the system may learn user’s preferred feature implementations. For example, if a user often asks for “reminders,” this may indicate that the user prefers reminders as notifications rather than in-app popups. The Al may notice such patterns and determine to use notifications for that user. If a user appears to favour simplicity, the Al may omit any extraneous feature that were not explicitly requested. For a power-user, the Al may proactively include a few related features and may assume they are useful.

[0090] Security / Privacy Settings: Some users may prefer that apps do not send data externally. The user (or enterprise policy) may indicate that generated apps should run fully locally with no cloud communication. The Al may ensure Al processing for the app is performed on-device or not at all, to respect privacy. If the user approves cloud integration and it improves functionality (e.g., pulling in weather data for an app), the Al may perform cloud communication.

[0091] The Apps-On-Demand system tends to be adaptable and versatile. The Apps- On-Demand system may cater to a wide spectrum of apps from a simple phone to an advanced AR headset or to a company’s internal devices, adjusting output accordingly. Examples described herein generally relate to a context-aware generative app platform. Previous apps are statically designed without individual personalization.

[0092] The Learning and Personalization Mechanism relates to a learning component of the system. The Al agent may not be a static model. Instead, the Al agent continuallyDocket No. SMM920250081-GR-NPimproves through machine learning techniques which mat comprise at least one of: reinforcement learning and feedback, user-specific profiles, model updates, collaborative filtering of features, and continuous monitoring. Further information relating to these machine learning techniques is given below.

[0093] For reinforcement learning and feedback, the system treats successful app deliveries as positive outcomes. If the user keeps an app and uses it frequently, that may be considered a success. If the user immediately deletes an app or requests a major change, it may indicates the initial generation had shortcomings. The Al may be updated using this as a reinforcement signal. The Al may statistically infer which generation strategies yield better apps (e.g., based on data (e.g., requests) from multiple users). For example, the Al may learn (e.g., determine) that including a basic help tutorial screen in each generated app leads to better user retention. Therefore, the Al may include the basic help tutorial screen in future apps by default; unless the user indicates not to include a basic help tutorial screen.

[0094] For user-specific profiles, the system may maintain a user-specific profile for each user. The user-specific profile for each user may comprise information relating to user preferences (e.g., key preferences) and / or past requests. The user-specific profile may include a history of generated apps, feedback given, and / or features liked / disliked. When the user makes a new request, the Al may reference their user-specific profile. For example, if a user previously asked for three finance-related apps, the Al has some domain knowledge of what that user likely wants in a finance app (e.g., integration with a certain service or a familiar UI style). This personalization may mean that two users asking for "an expense tracker app" may get different apps e.g., if one user prefers simplicity and offline use, while the other user prefers detailed analytics and online use (e.g., using cloud synchronisation).

[0095] For model updates, the core Al model (e.g., the LLM) may be fine-tuned or have its prompt engineered over time as more data is collected. The system may periodically retrain on a corpus of successful generated app specifications and code; which tends to improve future generations of apps. Privacy may be maintained by using abstracted feedback or aggregated usage data for training; which tends to avoid breaching sensitive details.Docket No. SMM920250081-GR-NP

[0096] For collaborative filtering of features, if many users request similar apps, the system may identify commonly desired features. For example, multiple users may request “to-do list app with reminders”. The Al may internally develop a best practice template for a to-do app. The best practice template may be reused by the app. The best practice template may tend to satisfy users. The best practice template may not be a static template. The best practice template may be an informed starting point. The best practice template may be modified for different users (e.g., different theme, integration). The Al may learn from the community of requests as well as the user.

[0097] For continuous monitoring, the device client may monitor app performance (e.g., CPU / memory usage, crashes) and report anomalies. The cloud may learn to avoid patterns that cause inefficiency or crashes. For example, if code using a certain library often crashed on some devices, the Al may stop using that approach and find an alternative implementation.

[0098] The learning and personalisation mechanism tends to improve reliability of the system. The learning and personalisation mechanism tends to be more attuned to user needs. Early on, users may give more feedback or endure more iterations, but eventually the goal is an Al agent that can anticipate what makes an app “good” for a particular user and deliver it first time. Examples described herein relate to an adaptive learning system for app development; in contrast to static app builders or traditional development.

[0099] Examples described herein may comprise a security and sandbox environment. Security is important when delivering executable code. Multiple layers of security may be incorporated. Security may comprise at least one of: sandboxing, code verification, permission mediation, server-side sandboxing, and privacy considerations. Further information on security is provided below.

[0100] In sandboxing, the runtime environment on the device isolates the generated app. The sandbox may be enforced by the OS (e.g., using user profiles, work profile on Android, or containerization frameworks). The sandbox may be enforced by the host app. The sandbox may restrict file system access (e.g., the app may only be permitted to read / write in a designated data folder). The sandbox may restrict network access (e.g., network access may be permitted only when the app’s function requires it, network accessDocket No. SMM920250081-GR-NPmay be restricted to certain domains or through proxy). The sandbox may restrict hardware access (e.g., hardware access may be restricted to hardware approved by the user). If the app attempts to perform an action outside its allowed scope, the sandbox may block it and log it. The sandbox may prevent malicious code (e.g., unsafe instructions generated by the Al) from harming the device.

[0101] In code verification, the cloud service may include safety checks on the generated code. The safety checks may comprise using static analysis and / or known secure coding guidelines. The safety checks may comprise inspecting the code for dangerous patterns (e.g., executing system commands, or accessing user data not permitted). The Al generation process may be guided by a “safe code policy” which tends to avoid insecure constructs. The Al may be constrained not to include extraneous functionality. For example, an app generated to be a calculator may not request permissions for camera or contacts unless explicitly required which tends to reduce risk.

[0102] For permission mediation, the Apps-On-Demand client may support mediating permissions. Before the app uses a sensitive feature, the client may prompt the user “The generated app is requesting access to your location - allow or deny?”. The client may intercept a request permission to ensure the user is informed for each on-demand app. The generated apps may not be subject to an app store review process. User consent may be the primary gatekeeper for permissions.

[0103] For server-side sandboxing, the generation process on the cloud may be performed in a sandboxed environment. The Al may execute or compile code, on isolated servers. This tends to contain potentially harmful effects of running untrusted code. After generation, the binary delivered to the device may be signed by the server to attest that it was produced by the authorized Al. This enables the client to verify the signature before running it.

[0104] For privacy considerations, any user data collected (e.g., usage patterns or feedback) is handled carefully. The system may anonymize and / or encrypt data. If a generated app involves personal data (e.g., health information of the user), the personal data may remain on-device unless the user opts to synchronise it somewhere. The cloud may not collect user-specific content of the apps. The cloud may receive an indication that an appDocket No. SMM920250081-GR-NPwas generated. The cloud may receive an indication of non-sensitive feedback. Therefore, the system tends to learn without compromising personal privacy.

[0105] The sandbox environment may also include app management features e.g., the ability to: pause or stop an on-demand app, reset the on-demand app (e.g., clear its data), and / or export data (e.g., if the user wants to save what they did in the app). For example, if the user used the system to create a budgeting app and input a month of expenses, they may export that data to a file or to a new app version.

[0106] Use cases of the Apps-On-Demand system may include: personal utility app, entertainment / game app, enterprise use case, smart home use case, and / or industrial use case. Further information regarding these use cases is given below.

[0107] In an example of a personal utility app, a user has a requirement for an app. The requirement is for one time use or few uses of the app. Therefore, it may be inconvenient for the user to search for the app in an app store. For example, the user wants to organize a potluck event with friends and needs an app to coordinate dishes and RSVPs. The user opens the Apps-On-Demand app their device (e.g., UE smartphone) and inputs a voice command or text prompt such as “I need an app for a potluck party where friends can list what dish they’re bringing and see what others are bringing.” The cloud Al may interpret this as a requirement for a small collaborative list app. The cloud Al may generate a webbased app (since a web-based app tends to be a simple form / list that may run in a webview) with a sharable link. The app may allow entry of dish name, contributor name, and may display the list to everyone. The app may be tailored to the user’s device e.g., using the device’s contact list permission (e.g., which may require user consent) to allow inviting contacts. Within a short period of time, the user may receive and operate the requested potluck app running and send a link to use the app to the user’s friends. The user’s friends may access the app and add their items. After the event, the user may delete / remove the app from the Apps-On-Demand app. The system may use a learning and personalization mechanism to learn about the user’s preference for shareable apps for future planning tools for this user.

[0108] In an example of an entertainment / game app: a user identifies a simple game idea. For example, the simple game idea may be a whack-a-mole style game but with catsDocket No. SMM920250081-GR-NPpopping up. The user describes the simple game idea in the client using a prompt (e.g., voice prompt or text prompt). The prompt may be “A simple game where cartoon cats pop up and I tap them to score points.” The Al generates a lightweight game app according to the prompt. The Al may use the user’s phone’s touchscreen and vibration motor (e.g., for haptic feedback on hits). The Al may tailor graphics quality to his device’s GPU. The user may instantly play the game. The Apps-On-Demand app tends to enable entertainment apps on-demand. The Apps-On-Demand app tends to negate the requirement for the user to download a game from an app store. The Apps-On-Demand app tends to provide a custom games for a user based on a prompt. The sandbox tends to ensure the game is not harmful to the user’s device. The user may keep the generated app for a substantial period and use the app. The system may identify that the user likes games and use similar patterns for future game requests.

[0109] In an example of an enterprise use case, a company provides an Apps-On- Demand app to its employees on their work devices. For example, a user (e.g., an operations manager) requires a quick way to audit an inventory in a warehouse. The user provides a prompt (e.g., voice prompt or text prompt) such as “App to scan product QR codes in the warehouse and log counts, sending a report to the inventory database.” The Al, using enterprise context (e.g., context information for the enterprise), may know (e.g., identify, determine) the company has a certain inventory database API and that the work devices have QR code scanner libraries. The Al may generate an Android app for her enterprise smartphone which has a built-in barcode scanner. The app may have a simple interface: one button to scan, and may use the camera (or dedicated scanner hardware) to read a QR / barcode, and then prompts for quantity and logs it. The app may automatically send the data to the company’s secure server via an API. The app may be generated with corporate branding (e.g., the company’s logo and colours may be enforced via a policy in the Al). The user may use the app that day for the audit. Therefore, the app significantly improved productivity without waiting weeks for developers. For security, the app may be confined to only communicate with the inventory server and nowhere else.

[0110] In an example of a smart home use case, a user has a smart home with various loT devices from different manufacturers e.g., lights, thermostat, air quality sensor, andDocket No. SMM920250081-GR-NPsprinklers. The user wants a unified interface for a particular task and may provide a prompt such as “Whenever air quality goes below a threshold or it’s very dry, turn on an air purifier and the humidifier.” Instead of searching for a specialized app or manually creating an automation on his smart-home platform, the user may use the Apps-On-Demand app. The user may provide a prompt such as “An app to monitor my home air quality sensor and humidity; if air quality is bad or humidity low, send commands to turn on the air purifier and humidifier, and notify me.” The Al may recognize this as an loT automation app. The Al may generate a background service that connects to the user’s smart-home platform via known APIs to monitor / control the loT devices. The Al may set up a trigger e.g., when air quality PM2.5 > X or humidity < Y, call the device APIs to switch on the plugs controlling purifier and humidifier. The Al may prepare a notification system for the user’s phone. The app is delivered and runs on the user’s phone. Alternatively, the app may be delivered to the user’s smart-home platform as a new automation. Therefore, the user’s smart home has a custom automation running. The Apps-On-Demand system may bridge various devices e.g., the Al may incorporate library code to enable communication with a smart-home platform and monitor / control loT devices via this platform.

[0111] For an example of an industrial use case, a user (e.g., an engineer) requires a quick monitoring dashboard for a factory sensor network. The user may say provide a prompt such as “Create a tablet dashboard app showing real-time readings of temperature sensors on assembly line A, with alerts if any exceed 100°C, and a button to shut off machine remotely.” The system may generate a tablet-optimized app (e.g., having a larger layout) that fetches sensor data from the factory’s loT platform, displays numbers and charts in real-time, and includes a control button tied into the machine’s control API. The system may also handle the alert by flashing on screen and sending an email (e.g., according to the prompt from the user). The user may use the app immediately e.g., for a temporary diagnostic that day. Such a system tends to speed up responses in industrial operations.

[0112] Examples described herein tend to improve overall user experience e.g., providing instant gratification and customization. Users tend to get exactly the app they want, when they want it, without having to search or settle for something less ideal. ThisDocket No. SMM920250081-GR-NPtends to be more efficient than searching app stores or commissioning custom development for every small need.

[0113] Examples described herein tend to enable app generation without requiring the user to have technical skills. Natural language may be used to create an app. This tends to enable a broader audience to create software solutions. It also tends to democratise app creation and tends to be more flexible than previous no-code solutions.

[0114] Examples described herein tend to enable device optimization. Apps may be tailored to device specifications. Generated apps tend to run more efficiently and provide improved use of available hardware. This tends to reduce bloat or compatibility issues; since each app is generated specifically for the target device.

[0115] Examples described herein tend to provide enhanced personalization. Over time, the system essentially personalizes software for the individual. Thus, two users with different tastes may get different experiences. This tends to improve user satisfaction and accessibility.

[0116] Examples described herein tend to reduce software clutter. Users may generate temporary apps for one-time tasks and then remove them. In contrast, previous solutions tend to require installing numerous permanent apps. This tends to reduce clutter and improves security (e.g., by reducing the attack surface caused my multiple installed apps).

[0117] Examples described herein tend to provide an improved learning system. The more the system is used, the smarter it gets which tends to result in higher quality apps and faster generation times (as common patterns are recognized). The system may provide proactive suggestions. For example, the system may suggest “It looks like you often track workouts; would you like an app to consolidate your fitness activities?” which the user can accept or decline.

[0118] Examples described herein tend to provide broad applicability. The system is platform-agnostic and use-case agnostic. It may serve a single user at home or scale to enterprise with multiple (e.g., hundreds) requests per day. Based on a simple description / prompt from the user, the system may produce anything from a simple calculator, a game, or a complex data dashboard.Docket No. SMM920250081-GR-NP

[0119] Figure 4 illustrates an example of a UE 400 in accordance with aspects of the present disclosure. The UE 400 may include a processor 402, a memory 404, a controller 406, and a transceiver 408. The processor 402, the memory 404, the controller 406, or the transceiver 408, or various combinations thereof or various components thereof may be examples of means for performing various aspects of the present disclosure as described herein. These components may be coupled (e.g., operatively, communicatively, functionally, electronically, electrically) via one or more interfaces.

[0120] The processor 402, the memory 404, the controller 406, or the transceiver 408, or various combinations or components thereof may be implemented in hardware (e.g., circuitry). The hardware may include a processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), or other programmable logic device, or any combination thereof configured as or otherwise supporting a means for performing the functions described in the present disclosure.

[0121] The processor 402 may include an intelligent hardware device (e.g., a general- purpose processor, a DSP, a CPU, an ASIC, an FPGA, or any combination thereof). In some implementations, the processor 402 may be configured to operate the memory 404. In some other implementations, the memory 404 may be integrated into the processor 402. The processor 402 may be configured to execute computer-readable instructions stored in the memory 404 to cause the UE 400 to perform various functions of the present disclosure.

[0122] The memory 404 may include volatile or non-volatile memory. The memory 404 may store computer-readable, computer-executable code including instructions when executed by the processor 402 cause the UE 400 to perform various functions described herein. The code may be stored in a non-transitory computer-readable medium such the memory 404 or another type of memory. Computer-readable media includes both non- transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A non-transitory storage medium may be any available medium that may be accessed by a general-purpose or special-purpose computer.

[0123] In some implementations, the processor 402 and the memory 404 coupled with the processor 402 may be configured to cause the UE 400 to perform one or more of theDocket No. SMM920250081-GR-NPfunctions described herein (e.g., executing, by the processor 402, instructions stored in the memory 404). For example, the processor 402 may support wireless communication at the UE 400 in accordance with examples as disclosed herein. The UE 400 may be configured to support a means for transmitting, to a network entity, an application generation request comprising an application parameter and context information; and receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0124] The controller 406 may manage input and output signals for the UE 400. The controller 406 may also manage peripherals not integrated into the UE 400. In some implementations, the controller 406 may utilize an operating system such as iOS®, ANDROID®, WINDOWS®, or other operating systems. In some implementations, the controller 406 may be implemented as part of the processor 402.

[0125] In some implementations, the UE 400 may include at least one transceiver 408. In some other implementations, the UE 400 may have more than one transceiver 408. The transceiver 408 may represent a wireless transceiver. The transceiver 408 may include one or more receiver chains 410, one or more transmitter chains 412, or a combination thereof.

[0126] A receiver chain 410 may be configured to receive signals (e.g., control information, data, packets) over a wireless medium. For example, the receiver chain 410 may include one or more antennas for receive the signal over the air or wireless medium. The receiver chain 410 may include at least one amplifier (e.g., a low-noise amplifier (LNA)) configured to amplify the received signal. The receiver chain 410 may include at least one demodulator configured to demodulate the receive signal and obtain the transmitted data by reversing the modulation technique applied during transmission of the signal. The receiver chain 410 may include at least one decoder for decoding the processing the demodulated signal to receive the transmitted data.

[0127] A transmitter chain 412 may be configured to generate and transmit signals (e.g., control information, data, packets). The transmitter chain 412 may include at least one modulator for modulating data onto a carrier signal, preparing the signal for transmission over a wireless medium. The at least one modulator may be configured to support one orDocket No. SMM920250081-GR-NPmore techniques such as amplitude modulation (AM), frequency modulation (FM), or digital modulation schemes like phase-shift keying (PSK) or quadrature amplitude modulation (QAM). The transmitter chain 412 may also include at least one power amplifier configured to amplify the modulated signal to an appropriate power level suitable for transmission over the wireless medium. The transmitter chain 412 may also include one or more antennas for transmitting the amplified signal into the air or wireless medium.

[0128] Figure 5 illustrates an example of a processor 500 in accordance with aspects of the present disclosure. The processor 500 may be an example of a processor configured to perform various operations in accordance with examples as described herein. The processor 500 may include a controller 502 configured to perform various operations in accordance with examples as described herein. The processor 500 may optionally include at least one memory 504, which may be, for example, an L1 / L2 / L3 cache. Additionally, or alternatively, the processor 500 may optionally include one or more arithmetic-logic units (ALUs) 506. One or more of these components may be in electronic communication or otherwise coupled (e.g., operatively, communicatively, functionally, electronically, electrically) via one or more interfaces (e.g., buses).

[0129] The processor 500 may be a processor chipset and include a protocol stack (e.g., a software stack) executed by the processor chipset to perform various operations (e.g., receiving, obtaining, retrieving, transmitting, outputting, forwarding, storing, determining, identifying, accessing, writing, reading) in accordance with examples as described herein. The processor chipset may include one or more cores, one or more caches (e.g., memory local to or included in the processor chipset (e.g., the processor 500) or other memory (e.g., random access memory (RAM), read-only memory (ROM), dynamic RAM (DRAM), synchronous dynamic RAM (SDRAM), static RAM (SRAM), ferroelectric RAM (FeRAM), magnetic RAM (MRAM), resistive RAM (RRAM), flash memory, phase change memory (PCM), and others).

[0130] The controller 502 may be configured to manage and coordinate various operations (e.g., signalling, receiving, obtaining, retrieving, transmitting, outputting, forwarding, storing, determining, identifying, accessing, writing, reading) of the processor 500 to cause the processor 500 to support various operations in accordance with examplesDocket No. SMM920250081-GR-NPas described herein. For example, the controller 502 may operate as a control unit of the processor 500, generating control signals that manage the operation of various components of the processor 500. These control signals include enabling or disabling functional units, selecting data paths, initiating memory access, and coordinating timing of operations.

[0131] The controller 502 may be configured to fetch (e.g., obtain, retrieve, receive) instructions from the memory 504 and determine subsequent instruction(s) to be executed to cause the processor 500 to support various operations in accordance with examples as described herein. The controller 502 may be configured to track memory address of instructions associated with the memory 504. The controller 502 may be configured to decode instructions to determine the operation to be performed and the operands involved. For example, the controller 502 may be configured to interpret the instruction and determine control signals to be output to other components of the processor 500 to cause the processor 500 to support various operations in accordance with examples as described herein. Additionally, or alternatively, the controller 502 may be configured to manage flow of data within the processor 500. The controller 502 may be configured to control transfer of data between registers, arithmetic logic units (ALUs), and other functional units of the processor 500.

[0132] The memory 504 may include one or more caches (e.g., memory local to or included in the processor 500 or other memory, such RAM, ROM, DRAM, SDRAM, SRAM, MRAM, flash memory, etc. In some implementations, the memory 504 may reside within or on a processor chipset (e.g., local to the processor 500). In some other implementations, the memory 504 may reside external to the processor chipset (e.g., remote to the processor 500).

[0133] The memory 504 may store computer-readable, computer-executable code including instructions that, when executed by the processor 500, cause the processor 500 to perform various functions described herein. The code may be stored in a non-transitory computer-readable medium such as system memory or another type of memory. The controller 502 and / or the processor 500 may be configured to execute computer-readable instructions stored in the memory 504 to cause the processor 500 to perform various functions. For example, the processor 500 and / or the controller 502 may be coupled with orDocket No. SMM920250081-GR-NPto the memory 504, the processor 500, the controller 502, and the memory 504 may be configured to perform various functions described herein. In some examples, the processor 500 may include multiple processors and the memory 504 may include multiple memories. One or more of the multiple processors may be coupled with one or more of the multiple memories, which may, individually or collectively, be configured to perform various functions herein.

[0134] The one or more ALUs 506 may be configured to support various operations in accordance with examples as described herein. In some implementations, the one or more ALUs 506 may reside within or on a processor chipset (e.g., the processor 500). In some other implementations, the one or more ALUs 506 may reside external to the processor chipset (e.g., the processor 500). One or more ALUs 506 may perform one or more computations such as addition, subtraction, multiplication, and division on data. For example, one or more ALUs 506 may receive input operands and an operation code, which determines an operation to be executed. One or more ALUs 506 be configured with a variety of logical and arithmetic circuits, including adders, subtractors, shifters, and logic gates, to process and manipulate the data according to the operation. Additionally, or alternatively, the one or more ALUs 506 may support logical operations such as AND, OR, exclusive-OR (XOR), not-OR (NOR), and not- AND (NAND), enabling the one or more ALUs 506 to handle conditional operations, comparisons, and bitwise operations.

[0135] The processor 500 may support wireless communication in accordance with examples as disclosed herein. The processor 500 may be configured to support a means for transmitting, to a network entity, an application generation request comprising an application parameter and context information; and receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. The processor 500 may be configured to or operable to support a means for receiving, from a UE, an application generation request comprising an application parameter and context information; and transmitting, to the UE and in response to the application generation request, an application generation responseDocket No. SMM920250081-GR-NPcomprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0136] Figure 6 illustrates an example of a NE 600 in accordance with aspects of the present disclosure. The NE 600 may include a processor 602, a memory 604, a controller 606, and a transceiver 608. The processor 602, the memory 604, the controller 606, or the transceiver 608, or various combinations thereof or various components thereof may be examples of means for performing various aspects of the present disclosure as described herein. These components may be coupled (e.g., operatively, communicatively, functionally, electronically, electrically) via one or more interfaces.

[0137] The processor 602, the memory 604, the controller 606, or the transceiver 608, or various combinations or components thereof may be implemented in hardware (e.g., circuitry). The hardware may include a processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), or other programmable logic device, or any combination thereof configured as or otherwise supporting a means for performing the functions described in the present disclosure.

[0138] The processor 602 may include an intelligent hardware device (e.g., a general- purpose processor, a DSP, a CPU, an ASIC, an FPGA, or any combination thereof). In some implementations, the processor 602 may be configured to operate the memory 604. In some other implementations, the memory 604 may be integrated into the processor 602. The processor 602 may be configured to execute computer-readable instructions stored in the memory 604 to cause the NE 600 to perform various functions of the present disclosure.

[0139] The memory 604 may include volatile or non-volatile memory. The memory 604 may store computer-readable, computer-executable code including instructions when executed by the processor 602 cause the NE 600 to perform various functions described herein. The code may be stored in a non-transitory computer-readable medium such the memory 604 or another type of memory. Computer-readable media includes both non- transitory computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A non-transitory storage medium may be any available medium that may be accessed by a general-purpose or special-purpose computer.Docket No. SMM920250081-GR-NP

[0140] In some implementations, the processor 602 and the memory 604 coupled with the processor 602 may be configured to cause the NE 600 to perform one or more of the functions described herein (e.g., executing, by the processor 602, instructions stored in the memory 604). For example, the processor 602 may support wireless communication at the NE 600 in accordance with examples as disclosed herein. The NE 600 may be configured to support a means for receiving, from a UE, an application generation request comprising an application parameter and context information; and transmitting, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

[0141] The controller 606 may manage input and output signals for the NE 600. The controller 606 may also manage peripherals not integrated into the NE 600. In some implementations, the controller 606 may utilize an operating system such as iOS®, ANDROID®, WINDOWS®, or other operating systems. In some implementations, the controller 606 may be implemented as part of the processor 602.

[0142] In some implementations, the NE 600 may include at least one transceiver 608. In some other implementations, the NE 600 may have more than one transceiver 608. The transceiver 608 may represent a wireless transceiver. The transceiver 608 may include one or more receiver chains 610, one or more transmitter chains 612, or a combination thereof.

[0143] A receiver chain 610 may be configured to receive signals (e.g., control information, data, packets) over a wireless medium. For example, the receiver chain 610 may include one or more antennas for receive the signal over the air or wireless medium. The receiver chain 610 may include at least one amplifier (e.g., a low-noise amplifier (LN A)) configured to amplify the received signal. The receiver chain 610 may include at least one demodulator configured to demodulate the receive signal and obtain the transmitted data by reversing the modulation technique applied during transmission of the signal. The receiver chain 610 may include at least one decoder for decoding the processing the demodulated signal to receive the transmitted data.

[0144] A transmitter chain 612 may be configured to generate and transmit signals (e.g., control information, data, packets). The transmitter chain 612 may include at least oneDocket No. SMM920250081-GR-NPmodulator for modulating data onto a carrier signal, preparing the signal for transmission over a wireless medium. The at least one modulator may be configured to support one or more techniques such as amplitude modulation (AM), frequency modulation (FM), or digital modulation schemes like phase-shift keying (PSK) or quadrature amplitude modulation (QAM). The transmitter chain 612 may also include at least one power amplifier configured to amplify the modulated signal to an appropriate power level suitable for transmission over the wireless medium. The transmitter chain 612 may also include one or more antennas for transmitting the amplified signal into the air or wireless medium.

[0145] Figure 7 illustrates a flowchart of a method 700 in accordance with aspects of the present disclosure. The operations of the method may be implemented by a UE as described herein. In some implementations, the UE may execute a set of instructions to control the function elements of the UE to perform the described functions.

[0146] At 702, the method 700 may include transmitting, to a network entity, an application generation request comprising an application parameter and context information. The operations of 702 may be performed in accordance with examples as described herein. In some implementations, aspects of the operations of 702 may be performed by a UE as described with reference to Figure 4.

[0147] At 704, the method 700 may include receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. The operations of 704 may be performed in accordance with examples as described herein. In some implementations, aspects of the operations of 704 may be performed by a UE as described with reference to Figure 4.

[0148] It should be noted that the method 700 described herein describes a possible implementation, and that the operations and the steps may be rearranged or otherwise modified and that other implementations are possible.

[0149] Figure 8 illustrates a flowchart of a method 800 in accordance with aspects of the present disclosure. The operations of the method 800 may be implemented by a NE asDocket No. SMM920250081-GR-NPdescribed herein. In some implementations, the NE may execute a set of instructions to control the function elements of the NE to perform the described functions.

[0150] At 802, the method 800 may include receiving, from a UE, an application generation request comprising an application parameter and context information. The operations of 802 may be performed in accordance with examples as described herein. In some implementations, aspects of the operations of 802 may be performed by a NE as described with reference to Figure 6.

[0151] At 804, the method 800 may include transmitting, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. The operations of 804 may be performed in accordance with examples as described herein. In some implementations, aspects of the operations of 804 may be performed by a NE as described with reference to Figure 6.

[0152] It should be noted that the method 800 described herein describes a possible implementation, and that the operations and the steps may be rearranged or otherwise modified and that other implementations are possible.

[0153] There is provided herein a UE for wireless communication, comprising: at least one memory; and at least one processor coupled with the at least one memory and configured to cause the UE to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. Such a UE tends to result in an application for the UE based on the application parameter which has an improved performance when executed on the UE.

[0154] The application parameter may comprise a user requirement for an application. The application parameter may be for an application. The application parameter may comprise a natural language description of the application. The application parameter mayDocket No. SMM920250081-GR-NPcomprise a description of the application. The application parameter may comprise an application descriptor.

[0155] The context information may comprise UE context information. The context information may comprise a capability of the UE. The context information may comprise a user preference. The context information may comprise context information relating to the UE. The context information may comprise context data. The context information may comprise a device context. The context information may comprise a device context data. The context information may comprise an associated context. The context information may relate to at least one of hardware, software or firmware of the UE.

[0156] The application code may comprise application code for an application for the UE. The application code may be for an application. The application code may comprise source code. The application code may comprise source code for the application. The application code may be in executable form. The application code may be executable code. The application code may be executable code for the application. The executable form may comprise an executable file of the application. The method may comprise receiving, from the network entity, an app package. The app package may comprise the application code. The app package may comprise a generated app package. The app package may be an application package. The app package may be a package for the application. The application code may be generated by the network entity. The application code may be generated by the network entity using an Al model. The Al model may comprise an LLM. Generating the application code based on the application parameter and context information may comprise generating the application code based on the application parameter and context information using the Al model.

[0157] The network entity may comprise one or more servers in a cloud environment. The network entity may comprise a cloud Al service. The cloud Al service may be configured to execute an Al model to generate the application code based on the application parameter and the context information. The Al model may comprise an LLM. The cloud Al service may comprise a cloud Al agent. The cloud Al agent may comprise an Al agent. The cloud Al service may one or more tools. The cloud Al service may comprise an Al model. The cloud Al service may comprise a ML model. The cloud Al service mayDocket No. SMM920250081-GR-NPcomprise a LLM. The UE may comprise at least one of a smartphone, remote unit, remote device, user device, tablet, wearable, PC, and loT device. The UE may comprise a user interface for user interaction with the application. The UE may comprise a microphone for a voice input. The UE may comprise a keyboard for a text input.

[0158] The application may comprise a software application. The application may comprise a desired software application. The application may comprise a consumer mobile app. The application may comprise an enterprise application. The application may comprise an loT application. The application may comprise an loT scenario. The application may comprise a utility app. The application may comprise an entertainment app. The application may comprise an internal business app. The application may be according to the application parameter.

[0159] Transmitting, to the network entity, the application generation request comprising the application parameter and context information may comprise transmitting, to a network entity over a network connection, the application generation request comprising the application parameter and context information.

[0160] Receiving, from the network entity, the application generation response comprising the application code for the UE, wherein the application code is generated by the network entity based on the application parameter and the context information may comprise receiving, from the network entity over the network connection, the application generation response comprising the application code for the UE, wherein the application code is generated by the network entity based on the application parameter and the context information.

[0161] The network connection may comprise a wireless network connection. The network connection may comprise a secure network connection. The network connection may comprise a 5G mobile network. The network connection may comprise a 6G mobile network. The network connection may comprise a 5G / 6G mobile network. The network connection may comprise an API call over the internet.

[0162] The application code may be generated by the network entity according to the application parameter and the context information. The at least one processor may beDocket No. SMM920250081-GR-NPfurther configured to cause the UE to: receive a user input comprising the application parameter. Receiving the user input comprising the application parameter may comprise receiving a user input capture. The application generation request may comprise an indication of the user input. The user input may be a natural language input from a user. The natural language input may comprise a text field. The natural language input may comprise a text input. The natural language input may comprise a voice input. The natural language input may comprise a speech-to-text conversion.

[0163] The context information may comprise information relating to at least one of: a sensor of the UE; a battery level of the UE; a display characteristic; an operating system of the UE; a type of the UE; a model of the UE; a network connectivity of the UE; a processing power of the UE; a user setting of the UE; and an accessibility setting of the UE. The sensor of the UE may comprise an available hardware sensor. The battery level of the UE may comprise a current battery level. The operating system of the UE may comprise an operating system version. The operating system of the UE may comprise an installed operating system version. The accessibility setting of the UE may comprise a screen size. The accessibility setting of the UE may comprise a resolution. The accessibility setting of the UE may comprise a screen resolution. The user setting of the UE may comprise a user preference. The user setting of the UE may comprise at least one of: a preferred language, a default language, a color scheme, a color theme, a font size, and a user interface style preference. The context information may further comprise information relating to at least one of: a presence of GPS, an accelerometer, a camera, a biometric sensor, a screen dimension, a memory profile, a CPU profile, hardware utilization, sensor / data sources, performance constraints, offline mode, platform differences, UI theme and accessibility, language and locale, feature preferences and security / privacy settings.

[0164] The at least one processor may be further configured to cause the UE to: install the application code at the UE for user interaction with an application. The application code may be code for the application. The application may be an application created when executing the application code.

[0165] The at least one processor may be further configured to cause the UE to: execute the application code for user interaction with an application. Executing the application codeDocket No. SMM920250081-GR-NPfor user interaction with the application may comprise executing the application code in a runtime environment for user interaction with the application. Executing the application code for user interaction with the application may comprise executing the application code in a sandboxed environment for user interaction with the application. The sandboxed environment may comprise a sandbox. The sandboxed environment may comprise a secure sandbox. The secure sandbox may be an isolated execution space. Executing the application code for user interaction with the application may comprise executing the application code on a native app for user interaction with the application.

[0166] The at least one processor may be further configured to cause the UE to: receive information relating to the user interaction with the application. The information relating to the user interaction with the application may comprise information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message. The explicit feedback may comprise a feedback prompt. The at least one processor may be further configured to cause the UE to: transmit, to the network entity, an indication of the information relating to the user interaction with the application.

[0167] There is further provided herein a processor for wireless communication, comprising: at least one controller coupled with at least one memory and configured to cause the processor to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. Such a processor tends to result in an application for the UE based on the application parameter which has an improved performance when executed on the UE.

[0168] There is further provided herein a method performed or performable by a user equipment, UE, the method comprising: transmitting, to a network entity, an application generation request comprising an application parameter and context information; and receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. Such aDocket No. SMM920250081-GR-NPmethod performed or performable by the UE tends to result in an application for the UE based on the application parameter which has an improved performance when executed on the UE.

[0169] The method may further comprise receiving a user input comprising the application parameter. The user input may be a natural language input from a user. The context information may comprise information relating to at least one of: a sensor of the UE; a battery level of the UE; a display characteristic; an operating system of the UE; a type of the UE; a model of the UE; a network connectivity of the UE; a processing power of the UE; a user setting of the UE; and an accessibility setting of the UE.

[0170] The method may further comprise executing the application code for user interaction with an application. The method may further comprise receiving information relating to the user interaction with the application. The information relating to the user interaction with the application may comprise information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message. The method may further comprise transmitting, to the network entity, an indication of the information relating to the user interaction with the application.

[0171] There is further provided a network entity for wireless communication, comprising: at least one memory; and at least one processor coupled with the at least one memory and configured to cause the network entity to: receive, from a user equipment, UE, an application generation request comprising an application parameter and context information; and transmit, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. Such a network entity tends to result in an application for the UE based on the application parameter which has an improved performance when executed on the UE.

[0172] The at least one processor may be further configured to cause the network entity to: generate the application code based on the application parameter and context information. The at least one processor may be further configured to cause the network entity to: receive, from the UE, an indication of information relating to user interaction with an application. The at least one processor may be further configured to cause the networkDocket No. SMM920250081-GR-NPentity to: update an artificial intelligence, Al, model based on the information relating to user interaction with the application. The information relating to the user interaction with the application may comprise information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message.

[0173] There is further provided herein a method performed or performable by a network entity, the method comprising: receiving, from a user equipment, UE, an application generation request comprising an application parameter and context information; and transmitting, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information. Such a method performed or performable by the network entity tends to result in an application for the UE based on the application parameter which has an improved performance when executed on the UE.

[0174] The method may further comprise generating the application code based on the application parameter and context information. The method may further comprise receiving, from the UE, an indication of information relating to user interaction with an application. The method may further comprise updating an Al model based on the information relating to user interaction with the application.

[0175] The information relating to the user interaction with the application may comprise information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message. The context information may comprise information relating to at least one of: a sensor of the UE; a battery level of the UE; a display characteristic; an operating system of the UE; a type of the UE; a model of the UE; a network connectivity of the UE; a processing power of the UE; a user setting of the UE; and an accessibility setting of the UE.

[0176] There is further provided herein, a UE for wireless communication, comprising: at least one memory; and at least one processor configured to: receive a natural language input from a user describing a desired software application; generate, based on the natural language input, a request comprising the input and context information related to the UE’s hardware, software, and user preferences; transmit the request to a cloud-based Al serviceDocket No. SMM920250081-GR-NPconfigured to generate an application based on the request; receive, in response, a generated application package from the cloud-based Al service; and install or execute the application package on the UE, wherein execution is performed either within a sandboxed runtime environment integrated in the UE or by deploying the application as a native application on the UE.

[0177] The context information may include one or more of: a list of available hardware sensors, current battery level, display characteristics, installed operating system version, or accessibility settings. The at least one processor may be further configured to monitor user interaction with the generated application and transmit feedback data to the cloud-based Al service for the purpose of refining future application generation based on user preferences.

[0178] There is further provided a cloud-based application generation system comprising: at least one processor; and at least one memory storing instructions that, when executed by the processor, cause the system to: receive a request from a UE, the request comprising a natural language description of a desired software application and context information associated with the UE; interpret the natural language description to determine functional and interface requirements of the desired application; generate application code that implements the functionality described in the request and is adapted to the context of the UE; package the generated application code into an executable format suitable for deployment on the UE; and transmit the packaged application to the UE for installation or execution.

[0179] The generated application code may be adapted based on one or more of: the UE’s hardware capabilities, screen resolution, operating system version, network connectivity, or user interface preferences. The system may be further configured to receive feedback data from the UE relating to usage of the generated application, and to update one or more models used for application generation based on the feedback, thereby enabling continuous personalization and improvement of future applications.

[0180] It should be noted that the method described herein describes a possible implementation, and that the operations and the steps may be rearranged or otherwise modified and that other implementations are possible.Docket No. SMM920250081-GR-NP

[0181] The description herein is provided to enable a person having ordinary skill in the art to make or use the disclosure. Various modifications to the disclosure will be apparent to a person having ordinary skill in the art, and the generic principles defined herein may be applied to other variations without departing from the scope of the disclosure. Thus, the disclosure is not limited to the examples and designs described herein but is to be accorded the broadest scope consistent with the principles and novel features disclosed herein.Docket No. SMM920250081-GR-NP

Claims

CLAIMS1. A user equipment, UE, for wireless communication, comprising: at least one memory; and at least one processor coupled with the at least one memory and configured to cause the UE to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

2. The UE of claim 1, wherein the at least one processor is further configured to cause the UE to: receive a user input comprising the application parameter.

3. The UE of claim 2, wherein the user input is a natural language input from a user.

4. The UE of any one of claims 1 to 3, wherein the context information comprises information relating to at least one of: a sensor of the UE; a battery level of the UE; a display characteristic; an operating system of the UE; a type of the UE; a model of the UE; a network connectivity of the UE; a processing power of the UE; a user setting of the UE; and an accessibility setting of the UE.Docket No. SMM920250081-GR-NP5. The UE of any one of claims 1 to 4, wherein the at least one processor is further configured to cause the UE to: execute the application code for user interaction with an application.

6. The UE of claim 5, wherein the at least one processor is further configured to cause the UE to: receive information relating to the user interaction with the application.

7. The UE of claim 6, wherein the information relating to the user interaction with the application comprises information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message.

8. The UE of any one of claims 6 or 7, wherein the at least one processor is further configured to cause the UE to: transmit, to the network entity, an indication of the information relating to the user interaction with the application.

9. A processor for wireless communication, comprising: at least one controller coupled with at least one memory and configured to cause the processor to: transmit, to a network entity, an application generation request comprising an application parameter and context information; and receive, from the network entity and in response to the application generation request, an application generation response comprising application code for a user equipment, UE, wherein the application code is based on the application parameter and the context information.Docket No. SMM920250081-GR-NP10. A method performed or performable by a user equipment, UE, the method comprising: transmitting, to a network entity, an application generation request comprising an application parameter and context information; and receiving, from the network entity and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

11. A network entity for wireless communication, comprising: at least one memory; and at least one processor coupled with the at least one memory and configured to cause the network entity to: receive, from a user equipment, UE, an application generation request comprising an application parameter and context information; and transmit, to the UE and in response to the application generation request, an application generation response comprising application code for the UE, wherein the application code is based on the application parameter and the context information.

12. The network entity of claim 11, wherein the at least one processor is further configured to cause the network entity to: generate the application code based on the application parameter and context information.

13. The network entity of claim 11 or claim 12, wherein the at least one processor is further configured to cause the network entity to: receive, from the UE, an indication of information relating to user interaction with an application.

14. The network entity of claim 13, wherein the at least one processor is further configured to cause the network entity to:Docket No. SMM920250081-GR-NPupdate an artificial intelligence, Al, model based on the information relating to user interaction with the application.

15. The network entity of claim 13 or claim 14, wherein the information relating to the user interaction with the application comprises information relating to at least one of: a usage pattern for the application; implicit feedback; explicit feedback; and an error message.Docket No. SMM920250081-GR-NP

Citation Information

Patent Citations

  • Code generation method and device

    CN120045171A

  • User equipment, network entity, network client and methods for automated resource allocation and reporting conditioned on performance / constraint requirements

    WO2025032223A1