]> git.ipfire.org Git - thirdparty/wireguard-apple.git/commitdiff
UI: iOS: remove donation link 1.0.11-21
authorJason A. Donenfeld <Jason@zx2c4.com>
Tue, 15 Dec 2020 23:03:34 +0000 (00:03 +0100)
committerJason A. Donenfeld <Jason@zx2c4.com>
Thu, 17 Dec 2020 21:44:30 +0000 (22:44 +0100)
Apple forbids us from having a simple link to wireguard.com/donations/
in the version info window, citing the existence of this link as a form
of payment outside of their in-app purchase framework that requires 30%.
The link had been there for around two years. After rejecting an app
update for a critical networking regression unrelated to this, they
wrote:

    Dec 17, 2020 at 8:35 PM
    From Apple

    3.1.1 - Business - Payments - In-App Purchase

    We noticed that your app allows users to contribute donations to the
    development of your app with a mechanism other than the in-app
    purchase API, which is not appropriate for the App Store.

    Next Steps

    To resolve this issue, please revise your app to use the in-app
    purchase API to pay for this type of transaction. Please note that
    even though tipping another individual is optional, the tip is
    connected to or associated with the receipt of digital content or
    services in your app and must be purchased through in-app purchase
    in accordance with guideline 3.1.1 of the App Store Review
    Guidelines.

    Please see attached screenshot for details.

Trying to appeal this or reason with Apple is not going to be a fruitful
endeavor, so instead we simply cut our losses and remove the donation
link entirely. The goal, anyway, is to get a timely critical update into
the hands of users, and encouraging Apple to block that further would be
a disservice.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Sources/WireGuardApp/Config/Version.xcconfig
Sources/WireGuardApp/UI/iOS/ViewController/SettingsTableViewController.swift

index a53e2324a902bfe7b558dc6ba2312c35403cbdc1..fa6e391a176fc63e170fb23d5e173d811bd6c112 100644 (file)
@@ -1,2 +1,2 @@
 VERSION_NAME = 1.0.11
-VERSION_ID = 20
+VERSION_ID = 21
index 4d353b3861dc094f7153f2e7992c23302dd02cad..a3afafd3b8aa940ffb7f1c92a91eb4303a19dc9d 100644 (file)
@@ -11,7 +11,6 @@ class SettingsTableViewController: UITableViewController {
         case goBackendVersion
         case exportZipArchive
         case viewLog
-        case donateLink
 
         var localizedUIString: String {
             switch self {
@@ -19,13 +18,12 @@ class SettingsTableViewController: UITableViewController {
             case .goBackendVersion: return tr("settingsVersionKeyWireGuardGoBackend")
             case .exportZipArchive: return tr("settingsExportZipButtonTitle")
             case .viewLog: return tr("settingsViewLogButtonTitle")
-            case .donateLink: return tr("donateLink")
             }
         }
     }
 
     let settingsFieldsBySection: [[SettingsFields]] = [
-        [.iosAppVersion, .goBackendVersion, .donateLink],
+        [.iosAppVersion, .goBackendVersion],
         [.exportZipArchive],
         [.viewLog]
     ]
@@ -169,15 +167,6 @@ extension SettingsTableViewController {
                 self?.presentLogView()
             }
             return cell
-        } else if field == .donateLink {
-            let cell: ButtonCell = tableView.dequeueReusableCell(for: indexPath)
-            cell.buttonText = field.localizedUIString
-            cell.onTapped = {
-                if let url = URL(string: "https://www.wireguard.com/donations/"), UIApplication.shared.canOpenURL(url) {
-                    UIApplication.shared.open(url, options: [:])
-                }
-            }
-            return cell
         }
         fatalError()
     }