Method and device for detecting compatibility of application program, television system and computer readable storage medium

By checking the compatibility and adaptability of applications with TV systems in detail, the problem of application installation failure on TV devices was solved, the installation success rate and user experience were improved, and the application market was standardized.

CN120835183APending Publication Date: 2025-10-24QINGDAO HAIER MULTI MEDIA CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510899124.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-30
Publication Date
2025-10-24

AI Technical Summary

Technical Problem

In the prior art, there are compatibility issues when installing applications on TV devices, resulting in installation failure or malfunction. The existing simple compatibility check cannot meet the high requirements of TV devices.

Method used

By obtaining information about the application to be installed and the TV system, a detailed check is performed, including the minimum development kit version, interface compatibility, target kit version, manifest features and permissions, to ensure the compatibility and adaptability of the application with the TV system.

Benefits of technology

It improves the installation success rate and user experience of applications on TV systems, avoids application crashes and functional abnormalities, standardizes the TV application market, and improves application quality and store credibility.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120835183A_ABST
    Figure CN120835183A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of intelligent household appliances, and discloses a method for detecting the compatibility of an application program, which comprises the following steps: acquiring information of the application program to be installed and information of a television system; according to the application program information and the television system information, checking the compatibility of the version of the application program and the adaptability of the application program and the television system; and determining the compatibility of the application program according to the checking result. By checking the version compatibility of the application program, the accuracy of version compatibility judgment is improved. And meanwhile, the suitability of the television system is checked, so that the application program is ensured to run well on the television system. Therefore, the checking result is more accurate, the compatibility of the application program can be more accurately judged, and then application program crash and function abnormity caused by incompatible application program versions are avoided. The invention further discloses a device for detecting the compatibility of the application program, a television system and a computer readable storage medium.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of intelligent home appliances, for example, to a method and device for detecting application compatibility, a television system, and a computer readable storage medium. BACKGROUND

[0002] When a user installs an application (APK, Android Package Kit) on a television, the user often encounters the problem of incompatible application versions, which leads to the problem of failed application installation or the problem of the application not being able to be normally used after installation.

[0003] In related technologies, some application stores perform simple compatibility checks on applications when the applications are uploaded, for example, checking whether the minimum development kit version (Min SDK Version) is actually lower than the device system version. However, these checks are usually only for mobile phones and tablet devices, and the checks are relatively rough. For a television device that has higher requirements for hardware configurations and remote control adaptation, the checks cannot guarantee the compatibility of the application on the television.

[0004] It should be noted that the information disclosed in the above background section is only used to strengthen the understanding of the background of the present application, and therefore can include information that does not constitute prior art known to those of ordinary skill in the art. SUMMARY

[0005] To provide a basic understanding of some aspects of the disclosed embodiments, a brief summary is given below. The summary is not an overall description of the application, nor is it intended to identify key / important elements or delineate the scope of the embodiments, but to serve as a prelude to the detailed description below.

[0006] The embodiments of the present disclosure provide a method and device for detecting application compatibility, a television system, and a computer readable storage medium, to improve the accuracy of determining application compatibility.

[0007] In some embodiments, the method for detecting application compatibility comprises: obtaining application information and television system information; checking the compatibility of the version of the application and the adaptability to the television system according to the application information and the television system information; and determining the compatibility of the application according to the checking result.

[0008] In some embodiments, the device for detecting application compatibility comprises a processor and a memory storing program instructions, and the processor is configured to execute the method for detecting application compatibility described above when running the program instructions.

[0009] In some embodiments, the television system comprises: a television body; the device for detecting application compatibility as described above is installed on the television body.

[0010] In some embodiments, the computer readable storage medium stores program instructions, which, when executed, perform the method for detecting application compatibility as described above.

[0011] The method and device for detecting application compatibility, the television system, and the computer readable storage medium provided by the embodiments of the present disclosure can achieve the following technical effects:

[0012] The application information and the television system information are obtained, and then the compatibility of the application version and the adaptability of the application version and the television system are checked. Through the checking of the compatibility of the application version, the accuracy of the version compatibility judgment is improved. At the same time, the adaptability of the television system is checked, so as to ensure the good running of the application on the television system. In this way, the checking result is more accurate, and the compatibility of the application can be accurately judged, so as to avoid the application crash and function abnormality caused by the incompatible application version, improve the installation success rate of the application on the television system and the user experience. In addition, it is also helpful to standardize the television application market, improve the application quality, and improve the quality and credibility of the television application store.

[0013] The general description above and the following description below are exemplary and explanatory only and are not intended to be limiting of the present disclosure. BRIEF DESCRIPTION OF DRAWINGS

[0014] One or more embodiments are illustrated by way of example in the figures that are not intended to be limiting of the present disclosure. Like references numerals in the figures indicate like elements, with exemplary embodiments depicted as being combined with one another, in which:

[0015] Figure 1 is a schematic diagram of a method for detecting application compatibility provided by an embodiment of the present disclosure;

[0016] Figure 2 is a schematic diagram of a method for checking the compatibility of the version of the application and the adaptability with the television system according to the application information and the television system information when installing the application provided by an embodiment of the present disclosure;

[0017] Figure 3 is a schematic diagram of a method for checking the minimum development kit version information, interface compatibility information, target kit version information, manifest properties, and permissions of the application according to the application information and the television system information provided by an embodiment of the present disclosure;

[0018] Figure 4 is a schematic diagram of a method for determining the matching degree between the target toolkit version of the application program and the version of the television system according to the semantic relationship between the versions;

[0019] Figure 5 is a schematic diagram of another method for detecting application program compatibility;

[0020] Figure 6 is a schematic diagram of a method for checking the compatibility of the version of the application program and the adaptation to the television system according to the application program information and the television system information when upgrading the application program;

[0021] Figure 7 is a schematic diagram of another method for detecting application program compatibility;

[0022] Figure 8 is a schematic diagram of an apparatus for detecting application program compatibility according to an embodiment of the present disclosure;

[0023] Figure 9 is a schematic diagram of another apparatus for detecting application program compatibility according to an embodiment of the present disclosure;

[0024] Figure 10 is a schematic diagram of a television system according to an embodiment of the present disclosure.

[0025] Reference signs:

[0026] 80, an apparatus for detecting application program compatibility; 81, an acquisition module; 82, a checking module; 83, a determination module;

[0027] 90, an apparatus for detecting application program compatibility; 91, a processor; 92, a memory; 93, a communication interface; 94, a bus;

[0028] 100, a television system. DETAILED DESCRIPTION

[0029] In order to enable persons skilled in the art to better understand the features and technical contents of the embodiments of the present disclosure, the implementation of the embodiments of the present disclosure will be described in detail below with reference to the accompanying drawings, which are only used for reference and do not limit the embodiments of the present disclosure. In the following technical description, in order to facilitate explanation, a plurality of details are provided to provide a full understanding of the disclosed embodiments. However, one or more embodiments can still be implemented without these details. In other cases, in order to simplify the drawings, well-known structures and devices can be simplified.

[0030] The terms "first", "second", and the like in the description and the claims of the present disclosure and the above drawings are used to distinguish similar objects, and do not necessarily have to be used to describe a specific order or sequence. It should be understood that the data thus used can be interchanged under appropriate circumstances, so that the embodiments of the present disclosure described herein can be implemented. In addition, the terms "include" and "have" and any variations thereof are intended to cover non-exclusive inclusion.

[0031] Unless otherwise specified, the term "a plurality of" means two or more.

[0032] In the present disclosure, the character " / " represents a "or" relationship between the objects before and after it. For example, A / B means: A or B.

[0033] The term "and / or" is a description of the association relationship between objects, which means that there can be three relationships. For example, A and / or B means: A or B, or, A and B, the three relationships.

[0034] The term "corresponding" can refer to an association or binding relationship. A and B correspond to each other means that there is an association or binding relationship between A and B.

[0035] In combination Figure 1 As shown, the present disclosure provides a method for detecting application compatibility, comprising:

[0036] S101, the processor acquires application information to be installed and television system information.

[0037] S102, the processor checks the compatibility of the version of the application and the adaptability to the television system according to the application information and the television system information.

[0038] S103, the processor determines the compatibility of the application according to the checking result.

[0039] When installing the application on the television system, the application information to be installed and the television system information are acquired. According to the application information and the television system information, the version compatibility of the application and the adaptability of the application to the television system are checked.

[0040] Optionally, checking the version compatibility of the application comprises: checking the minimum development kit version (Min SDK Version) information, interface compatibility (ABI (Application Binary Interface) compatibility) information, and target kit version (Target SDK Version) information of the application.

[0041] Optionally, the checking of the adaptability of the application to the television system comprises checking the manifest characteristics and the permissions of the application.

[0042] The compatibility of the application is determined according to the checking result. If the checking result indicates that all the information is compatible, it is determined that the application is compatible with the television system. If the checking result indicates that any kind of information is incompatible, it is determined that the application is incompatible with the television system.

[0043] By using the method for detecting the compatibility of the application provided in the embodiment, the application information and the television system information are acquired, and then the compatibility of the application version and the adaptability of the application version to the television system are checked. By checking the compatibility of the application version, the accuracy of the version compatibility judgment is improved. Meanwhile, the adaptability of the television system is checked, and the good running of the application on the television system is ensured. In this way, the checking result is more accurate, and the compatibility of the application can be accurately judged, and then the application crash and the function abnormality caused by the incompatible application version are avoided, and the installation success rate of the application on the television system and the user experience are improved. In addition, the television application market is also helped to be standardized, the application quality is improved, and the quality and the credibility of the television application store are also improved.

[0044] Optionally, the processor is a processor of the television system itself, or a cloud processor.

[0045] With reference to Figure 2 As shown in FIG. 1, S102, the processor checks the compatibility of the version of the application and the adaptability of the application to the television system according to the application information and the television system information, comprising:

[0046] S112, the processor checks the minimum development kit version information, the interface compatibility information, the target kit version information, the manifest characteristics information and the permissions information of the application according to the application information and the television system information.

[0047] S122, the processor outputs the checking result as compatible in the case that all the information is compatible.

[0048] The minimum development kit version information, the interface compatibility information, the target kit version information, the manifest characteristics information and the permissions information of the application are checked according to the application information and the television system information, so as to check whether the version of the application is compatible and whether the application is adapted to the television system. If all the information is compatible, the output checking result is that the application is compatible. If any kind of information is incompatible, the output checking result is that the application is incompatible. In this way, the compatibility of the application can be accurately judged.

[0049] With reference to Figure 3As shown, S112, the processor checks the minimum development kit version information, interface compatibility information, target kit version information, manifest property information and permission information of the application according to the application information and the television system information, including:

[0050] S1121, the processor checks the minimum development kit version information, interface compatibility information, target kit version information, manifest property information and permission information in turn.

[0051] S1122, the processor continues to check the next information in the case of compatible information; until all information is checked, the checking result is output.

[0052] S1123, the processor outputs the checking result as incompatible in the case of incompatible information.

[0053] First, the compatibility of the version of the application is checked, and then the adaptability of the application to the television system is checked. Specifically, the minimum development kit version information, interface compatibility information, target kit version information, manifest property information and permission information are checked in turn. If the first checking information is compatible, the next information is continued to be checked. For example, if the minimum development kit version information is compatible, it is continued to check whether the interface compatibility information is compatible. Until all information is checked, the checking result is output. If the first checking information is incompatible, there is no need to check the next information, and the checking result can be directly output as incompatible. In this way, the result can be quickly output.

[0054] Specifically, the checking of the compatibility of the version of the application includes:

[0055] 1. Minimum development kit version (Min SDK Version) information checking is performed first: this is the most basic compatibility check. If the minimum system version required by the application is higher than the current system version of the television system, it is directly determined that it is incompatible, and there is no need to continue the subsequent check. In this way, the fast failure (Fast Fail) can be achieved, and the meaningless subsequent operation can be avoided.

[0056] 2. Interface (ABI) compatibility information checking is performed second: if the application does not support the central processing unit (CPU) architecture of the television system (such as the television system is arm64-v8a, and the application only contains x86 library), even if the development kit (SDK) version meets the requirement, it cannot be run, and it is determined that the interface compatibility is incompatible. This check is more critical than the target kit (TargetSDK) version information check.

[0057] Note that the ABI support list of the TV system (extracted via Build.SUPPORTED_ABIS) needs to be extracted first and then matched with the lib directory of the application.

[0058] 3. Target SDK Version information check: This is the most "lenient" check, which mainly assesses whether the application has been adapted for a newer TV system. Even if there is a small version gap (e.g., the version gap is within the preset range), it usually does not result in complete non-operation, but may affect compatibility.

[0059] Optionally, if multiple incompatible items exist simultaneously, error reporting is performed in the order of the check sequence (Min SDK error reporting is prioritized, followed by ABI error reporting, and finally Target SDK error reporting), in order to help developers quickly locate the core problem.

[0060] Optionally, the error priority is dynamically adjusted: In certain scenarios (such as automated testing), the ABI check can be fault-tolerant (e.g., downgrade compatibility when a universal armeabi library exists), but the Min SDK must be strictly intercepted.

[0061] In this way, checking in the order of Min SDK→ABI→Target SDK can efficiently filter out fundamental compatibility issues and avoid redundant calculations.

[0062] Optionally, the performance resource requirements of the application can also be matched, and / or the input device adaptability, and / or the display feature adaptation, and / or the sensor dependency can be checked.

[0063] Specifically, the hardware configuration information of the TV system is obtained through the TV system API or the TV system manufacturer interface, including:

[0064] 1. CPU architecture: such as arm64-v8a, armeabi-v7a, x86 (obtained through Build.SUPPORTED_ABIS).

[0065] 2. GPU model: such as Mali-G71, Adreno630 (obtained through GLES20.glGetString(GL_RENDERER)).

[0066] 3. Memory (RAM) size: such as 2GB, 4GB (calculated through ActivityManager.MemoryInfo (system memory information)).

[0067] 4. Storage space: remaining available storage (calculated through StatFs (file system status)).

[0068] 5. Input device support:

[0069] Whether remote control is supported (android.hardware.type.television).

[0070] Whether touch is supported (android.hardware.touchscreen).

[0071] Whether gamepad is supported (android.hardware.gamepad).

[0072] 6. Display characteristics:

[0073] Screen resolution (e.g. 4K, 1080p, obtained via DisplayMetrics).

[0074] HDR (High Dynamic Range) support (e.g. Display.HdrCapabilities).

[0075] 7. Sensor support:

[0076] GPS (android.hardware.location.gps).

[0077] Accelerometer (android.hardware.sensor.accelerometer).

[0078] Then, one or more of the following are checked using the above hardware configuration information: performance resource requirement matching, input device adaptability, display characteristics adaptation, sensor dependency.

[0079] 1. Performance resource requirement matching, including:

[0080] (1) Memory requirement check: parsing the RAM requirement implied by APK's <uses-feature android:name="android.hardware.ram.low" / > or <uses-sdk android:minSdkVersion="21" / >. If the APK requires a minimum of 3GB RAM (e.g. some games), but the TV system only has 2GB, then it is determined to be incompatible.

[0081] (2) GPU capability check: If the APK's Manifest declares GLES 3.2 (e.g. <uses-feature android:glEsVersion="0x00030002" / >) but the TV system only supports GLES 2.0, then it is determined to be incompatible and installation is blocked.

[0082] 2. Input device adaptability, including:

[0083] (1) Remote control adaptation check: If the APK does not declare android.software.leanback and does not provide directional key / DPAD navigation support (by analyzing layout files or dynamically detecting focus logic), then it is determined to be incompatible and a prompt is given that "This application requires touch operation and the TV remote control may not be able to be used."

[0084] (2) Touch screen dependency check: If the APK declares android.hardware.touchscreen and does not provide a backup remote control interaction scheme (e.g. by downgrading with android:required="false"), then it is determined to be incompatible and is marked as a "mobile application".

[0085] 3. Display characteristic adaptation, including:

[0086] Resolution / HDR adaptation: If the APK's Manifest declares 4K or HDR10 (e.g. <uses-feature android:name="android.hardware.screen.ultraHighResolution" / >) but the TV system only supports 1080p, then a prompt is given that "The picture quality may be degraded."

[0087] 4. Sensor dependency check, including:

[0088] GPS / sensor missing handling: If the APK requests android.permission.ACCESS_FINE_LOCATION but the TV system does not have a GPS module, then a prompt is given that "This function is not available."

[0089] If the check shows that the GPU is not sufficient, the RAM is insufficient, etc., then it is determined to be incompatible and is forcibly blocked.

[0090] If the check shows that the resolution is degraded, the sensor is missing but is not required (required="false"), then it is determined to be compatible and a warning prompt is given.

[0091] In this way, compatibility can be judged more accurately, avoiding application lag or crash due to insufficient hardware performance. At the same time, early notification of function limitations (such as "this game requires a 4K TV") can optimize user experience. Future new hardware such as foldable screen TVs and VR (Virtual Reality) peripherals can also be adapted.

[0092] The check of the adaptability of the application to the TV system includes:

[0093] 1. Manifest file check:

[0094] Parse the Manifest file of the application and check whether the following features are declared:

[0095] (1) android.software.leanback: a key identifier for TV system applications. If it is not declared, it may be directly determined as a non-TV system optimized application (such as a mobile phone / tablet application), i.e. incompatible, and subsequent permission checks are unnecessary.

[0096] (2) android.hardware.touchscreen: may indicate that the application is mainly for touch devices (such as mobile phones) and the experience on TV is poor, so the manifest feature information is incompatible at this time and can be intercepted in advance.

[0097] 2. Permission check: Even if the application declares leanback, if it requests permissions that are not supported by the TV system (such as Global Positioning System, GPS; CALL_PHONE, call phone), it may still cause functional abnormalities or audit failure. Therefore, it is necessary to check whether the permissions required by the application are consistent with the functions of the TV system. For example, if the application requires GPS permission, it may not be suitable for TV systems without GPS modules. If the permissions are not consistent, the permission information is incompatible. Permission checks usually require more detailed parsing (such as <uses-permission>and <uses-feature>The required attribute of , which is suitable for confirmation after basic compatibility.

[0098] Optionally, if permission checking is more critical (eg, some television systems strictly restrict specific permissions), the permissions may be checked first.

[0099] Optionally, if the manifest feature check and permission check have no strict dependencies, they can be executed in parallel to improve efficiency, but error feedback still needs to be sorted by priority (e.g., report manifest feature issues first, then permission issues).

[0100] In this way, by checking in the order of Manifest features → permissions, we can quickly exclude obviously incompatible applications and then conduct a detailed analysis of permission compatibility.

[0101] Optionally, at S112, the processor checks the target toolkit version information of the application program, including:

[0102] The processor determines whether a difference between a target toolkit version number of the application program and a version number of the television system is within a preset range.

[0103] If the result of the processing judgment is yes, the target toolkit version information is compatible; if the result of the processing judgment is no, the target toolkit version information is incompatible.

[0104] Determine whether the difference between the target toolkit version of the application and the version of the television system is within a preset range. Optionally, the preset range is set as needed, for example, from 0 to 3 versions. If the difference between the target toolkit version of the application and the version of the television system is less than or equal to 3 versions, the target toolkit version of the application is determined to be compatible. Otherwise, it is determined to be incompatible.

[0105] Optionally, at S112, the processor checks the target toolkit version information of the application program, including:

[0106] The processor determines whether a difference between a target toolkit version number of the application program and a version number of the television system is within a preset range.

[0107] When the difference between the target toolkit version number of the application and the version number of the TV system is within a preset range, the processor determines the degree of match between the target toolkit version of the application and the version of the TV system based on the semantic relationship between the version numbers; if there is no match, the target toolkit version information is incompatible.

[0108] Based on the aforementioned version number difference check, a more complex semantic relationship between version numbers is used to evaluate the matching degree between the Target SDK Version and the TV system version, thereby enhancing the accuracy of the version number difference check results.

[0109] Android version numbers (API Levels) are not just numbers, but also imply significant changes in system functionality. For example:

[0110] Android 12 (API 31): Introduces privacy dashboard, microphone and camera access switches.

[0111] Android 9 (API 28): Forces apps to adapt to notches.

[0112] Android 8 (API 26): Background service restrictions, notification channels.

[0113] Semantic relationship refers to determining whether the Target SDK of the APK may cause compatibility issues due to dependence on specific APIs (application program interfaces) by analyzing the functional differences between version numbers, and even if the version number gap is within the threshold (such as a difference of ≤3 versions), it may also cause incompatibility.

[0114] Therefore, when the difference between the target SDK version number of the application and the version number of the television system is within the preset range, it is further determined whether the target SDK version of the application matches the version of the television system. If both match, it is determined that the target SDK version information is compatible. Otherwise, it is determined to be incompatible.

[0115] Optionally, S112, the processor checks the target SDK version information of the application, including:

[0116] The processor determines whether the difference between the target SDK version number of the application and the version number of the television system is within the preset range.

[0117] In the case where the difference between the target SDK version number of the application and the version number of the television system is within the preset range, the processor uses dynamic code behavior analysis to determine the matching degree of the target SDK version of the application and the version of the television system; if not matching, the target SDK version information is incompatible.

[0118] On the basis of the foregoing version number difference check, the precision of the version number difference check result is enhanced by using dynamic code behavior analysis.

[0119] Therefore, when the difference between the target SDK version number of the application and the version number of the television system is within the preset range, it is further determined whether the target SDK version of the application matches the version of the television system. If both match, it is determined that the target SDK version information is compatible. Otherwise, it is determined to be incompatible. In this way, the code logic is directly verified rather than relying on rule inference, so that the judgment result is more accurate.

[0120] In combination with Figure 4 As shown, the processor determines the matching degree of the target tool package version of the application program and the version of the television system according to the semantic relationship between the versions, including:

[0121] S401, the processor acquires the target tool package version of the application program and the version of the television system.

[0122] S402, the processor traverses the function changes of the intermediate versions of the target tool package of the application program.

[0123] S403, if the target tool package version of the application program is higher than the version of the television system, and there is a mandatory behavior change in the intermediate version of the target tool package of the application program, the processor determines that the result is not matched.

[0124] First, a version semantic rule library is constructed in advance, and a function change mapping table of key versions is established. Optionally, the version semantic rule library can be extracted through official documents, including:

[0125]

[0126] Then, the Target SDK version (such as API 31) of the application program is extracted, and the television system version (such as API 28) is acquired. The function changes of the intermediate versions of the target tool package of the application program (API 29-31) are traversed. If the Target SDK of the application program is higher than the version of the television system, and there is a mandatory behavior change (such as privacy restriction, background policy, etc.) in the middle, it is determined that the target tool package version of the application program and the version of the television system are not matched, and the application program is marked as "high-risk incompatible".

[0127] For example, the Target SDK of the APK is 31, and the API of the television system is 28. It is found through checking that API 31 requires dynamic location permission, and the APK does not implement permission request logic in the code (through static analysis or behavior detection). At this time, even if the version difference between the two is less than or equal to 3 versions, it is still determined to be incompatible.

[0128] The example scenario is as follows:

[0129]

[0130] Optionally, the matching degree of the target tool package version of the application program and the version of the television system is determined by using dynamic code behavior analysis, including:

[0131] Static scanning: check whether the APK calls a specific API (such as BluetoothAdapter#getBluetoothLeScanner of Android 12).

[0132] Dynamic testing: Run the APK in the simulator to verify that it handles version differences correctly (such as fallback logic that rejects older API versions).

[0133] By checking an application's target toolkit version information through semantic relationships and dynamic code analysis, we can accurately block incompatible applications and avoid misjudgments caused by relying solely on version number differences (for example, the impact of a change from API 26 to 28 is far greater than that from API 30 to 31). We can also integrate updates to the cloud-based rule library to adapt to semantic changes after the release of new Android versions, achieving dynamic adaptation.

[0134] Combine Figure 5 As shown, the embodiment of the present disclosure provides another method for detecting application compatibility, including:

[0135] S104: The processor obtains information of the application to be installed, television system information, and an application compatibility database.

[0136] S105: The processor queries the application compatibility database for the application compatibility.

[0137] S106: If the query result indicates the compatibility information of the application and the query result is reliable, the processor outputs the compatibility query result.

[0138] S107: When the query result indicates that there is no compatibility information of the application program, or the query result is unreliable, the processor executes S102.

[0139] S102: The processor checks the compatibility of the application version and its adaptability to the television system based on the application information and the television system information.

[0140] S103: The processor determines the compatibility of the application program according to the checking result.

[0141] A cloud application compatibility database is pre-established to store known compatible and incompatible (through historical detection records or manual marking) APK information for the TV system to query.

[0142] First, information about the application to be installed, information about the television system, and an application compatibility database are obtained. The application compatibility database is then queried for compatibility with the application to be installed. If the database contains compatibility data for the application and the query result is reliable, a query result indicating whether the application is compatible or incompatible is output. If the database contains no compatibility data for the application, or the query result is unreliable, S102 is executed to perform a local check, further checking the application version compatibility and compatibility with the television system to determine whether the application is compatible.

[0143] Optionally, the reliability of the query results needs to meet the reliability and real-time nature of the data. Data reliability requires that the compatibility conclusions recorded in the cloud application compatibility database are based on the same software and hardware environment as the current TV system (such as the same OS version, CPU architecture, resolution, etc.). Real-time requirements require that if the APK is updated (such as version upgrades, Target SDK changes), the cloud application compatibility database must be updated synchronously, otherwise it may lead to misjudgment. If the reliability of the query results does not meet the reliability and / or real-time nature, it will cause the following problems:

[0144]

[0145]

[0146] Prioritizing the cloud-based application compatibility database, the system generates a unique identifier using the APK's package name, version number, and signature hash. If a match is found and the conclusion is reliable (e.g., the same environment has been tested within the last three days), the system directly determines compatibility / incompatibility, allowing for subsequent installation or blocking of the application. If a match is not found or the data is out of date, the system proceeds to the local check process (min SDK, ABI, manifest, etc.). The local test results are uploaded to the cloud for reference by other devices.

[0147] Optionally, the trustworthiness of the data recorded in the cloud is dynamically adjusted based on the following factors:

[0148] Data freshness: Conclusions that exceed the set time limit will be downgraded. Optionally, the set time limit can be 7 days.

[0149] Environment matching: When the TV system model, OS version, and ABI are exactly the same, full trust is given.

[0150] Manual annotation priority: The conclusion of manual review has a higher weight than that of automated detection.

[0151] This approach combines the cloud-based application compatibility database with local checks to form a hierarchical decision logic, reducing duplicate calculations for known APKs, accelerating installation, and ultimately improving work efficiency. Local test results feed back into the cloud-based application compatibility database, forming a self-optimizing compatibility knowledge base and achieving a closed data loop. Based on a cloud-local collaborative compatibility decision-making method, data sources are dynamically selected (cloud-first or local mandatory). Furthermore, the credibility of cloud data can be quantified through data freshness and environmental compatibility.

[0152] Combine Figure 6 As shown, in S102, the processor checks the compatibility of the application version and the adaptability with the television system based on the application information and the television system information, including:

[0153] S132, the processor determines the changed items in the minimum development kit version information, interface compatibility information, and manifest feature information of the new version of the application program in the case that the television system exists an old version of the application program.

[0154] S142, the processor outputs the check result as compatible in the case that there is no changed item in the new version of the application program or the television system supports the changed item.

[0155] S152, the processor outputs the check result as incompatible in the case that the television system does not support the changed item.

[0156] In the checking of the compatibility of the version of the application program and the adaptability to the television system, it is inquired whether the television system is installed with the old version of the application program. If the old version is installed, the installation of the application program is actually APK upgrade.

[0157] When the APK is upgraded, the possible problems and the corresponding solutions are as follows:

[0158]

[0159] Therefore, if it is determined that the APK is upgraded, the new APK information and the old APK information are acquired. The APK compatibility record in the cloud application program compatibility database can be inquired preferentially. If the record is hit (the cloud application program compatibility database has the APK compatibility data information) and the inquiry result is reliable, the local checking is skipped. If the record is not hit or the inquiry result is not reliable, the local inquiry is entered:

[0160] The difference between the new APK and the old APK in the Min SDK Version is compared: whether the Min SDK is improved, whether the supported ABI list is changed, whether the declared features or permissions in the Manifest are added or modified, that is, whether the Min SDK, the ABI, and the Manifest have changed items. If no changed item is detected, it is determined that the compatibility is compatible. If a changed item is detected, it is further judged whether the television system supports the changed item. If the changed item is supported, it is determined that the compatibility is compatible. If the changed item is not supported, it is determined that the compatibility is incompatible. Then, the detection result is uploaded to the cloud application program compatibility database. For example:

[0161]

[0162] In this way, the "upgrade deadlock" (such as the television system version is lower than the requirement of the new APK but the user has uninstalled the old version) can be avoided, the repeated checking (such as the ABI checking of the old version has been passed and need not be repeatedly executed) can be reduced, and the compatibility change before and after the upgrade (such as "after the upgrade, your device will not be supported") can be explicitly prompted.

[0163] Optionally, if it is a pure version number upgrade, for example, if the new and old APKs only change versionCode and the Manifest is not modified, the above checks are skipped.

[0164] In combination Figure 7 As shown in the above embodiments, the present disclosure provides another method for detecting application compatibility, comprising:

[0165] S101, the processor acquires application information to be installed and television system information.

[0166] S102, the processor checks the compatibility of the version of the application and the adaptability to the television system according to the application information and the television system information.

[0167] S103, the processor determines the compatibility of the application according to the checking result.

[0168] S108, the processor installs the application in the case of application compatibility.

[0169] S109, the processor intercepts the application in the case of application incompatibility, and / or intercepts the application and prompts the incompatibility reason.

[0170] After determining the compatibility of the application, if the application is compatible, the application is installed. If the application is incompatible, the application is intercepted. Alternatively, while intercepting the application, the specific incompatible reason is prompted, for example, "interface incompatible", "permission incompatible" and the like are prompted so as to enable the user to understand the detailed reason, thereby improving the user experience.

[0171] In combination Figure 8 As shown in the above embodiments, the present disclosure provides an apparatus 80 for detecting application compatibility, comprising: an acquisition module 81, a checking module 82 and a determination module 83. The acquisition module 81 is configured to acquire application information to be installed and television system information. The checking module 82 is configured to check the compatibility of the version of the application and the adaptability to the television system according to the application information and the television system information. The determination module 83 is configured to determine the compatibility of the application according to the checking result.

[0172] The device 90 for detecting application compatibility provided by the embodiment of the present disclosure is used to acquire application information to be installed and television system information, and then check the compatibility of the application version and the adaptability of the application version to the television system. Through the check of the compatibility of the application version, the accuracy of the version compatibility judgment is improved. Meanwhile, the adaptability of the television system is checked, so as to ensure the good running of the application on the television system. In this way, the check result is more accurate, and the compatibility of the application can be more accurately judged, so as to avoid the application crash and function anomaly caused by the incompatible application version, and improve the installation success rate of the application on the television system and the user experience. In addition, it is also helpful to standardize the television application market, improve the application quality, and improve the quality and credibility of the television application store.

[0173] In combination Figure 9 The device 90 for detecting application compatibility provided by the embodiment of the present disclosure is used to acquire application information to be installed and television system information, and then check the compatibility of the application version and the adaptability of the application version to the television system. Through the check of the compatibility of the application version, the accuracy of the version compatibility judgment is improved. Meanwhile, the adaptability of the television system is checked, so as to ensure the good running of the application on the television system. In this way, the check result is more accurate, and the compatibility of the application can be more accurately judged, so as to avoid the application crash and function anomaly caused by the incompatible application version, and improve the installation success rate of the application on the television system and the user experience. In addition, it is also helpful to standardize the television application market, improve the application quality, and improve the quality and credibility of the television application store.

[0174] In addition, the logic instructions in the memory 92 described above can be implemented in the form of a software function unit and sold or used as an independent product when used, and can be stored in a computer readable storage medium.

[0175] The memory 92 as a computer readable storage medium can be used to store software programs, computer executable programs, such as program instructions / modules corresponding to the method in the embodiment of the present disclosure. The processor 91 executes the program instructions / modules stored in the memory 92, so as to perform function application and data processing, that is, to implement the method for detecting application compatibility in the above embodiment.

[0176] The memory 92 can include a storage program area and a storage data area, wherein the storage program area can store an operating system and at least one application program required by a function; the storage data area can store data created according to the use of the terminal device, etc. In addition, the memory 92 can include a high-speed random access memory, and can also include a non-volatile memory.

[0177] In combination Figure 10 As shown, the embodiment of the present disclosure provides a television system 100, comprising: a television body, and the above-mentioned device 80 (90) for detecting application compatibility. The device 80 (90) for detecting application compatibility is installed on the television body. The installation relationship expressed herein is not limited to being placed inside the television body, but also includes installation connection with other components of the television system 100, including but not limited to physical connection, electrical connection or signal transmission connection, etc. Those skilled in the art can understand that the device 80 (90) for detecting application compatibility can be adapted to a feasible product body, thereby realizing other feasible embodiments.

[0178] The embodiment of the present disclosure provides a computer readable storage medium, which stores computer executable instructions, and the computer executable instructions are configured to execute the above-mentioned method for detecting application compatibility.

[0179] The technical solution of the embodiment of the present disclosure can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes one or more instructions to make a computer device (which can be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in the embodiment of the present disclosure. The aforementioned storage medium can be a non-transitory storage medium, such as a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, etc. various media that can store program codes.

[0180] The above description and the accompanying drawings fully illustrate the embodiments of the present disclosure to enable those skilled in the art to practice them. Other embodiments may include structural, logical, electrical, process and other changes. The embodiments represent only possible variations. Unless expressly required, individual components and functions are optional, and the order of operations may vary. Parts and features of some embodiments may be included in or replace parts and features of other embodiments. Moreover, the terms used in this application are only used to describe the embodiments and are not used to limit the claims. As used in the description of the embodiments and claims, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to also include the plural forms. Similarly, the term "and / or" as used in this application refers to any and all possible combinations of one or more associated listings. In addition, when used in this application, the term "comprise" and its variations "comprises" and / or comprising refer to the presence of stated features, wholes, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or groups thereof. In the absence of further restrictions, an element defined by the sentence "comprising a..." does not exclude the presence of other identical elements in the process, method or device that includes the element. In this article, each embodiment may focus on the differences from other embodiments, and the same and similar parts between the various embodiments can be referenced to each other. For the methods, products, etc. disclosed in the embodiments, if they correspond to the method part disclosed in the embodiments, then the relevant parts can be found in the description of the method part.

[0181] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software may depend on the specific application and design constraints of the technical solution. The technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the embodiments of the present disclosure. The technicians will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0182] In the embodiments disclosed herein, the disclosed methods, products (including but not limited to apparatuses, devices, etc.), can be implemented in other manners. For example, the described apparatus embodiments can be implemented only in a form of a logical function, and can be implemented by using a manner such as software (for example, application program) or the like. In some embodiments, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed coupling or direct coupling or indirect coupling between different units, or the coupling or direct coupling or indirect coupling between the displayed or discussed communication connections can be in a form of electrical, mechanical or other forms.

[0183] The flowcharts and block diagrams in the drawings show the possible implementation architectures, functions and operations of the system, method and computer program product according to the embodiments of the present disclosure. In this regard, each block in the flowcharts or block diagrams can represent a module, a program segment or a part of code containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions noted in the blocks can occur in an order different from that noted in the drawings. For example, two consecutive blocks can actually be executed substantially in parallel, and sometimes they can be executed in reverse order, depending on the functions involved. In the descriptions corresponding to the flowcharts and block diagrams in the drawings, the operations or steps corresponding to different blocks can also occur in an order different from that disclosed in the descriptions, and sometimes there is no specific order between different operations or steps. For example, two consecutive operations or steps can actually be executed substantially in parallel, and sometimes they can be executed in reverse order, depending on the functions involved. Each block in the block diagrams and / or flowcharts, and the combination of blocks in the block diagrams and / or flowcharts, can be implemented by a dedicated hardware-based system that performs the specified functions or actions, or can be implemented by a combination of dedicated hardware and computer instructions.

Claims

1. A method for detecting application compatibility, characterized by, The application comprises the following steps: acquiring application information and television system information to be installed; checking compatibility of the version of the application and adaptation to the television system according to the application information and the television system information; determining compatibility of the application according to the checking result.

2. The method of claim 1, wherein, The step of checking compatibility of the version of the application and adaptation to the television system according to the application information and the television system information comprises the following steps: checking minimum development kit version information, interface compatibility information, target kit version information, manifest characteristics and permissions of the application according to the application information and the television system information; outputting a checking result as compatible if all the information is compatible.

3. The method of claim 2, wherein, The step of checking minimum development kit version information, interface compatibility information, target kit version information, manifest characteristics and permissions of the application according to the application information and the television system information comprises the following steps: checking the minimum development kit version information, the interface compatibility information, the target kit version information, the manifest characteristics information and the permission information in sequence; continuing to check the next information if the checked information is compatible; and outputting a checking result after checking all the information; outputting a checking result as incompatible if the checked information is incompatible.

4. The method of claim 2, wherein, The step of checking the target kit version information of the application comprises the following steps: judging whether a difference between the target kit version number of the application and the version number of the television system is within a preset range; if yes, the target kit version information is compatible; and if no, the target kit version information is incompatible.

5. The method of claim 4, wherein, The step of checking the target kit version information of the application further comprises the following steps: judging a matching degree of the target kit version of the application and the version of the television system according to a semantic relationship between the version numbers if the difference between the target kit version number of the application and the version number of the television system is within the preset range; if matched, the target kit version information is compatible; and if not matched, the target kit version information is incompatible.

6. The method of claim 4, wherein, The step of checking the target kit version information of the application further comprises the following steps: judging a matching degree of the target kit version of the application and the version of the television system by dynamic code behavior analysis if the difference between the target kit version number of the application and the version number of the television system is within the preset range; if matched, the target kit version information is compatible; and if not matched, the target kit version information is incompatible.

7. The method of claim 4, wherein, The step of judging a matching degree of the target kit version of the application and the version of the television system according to a semantic relationship between the version numbers comprises the following steps: acquiring the target kit version of the application and the version of the television system; traversing function changes of the target kit intermediate version of the application; If the target SDK version of the application is higher than the version of the television system, and there is a mandatory behavior change in the target SDK of the application, the result of the judgment is mismatch.

8. The method according to any one of claims 1 to 7, characterized in that, Before the checking of the compatibility of the version of the application and the adaptation to the television system according to the application information and the television system information, the method further comprises: acquiring an application compatibility database; inquiring the compatibility of the application in the application compatibility database; in the case that the inquiring result represents that the application is incompatible, and the inquiring result is reliable, determining that the application is incompatible; in the case that the inquiring result represents that the application is compatible, and / or, the inquiring result is unreliable, entering the checking process of the compatibility of the version of the application and the adaptation to the television system.

9. The method according to any one of claims 1 to 7, characterized in that, The checking of the compatibility of the version of the application and the adaptation to the television system according to the application information and the television system information, the method comprises: in the case that the television system has an old version of the application, determining the changed items in the minimum development SDK version information, the interface compatibility information, and the manifest feature information of the new version of the application; in the case that there is no changed item in the new version of the application, or the television system supports the changed item, outputting the checking result as compatible; in the case that the television system does not support the changed item, outputting the checking result as incompatible.

10. The method according to any one of claims 1 to 7, characterized in that, After the determining of the compatibility of the application according to the checking result, the method further comprises: in the case that the application is compatible, installing the application; in the case that the application is incompatible, intercepting the application, and / or, intercepting the application and prompting the incompatible reason.

11. An apparatus for detecting application compatibility, comprising a processor and a memory having stored therein program instructions, the apparatus characterized by: The processor is configured to execute the method for detecting application compatibility as claimed in any one of claims 1 to 10 when running the program instructions.

12. A television system, characterized by comprises: a television body; the device for detecting application compatibility as claimed in claim 11 is installed in the television body.

13. A computer-readable storage medium storing program instructions, characterized in that: The program instructions are used to make the computer execute the method for detecting application compatibility as claimed in any one of claims 1 to 10 when running.