iOS Question error Info.plist

ibra939

Active Member
Licensed User
Longtime User
90683: Missing purpose string in Info.plist. Your app’s code references one or more APIs that access sensitive user data, or the app has one or more entitlements that permit such access. The Info.plist file for the “result.app” bundle should contain a NSBluetoothAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. If you’re using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. For details, visit: https://developer.apple.com/documen...vacy/requesting_access_to_protected_resources.


i dont use
#PlistExtra: <key>NSBluetoothAlwaysUsageDescription</key>

i use only

#PlistExtra: <key>NSPhotoLibraryAddUsageDescription</key><string>This app needs access to save images to your photo gallery.</string>
#PlistExtra: <key>GADApplicationIdentifier</key>
#PlistExtra: <key>UIStatusBarHidden</key><true/>
#PlistExtra: <key>UIViewControllerBasedStatusBarAppearance</key><false/>
 

hatzisn

Expert
Licensed User
Longtime User
Use this code by @yiankos1 (change it a bit):

B4X:
Private Sub Application_Start (Nav As NavigationController)

    'Φόρτωσε όλα τα αρχικες ρυθμίσεις και στο τέλος βάλε το checkidfa
 
    CheckIdfa
    
End Sub

Private Sub CheckIdfa
    'Έλεγχος εάν είναι premium user(ad-free)
    If Not(KVS.GetDefault("license",False)) Then
        ump.UpdateAndRequestIfNeededNative(pgMain,Null)
        Wait For ump_Update (Success As Boolean)
        Log("success: " & Success)
        Log("canRequestAds: " & ump.CanRequestAds)
    End If
 
'    Sleep(1000)
 
    Dim no As NativeObject = Me
    no.RunMethod("requestIDFA", Null)
    Wait For GAD_TrackingAuthorization (Status As Int)
    Log("IDFA status code:" & Status)
End Sub

And also add this:
#AdditionalLib: AppTrackingTransparency.framework

#PlistExtra: <key>NSUserTrackingUsageDescription</key>
#PListExtra: <string>This identifier will be used to deliver personalized ads to you.</string>

#PlistExtra:<key>SKAdNetworkItems</key><array>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>cstr6suwn9.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>4fzdc2evr5.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>2fnua5tdw4.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>ydx93a7ass.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>p78axxw29g.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>v72qych5uu.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>ludvb6z3bs.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>cp8zw746q7.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>3sh42y64q3.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>c6k4g5qg8m.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>s39g8k73mm.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>3qy4746246.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>f38h382jlk.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>hs6bdukanm.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>mlmmfzh3r3.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>v4nxqhlyqp.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>wzmmz9fp6w.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>su67r6k2v3.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>yclnxrl5pm.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>t38b2kh725.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>7ug5zh24hu.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>gta9lk7p23.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>vutu7akeur.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>y5ghdn5j9k.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>v9wttpbfk9.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>n38lu8286q.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>47vhws6wlr.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>kbd757ywx3.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>9t245vhmpl.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>a2p9lx4jpn.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>22mmun2rn5.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>44jx6755aq.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>k674qkevps.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>4468km3ulz.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>2u9pt9hc89.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>8s468mfl3y.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>klf5c3l5u5.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>ppxm28t8ap.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>kbmxgpxpgc.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>uw77j35x4d.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>578prtvx9j.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>4dzt52r2t5.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>tl55sbb4fm.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>c3frkrj4fj.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>e5fvkxwrpn.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>8c4e2ghe7u.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>3rd42ekr43.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>97r2b46745.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:<dict>
#PlistExtra:<key>SKAdNetworkIdentifier</key>
#PlistExtra:<string>3qcr597p9d.skadnetwork</string>
#PlistExtra:</dict>
#PlistExtra:</array>

Do you miss also the value in GAD Identifier?
 
Upvote 0

ibra939

Active Member
Licensed User
Longtime User
#PlistExtra: <key>NSBluetoothAlwaysUsageDescription</key><string>This app uses Bluetooth APIs indirectly through third-party SDKs (such as AdMob) to ensure proper ad delivery and improve overall app performance. The app does not connect to or track nearby Bluetooth devices.</string>

i add this code @hatzisn thanks so much
 
Upvote 0
Top