NDT Reference App Privacy Policy

1.0 Our core beliefs regarding user privacy and data protection

  • User privacy and data protection are human rights
  • We have a duty of care to the people within our data
  • Data is a liability, it should only be collected and processed when absolutely necessary
  • We loathe spam as much as you do!
  • We will never sell, rent or otherwise distribute or make public your personal information

2.0 Relevant legislation

Along with our business and internal computer systems, the named app & the corresponding infrastructure is designed to comply with the following national and international legislation with regards to data protection and user privacy:

The NDT Reference app compliance with the above legislation, all of which are stringent in nature, means that the app is likely compliant with the data protection and user privacy legislation set out by many other countries and territories as well. If you are unsure about whether the app is compliant with your own country of residences’ specific data protection and user privacy legislation you should contact our data protection officer (details of whom can be found in section 9.0) for clarification.

3.0 Personal information that the app collects and why we collect it

The NDT Reference app collects and uses personal information for the following reasons:

3.1 Crash reporting

If you opt-in to allow sending of crash reports, if the app crashes, some data about your device is sent to the provider of this service, Firebase Crashlytics

This data is used by us to try and ascertain why the app on your device crashed. Collecting this data helps us identify recurring problems that need to be fixed in future app updates.

Full details of data collected can be found here. Below is a typical example of the type of data that is sent from your device:

  Value
Date of crash 17/01/2024 6:12:25 PM
App Name NDT Reference
App Version 2.0.2 (6)
Device OS Name iOS
Device OS Version 17.0.3
Device Model iPhone 13 Pro
Device RAM free 135.08 MB
Device Disk Space 1.64 GB
Device Orientation Portrait
Jailbroken/rooted No
App running in background No
Class/Module Name FormulaDetaiLViewController.swift
Line Number 18
Method FormulaDetaiLViewController.loadView()
Crash Stack Trace
Fatal Exception: NSInternalInconsistencyException
0  CoreFoundation                 0xed5e0 __exceptionPreprocess
1  libobjc.A.dylib                0x2bc00 objc_exception_throw
2  Foundation                     0x6bc398 _userInfoForFileAndLine
3  UIKitCore                      0x62c400 -[UIMenu _resolvedElementSize]
4  UIKitCore                      0x632154 __appendMenuToSnapshot
5  UIKitCore                      0x632474 _UIContextMenuCollectionViewDataSourceSnapshot
6  UIKitCore                      0xd6d9d0 -[_UIContextMenuListView setDisplayedMenu:]
7  UIKitCore                      0x4b2a5c -[_UIContextMenuView _newListViewWithMenu:position:]
8  UIKitCore                      0x4b1970 -[_UIContextMenuView _displayMenu:inPlaceOfMenu:updateType:alongsideAnimations:]
9  UIKit                          0xbba4 -[_UIContextMenuViewAccessibility displayMenu:updateType:alongsideAnimations:]
10 UIKitCore                      0x1047d44 -[_UIContextMenuUIController presentationTransitionWillBegin]
11 UIKitCore                      0xf70568 -[_UIContextMenuPresentation prepareToPresent]
12 UIKitCore                      0x42218 +[UIView(Animation) performWithoutAnimation:]
13 UIKitCore                      0x4dbb30 -[_UIRapidClickPresentationAssistant _performPresentationAnimationsFromViewController:]
14 UIKitCore                      0x4db970 -[_UIRapidClickPresentationAssistant presentFromSourcePreview:lifecycleCompletion:]
15 UIKitCore                      0xdb0220 __55-[_UIClickPresentationInteraction _performPresentation]_block_invoke_2
16 UIKitCore                      0x2c213c +[UIViewController _performWithoutDeferringTransitionsAllowingAnimation:actions:]
17 UIKitCore                      0xdb01d0 __55-[_UIClickPresentationInteraction _performPresentation]_block_invoke.25
18 UIKitCore                      0xdafff8 -[_UIClickPresentationInteraction _performPresentation]
19 UIKitCore                      0xdb1b04 postPreviewTransition_block_invoke_2
20 UIKitCore                      0x1d2d34 handleEvent
21 UIKitCore                      0xdaf77c -[_UIClickPresentationInteraction _performPreviewPresentation]
22 UIKitCore                      0x12b0f1c __56-[UIContextMenuInteraction _presentMenuAtPlatformPoint:]_block_invoke
23 UIKitCore                      0x12b423c __78-[UIContextMenuInteraction _interactionShouldBeginAtPlatformPoint:completion:]_block_invoke
24 UIKitCore                      0x12b4134 -[UIContextMenuInteraction _interactionShouldBeginAtPlatformPoint:completion:]
25 UIKitCore                      0x12b0edc -[UIContextMenuInteraction _presentMenuAtPlatformPoint:]
26 WebKit                         0xa8a9bc (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
27 WebKit                         0x51cdd8 (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
28 WebKit                         0x547aec (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
29 WebKit                         0x9c1b30 (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
30 WebKit                         0xac5cfc (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
31 WebKit                         0x6961d8 (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
32 WebKit                         0xac1384 (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
33 WebKit                         0xac19d8 (Missing UUID 6efb68dce7a13a049bcb33afe518ae63)
34 JavaScriptCore                 0x4fe14 WTF::RunLoop::performWork()
35 JavaScriptCore                 0x50ce4 WTF::RunLoop::performWork(void*)
36 CoreFoundation                 0x37acc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__
37 CoreFoundation                 0x36d48 __CFRunLoopDoSource0
38 CoreFoundation                 0x3555c __CFRunLoopDoSources0
39 CoreFoundation                 0x34238 __CFRunLoopRun
40 CoreFoundation                 0x33e18 CFRunLoopRunSpecific
41 GraphicsServices               0x35ec GSEventRunModal
42 UIKitCore                      0x22f2fc -[UIApplication _run]
43 UIKitCore                      0x22e938 UIApplicationMain
44 NDT Reference                  0x747c main + 14 (AboutViewController.swift:14)
45 ???                            0x1cc357d44 (Missing)
							
Generated User UUID 46C3275B-47D2-48AB-BF3C-0B181AE5BD52

Please note: the transfer of information about crashes and malfunctions to the Crashlytics service is optional and can be enabled or disabled at any time from within the app settings.

4.0 How we store your personal information

The data collected in section 3.1 is sent directly to the provider of this service, Firebase Crashlytics. Some of the data is copied to an offline spreadsheet which is used to identify repeat crashes in the same module/method.

5.0 Our third-party data processors

We use a number of third parties to process personal data on our behalf. These third parties have been carefully chosen and comply with the legislation set out in section 2.0.

6.0 Data controller

The data controller for this app is: The British Institute of Non-Destructive Testing Limited, a UK Private Limited Company with company number: 969051

Whose registered office is:
  Midsummer House,
  Riverside Way,
  Bedford Road,
  Northampton .
  NN1 5NX

7.0 Data Protection Officer

Alicia Carroll
Quality Officer, The British Institute of Non-Destructive Testing Ltd.
Telephone: 01604 438300
Email: [email protected]

8.0 Changes to our privacy policy

This privacy policy may change from time to time in line with legislation or industry developments. We will not explicitly inform our clients or app users of these changes. Instead, we recommend that you check this page occasionally for any policy changes. Specific policy changes and updates are mentioned in the change log below.

8.1 Change log

13/12/2019

  • Privacy policy instigated

18/01/2024

  • Added information about crash reporting and what is contained within a report
  • Updated Data Protection Officer details

14/08/2024

  • Updated Data Protection Officer email address