Method: NotificationExtensionIntegrator#initialize

Defined in:
lib/mmine/notification_extension_integrator.rb

#initialize(application_code, project_file_path, app_group, main_target_name, cordova = false, swift_ver) ⇒ NotificationExtensionIntegrator

Returns a new instance of NotificationExtensionIntegrator.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/mmine/notification_extension_integrator.rb', line 16

def initialize(application_code, project_file_path, app_group, main_target_name, cordova = false, swift_ver)
	@project_file_path = project_file_path
	@app_group = app_group
	@main_target_name = main_target_name
	@logger = nil
	@cordova = cordova
	@swift_version = swift_ver
	@application_code = application_code
	
	@project_dir = Pathname.new(@project_file_path).parent.to_s
	@project = Xcodeproj::Project.open(@project_file_path)
	@ne_target_name = 'MobileMessagingNotificationExtension'
	@framework_file_name = "MobileMessaging.framework"
	@extension_source_name_filepath = File.join(Mmine.root, 'resources','NotificationService.swift')
	@extension_dir_name = 'NotificationExtension'
	@extension_destination_dir = File.join(@project_dir, @extension_dir_name)
	@extension_code_destination_filepath = File.join(@extension_destination_dir, 'NotificationService.swift')
	@extension_group_name = 'NotificationExtensionGroup'

	@plist_name = 'MobileMessagingNotificationServiceExtension.plist'
	@plist_source_filepath = File.join(Mmine.root, 'resources', @plist_name)
	@extension_info_plist_path = File.join(@project_dir, @extension_dir_name, @plist_name)

	@main_target = @project.native_targets().select { |target| target.name == @main_target_name }.first
	@main_target_build_settings_debug = @main_target.build_configurations.select { |config| config.type == :debug }.first.build_settings
	@main_target_build_settings_release = @main_target.build_configurations.select { |config| config.type == :release }.first.build_settings
	@main_target_debug_plist = resolveAbsolutePath(@main_target_build_settings_debug["INFOPLIST_FILE"])
	@main_target_release_plist = resolveAbsolutePath(@main_target_build_settings_release["INFOPLIST_FILE"])
end