CN105511868B - A method of being packaged iOS application program - Google Patents

A method of being packaged iOS application program Download PDF

Info

Publication number
CN105511868B
CN105511868B CN201510863965.8A CN201510863965A CN105511868B CN 105511868 B CN105511868 B CN 105511868B CN 201510863965 A CN201510863965 A CN 201510863965A CN 105511868 B CN105511868 B CN 105511868B
Authority
CN
China
Prior art keywords
file
under
xcodeproj
packaged
engineering
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.)
Active
Application number
CN201510863965.8A
Other languages
Chinese (zh)
Other versions
CN105511868A (en
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.)
SHENZHEN LAN-YOU TECHNOLOG Co Ltd
Original Assignee
SHENZHEN LAN-YOU TECHNOLOG 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 SHENZHEN LAN-YOU TECHNOLOG Co Ltd filed Critical SHENZHEN LAN-YOU TECHNOLOG Co Ltd
Priority to CN201510863965.8A priority Critical patent/CN105511868B/en
Publication of CN105511868A publication Critical patent/CN105511868A/en
Application granted granted Critical
Publication of CN105511868B publication Critical patent/CN105511868B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention discloses a kind of methods for being packaged iOS application program, comprising: selection item entry;Under the root directory whether the compiling engineering .xcodeproj file added needed for verifying;Add static library;Web element and application icon are configured using mixed mode;The generation path of .ipa file is selected, and the .ipa file is packed under the generation path.The advantageous effect of the invention are as follows: rapidly and efficiently iOS engineering compiling is packaged and generates .ipa installation file, improves exploitation, testing efficiency, shortens the App online period.

Description

A method of being packaged iOS application program
Technical field
The present invention relates to iOS development technique fields, more specifically to a kind of method for being packaged iOS application program.
Background technique
In iOS exploitation, Daily Build (daily build) ensure that the code of each check in is available, Bu Huizao Fail at entire engineering compiling.Follow-up to progress, product manager can see newest development progress, and production on probation daily Product adjust some details.Confirmation to demand, product manager can be confirmed that the function detail of exploitation is his expection.Usually open The hair time is compact, so all not traditional statement of requirements document, so daily build is also to product manager for the greatest extent The function detail of early confirmation exploitation is his expection.Follow-up to test, if function point is independence, test colleague is complete The test of some early stages can be carried out according to daily build.When more early Bug feedback can make needed for modifying bug Between it is shorter.
Referring to Fig. 1, existing packaging technique process is as follows:
1, it creates and downloads an iOS publication certificate.
2, an Ad Hoc Distribution Provisioning Profile is created and downloaded, is exactly Ad Hoc hair Cloth configuration file.
3, the App file of software is created in Xcode.
4, the Product- > Archive on Xcode toolbar is clicked, App is packaged.
5, just there is the App being packaged in the Archive of Organizer, click Distribute, select Ad Hoc, it After save, just obtain .ipa file.
6 .ipa file and configuration file are sent to tester by various modes (such as uploading given server) Or user, iTunes is opened, configuration file is first drawn in into iTunes, then pulls in .ipa file, synchronous OK, prototype installs At.
Therefore, the major defect of prior art has: packing process is cumbersome, and developer is needed to cooperate manual repeated work Rate is excessively high, if there is frequent beta version to alternate, needs developer to be repeatedly compiled, is packaged work.
Summary of the invention
The technical problem to be solved in the present invention is that the defect cumbersome for packing process in the prior art, provides one kind The method for being packaged iOS application program.
The technical solution adopted by the present invention to solve the technical problems is:
A kind of method for being packaged iOS application program is constructed, core technology is applied as bash shell foot under unix system This packaging operation, specific device is writing automatically to shell script using Cocoa Application, to reach It is packaged purpose, this method comprises:
Select item entry;
Under the root directory whether the compiling engineering .xcodeproj file added needed for verifying;
Add static library;
Web element and application icon are configured using mixed mode;
The generation path of .ipa file is selected, and the .ipa file is packed under the generation path.
In method of the present invention, the step of the selection item entry in:
It verifies under current iOS system with the presence or absence of xctool environment.
In method of the present invention, whether the compiling engineering .xcodeproj file added needed for the verifying is in root Step under catalogue includes following sub-step:
S21, it checks whether as the .xcodeproj file under root;If it is not, step S22 is gone to, if so, going to step S23;
S22, selection and .xcworkspace peer .xcodeproj file;
S23, addition compiling engineering.
In method of the present invention, the step of the addition static library in:
Select static library file path, wherein the order of addition of static library is quoted successive suitable according to the compiling engineering Sequence is added.
In method of the present invention, described the step of web element and application icon are configured using mixed mode Including following sub-step:
S41, Hybrid non-protogenous file whether is added, if so, step S42 is gone to, if it is not, going to step S44;
S42, the selection Hybrid non-protogenous file;
S43, web element arrangements are carried out;
S44, the application icon is configured according to Icon resource file.
A kind of method of packing iOS application program disclosed above has the advantages that iOS engineering rapidly and efficiently Compiling, which is packaged, generates .ipa installation file, improves exploitation, testing efficiency, shortens the App online period.
Detailed description of the invention
Fig. 1 is prior art iOS packaging method flow chart;
Fig. 2 is a kind of method flow diagram for being packaged iOS application program provided by the invention;
Fig. 3 is verifying .xcodeproj file provided by the invention and the method flow diagram for adding compiling engineering;
Fig. 4 is configuration web element provided by the invention and application program image target method flow diagram.
Specific embodiment
In order to make the objectives, technical solutions, and advantages of the present invention clearer, with reference to the accompanying drawings and embodiments, right The present invention is further elaborated.It should be appreciated that described herein, specific examples are only used to explain the present invention, not For limiting the present invention.
The present invention provides a kind of method for being packaged iOS application program, and it is based on bash that the present invention, which compiles packing manner principle, The xcodebuild+xcrun order of shell script applications xctool is operated, and passes through Cocoa Application The NSTask of (application and development under Mac OS) carries out external shell and calls to execute this operation.File operation is added in the present invention All addition file path operations, i.e., carry out file path using the Cocoa Application that Objective-C writes Operation is obtained, and using path as in the incoming compiling Shell script of parameter.It is intended that nested for static library in engineering In the case of reference, script is write using dynamic of the Objective-C to bash shell-command.Configure " DailyBuild " Correspondence script command of the xcodebuild compiling mode of Configuration in shell.It is carried out using Cordova frame The compiling of mixed mode exploitation is packaged shell script.
Referring to fig. 2, Fig. 2 is a kind of method flow diagram for being packaged iOS application program provided by the invention, and core technology is answered With the packaging operation for bash shell script under unix system, specific device is using CocoaApplication pairs Shell script is write automatically, thus reach packing purpose, and the bright spot of strapping tool is to automatically generate shell script, is The automation of script generating process is realized.The packing of script itself improves efficiency, automatically generates script and improves effect again Rate, specifically, this method comprises:
S1, selection item entry;It verifies under current iOS system with the presence or absence of xctool environment.Automatic packaging tool can be examined It surveys under current Mac with the presence or absence of xctool environment.
Under the root directory whether the compiling engineering .xcodeproj file of addition needed for S2, verifying;Verifying will be added The engineering .xcodeproj of compiling whether under the root directory because xcode creation projects file directory format have centainly Specification, if .xcodeproj file without under the root directory (by the customized movement of developer) not as will see this What mesh was established is individual engineering project or working space xcworkspace project, if it is the item of working space form Mesh will then be selected with the .xcodeproj file of .xcworkspace peer as item entry..xcodeproj inherently The entry file for the projects that will compile, that is to say, that all ios engineering operation entrances are all xxxx.xcodeproj This file, the entrance of addition compiling engineering are the selection to the j formatted file of top layer, this .xcodepro verification process It is the selection to top layer's .xcodeproj belonging positions;Referring to Fig. 3, Fig. 3 is verifying .xcodeproj text provided by the invention Part and the method flow diagram for adding compiling engineering, step S2 includes following sub-step:
S21, it checks whether as the .xcodeproj file under root;If it is not, step S22 is gone to, if so, going to step S23;The verifying foundation of step S21 are as follows: it is solid that iOS develops new construction, working space bibliographic structure form under Xcode environment It is fixed, it can be according to .xcodeproj formatted file under root as item entry.
S22, selection and .xcworkspace peer .xcodeproj file;
S23, addition compiling engineering.
S3, addition static library;Select static library file path, wherein the order of addition of static library is according to the compiling work The sequencing of Cheng Yinyong is added.The foundation of the verifying static library of step S3 are as follows: to static state in iOS exploration project engineering In the case of the reference in library, often there is one or more .xcodeproj in the .xcodeproj lower folder of item entry Static library file needs the static library file by reference successively to compile out the build file to root by reference sequence at this time In folder, otherwise engineering compiling fails.
S4, web element and application icon are configured using mixed mode;Referring to fig. 4, Fig. 4 is provided by the invention matches Web element and application program image target method flow diagram are set, step S4 includes following sub-step:
S41, Hybrid non-protogenous file whether is added, if so, step S42 is gone to, if it is not, going to step S44;
S42, the selection Hybrid non-protogenous file;
S43, web element arrangements are carried out;For mixed developing mode (Hybrid), i.e., using mixed developing frame to iOS The project that App is developed, such as: Cordova, jQuery Mobile etc. carry out the selection verifying of web resource file.To mixed Using the xml Analytic principle in Cocoa programming, i.e., web element arrangements under syntype (Hybrid) exploitation need Objective-C modifies the configuration files such as plist in engineering.
S44, the application icon is configured according to Icon resource file.
Likewise, can be by Cocoa exploitation under Mac to App display Name (Bundle display name), version number (Bundle version), bundle identifier carry out related amendments.
S5, the generation path for selecting .ipa file, and the .ipa file is packed under the generation path.
In addition, application shell carry out daily build work in, with Release with for configuration in fact It is not especially good.Because the certificate of Release may be modified often.We can be in the exploitation before carrying out automatic packaging In, to the Configuation based on Release, build a configuration dedicated for daily build.Method It is: in the detailed page of engineering, selects mono- column Info, clicks "+" number in the lower section on mono- column Configurations, then select " Duplicate Release Configuration ", creates the Configuration of entitled " DailyBuild ".
Multithreading operation is enabled under Cocoa Application, calls external command, i.e. bash shell using NSTask It is compiled the .ipa file for being packaged and ultimately generating under specified path.
In this way, this method solves, product demand change is unexpected, Mobile Development upgrading is quick, and shortens entry test to just The problem of formula issuing time.
The application provides the tool of the method and packing that are packaged, and strapping tool is the extension to simple packaging method, envelope Dress and simplified operation, the core of packaging method is exactly: xcodebuild (compilation operations, life are carried out under xctool environment At .app)+xcrun (packaging operation, generate .ipa) completes this sequence of operations with shell script;
The core of strapping tool is: the above method, which is typically required, beats order manually on computers to carry out, and utilizes Tool can generate these orders by way of tool, and without beaing, visualized operation mainly satisfies the need in tool The selection of diameter, the purpose of Path selection are the input error in path when beaing order to simplify, to reach full-automatic It generates shell and is packaged order.
The embodiment of the present invention is described with above attached drawing, but the invention is not limited to above-mentioned specific Embodiment, the above mentioned embodiment is only schematical, rather than restrictive, those skilled in the art Under the inspiration of the present invention, without breaking away from the scope protected by the purposes and claims of the present invention, it can also make very much Form, all of these belong to the protection of the present invention.

Claims (1)

1. a kind of method for being packaged iOS application program, which is characterized in that including step S1-S5:
S1, selection item entry;It verifies under current iOS system with the presence or absence of xctool environment;
Under the root directory whether the compiling engineering .xcodeproj file of addition needed for S2, verifying;Step S2 includes step S21- S23:
S21, it checks whether as the .xcodeproj file under root;If it is not, step S22 is gone to, if so, going to step S23;
S22, selection and .xcworkspace peer .xcodeproj file;
S23, addition compiling engineering;
S3, addition static library;Select static library file path, wherein the order of addition of static library is drawn according to the compiling engineering Sequencing is added;
S4, web element and application icon are configured using mixed mode;Step S4 includes step S41-S44:
S41, Hybrid non-protogenous file whether is added, if so, step S42 is gone to, if it is not, going to step S44;
S42, the selection Hybrid non-protogenous file;
S43, web element arrangements are carried out;
S44, the application icon is configured according to Icon resource file;
S5, the generation path for selecting .ipa file, and the .ipa file is packed under the generation path.
CN201510863965.8A 2015-11-30 2015-11-30 A method of being packaged iOS application program Active CN105511868B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510863965.8A CN105511868B (en) 2015-11-30 2015-11-30 A method of being packaged iOS application program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510863965.8A CN105511868B (en) 2015-11-30 2015-11-30 A method of being packaged iOS application program

Publications (2)

Publication Number Publication Date
CN105511868A CN105511868A (en) 2016-04-20
CN105511868B true CN105511868B (en) 2019-04-26

Family

ID=55719878

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510863965.8A Active CN105511868B (en) 2015-11-30 2015-11-30 A method of being packaged iOS application program

Country Status (1)

Country Link
CN (1) CN105511868B (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108469957A (en) * 2018-03-08 2018-08-31 平安科技(深圳)有限公司 Using packing method for uploading, device, computer equipment and storage medium
CN109062545A (en) * 2018-06-29 2018-12-21 东华大学 A kind of hybrid Quick Development Framework of Android system native applications
CN109101244B (en) * 2018-07-20 2022-06-03 珠海宏桥高科技有限公司 Integrated automatic packaging method for ios system
CN109710230A (en) * 2018-12-12 2019-05-03 平安科技(深圳)有限公司 It is a kind of to realize target program generation method and device using static library
CN109783130A (en) * 2018-12-14 2019-05-21 深圳市创梦天地科技有限公司 A kind of packaging method and server of front end project
CN110851117B (en) * 2019-10-15 2023-04-11 福建天晴在线互动科技有限公司 Method and storage medium for importing static library to item by one key
CN110825429A (en) * 2019-11-13 2020-02-21 中孚安全技术有限公司 Web project packaging method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503746A (en) * 2014-12-11 2015-04-08 北京金和软件股份有限公司 Method for quickly packaging IOS (internetwork operating system) application program on APP development platform
CN104503741A (en) * 2014-12-01 2015-04-08 北京金和软件股份有限公司 Integrated system for developing and publishing APP
CN104539725A (en) * 2015-01-15 2015-04-22 北京金和软件股份有限公司 Method for clustering and packaging generated APP
CN104615433A (en) * 2015-02-11 2015-05-13 北海和思科技有限公司 Method for packaging clusters of APPs (applications) generated on development platforms

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103345394A (en) * 2013-07-01 2013-10-09 邱雨石 Method for rapidly making application software of native mobile phones

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104503741A (en) * 2014-12-01 2015-04-08 北京金和软件股份有限公司 Integrated system for developing and publishing APP
CN104503746A (en) * 2014-12-11 2015-04-08 北京金和软件股份有限公司 Method for quickly packaging IOS (internetwork operating system) application program on APP development platform
CN104539725A (en) * 2015-01-15 2015-04-22 北京金和软件股份有限公司 Method for clustering and packaging generated APP
CN104615433A (en) * 2015-02-11 2015-05-13 北海和思科技有限公司 Method for packaging clusters of APPs (applications) generated on development platforms

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
APP原生、混合、纯WEB开发模式的优劣分析;sunyubo0307;《百度文库》;20150923;第一页
IOS之申请企业开发者证书及手动打包生成ipa;晚凉天;《CSND》;20150129;第一页

Also Published As

Publication number Publication date
CN105511868A (en) 2016-04-20

Similar Documents

Publication Publication Date Title
CN105511868B (en) A method of being packaged iOS application program
US10572249B2 (en) Software kit release management
US8972951B2 (en) Embedding performance monitoring into mashup application development
CN110377290B (en) Method, device and equipment for compiling target engineering
CN109542556B (en) Method and system for interaction between process and form based on Activiti
CN103189839B (en) The system and method disposed for the automatization of multiunit computer environment
CN105718251B (en) Multilingual SDK automates realization method and system
US9021419B2 (en) System and method for supporting intelligent design pattern automation
CN109783129A (en) Applied program processing method, device, computer equipment and storage medium
CN106775744B (en) Method and device for generating static library
US20060036799A1 (en) Multi-platform development and execution of graphical programs
Arcuri et al. Unit test generation during software development: Evosuite plugins for maven, intellij and jenkins
CN104268072A (en) Graphical script editor and method for fast developing communication equipment testing script
KR20110045853A (en) A method and system for testing industrial machine
CN106371868A (en) Automatic test method, system and test device
WO2020240778A1 (en) Test script generation device, test script generation method, and program
Guşeilă et al. Continuous testing in the development of iot applications
KR20210039714A (en) Method and apparatus for constructing test environment
KR102397494B1 (en) Low code web development and operating system, and service method using of it
CN114721647B (en) Object-oriented programming method based on codeless application development
Steiner et al. Model-driven development of cloud-connected mobile applications using dsls with xtext
CN112130867B (en) Research, development and test integrated system
Milka et al. Dfuntest: A testing framework for distributed applications
CN113064578A (en) Application arranging method, system, equipment and storage medium based on dragging technology
CN112272820A (en) Support device and support program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant