Implement BuildInfo plugin for iOS
This commit implements the BuildInfo Capacitor plugin for iOS to retrieve the app version and build number from Info.plist. This resolves an issue where the version information was not being updated on iOS devices due to the absence of a native plugin implementation.
This commit is contained in:
8
ios/App/App/BuildInfoPlugin.m
Normal file
8
ios/App/App/BuildInfoPlugin.m
Normal file
@@ -0,0 +1,8 @@
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import <Capacitor/Capacitor.h>
|
||||
|
||||
// 플러그인 메서드 정의
|
||||
CAP_PLUGIN(BuildInfoPlugin, "BuildInfo",
|
||||
CAP_PLUGIN_METHOD(getBuildInfo, CAPPluginReturnPromise);
|
||||
)
|
||||
22
ios/App/App/BuildInfoPlugin.swift
Normal file
22
ios/App/App/BuildInfoPlugin.swift
Normal file
@@ -0,0 +1,22 @@
|
||||
|
||||
import Foundation
|
||||
import Capacitor
|
||||
|
||||
@objc(BuildInfoPlugin)
|
||||
public class BuildInfoPlugin: CAPPlugin {
|
||||
@objc func getBuildInfo(_ call: CAPPluginCall) {
|
||||
let versionName = Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String ?? "1.0.0"
|
||||
let buildNumber = Bundle.main.infoDictionary?["CFBundleVersion"] as? String ?? "1"
|
||||
|
||||
let result = [
|
||||
"versionName": versionName,
|
||||
"buildNumber": Int(buildNumber) ?? 1,
|
||||
"platform": "ios",
|
||||
// 추가 디버깅 정보
|
||||
"bundleId": Bundle.main.bundleIdentifier ?? "unknown",
|
||||
"buildDate": DateFormatter.localizedString(from: Date(), dateStyle: .short, timeStyle: .short)
|
||||
] as [String : Any]
|
||||
|
||||
call.resolve(result)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user