Application-selective API access restriction based on battery state

A system manages vehicle API access based on battery state to prevent depletion by restricting non-essential applications when battery capacity is low, ensuring critical functions remain operational.

JP2026076102APending Publication Date: 2026-05-11TOYOTA JIDOSHA KK
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2025-06-20
Publication Date
2026-05-11

AI Technical Summary

Technical Problem

Exposing vehicle APIs to various applications increases security risks, and managing access to these APIs is challenging, especially when battery capacity is limited, as some applications are not suitable for running under low battery conditions.

Method used

Implementing a system that prohibits access to vehicle APIs from a first group of applications when the battery's remaining capacity is below a threshold, based on state of charge (SoC), and allows access for applications that perform vehicle operations or have low power consumption, while ensuring emergency response functions are not affected.

Benefits of technology

This system mitigates battery depletion by managing API access effectively, ensuring critical vehicle operations and emergency functions continue while conserving battery power for non-essential applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026076102000001_ABST
    Figure 2026076102000001_ABST
Patent Text Reader

Abstract

Application-selective API access restriction based on battery status. [Solution] Application-selective battery state-based API access prohibition is implemented by receiving a command to run an application, determining whether the application is in the first group of applications, detecting whether the vehicle's battery capacity is below a threshold if the application is not in the first group, and prohibiting the application from accessing one or more of the vehicle's application programming interfaces (APIs) if the battery capacity is below a threshold.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] A vehicle system is composed of many electronic control units (ECUs). Many ECUs can function as computers and have the ability to access data stored externally and communicate through a packet-based network. Software applications are executed by the ECUs to provide various services to the vehicle or its users. Software applications request vehicle information via an application programming interface (API).

Brief Description of the Drawings

[0002] Aspects of the present disclosure are best understood from the following detailed description when read in conjunction with the accompanying drawings. Note that, in accordance with standard industry practice, various features are not drawn to exact scale. In fact, the dimensions of various features may be arbitrarily increased or decreased for clarity of discussion. [Figure 1] FIG. 1 is a schematic diagram of a system for application-selective battery state-based API access prohibition according to at least some embodiments of the subject disclosure. [Figure 2] FIG. 2 is an operation flow for application-selective API access provision according to at least some embodiments of the subject disclosure. [Figure 3] FIG. 3 is an operation flow for battery state-based API access prohibition according to at least some embodiments of the subject disclosure. [Figure 4] FIG. 4 is a block diagram of a hardware configuration for application-selective battery state-based API access prohibition according to at least some embodiments of the subject disclosure.

Modes for Carrying Out the Invention

[0003] The following disclosure provides many different embodiments or examples for carrying out different features of the subject matter provided. Specific examples of components, values, operations, materials, arrangements, etc., are described below for the sake of brevity of this disclosure. Naturally, these are merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, etc., may be considered. In addition, this disclosure may repeat reference numbers and / or letters in various examples. This repetition is for the sake of simplification and clarity and does not in itself indicate relationships between the various embodiments and / or configurations described.

[0004] Exposing APIs for accessing vehicle data and control systems to different applications, such as original equipment manufacturer (OEM) applications or third-party applications, increases a variety of risks. Managing such access to APIs allows for the reduction, mitigation, or avoidance of these risks. While various types of applications are designed to run in vehicles, some applications are not suitable for running when battery capacity is limited.

[0005] In at least some embodiments described herein, access to the vehicle API from a first group of applications is prohibited based on whether the remaining capacity of the vehicle's battery is below a threshold. In at least some embodiments, the remaining capacity of the vehicle's battery is detected based on the battery's state of charge (SoC). In at least some embodiments, the first group of applications includes low-priority applications.

[0006] In at least some embodiments, properly managing access to vehicle APIs from low-priority applications based on the remaining capacity of the vehicle's battery helps to mitigate battery depletion.

[0007] In at least some embodiments, the group of applications eligible for battery state-based API access includes applications that do not perform vehicle operations, such as music playback applications, but applications that do perform vehicle operations, such as automated valet parking or assistance with vehicle platooning, are provided with API access. In at least some embodiments, whether an application is involved in vehicle operations and therefore included in the group is determined based on the vehicle API call history, authentication or classification results in the application store, analysis of the application binary, etc. In at least some embodiments, the group of applications eligible for battery state-based API access includes applications whose power consumption is above a predetermined value, such as the power consumption per unit time or the average total power consumption during application execution, but applications whose power consumption is below the predetermined value are provided with API access. In at least some embodiments, power consumption is calculated based on the application execution history. In at least some embodiments, the group of applications eligible for battery state-based API access includes applications that call any predetermined API, but applications that do not call any predetermined APIs related to high battery consumption, such as APIs that perform vehicle operations, starting the air conditioning, or external communication, are provided with API access.

[0008] In at least some embodiments, applications that perform emergency response functions such as car theft prevention, driver abnormality notification, and child abandonment prevention are provided with API access, but the group of applications subject to battery state-based API access includes other applications.

[0009] In at least some embodiments, each group is associated with a different threshold. In at least some embodiments, non-vehicle operation application groups, high-power consumption application groups, high-power API call application groups, and non-urgent response application groups are ranked sequentially from high SoC threshold to low SoC threshold.

[0010] In at least some embodiments, the application has a predetermined group membership. In at least some embodiments, the group membership is determined in real time upon receiving a command to run the application, for example, when all conditions are determined by the vehicle and the vehicle has sufficient computing resources to determine the group membership. In at least some embodiments, as the number of groups and associated thresholds increases, the likelihood that the vehicle has sufficient resources to determine the group membership in real time decreases.

[0011] In at least some embodiments, the threshold for one or more groups is dynamic. In at least some embodiments, the threshold for one or more groups is based on the distance to the destination. In at least some embodiments, the threshold for one or more groups is customizable by the user.

[0012] Figure 1 is a schematic diagram of a system for application-selective battery state-based API access restriction according to at least some embodiments of the disclosure. The system for application-selective battery state-based API access restriction includes a vehicle 100, an application 110, an API access manager 112, APIs 114A and 114B, a sensor 116, a battery 117, an application database 119, and a display 108.

[0013] Vehicle 100 is a component of the system for application-selective battery state-based API access restriction. In at least some embodiments, Vehicle 100 is a car, truck, electric vehicle, autonomous vehicle, etc. In at least some embodiments, Vehicle 100 is used for personal transport, commercial transport, logistics, or any other transport needs. In at least some embodiments, Vehicle 100 is configured for transport, navigation, safety measures, etc. In at least some embodiments, Vehicle 100 interacts with various sensors, infotainment systems, user input, or any other vehicle systems. In at least some embodiments, Vehicle 100 is configured to provide ECUs and APIs, provide vehicle data, execute applications, etc.

[0014] Application 110 is a component of the system for application-selective battery state-based API access prohibition. In at least some embodiments, Application 110 is of a type that includes mobile apps, embedded software, cloud-based applications, etc. In at least some embodiments, Application 110 is used for navigation, infotainment, fault diagnosis, or any other vehicle-related use. In at least some embodiments, Application 110 is configured to provide user services, enhance vehicle functionality, etc. In at least some embodiments, Application 110 interacts with the system regarding the operating system, cloud services, or any other applications. In at least some embodiments, Application 110 is configured to request vehicle data, perform specific tasks based on vehicle data, etc. In at least some embodiments, Application 110 interacts with API Access Manager 112, API 114A, and API 114B as well as other vehicle components through API 114A and API 114B.

[0015] The API Access Manager 112 is a component of the system for application-selective, battery-state-based API access prohibition. In at least some embodiments, the API Access Manager 112 is of a type that includes middleware, security software, access control systems, etc. In at least some embodiments, the API Access Manager 112 is used for network security, data management, access control, or any other API management. In at least some embodiments, the API Access Manager 112 is configured for security management, data access control, policy enforcement, etc. In at least some embodiments, the API Access Manager 112 interacts with security systems, databases, system health monitors, or any other API-related systems. In at least some embodiments, the API Access Manager 112 is configured to manage API access such as access through API 114A and API 114B, enforce access policies, monitor battery state, etc. In at least some embodiments, the API Access Manager 112 interacts with application 110, API 114A and API 114B, and application database 119.

[0016] API114A and API114B are components of the system for application-selective battery state-based API access prohibition. In at least some embodiments, API114A and API114B are RESTful APIs, SOAP APIs, GraphQL APIs, etc. In at least some embodiments, API114A and API114B are used for web services, mobile apps, startup systems, or any other data exchange needs. In at least some embodiments, API114A and API114B are configured for data exchange, service delivery, etc. In at least some embodiments, API114A and API114B interact with a variety of applications, sensors, peripherals, etc. In at least some embodiments, API114A and API114B are configured to provide vehicle data, authorize control commands, etc. In at least some embodiments, API114A and API114B interact with application 110, API access manager 112, sensor 116, and display 118.

[0017] Sensor 116 is a component of the system for application-selective battery state-based API access restriction. In at least some embodiments, sensor 116 is of a type that includes battery sensors, temperature sensors, pressure sensors, etc. In at least some embodiments, sensor 116 is of a type used in automotive systems, industrial automation, environmental monitoring, or any other data acquisition needs. In at least some embodiments, sensor 116 is configured for data acquisition, environmental monitoring, etc. In at least some embodiments, sensor 116 interacts with a control unit, data logger, system feedback mechanism, or any other sensor-related system. In at least some embodiments, sensor 116 is configured to detect battery state such as SoC or other indicators of remaining capacity, provide real-time data, etc. In at least some embodiments, sensor 116 interacts with the API access manager 112, API 114A and battery 117, as well as other vehicle components through API 114A.

[0018] Battery 117 is a component of the system for application-selective battery state-based API access restriction. In at least some embodiments, battery 117 is of a type including lithium-ion batteries, lead-acid batteries, solid-state batteries, etc. In at least some embodiments, battery 117 is of a type used in electric vehicles, renewable energy storage, home appliances, or any other energy storage needs. In at least some embodiments, battery 117 is configured for energy storage, power supply, etc. In at least some embodiments, battery 117 interacts with a charging system, power management system, vehicle engine, or any other battery-related system. In at least some embodiments, battery 117 is configured to provide power, manage the SoC, etc. In at least some embodiments, battery 117 interacts with sensor 116.

[0019] The application database 119 is a component of the system for application-selective battery state-based API access restriction. In at least some embodiments, the application database 119 is of a type including SQL databases, NoSQL databases, cloud storage solutions, etc. In at least some embodiments, the application database 119 is used for mobile data management, mobile applications, or any other data storage needs. In at least some embodiments, the application database 119 is configured for data storage, data retrieval, data management, etc. In at least some embodiments, the application database 119 interacts with database management systems, applications, data access mechanisms, or any other database-related systems. In at least some embodiments, the application database 119 is configured to store application data, maintain access policies, record application usage, etc. In at least some embodiments, the application database 119 interacts with the API access manager 112 and application 110.

[0020] Display 108 is a component of the system for application-selective battery state-based API access prohibition. In at least some embodiments, display 108 is of a type including LCD screens, OLED displays, touchscreens, etc. In at least some embodiments, display 108 can be used in infotainment systems, navigation systems, control panels, or any other information display needs. In at least some embodiments, display 108 is configured as a user interface, information display, media player, etc. In at least some embodiments, display 108 interacts with a control unit, user input, visual feedback mechanism, or any other display-related system. In at least some embodiments, display 108 is configured to indicate battery status, display application access status, etc. In at least some embodiments, display 108 interacts with API access manager 112 and API 114B, and other vehicle components through API 114B.

[0021] Figure 2 is an operational flow for providing application-selective API access according to at least some embodiments of the disclosure in question. In at least some embodiments, the operational flow provides a method for providing application-selective API access. In at least some embodiments, the method is performed by a vehicle controller, such as the controller 402 of the vehicle 400 in Figure 4, which will be described later herein.

[0022] In S220, the controller or a part thereof receives an application execution command. In at least some embodiments, the controller receives a command to execute an application such as application 110 in Figure 1. In at least some embodiments, the controller listens for the incoming command, parses the command details, and authenticates the authenticity of the command. In at least some embodiments, the controller uses a command buffer to temporarily store the incoming command, an authentication token for validating its legitimacy, and a command parser for interpreting the command structure. In at least some embodiments, the command data is in binary or JSON / XML format, and the token is in string format.

[0023] In S223, the controller or a part thereof determines whether the application is in the first group. Depending on whether the application is in the first group, the controller proceeds to provide API access in S226. Depending on whether the application is not in the first group, the controller proceeds to deny API access based on battery state in S228. In at least some embodiments, the controller determines whether the application is in the first group of applications. In at least some embodiments, the first group of applications includes multiple applications that perform vehicle operations. In at least some embodiments, the controller determines whether the application performs vehicle operations based on at least one of the vehicle API call history, authentication or classification results in the application store, or the application binary. In at least some embodiments, the first group of applications includes multiple applications whose power consumption is below a predetermined value. In at least some embodiments, the controller determines whether the power consumption of an application is below a predetermined value. In at least some embodiments, the controller determines the power consumption of an application based on the application's execution history. In at least some embodiments, the first group of applications includes multiple applications that do not access at least one API related to increasing power consumption. In at least some embodiments, at least one API is one of several APIs related to increasing power consumption. In at least some embodiments, the first group of applications includes multiple applications that perform emergency response. In at least some embodiments, the controller reads the application metadata, verifies the application's group classification, and compares it to a predefined group list. In at least some embodiments, the controller uses the application metadata store to access the necessary information, uses group classification rules to determine the application's category, and uses a predefined group list for comparison.In at least some embodiments, metadata records, rule sets, and group lists are stored in an application database such as application database 119 of FIG. 1.

[0024] In S226, the controller or a portion thereof provides API access. In at least some embodiments, the controller provides API access to an application. In at least some embodiments, the controller authenticates the application, authorizes an API access token, and records an access event. In at least some embodiments, the controller depends on an API access control list for managing permissions, an authentication server for verifying the identity of the application, and an access log for recording events.

[0025] In S228, the controller or a portion thereof prohibits API access based on the battery state. In at least some embodiments, the controller reads the current battery state, compares the remaining capacity with a threshold, rejects API access in response to the remaining capacity being below the threshold, and records a prohibition event. In at least some embodiments, the controller performs functions such as reading the battery state, comparing values, rejecting access, and writing a log. In at least some embodiments, the controller prevents low-priority applications from accessing the API when the battery capacity is low, improving the efficiency of battery use. In at least some embodiments, the controller performs the operation flow of FIG. 3 described later herein.

[0026] In the embodiment of FIG. 2, the controller determines whether the application is in the first group and provides API access in response to determining that the application is in the first group. In at least some embodiments, the controller further determines whether the application is in the second group and proceeds to battery state-based API access prohibition in response to determining that the application is in the second group.

[0027] FIG. 3 is an operation flow for battery state-based API access prohibition according to at least some embodiments of the subject disclosure. In at least some embodiments, the operation flow provides a method for battery state-based API access prohibition. In at least some embodiments, the method is performed by a vehicle controller such as controller 402 of vehicle 400 in FIG. 4, which will be described later in this specification.

[0028] In S330, the controller or a part thereof determines the threshold. In at least some embodiments, the controller determines the threshold by reading application priority, average power consumption, distance to destination, or other criteria for calculating the threshold. In at least some embodiments, the controller uses the battery management system, application metadata, and navigation system. In at least some embodiments, the controller generates the threshold. In at least some embodiments, the controller changes the relative weights of application priority, average power consumption, and distance to destination to the threshold. In at least some embodiments, the controller determines the threshold based on a group of applications. In at least some embodiments, the controller determines the threshold based on the distance to the vehicle's destination. In at least some embodiments, the controller determines the threshold based on the average power consumption of multiple applications within a first group of applications. In at least some embodiments, the controller determines the threshold based on the priority level of a first group of applications. In at least some embodiments, the controller determines the threshold by the following formula: TIFF2026076102000002.tif8169 Here, V TH G is the threshold, G is the group of applications, D is the distance to the destination, and P is the threshold. A This is the average power consumption, and P G This is the priority level of the application group.

[0029] In S333, the controller or a part thereof determines whether the remaining battery capacity is below a threshold. Depending on whether the controller determines that the remaining battery capacity is below a threshold, it proceeds to deny API access in S336. Depending on whether the controller determines that the remaining battery capacity is not below a threshold, it proceeds to provide API access in S338. In at least some embodiments, the controller detects whether the remaining capacity of the vehicle's battery is below a threshold depending on whether the application is not in the first group. In at least some embodiments, the controller determines whether the remaining battery capacity is below a threshold by comparing the SoC to a threshold. In at least some embodiments, the controller produces a Boolean result such as true or false. In at least some embodiments, the controller detects whether the remaining capacity of the vehicle's battery is below a second threshold depending on whether the application is in the second group.

[0030] S338 indicates that the controller, or a portion thereof, provides API access. In at least some embodiments, the controller provides API access by authorizing API access and logging access events. In at least some embodiments, the controller performs this similarly to providing API access in S226 in Figure 2.

[0031] S336 indicates that the controller or a part thereof prohibits API access. In at least some embodiments, the controller prohibits an application from accessing one or more vehicle APIs in response to detecting that the battery capacity is below a threshold. In at least some embodiments, the controller prohibits API access by denying API access and logging a prohibition event. In at least some embodiments, the controller sends an access denied message to the application.

[0032] Figure 4 is a block diagram of a hardware configuration for application-selective battery state-based API access prohibition according to at least some embodiments of the disclosure. The hardware configuration includes a vehicle 400 that interacts directly with a display 408 or via a network 409. In at least some embodiments, the display 408 is a touchscreen, microphone, camera, or any other device configured to detect input such as tactile, auditory, or visual. In at least some embodiments, the network 409 is an Ethernet network, a control area network (CAN), or any other wired or wireless network, or a combination thereof. In at least some embodiments, the vehicle 400 is a computing device that receives input or commands from a computer or other display 408. In at least some embodiments, the vehicle 400 is integrated with the display 408. In at least some embodiments, the vehicle 400 is a computer system that executes computer-readable instructions to perform operations for application-selective battery state-based API access prohibition.

[0033] The vehicle 400 includes a controller 402, storage 404, an input / output interface 406, and a communication interface 407. In at least some embodiments, the controller 402 includes a processor or programmable electrical circuit that executes instructions to cause a processor or programmable electrical circuit to perform an operation according to the instructions. In at least some embodiments, the controller 402 includes analog or digital programmable electrical circuits or a combination thereof. In at least some embodiments, the controller 402 includes physically isolated storage or electrical circuits that interact through communication. In at least some embodiments, the storage 404 includes a non-volatile computer-readable medium that can store executable and non-executable data for access by the controller 402 during instruction execution. In at least some embodiments, the communication interface 407 sends and receives data from a network 409. In at least some embodiments, the input / output interface 406 is connected to a variety of input and output units, such as a display 408, through parallel ports, serial ports, keyboard ports, mouse ports, monitor ports, and equivalents, to accept commands and present information. In some embodiments, the storage 404 is located outside the vehicle 400.

[0034] The controller 402 includes a determination unit 450, a detection unit 452, and a prohibition unit 454. The storage 404 includes an application group 460, a threshold parameter 462, an application history 464, and a prohibition parameter 466.

[0035] The determination unit 450 is an instruction or electrical circuit of the controller 402 configured to determine application group membership. In at least some embodiments, the determination unit 450 is configured to determine whether an application is in the first group of applications. In at least some embodiments, the determination unit 450 uses storage 404 to read or record information such as application group 460. In at least some embodiments, the determination unit 450 includes a sub-section for performing additional functions described in the flowchart above. In at least some embodiments, such a sub-section is referred to by a name associated with the corresponding function.

[0036] The detection unit 452 is a command or electrical circuit of the controller 402 configured for detecting the remaining battery capacity. In at least some embodiments, the detection unit 452 is configured to detect whether the remaining battery capacity of the vehicle is below a threshold in response to the determination that the application is in the first group. In at least some embodiments, the detection unit 452 uses storage 404 to read or record information such as threshold parameters 462 and application history 464. In at least some embodiments, the detection unit 452 includes sub-units for performing additional functions described in the flowchart above. In at least some embodiments, such sub-units are referred to by names associated with the corresponding functions.

[0037] The prohibition section 454 is a command or electrical circuit of the controller 402 configured for prohibiting API access. In at least some embodiments, the prohibition section 454 is configured to prohibit an application from accessing one or more APIs of the vehicle in response to detection that the remaining battery capacity is below a threshold. In at least some embodiments, the prohibition section 454 uses storage 404 to read or record information such as prohibition parameters 466. In at least some embodiments, the prohibition section 454 includes sub-sections that perform additional functions described in the flowchart above. In at least some embodiments, such sub-sections are referred to by their corresponding functions and associated names.

[0038] In at least some embodiments, the vehicle is another device capable of processing logical functions to perform the operations described herein. In at least some embodiments, the controller and storage do not need to be separate devices as a whole, but share an electrical circuit or one or more computer-readable media. In at least some embodiments, the storage includes a hard drive that stores both computer-executable instructions and data accessed by the controller, and the controller includes a combination of a central processing unit (CPU) and RAM, in which the computer-executable instructions can be copied in whole or in part to be executed by the CPU during the performance of the operations described herein.

[0039] In at least some embodiments where the vehicle is a computer, a program installed on the computer can cause the computer to function as an apparatus of the embodiments described herein or to perform operations associated with such apparatus. In at least some embodiments, such a program is executable by a processor to cause the computer to perform certain operations associated with some or all of the blocks in the flowchart or block diagram described herein.

[0040] In at least some embodiments, blocks are shown with reference to flowcharts and block diagrams, where a block represents (1) a step in a process in which an operation is performed or (2) a part of hardware responsible for performing the operation. In at least some embodiments, certain steps and parts are performed by a dedicated electrical circuit, a programmable electrical circuit supplied with computer-readable instructions stored on a computer-readable medium, and / or a processor supplied with computer-readable instructions stored on a computer-readable medium. In at least some embodiments, the dedicated electrical circuit includes digital and / or analog hardware, and includes integrated circuits (ICs) and / or discrete electrical circuits. In at least some embodiments, the programmable electrical circuit includes a reconfigurable hardware electrical circuit, such as a field-programmable date array (FPGA) or programmable logic array (PLA), which includes logical AND, OR, XOR, NAND, XOR, other logical operations, flip-flops, registers, memory elements, and the like.

[0041] In at least some embodiments, a computer-readable medium includes a tangible device capable of holding or storing instructions for use by an instruction execution device. In some embodiments, a computer-readable medium includes, but is not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of those described above. A more detailed illustrative list of computer-readable mediums includes: portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disks (DVDs), memory sticks, floppy disks, mechanically encoded devices such as punch cards or grooved raised structures on which instructions are recorded, and any suitable combination of those described above. The computer-readable medium used herein is one that is not interpreted as a transient signal in itself, such as radio waves or other freely propagating electromagnetic waves, or electronic signals propagating through a wire, and which propagates through a waveguide or transmission medium (for example, light pulses passing through an optical fiber cable).

[0042] While embodiments of the present invention have been described, the technical scope of any claimed subject matter is not limited to the embodiments described above. Those skilled in the art will understand that various modifications and improvements are possible to the embodiments described above. Those skilled in the art will also understand from the claims that such modified and improved embodiments are included within the technical scope of the invention.

[0043] The operations, procedures, steps, and stages of each process performed by the apparatus, system, program, and method shown in the claims, embodiments, or figures may be performed in any order, unless the order is indicated by "before," "previously," etc., and unless the output from a previous process is used in a subsequent process. Even if the flow of processes is described in the claims, embodiments, or figures using phrases such as "first" or "next," such description does not necessarily mean that the processes must be performed in the order described.

[0044] Application-selective battery state-based API access prohibition is implemented by receiving a command to run an application, determining whether the application belongs to the first group of applications, detecting whether the vehicle's battery capacity is below a threshold if the application is not in the first group, and prohibiting the application from accessing one or more of the vehicle's application programming interfaces (APIs) if the battery capacity is below a threshold.

[0045] In at least some embodiments, the first group of applications includes multiple applications that perform vehicle operations. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining whether an application performs vehicle operations based on at least one of the following: the call history of vehicle APIs, the results of authentication or classification in the application store, or the application binary. In at least some embodiments, the first group of applications includes multiple applications whose power consumption is below a predetermined value. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining whether the power consumption of an application is below a predetermined value. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining the power consumption of an application based on the execution history of an application. In at least some embodiments, the first group of applications includes multiple applications that do not access at least one API related to increasing power consumption. In at least some embodiments, the at least one API is one of several APIs related to increasing power consumption. In at least some embodiments, the first group of applications includes multiple applications that perform emergency responses. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining whether the application is in a second group and, in response to determining that the application is in a second group, detecting whether the remaining battery capacity of the vehicle is below a second threshold. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining a threshold based on the distance of the vehicle to its destination.In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining a threshold based on the average power consumption of multiple applications in a first group of applications. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining a threshold based on the priority level of the first group of applications.

[0046] Application-selective battery state-based API access prohibition is implemented by receiving a command to run an application, determining whether the application belongs to the first group of applications, detecting whether the vehicle's battery capacity is below a threshold if the application is not in the first group, and prohibiting the application from accessing one or more of the vehicle's application programming interfaces (APIs) if the battery capacity is below a threshold.

[0047] In at least some embodiments, the first group of applications includes multiple applications that perform vehicle operations. In at least some embodiments, application-selective battery state-based API access prohibition further includes determining whether an application is in a second group and, in response to determining that an application is in a second group, detecting whether the remaining capacity of the vehicle's battery is below a second threshold. In at least some embodiments, application-selective battery state-based API access prohibition is further implemented by determining a threshold based on the distance to the vehicle's destination.

[0048] Application-selective battery state-based API access prohibition is implemented by receiving a command to run an application, determining whether the application belongs to the first group of applications, detecting whether the vehicle's battery capacity is below a threshold if the application is not in the first group, and prohibiting the application from accessing one or more of the vehicle's application programming interfaces (APIs) if the battery capacity is below a threshold.

[0049] In at least some embodiments, the first group of applications includes multiple applications that perform vehicle operations. In at least some embodiments, application-selective battery state-based API access prohibition further includes determining whether an application is in the second group and, in response to determining that the application is in the second group, detecting whether the remaining capacity of the vehicle's battery is below a second threshold.

[0050] The foregoing outlines the features of various embodiments so that those skilled in the art may better understand the nature of this disclosure. Those skilled in the art should understand that this disclosure can be readily used as a basis for designing or modifying other processes or structures to achieve the same objectives and / or gain the same advantages as the embodiments described herein. Those skilled in the art should further understand that such equivalent structures do not deviate from the spirit or scope of this disclosure, and that various changes, substitutions, and modifications within this specification are possible without departing from the spirit or scope of this disclosure.

Claims

1. A computer program that causes one or more processors to perform an operation, wherein the operation is: Receiving commands to run the application, Determining whether the aforementioned application is in the first group of applications, In response to the determination that the application is not in the first group, the remaining capacity of the vehicle's battery is detected to be below a threshold, In response to detecting that the remaining capacity of the battery is below the threshold, the application is prohibited from accessing one or more application programming interfaces (APIs) of the vehicle. A computer program that includes [this].

2. A computer program according to claim 1, wherein the first group of applications includes a plurality of applications that perform vehicle operations.

3. The computer program according to claim 2, wherein the operation further includes determining whether the application is performing a vehicle operation based on at least one of the call history of the vehicle API, the results of authentication or classification in the application store, or the binary of the application.

4. A computer program according to claim 1 or 2, wherein the first group of applications includes a plurality of applications whose power consumption is less than or equal to a predetermined value.

5. A computer program according to claim 4, wherein the operation further includes determining whether the power consumption of the application is less than a predetermined value.

6. A computer program according to claim 5, wherein the operation further includes determining the power consumption of the application based on the execution history of the application.

7. A computer program according to claim 1 or 2, wherein the first group of applications includes a plurality of applications that do not access at least one API related to increasing power consumption.

8. A computer program according to claim 7, wherein at least one API is among a plurality of APIs related to increasing power consumption.

9. A computer program according to claim 1 or 2, wherein the first group of applications comprises a plurality of applications that perform emergency response.

10. A computer program according to claim 1 or 2, wherein the operation is: To determine whether the aforementioned application belongs to the second group, In response to determining that the application is in the second group, the remaining battery capacity of the vehicle is detected to be below the second threshold, A computer program that further includes this.

11. A computer program according to claim 1 or 2, wherein the operation further comprises determining the threshold based on the distance of the vehicle to its destination.

12. A computer program according to claim 1 or 2, wherein the operation further comprises determining a threshold based on the average power consumption of a first group of applications of the application.

13. A computer program according to claim 1 or 2, wherein the operation further comprises determining the threshold based on the priority level of the first group of applications.

14. A method performed by one or more processors, Receiving commands to run the application, Determining whether the aforementioned application is in the first group of applications, In response to the determination that the application is not in the first group, the remaining capacity of the vehicle's battery is detected to be below a threshold, In response to detecting that the remaining capacity of the battery is below the threshold, the application is prohibited from accessing one or more application programming interfaces (APIs) of the vehicle. Methods that include...

15. A method according to claim 14, wherein the first group of applications comprises a plurality of applications that perform vehicle operations.

16. The method according to claim 14 or 15, To determine whether the aforementioned application belongs to the second group, In response to the application being determined to be in the second group, the remaining capacity of the vehicle's battery is detected to be below a second threshold, Methods that further include the above.

17. A method according to claim 14 or 15, further comprising determining the threshold based on the distance of the vehicle to its destination.

18. It is a device, Receives a command to run the application, Determine whether the aforementioned application belongs to the first group of applications, In response to the determination that the application is not in the first group, the system detects whether the remaining battery capacity of the vehicle is below a threshold. In response to detecting that the remaining capacity of the battery is below a threshold, the application is prohibited from accessing one or more application programming interfaces (APIs) of the vehicle. A device configured in such a way.

19. The device according to claim 18, wherein the first group of applications includes a plurality of applications that perform vehicle operations.

20. A device according to claim 18 or 19, Determine whether the aforementioned application belongs to the second group, In response to the application determining that it belongs to the second group, it detects whether the remaining battery capacity of the vehicle is below the second threshold. A device further configured in this way.