CN112379874A - Cross-platform application software development method - Google Patents

Cross-platform application software development method Download PDF

Info

Publication number
CN112379874A
CN112379874A CN202011340194.1A CN202011340194A CN112379874A CN 112379874 A CN112379874 A CN 112379874A CN 202011340194 A CN202011340194 A CN 202011340194A CN 112379874 A CN112379874 A CN 112379874A
Authority
CN
China
Prior art keywords
development
platform
application software
cross
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011340194.1A
Other languages
Chinese (zh)
Inventor
俞鑫
周翔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nantong Yirong Network Technology Co ltd
Original Assignee
Nantong Yirong Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nantong Yirong Network Technology Co ltd filed Critical Nantong Yirong Network Technology Co ltd
Priority to CN202011340194.1A priority Critical patent/CN112379874A/en
Publication of CN112379874A publication Critical patent/CN112379874A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Abstract

The invention discloses a cross-platform application software development method, which is characterized in that a corresponding main body is designed by calling a corresponding cross-platform development language based on acquired development content resources and a corresponding script template; creating a virtual machine by using the cross-platform development language, and performing type mapping to generate a bridging code; judging whether the loaded dynamic code is safe or not by using the virtual machine, calling a local interface by using a C language in the cross-platform development language, and calling the safe dynamic code by using the bridging code; the generated application software is tested on a plurality of test platforms respectively, and the application software passing the test is accessed among a plurality of development platforms, so that the development efficiency is improved.

Description

Cross-platform application software development method
Technical Field
The invention relates to the technical field of computers, in particular to a cross-platform application software development method.
Background
At present, in an application software development method based on a mobile platform, for example, software development is performed on an Android platform, the following main software development methods are available: 1, a pure Android Java development method; 2, an NDK development kit developed by combining the Android Java language and the Android bottom layer C/C + + language is jointly developed; 3, the game is developed based on the existing cross-platform development language As3(Adobe, development language of web flash), C # (microsoft, Net series), Unity3d (graceful association, mainly used for cross-platform 3d games), and the like.
Typically, developers write code using the development environment of the above language on a platform (e.g., windows) familiar to themselves, and then connect to a real device through an Android virtual machine or USB for debugging. For a complete application program, multiple development platforms need to be accessed for cooperation. The software development platform of the existing server side is usually that a client side logs in to access a corresponding development platform through an account number and a password, different account numbers and passwords must be input under different platforms one by one to access different software development platforms, so that great inconvenience is brought to a client side user to edit a complete application program, meanwhile, due to the fact that debugging needs to occur on analog equipment or external Android mobile equipment, the performance of the analog equipment or the Android equipment is often low, a large amount of development time is wasted on hardware connection and network waiting time which are repeatedly spent, and therefore the development cost of an application software development method is high, and the development efficiency is low.
Disclosure of Invention
The invention aims to provide a cross-platform application software development method, which improves the development efficiency.
In order to achieve the purpose, the invention provides a cross-platform application software development method, which comprises the following steps:
calling a corresponding main body designed by a corresponding cross-platform development language based on the acquired development content resources and the corresponding script template;
creating a virtual machine by using the cross-platform development language, and performing type mapping to generate a bridging code;
judging whether the loaded dynamic code is safe or not by using the virtual machine, and calling the safe dynamic code by using the bridging code;
and testing the generated application software, and accessing the application software passing the test among a plurality of development platforms.
The method for judging whether the loaded dynamic code is safe or not by using the virtual machine and calling the safe dynamic code by using the bridge code comprises the following steps:
judging whether the loaded dynamic code is safe or not by using the virtual machine, and limiting the authority of a third party corresponding to the dynamic code;
and calling a local interface by using the C language in the cross-platform development language, and calling the safe dynamic code by using the bridge code.
Calling a local interface by using a C language in the cross-platform development language, and calling the safe dynamic code by using the bridge code, wherein the calling comprises the following steps:
and selecting a set security sandbox according to the local interface, and placing the secure dynamic code into the security sandbox by using the bridge code.
The method for testing the generated application software and accessing the application software passing the test among a plurality of development platforms comprises the following steps:
respectively copying the generated corresponding application software on a plurality of test platforms for testing through the bridging codes;
and accessing the application software passing the test among a plurality of development platforms to complete software development.
The method comprises the following steps of accessing the application software passing the test among a plurality of development platforms to complete software development, wherein the method comprises the following steps:
acquiring a first identification code and first effective information of the third party accessing the first software development platform, and judging whether a request for accessing the second software development platform is received within the effective time of the first effective information;
and acquiring a corresponding second identification code and second effective information according to the request, and judging whether the second effective information is the same as the first effective information or not until all the development platforms finish accessing.
Acquiring a corresponding second identification code and second valid information according to the request, and judging whether the second valid information is the same as the first valid information until all the development platforms finish accessing, including:
if the second effective information is the same as the first effective information, accessing the second software development platform until all the development platforms are accessed;
and if the second effective information is different from the first effective information, the second software development platform is not accessed, and then the next request is received and judged.
The invention relates to a cross-platform application software development method, which is characterized in that a corresponding main body is designed by calling a corresponding cross-platform development language based on acquired development content resources and a corresponding script template; creating a virtual machine by using the cross-platform development language, and performing type mapping to generate a bridging code; judging whether the loaded dynamic code is safe or not by using the virtual machine, calling a local interface by using a C language in the cross-platform development language, and calling the safe dynamic code by using the bridging code; the generated application software is tested on a plurality of test platforms respectively, and the application software passing the test is accessed among a plurality of development platforms, so that the development efficiency is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
FIG. 1 is a schematic step diagram of a cross-platform application software development method provided by the present invention.
FIG. 2 is a flow chart of software platform access provided by the present invention.
Detailed Description
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like or similar reference numerals refer to the same or similar elements or elements having the same or similar function throughout. The embodiments described below with reference to the drawings are illustrative and intended to be illustrative of the invention and are not to be construed as limiting the invention.
In the description of the present invention, "a plurality" means two or more unless specifically defined otherwise.
Referring to fig. 1, the present invention provides a method for developing cross-platform application software, comprising the following steps:
and S101, calling corresponding main bodies of the cross-platform development language design based on the acquired development content resources and the corresponding script templates.
Specifically, development content resources such as pictures or characters required by user development are obtained first, and the development content resources are screened and feature extracted to obtain the most accurate development requirement. And then selecting a corresponding script template, and designing a main part of the application software by using a cross-platform development language under a windows platform, wherein the operation of the main part is unrelated to the Android platform.
The method is characterized in that a cross-platform development language is an As3 scripting language of Adobe company, cross-platform development is realized through an Adobe Air development kit, a main part in application software is independent during application development, the main part runs independently of Android, a windows platform is used for developing the main part, the development of the main part of the software is completed on the windows platform with high efficiency, and the performance of the windows system is several times that of Android mobile equipment without hardware connection and network waiting time, so that the development efficiency is very high.
S102, creating a virtual machine by utilizing the cross-platform development language, carrying out type mapping and generating a bridging code.
Specifically, a cross-platform development language is used to create a virtual machine that does not use platform dependent functions; because the cross-platform development language realizes Virtual Machines (VMs) with the same action behaviors aiming at different platforms, under the condition that the program codes of the VMs are consistent, no matter the VMs are executed on windows or Android systems, the realized effects are completely consistent as long as the functions depending on the platforms are not called. Therefore, the display mode of the software on the windows can be consistent with that on the Android platform.
Meanwhile, Android-related parts (for example, hardware information such as wifi addresses and PPI information of the Android devices) are still programmed in the original mode.
Dynamic code loading and type reflection are carried out by utilizing a cross-platform development language, and a bridged code is generated; after the two ends of the application software are developed, the high-level functions of the cross-platform development language are utilized: dynamic code loading and type reflection, and a section of bridged code is realized.
Because the module developed in windows is dynamically loaded on the Android platform, and the default operating environment is the position of the application for the application on the Android, when the module loaded in by dynamic code needs to load other resource files again, the relative path of the module loaded in by dynamic code should be based on the relative path of the application. The problem of how to automatically replace paths when the code developed on windows runs on Android is solved by directly modifying the loaded environment variables when the bridge code is dynamically loaded. Thus, when the program is developed in the windows, the program uses the path during development, and after the program is loaded in the new environment, the path in the new environment is automatically used.
S103, judging whether the loaded dynamic code is safe or not by using the virtual machine, and calling the safe dynamic code by using the bridge code.
Specifically, since when adobe Air is used for development, a Virtual Machine (VM) will determine whether the dynamically loaded code is secure, and will make access restrictions to the loaded third party, the bridged code needs to place the dynamic code into a secure sandbox identified by Air, and this step is implemented by the extension of C language provided by adobe Air, that is: calling a local interface through C language to find the position of the safe sandbox, and then placing a loaded dynamic code into the safe sandbox; and after the dynamic code is loaded successfully, the code has the same authority as that of the calling application, so that the functions developed on the windows platform can be used seamlessly.
And S104, testing the generated application software, and accessing the application software passing the test among a plurality of development platforms.
Specifically, through bridged codes, application software is developed under a high-efficiency and quick windows desktop system, after the development is finished, the generated codes can be directly tested and used only by being copied to sdcard of Android equipment, and the whole process is rapid and convenient.
Accessing the application software which passes the test among a plurality of development platforms, as shown in fig. 2, firstly acquiring a first identification code of the third party which is judged to be safe by using the virtual machine and first effective information of the accessed corresponding first software development platform, judging whether the third party receives a request for accessing a second software development platform within the effective time of the first effective information, if the request is not received, normally accessing the first software development platform, and after the access is completed, finishing the development of the application software; if the request is received, acquiring a second identification code corresponding to the second software development platform corresponding to the request and corresponding second effective information, then judging whether the second effective information is the same as the first effective information, if the second effective information is the same as the first effective information, judging whether the second identification code is safe, and if the second identification code is safe, accessing the second software development platform until all the development platforms are accessed; and if the second effective information is different from the first effective information, the second software development platform is not accessed, and then the next request is received and judged. When a preset time within the effective time of the effective information generated when the first software development platform is accessed arrives, a prompt message for prompting whether the legal client needs to access other software development platforms is generated, so that the client can select the prompt message by himself, the waste of time for accessing different software development platforms only by inputting different account numbers and passwords under different platforms one by one is reduced, and the development efficiency is improved.
After the application software is developed, the application software is stored or debugged, and the like, so that the application software meets the requirement of a view field and further meets the requirement of a customer.
The invention relates to a cross-platform application software development method, which is characterized in that a corresponding main body is designed by calling a corresponding cross-platform development language based on acquired development content resources and a corresponding script template; creating a virtual machine by using the cross-platform development language, and performing type mapping to generate a bridging code; judging whether the loaded dynamic code is safe or not by using the virtual machine, calling a local interface by using a C language in the cross-platform development language, and calling the safe dynamic code by using the bridging code; the generated application software is tested on a plurality of test platforms respectively, and the application software passing the test is accessed among a plurality of development platforms, so that the development efficiency is improved.
While the invention has been described with reference to a preferred embodiment, it will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the invention as defined by the appended claims.

Claims (6)

1. A cross-platform application software development method is characterized by comprising the following steps:
calling a corresponding main body designed by a corresponding cross-platform development language based on the acquired development content resources and the corresponding script template;
creating a virtual machine by using the cross-platform development language, and performing type mapping to generate a bridging code;
judging whether the loaded dynamic code is safe or not by using the virtual machine, and calling the safe dynamic code by using the bridging code;
and testing the generated application software, and accessing the application software passing the test among a plurality of development platforms.
2. The method for developing cross-platform application software according to claim 1, wherein the determining whether the loaded dynamic code is secure by using the virtual machine and calling the secure dynamic code by using the bridge code includes:
judging whether the loaded dynamic code is safe or not by using the virtual machine, and limiting the authority of a third party corresponding to the dynamic code;
and calling a local interface by using the C language in the cross-platform development language, and calling the safe dynamic code by using the bridge code.
3. The method for developing cross-platform application software according to claim 2, wherein calling a local interface by using a C language in the cross-platform development language and calling the secure dynamic code by using the bridge code comprises:
and selecting a set security sandbox according to the local interface, and placing the secure dynamic code into the security sandbox by using the bridge code.
4. The method for developing the cross-platform application software according to claim 3, wherein the step of testing the generated application software and accessing the application software passing the test among a plurality of development platforms comprises the steps of:
respectively copying the generated corresponding application software on a plurality of test platforms for testing through the bridging codes;
and accessing the application software passing the test among a plurality of development platforms to complete software development.
5. The method for developing cross-platform application software according to claim 2, wherein the application software passing the test is accessed among a plurality of development platforms to complete software development, and the method comprises the following steps:
acquiring a first identification code and first effective information of the third party accessing the first software development platform, and judging whether a request for accessing the second software development platform is received within the effective time of the first effective information;
and acquiring a corresponding second identification code and second effective information according to the request, and judging whether the second effective information is the same as the first effective information or not until all the development platforms finish accessing.
6. The method for developing cross-platform application software according to claim 5, wherein the step of obtaining the corresponding second identification code and second valid information according to the request, and determining whether the second valid information is the same as the first valid information until all the development platforms have completed access comprises:
if the second effective information is the same as the first effective information, accessing the second software development platform until all the development platforms are accessed;
and if the second effective information is different from the first effective information, the second software development platform is not accessed, and then the next request is received and judged.
CN202011340194.1A 2020-11-25 2020-11-25 Cross-platform application software development method Pending CN112379874A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011340194.1A CN112379874A (en) 2020-11-25 2020-11-25 Cross-platform application software development method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011340194.1A CN112379874A (en) 2020-11-25 2020-11-25 Cross-platform application software development method

Publications (1)

Publication Number Publication Date
CN112379874A true CN112379874A (en) 2021-02-19

Family

ID=74588519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011340194.1A Pending CN112379874A (en) 2020-11-25 2020-11-25 Cross-platform application software development method

Country Status (1)

Country Link
CN (1) CN112379874A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103179089A (en) * 2011-12-21 2013-06-26 富泰华工业(深圳)有限公司 System and method for identity authentication for accessing of different software development platforms
US20140289699A1 (en) * 2009-08-18 2014-09-25 Adobe Systems Incorporated Methods and Systems for Data Service Development
CN105022620A (en) * 2014-04-28 2015-11-04 上海未达数码科技有限公司 Application software development method based on mobile platform
CN109101269A (en) * 2018-08-30 2018-12-28 长沙软工信息科技有限公司 A kind of Software Delivery method and device, electronic equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140289699A1 (en) * 2009-08-18 2014-09-25 Adobe Systems Incorporated Methods and Systems for Data Service Development
CN103179089A (en) * 2011-12-21 2013-06-26 富泰华工业(深圳)有限公司 System and method for identity authentication for accessing of different software development platforms
CN105022620A (en) * 2014-04-28 2015-11-04 上海未达数码科技有限公司 Application software development method based on mobile platform
CN109101269A (en) * 2018-08-30 2018-12-28 长沙软工信息科技有限公司 A kind of Software Delivery method and device, electronic equipment

Similar Documents

Publication Publication Date Title
JP4950454B2 (en) Stack hierarchy for test automation
US5790856A (en) Methods, apparatus, and data structures for data driven computer patches and static analysis of same
CN105324750A (en) Development-environment system, development-environment device, and development-environment provision method and program
CN105814539A (en) Method and apparatus for code virtualization and remote process call generation
CN112685410B (en) Business rule checking method, device, computer equipment and storage medium
US10917456B2 (en) Application management in an application deployment pipeline
US6901583B1 (en) Method for testing of a software emulator while executing the software emulator on a target machine architecture
US8959485B2 (en) Security protection domain-based testing framework
CN113268684A (en) Data processing method, device, terminal equipment and storage medium
CN112231206A (en) Script editing method for application program test, computer readable storage medium and test platform
US20230297348A1 (en) Method for operating second system application on first system, terminal device and storage medium
CN116166525A (en) Method and device for generating test script
CN110955409A (en) Method and device for creating resources on cloud platform
US20080222627A1 (en) Static extensibility models with dynamic languages and scripts
CN112650689A (en) Test method, test device, electronic equipment and storage medium
CN112559352A (en) Interface test method, device, equipment and storage medium
CN116841543A (en) Development method for dynamically generating cross-platform multi-terminal application based on Flutter
CN112379874A (en) Cross-platform application software development method
CN108628620B (en) POS application development implementation method and device, computer equipment and storage medium
CN113157429A (en) SAAS cloud service implementation method and system
CN113515452A (en) Automatic test method and system for application, electronic equipment and storage medium
CN114691496A (en) Unit testing method, unit testing device, computing equipment and medium
Kohan et al. Java Pathfinder on Android Devices
CN113010179A (en) Software storage method under storage architecture
CN111078527A (en) Auxiliary system and method for pressure testing of server

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination