@@ -154,6 +154,61 @@ echo " New version is ${new_version}"
154154echo -n " ${new_version} " > ${version_filepath}
155155echo " Updated - ${version_filepath} "
156156
157+ # update version numbers
158+ onesignal_path=" com.onesignal.unity.core/Runtime/OneSignal.cs"
159+ onesignal_version_regex=" Version = \" ${current_version} \" ;"
160+ onesignal_new_version=" Version = \" ${new_version} \" ;"
161+ onesignal_file=$( cat " $onesignal_path " )
162+
163+ onesignal_version=$( [[ ${onesignal_file} =~ $onesignal_version_regex ]] && echo " ${BASH_REMATCH[0]} " )
164+ onesignal_file=${onesignal_file/ $onesignal_version / $onesignal_new_version }
165+
166+ echo " ${onesignal_file} " > ${onesignal_path}
167+ echo " Updated - ${onesignal_path} "
168+
169+ # The version number sent to iOS and Android use a 000000 format. For example: 5.1.9 should be sent as 050109
170+ toHeaderVersion () {
171+ local version=$1
172+
173+ a=(${version// ./ } )
174+
175+ for i in ${! a[@]} ; do
176+ a[$i ]=$( printf " %02d" ${a[$i]} )
177+ done
178+
179+ retval=$( IFS=; echo " ${a[*]} " ) ;
180+ return
181+ }
182+
183+ # update Android header
184+ toHeaderVersion $current_version
185+ current_header_version=$retval
186+ toHeaderVersion $new_version
187+ new_header_version=$retval
188+
189+ onesignalplatform_path=" com.onesignal.unity.core/Runtime/OneSignalPlatform.cs"
190+ onesignalplatform_version_regex=" VersionHeader = \" ${current_header_version} \" ;"
191+ onesignalplatform_new_version=" VersionHeader = \" ${new_header_version} \" ;"
192+ onesignalplatform_file=$( cat " $onesignalplatform_path " )
193+
194+ onesignalplatform_version=$( [[ ${onesignalplatform_file} =~ $onesignalplatform_version_regex ]] && echo " ${BASH_REMATCH[0]} " )
195+ onesignalplatform_file=${onesignalplatform_file/ $onesignalplatform_version / $onesignalplatform_new_version }
196+
197+ echo " ${onesignalplatform_file} " > ${onesignalplatform_path}
198+ echo " Updated - ${onesignalplatform_path} "
199+
200+ # update iOS header
201+ uiapplicationonesignalunity_path=" com.onesignal.unity.ios/Runtime/Plugins/iOS/UIApplication+OneSignalUnity.mm"
202+ uiapplicationonesignalunity_version_regex=" setSdkVersion:@\" ${current_header_version} \" ];"
203+ uiapplicationonesignalunity_new_version=" setSdkVersion:@\" ${new_header_version} \" ];"
204+ uiapplicationonesignalunity_file=$( cat " $uiapplicationonesignalunity_path " )
205+
206+ uiapplicationonesignalunity_version=$( [[ ${uiapplicationonesignalunity_file} =~ $uiapplicationonesignalunity_version_regex ]] && echo " ${BASH_REMATCH[0]} " )
207+ uiapplicationonesignalunity_file=${uiapplicationonesignalunity_file/ $uiapplicationonesignalunity_version / $uiapplicationonesignalunity_new_version }
208+
209+ echo " ${uiapplicationonesignalunity_file} " > ${uiapplicationonesignalunity_path}
210+ echo " Updated - ${uiapplicationonesignalunity_path} "
211+
157212# update package.json files
158213packagejson_path=" com.onesignal.unity.*/package.json"
159214packagejson_version_regex=" \" version\" : \" ${current_version} \" ,"
177232 echo " Updated - ${packagejson_filepath} "
178233done
179234
235+ # update packages-lock.json
236+ packageslockjson_path=" OneSignalExample/Packages/packages-lock.json"
237+ packageslockjson_file=$( cat " $packageslockjson_path " )
238+
239+ packageslockjson_core=$( [[ ${packageslockjson_file} =~ $packagejson_core_regex ]] && echo " ${BASH_REMATCH[0]} " )
240+ packageslockjson_file=${packageslockjson_file/ $packageslockjson_core / $packagejson_new_core }
241+
242+ echo " ${packageslockjson_file} " > ${packageslockjson_path}
243+ echo " Updated - ${packageslockjson_path} "
244+
245+ # update .asmdef files
246+ asmdef_path=" OneSignalExample/Assets/OneSignal/*/OneSignal.UnityPackage.*.asmdef"
247+ asmdef_version_regex=" \" expression\" : \" ${current_version} \" ,"
248+ asmdef_new_version=" \" expression\" : \" ${new_version} \" ,"
249+
250+ for asmdef_filepath in $asmdef_path
251+ do
252+ asmdef_file=$( cat " $asmdef_filepath " )
253+
254+ asmdef_version=$( [[ ${asmdef_file} =~ $asmdef_version_regex ]] && echo " ${BASH_REMATCH[0]} " )
255+ asmdef_file=${asmdef_file/ $asmdef_version / $asmdef_new_version }
256+
257+ echo " ${asmdef_file} " > ${asmdef_filepath}
258+ echo " Updated - ${asmdef_filepath} "
259+ done
260+
180261# update CHANGELOG
181262changelog_path=" OneSignalExample/Assets/OneSignal/CHANGELOG.md"
182263changelog_file=$( cat " $changelog_path " )
@@ -231,7 +312,7 @@ executeUnityMethod "OneSignalExample" "Android" "OneSignalSDK.OneSignalPackagePu
231312
232313# preserve current workspace
233314current_branch=$( git branch --show-current)
234- git add ${version_filepath} ${packagejson_path} ${projectsettings_path} ${changelog_path}
315+ git add ${version_filepath} ${packagejson_path} ${projectsettings_path} ${changelog_path} ${onesignal_path} ${onesignalplatform_path} ${uiapplicationonesignalunity_path} ${packageslockjson_path} ${asmdef_path}
235316git stash push --keep-index
236317
237318# generate new release branch and commit all changes
0 commit comments