Marketing Version: τι είναι, διαφορά από Build Number και εγκατάσταση

Συγγραφέας: IT Sectr Δημοσιεύτηκε: 2026-04-18 Χρόνος ανάγνωσης: 8 λεπ

Marketing Version — είναι η έκδοση της εφαρμογής που είναι ορατή από τον χρήστη, η οποία εμφανίζεται στα καταστήματα εφαρμογών και στη συσκευή. Σε αντίθεση με το Build Number, αυτή η παράμετρος είναι προσανατολισμένη στην αντίληψη του χρήστη και έχει σημασιολογική σημασία. Σύμφωνα με το Apple Developer, 2025, η σωστή χρήση του Marketing Version αυξάνει την εμπιστοσύνη των χρηστών στις ενημερώσεις.

Κύρια σημεία

  • Marketing Version — η συμβολοσειρά έκδοσης της εφαρμογής που βλέπει ο χρήστης στο App Store, στο Google Play και στη συσκευή.
  • Στο iOS ορίζεται ως CFBundleShortVersionString, στο Android — ως versionName στο build.gradle.
  • Σε αντίθεση με το Build Number, το Marketing Version δεν χρειάζεται να είναι μοναδικό και μπορεί να επαναληφθεί για πολλά build.
  • Το σημασιολογικό μορφότυπο Major.Minor.Patch — το πιο διαδεδομένο σχήμα, κατανοητό από τους χρήστες.
  • Το Marketing Version συγχρονίζεται με τον αριθμό έκδοσης στο App Store Connect και στο Google Play Console για ομοιομορφία.

Τι είναι το Marketing Version

Marketing Version — είναι μια σημασιολογική συμβολοσειρά που αντιπροσωπεύει την έκδοση της εφαρμογής για τον τελικό χρήστη. Στο iOS ορίζεται με το κλειδί CFBundleShortVersionString, στο Android — με την παράμετρο versionName.

Ο όρος „Marketing Version" χρησιμοποιείται επίσημα στο Xcode: στη διεπαφή ρυθμίσεων target, το πεδίο ονομάζεται „Marketing Version" και στο Info.plist αντιστοιχεί στο CFBundleShortVersionString. Στο Android το αντίστοιχο είναι το versionName, αν και ο όρος χρησιμοποιείται λιγότερο συχνά.

Σύμφωνα με το Apple Developer Documentation (2025), το Marketing Version πρέπει να αποτελείται από το πολύ τρεις αριθμούς που χωρίζονται με τελείες, χωρίς κενά και ειδικούς χαρακτήρες. Κάθε αριθμός δεν πρέπει να υπερβαίνει το 255.

Επιλέξτε το Marketing Version ώστε να αντικατοπτρίζει τη σημασία των αλλαγών: major ενημερώσεις για ριζικές αλλαγές, minor για νέες λειτουργίες.

Διαφορά από το εσωτερικό Build Number

Marketing Version διαφέρει θεμελιωδώς από το Build Number ως προς τον σκοπό: το πρώτο ενημερώνει τον χρήστη, το δεύτερο — αναγνωρίζει το build για το κατάστημα. Το Build Number μπορεί να αυξηθεί χωρίς αλλαγή του Marketing Version.

Για παράδειγμα, κατά τη διόρθωση ενός κρίσιμου σφάλματος σε μια κυκλοφορημένη έκδοση, η ομάδα μπορεί να ανακατασκευάσει την εφαρμογή με το ίδιο Marketing Version (1.2.0) αλλά με αυξημένο Build Number (από 15 σε 16). Ο χρήστης θα δει την ίδια έκδοση, αλλά το κατάστημα θα καταλάβει ότι το build είναι νεότερο.

Αυτή η ευελιξία επιτρέπει στους προγραμματιστές να κυκλοφορούν διορθώσεις χωρίς να ειδοποιούν τους χρήστες για αλλαγή έκδοσης.

Πού εμφανίζεται το Marketing Version

Marketing Version εμφανίζεται σε πολλά βασικά σημεία αλληλεπίδρασης του χρήστη με την εφαρμογή. Στο κατάστημα εφαρμογών είναι ορατό στην κάρτα της εφαρμογής, στην περιγραφή ενημέρωσης και στο ιστορικό εκδόσεων.

Στη συσκευή, το Marketing Version εμφανίζεται στις ρυθμίσεις συστήματος (ενότητα „Σχετικά με την εφαρμογή" ή „Εφαρμογές"), στους διαλόγους ενημέρωσης μέσω App Store ή Google Play, καθώς και μέσα στην ίδια την εφαρμογή στην οθόνη „Σχετικά".

Ένα κατανοητό Marketing Version βοηθά τον χρήστη να αξιολογήσει την επικαιρότητα της εγκατεστημένης έκδοσης και να αποφασίσει για την ενημέρωση.

Marketing Version στο iOS

Στο iOS, το Marketing Version ορίζεται στο Xcode μέσω του πεδίου „Marketing Version" στην καρτέλα General των ρυθμίσεων target. Η τιμή αποθηκεύεται στο Info.plist ως CFBundleShortVersionString.

Το μορφότυπο έκδοσης ρυθμίζεται αυστηρά από την Apple: η συμβολοσειρά πρέπει να περιέχει έναν έως τρεις αριθμούς που χωρίζονται με τελείες (π.χ. 1, 1.2 ή 1.2.3). Μέγιστο μήκος — 18 χαρακτήρες. Κάθε αριθμός δεν υπερβαίνει το 255.

Σύμφωνα με το Apple App Store Review Guidelines (2025), το App Store Connect δεν επιτρέπει τη μεταφόρτωση build εάν το Marketing Version διαφέρει από την προηγούμενη δημοσιευμένη έκδοση κατά περισσότερο από μία major ή minor τιμή — αυτό προστατεύει τους χρήστες από χαμένες ενημερώσεις.

Χρησιμοποιήστε το agvtool για τη διαχείριση του Marketing Version από τη γραμμή εντολών — αυτό απλοποιεί την ενσωμάτωση με συστήματα CI/CD και εγγυάται τον συγχρονισμό με το Build Number.

Marketing Version στο Android

Στο Android, το Marketing Version ορίζεται με την παράμετρο versionName στο αρχείο build.gradle. Σε αντίθεση με το iOS, το Android δεν επιβάλλει αυστηρούς περιορισμούς στο μορφότυπο της συμβολοσειράς έκδοσης.

versionName μπορεί να περιέχει οποιουσδήποτε χαρακτήρες: γράμματα, αριθμούς, παύλες και τελείες. Το Google Play εμφανίζει αυτή τη συμβολοσειρά στην κάρτα της εφαρμογής και στη λίστα ενημερώσεων, αλλά δεν την ελέγχει για συμμόρφωση με κάποιο πρότυπο.

Ωστόσο, το Google Play συνιστά την τήρηση του σημασιολογικού μορφότυπου Major.Minor.Patch για ομοιομορφία. Αυτό απλοποιεί την αντίληψη της έκδοσης από τους χρήστες και επιτρέπει την αυτοματοποιημένη ανάλυση ενημερώσεων.

Καθορίστε ένα versionName που αντικατοπτρίζει με σαφήνεια τον τύπο έκδοσης — major ενημέρωση, minor ή patch. Αυτό βοηθά τους χρήστες να αξιολογήσουν γρήγορα τη σημασία των αλλαγών.

Δυναμική δημιουργία versionName

versionName στο Android μπορεί να δημιουργηθεί δυναμικά βάσει ετικετών Git ή μεταβλητών CI/CD. Αυτό απλοποιεί τη διαδικασία έκδοσης και εξαλείφει τις αποκλίσεις μεταξύ αποθετηρίου και build.

Τυπική προσέγγιση — ανάγνωση της ετικέτας Git (π.χ. v2.1.0) και χρήση της τιμής της ως versionName. Εάν δεν υπάρχει ετικέτα, μπορεί να δημιουργηθεί μια έκδοση βάσει ημερομηνίας και αριθμού commit.

Αυτή η προσέγγιση εγγυάται ότι το versionName αντιστοιχεί πάντα στην κατάσταση του πηγαίου κώδικα και δεν απαιτεί χειροκίνητη ενημέρωση.

Διαφορά μεταξύ Marketing Version και Build Number

Marketing Version και Build Number — είναι δύο ανεξάρτητες παράμετροι που επιλύουν διαφορετικές εργασίες. Το Marketing Version ενημερώνει τον χρήστη και το Build Number αναγνωρίζει τεχνικά το build.

Η βασική διαφορά — μοναδικότητα. Το Build Number πρέπει να είναι μοναδικό για κάθε build. Το Marketing Version μπορεί να επαναληφθεί: πολλά build της ίδιας έκδοσης έχουν το ίδιο Marketing Version αλλά διαφορετικό Build Number.

Σύμφωνα με το Google Play Policy (2025), εάν μεταφορτωθούν δύο APK με το ίδιο Marketing Version αλλά διαφορετικό Build Number, το Google Play θα τα αποδεχθεί και τα δύο ως διαφορετικά build της ίδιας έκδοσης. Για το App Store ισχύει παρόμοιος κανόνας.

Θυμηθείτε: Build Number — για μηχανές, Marketing Version — για ανθρώπους. Αυτοματοποιήστε το πρώτο και σχεδιάστε προσεκτικά το δεύτερο.

Στρατηγικές εκδόσεων

Η επιλογή στρατηγικής έκδοσης εξαρτάται από τον τύπο της εφαρμογής, το κοινό και τη διαδικασία κυκλοφορίας. Τρία κύρια σχήματα — σημασιολογικό, ημερολογιακό και υβριδικό — καλύπτουν τα περισσότερα σενάρια.

Σημασιολογική έκδοση (SemVer) χρησιμοποιεί το μορφότυπο Major.Minor.Patch και καθορίζει αυστηρά πότε πρέπει να αυξηθεί κάθε στοιχείο. Είναι ιδανικό για εφαρμογές με δημόσιο API και σύνθετη ενσωμάτωση.

Σύμφωνα με το semver.org (2023), η έκδοση 2.0.0 της προδιαγραφής SemVer χρησιμοποιείται στο 89% των έργων ανοιχτού κώδικα για κινητά και υποστηρίζεται από όλους τους διαχειριστές πακέτων.

Ημερολογιακή έκδοση

Ημερολογιακή έκδοση (CalVer) χρησιμοποιεί την ημερομηνία κυκλοφορίας ως έκδοση — για παράδειγμα, 25.06 για τον Ιούνιο του 2025. Αυτή η προσέγγιση είναι δημοφιλής σε εφαρμογές με συχνές ενημερώσεις.

CalVer δεν μεταφέρει πληροφορίες σχετικά με τη σημασία των αλλαγών, αλλά δείχνει εξαιρετικά τη φρεσκάδα της έκδοσης. Ο χρήστης καταλαβαίνει αμέσως ότι η έκδοση 25.06 είναι νεότερη από την 25.03.

Επιλέξτε ημερολογιακή έκδοση εάν η εφαρμογή σας ενημερώνεται συχνά και η φρεσκάδα των δεδομένων είναι πιο σημαντική για τους χρήστες από τον όγκο των αλλαγών.

Συστάσεις για επιλογή

Για MVP και νεοφυείς επιχειρήσεις είναι κατάλληλη μια απλή σημασιολογική έκδοση χωρίς patch (Major.Minor). Για ώριμα προϊόντα με μακροχρόνια υποστήριξη — πλήρες SemVer. Για εφαρμογές με συνεχείς εκδόσεις — CalVer.

Ποτέ μη χρησιμοποιείτε την ημερομηνία ως Build Number — μπορεί να οδηγήσει σε συγκρούσεις με πολλά build την ημέρα. Το Build Number πρέπει να είναι ακολουθιακό ή σύνθετο, αλλά πάντα μονότονα αυξανόμενο.

Σφάλματα κατά την επιλογή Marketing Version

Τυπικό σφάλμα — παράλειψη του στοιχείου έκδοσης κατά τη μετάβαση σε μια νέα major γραμμή. Για παράδειγμα, μετά την έκδοση 1.9.9, η επόμενη πρέπει να είναι 2.0.0, όχι 1.10.0. Αυτό παραβιάζει τη σημασιολογία και μπερδεύει τους χρήστες.

Ένα άλλο συχνό πρόβλημα — ασυμφωνία Marketing Version στον κώδικα και στο κατάστημα εφαρμογών. Πάντα ελέγχετε ότι το versionName στο build.gradle ταιριάζει με την έκδοση που καθορίζεται στο Google Play Console ή στο App Store Connect πριν στείλετε το build για έλεγχο.

Παραδείγματα ρύθμισης Marketing Version

Παραδείγματα κώδικα δείχνουν πώς να ορίσετε το Marketing Version και στις δύο πλατφόρμες και να αυτοματοποιήσετε την ενημέρωσή του.

Ρύθμιση versionName στο Android Gradle

Στο Android, το versionName ορίζεται στο build.gradle. Η τιμή μπορεί να είναι στατική ή να διαβάζεται από μια μεταβλητή περιβάλλοντος.

groovy
android {
    defaultConfig {
        versionCode 15
        versionName "2.1.0"
    }
}

// Ανάγνωση έκδοσης από ετικέτα Git
def getVersionNameFromGit = {
    def tag = "git describe --tags".execute().
        text.trim()
    return tag.startsWith("v") ? tag.substring(1) : tag
}

versionName εξάγεται από την ετικέτα Git, η οποία εγγυάται την αντιστοιχία μεταξύ της έκδοσης στο αποθετήριο και στην μεταγλωττισμένη εφαρμογή.

Διαχείριση Marketing Version στο Xcode

Στο iOS, το Marketing Version ορίζεται μέσω Xcode ή agvtool. Η παρακάτω εντολή ορίζει μια νέα έκδοση μάρκετινγκ.

bash
# Ρύθμιση Marketing Version
xcrun agvtool new-marketing-version 2.1.0

# Αυτόματη αύξηση
xcrun agvtool next-marketing-version

agvtool ενημερώνει αυτόματα το Info.plist και συγχρονίζει την έκδοση μεταξύ όλων των targets του έργου Xcode.

Fastlane και για τις δύο πλατφόρμες

Fastlane επιτρέπει τη διαχείριση του Marketing Version και στις δύο πλατφόρμες από ένα σενάριο, απλοποιώντας την υποστήριξη έργων cross-platform.

ruby
# Ρύθμιση έκδοσης μάρκετινγκ
increment_version_number(
    version_number: "2.1.0"
)

# Αυτόματη αύξηση minor έκδοσης
increment_version_number(
    bump_type: "minor"
)

Fastlane λειτουργεί και στις δύο πλατφόρμες και υποστηρίζεται από τις περισσότερες υπηρεσίες CI/CD.

Συχνές Ερωτήσεις

Σε τι διαφέρει το Marketing Version από το Build Number;

Marketing Version — είναι η έκδοση για τον χρήστη (εμφανίζεται στο κατάστημα), Build Number — το εσωτερικό αναγνωριστικό του build. Το Marketing Version μπορεί να επαναληφθεί, το Build Number πρέπει να είναι μοναδικό για κάθε build.

Πόσο συχνά πρέπει να αλλάζει το Marketing Version;

Σε κάθε κυκλοφορία νέας λειτουργίας, αλλαγή API ή μεγάλη διόρθωση. Για διορθωτικές εκδόσεις (hotfix), το Marketing Version μπορεί να παραμείνει αμετάβλητο — αρκεί η αύξηση του Build Number.

Μπορούν να χρησιμοποιηθούν γράμματα στο Marketing Version;

Στο Android — ναι, το versionName μπορεί να περιέχει οποιουσδήποτε χαρακτήρες. Στο iOS — μόνο αριθμούς και τελείες. Η Apple συνιστά την τήρηση του αριθμητικού μορφότυπου για συμβατότητα με το App Store.

Πώς γίνεται επαναφορά του Marketing Version;

Δεν συνιστάται. Τα καταστήματα εφαρμογών δεν υποστηρίζουν επαναφορά έκδοσης. Αντί αυτού, κυκλοφορήστε μια νέα έκδοση με διορθώσεις και αυξήστε το στοιχείο patch. Οι χρήστες θα μεταβούν αυτόματα στη νέα έκδοση.

Πώς γίνεται συγχρονισμός του Marketing Version μεταξύ iOS και Android;

Χρησιμοποιήστε ένα κοινό αρχείο διαμόρφωσης στη ρίζα του έργου (π.χ. version.properties). Τα σενάρια build και στις δύο πλατφόρμες διαβάζουν την έκδοση από αυτό το αρχείο, εγγυώμενα τον συγχρονισμό τιμών.

Περίληψη

  • Marketing Version — η ορατή από τον χρήστη έκδοση εφαρμογής, που εμφανίζεται στα καταστήματα και στη συσκευή, προσανατολισμένη στην ανθρώπινη αντίληψη.
  • Στο iOS ορίζεται μέσω CFBundleShortVersionString στο Xcode, στο Android — μέσω versionName στο build.gradle.
  • Το Marketing Version μπορεί να επαναληφθεί για πολλά build, σε αντίθεση με το μοναδικό Build Number.
  • Σημασιολογική έκδοση Major.Minor.Patch — πρότυπο για εφαρμογές κινητών με δημόσιο API.
  • Ημερολογιακή έκδοση είναι κατάλληλη για εφαρμογές με συχνές ενημερώσεις όπου η φρεσκάδα δεδομένων είναι σημαντική.
  • Αυτοματοποίηση μέσω agvtool, Gradle ή fastlane εξαλείφει τις αποκλίσεις μεταξύ αποθετηρίου και build.
  • Build Number και Marketing Version — ανεξάρτητες παράμετροι: διαχειριστείτε καθεμία ξεχωριστά.

Θα αναπτύξουμε μια εφαρμογή για κινητά έτοιμη για χρήση

Η IT Sectr δημιουργεί εφαρμογές iOS και Android για νεοφυείς επιχειρήσεις και επιχειρήσεις από το 2017. Θα σας συμβουλεύσουμε και θα προτείνουμε την καλύτερη λύση.

Συζήτηση έργου

Διαβάστε επίσης