├── AccuWeather++
└── Tweak.xm
├── AdGuard++
└── Tweak.xm
├── AnimeGT++
└── Tweak.xm
├── Audiomack++
└── Tweak.xm
├── Bear++
└── Tweak.xm
├── Boom++
└── Tweak.xm
├── Cycles++
└── Tweak.xm
├── Cydia Background Refresh
└── Tweak.xm
├── Eve++
└── Tweak.xm
├── Flo++
└── Tweak.xm
├── Glow++
└── Tweak.xm
├── Infuse 5++
└── Tweak.xm
├── Infuse 6++
└── Tweak.xm
├── JioSaavn++
└── Tweak.xm
├── Kodi++
└── Tweak.xm
├── Life++
└── Tweak.xm
├── Memorado++
└── Tweak.xm
├── Merriam-Webster++
└── Tweak.xm
├── MyPrivacy++
└── Tweak.xm
├── Paloma++
└── Tweak.xm
├── Plex++
└── Tweak.xm
├── Psiphon++
└── Tweak.xm
├── README.md
├── Safari Background Playback
└── Tweak.xm
├── Solo VPN++
└── Tweak.xm
├── SoundCloud++
└── Tweak.xm
├── Star VPN++
└── Tweak.xm
├── Tubio++
└── Tweak.xm
├── Turbo VPN++
└── Tweak.xm
├── Twitch++
└── Tweak.xm
├── VPN Proxy Master++
└── Tweak.xm
├── YouTube Music++
└── Tweak.xm
└── ZiniTevi++
└── Tweak.xm
/AccuWeather++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook AWInAppPurchaseController
2 | - (BOOL)isPlatinumUnlocked {
3 | return 1;
4 | }
5 | - (BOOL)isAppVersionPlatinum {
6 | return 1;
7 | }
8 | - (BOOL)is25DayForecastEnabled {
9 | return 1;
10 | }
11 | - (BOOL)isPlatinumEnabled {
12 | return 1;
13 | }
14 | - (void)setPlatinumUnlocked:(BOOL)arg1 {
15 | arg1 = 1;
16 | %orig;
17 | }
18 | - (void)setIs25DayForecastEnabled:(BOOL)arg1 {
19 | arg1 = 1;
20 | %orig;
21 | }
22 | %end
--------------------------------------------------------------------------------
/AdGuard++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ClassOne
2 | - (BOOL)proStatus {
3 | return 1;
4 | }
5 | - (BOOL)purchasedThroughLogin {
6 | return 1;
7 | }
8 | %end
9 |
10 | %hook ClassTwo
11 | - (BOOL)isProPurchasedInternal {
12 | return 1;
13 | }
14 | %end
15 |
16 | %ctor {
17 | %init(ClassOne = objc_getClass("Adguard.ConfigurationService"), ClassTwo = objc_getClass("Adguard.PurchaseService"));
18 | };
--------------------------------------------------------------------------------
/AnimeGT++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook GADAdSource
2 | - (BOOL)invalidated {
3 | return 1;
4 | }
5 | %end
--------------------------------------------------------------------------------
/Audiomack++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook GADAdSource
2 | - (BOOL)invalidated {
3 | return 1;
4 | }
5 | %end
6 |
7 | %hook ALInterstitialAd
8 | - (void)initWithSdk:(id)arg1 {
9 | }
10 | %end
11 |
12 | %hook ClassOne
13 | - (BOOL)isPremium {
14 | return 1;
15 | }
16 | %end
17 |
18 | %hook ClassTwo
19 | - (BOOL)isPremium {
20 | return 1;
21 | }
22 | %end
23 |
24 | %hook ClassThree
25 | - (void)didTapEqualizer:(id)arg1 {
26 | }
27 | %end
28 |
29 | %ctor {
30 | %init(ClassOne = objc_getClass("audiomack_iphone.AMUserRepository"), ClassTwo = objc_getClass("audiomack_iphone.PremiumRepository"), ClassThree = objc_getClass("audiomack_iphone.AMSettingsViewController"));
31 | };
--------------------------------------------------------------------------------
/Bear++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook SFNotesActionsItem
2 | - (BOOL)isPro {
3 | return 1;
4 | }
5 | - (void)setIsPro:(BOOL)arg1 {
6 | arg1 = 1;
7 | %orig;
8 | }
9 | %end
10 |
11 | %hook SFNotesPreferenceManager
12 | - (BOOL)isProSubscriptionValid {
13 | return 1;
14 | }
15 | %end
--------------------------------------------------------------------------------
/Boom++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ISBaseManager
2 | - (BOOL)isPremium:(id)arg1 {
3 | return 1;
4 | }
5 | - (BOOL)isPremiumAvailable {
6 | return 1;
7 | }
8 | %end
9 |
10 | %hook UMONPromoMetaData
11 | - (BOOL)isExpired {
12 | return 0;
13 | }
14 | - (BOOL)isPremium {
15 | return 1;
16 | }
17 | %end
18 |
19 | %hook ClassOne
20 | - (BOOL)hasPurchasedPass {
21 | return 1;
22 | }
23 | %end
24 |
25 | %ctor {
26 | %init(ClassOne = objc_getClass("Boom.AppStateManager"));
27 | };
--------------------------------------------------------------------------------
/Cycles++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ClassOne
2 | - (BOOL)hasFeature:(int64_t)arg1 {
3 | return 1;
4 | }
5 | - (BOOL)isPremiumMember {
6 | return 1;
7 | }
8 | - (BOOL)isProUser {
9 | return 1;
10 | }
11 | %end
12 |
13 | %ctor {
14 | %init(ClassOne = objc_getClass("Cycles.SubscriptionPurchaseLog"));
15 | };
--------------------------------------------------------------------------------
/Cydia Background Refresh/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook Cydia
2 | - (void)applicationDidEnterBackground:(id)arg1 {
3 | }
4 | %end
5 |
6 | %hook Cydia
7 | - (void)applicationWillResignActive:(id)arg1 {
8 | }
9 | %end
10 |
11 | %hook UIApplication
12 | - (void)_applicationDidEnterBackground {
13 | }
14 | %end
--------------------------------------------------------------------------------
/Eve++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ForumTopic
2 | - (BOOL)isPremiumOnly {
3 | return 0;
4 | }
5 | %end
6 |
7 | %hook ForumUser
8 | - (BOOL)isPremium {
9 | return 1;
10 | }
11 | - (void)setIsPremium:(BOOL)arg1 {
12 | arg1 = 1;
13 | %orig;
14 | }
15 | %end
16 |
17 | %hook GLChatRequestViewController
18 | - (BOOL)isPremium {
19 | return 1;
20 | }
21 | - (void)setIsPremium:(BOOL)arg1 {
22 | arg1 = 1;
23 | %orig;
24 | }
25 | %end
26 |
27 | %hook GLSKUserPlanStatus
28 | - (BOOL)isActive {
29 | return 1;
30 | }
31 | - (BOOL)isRenewable {
32 | return 0;
33 | }
34 | - (BOOL)user:(int)arg1 hasActivePlan:(id)arg2 {
35 | return 1;
36 | }
37 | - (BOOL)isPremiumUser:(int)arg1 {
38 | return 1;
39 | }
40 | - (BOOL)isCurrentUserPremium {
41 | return 1;
42 | }
43 | %end
44 |
45 | %hook LXUser
46 | - (BOOL)isPremium {
47 | return 1;
48 | }
49 | - (BOOL)isPremiumOrBoughtAlc:(id)arg1 {
50 | return 1;
51 | }
52 | %end
--------------------------------------------------------------------------------
/Flo++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook Survey
2 | - (BOOL)isPremium {
3 | return 1;
4 | }
5 | %end
6 |
7 | %hook ClassOne
8 | - (BOOL)isPremiumAvailable {
9 | return 1;
10 | }
11 | - (void)setIsPremiumAvailable:(BOOL)arg1 {
12 | arg1 = 1;
13 | %orig;
14 | }
15 | - (BOOL)isPremiumActive {
16 | return 1;
17 | }
18 | - (void)setIsPremiumActive:(BOOL)arg1 {
19 | arg1 = 1;
20 | %orig;
21 | }
22 | - (BOOL)isPremiumFeaturesAvailable {
23 | return 1;
24 | }
25 | %end
26 |
27 | %hook ClassTwo
28 | - (BOOL)isPremiumAvailable {
29 | return 1;
30 | }
31 | - (BOOL)isPremiumActive {
32 | return 1;
33 | }
34 | - (BOOL)isPremiumFeaturesAvailable {
35 | return 1;
36 | }
37 | %end
38 |
39 | %ctor {
40 | %init(ClassOne = objc_getClass("PeriodTracker.PremiumManagerImpl"),ClassTwo = objc_getClass("PeriodTracker.PremiumFacadeImpl"));
41 | };
--------------------------------------------------------------------------------
/Glow++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook User
2 | - (BOOL)isPremium {
3 | return 1;
4 | }
5 | %end
6 |
7 | %hook DailyArticle
8 | - (BOOL)isPremiumChargedArticle {
9 | return 0;
10 | }
11 | %end
12 |
13 | %hook ForumTopic
14 | - (BOOL)isPremiumOnly {
15 | return 0;
16 | }
17 | %end
18 |
19 | %hook ForumUser
20 | - (BOOL)isPremium {
21 | return 1;
22 | }
23 | - (void)setIsPremium:(BOOL)arg1 {
24 | arg1 = 1;
25 | %orig;
26 | }
27 | %end
28 |
29 | %hook GLChatRequestViewController
30 | - (BOOL)isPremium {
31 | return 1;
32 | }
33 | - (void)setIsPremium:(BOOL)arg1 {
34 | arg1 = 1;
35 | %orig;
36 | }
37 | %end
38 |
39 | %hook GLSKUserPlanStatus
40 | - (BOOL)isActive {
41 | return 1;
42 | }
43 | - (BOOL)isRenewable {
44 | return 0;
45 | }
46 | - (BOOL)user:(int)arg1 hasActivePlan:(id)arg2 {
47 | return 1;
48 | }
49 | - (BOOL)isPremiumUser:(int)arg1 {
50 | return 1;
51 | }
52 | - (BOOL)isCurrentUserPremium {
53 | return 1;
54 | }
55 | %end
56 |
57 | %hook LXUser
58 | - (BOOL)isPremium {
59 | return 1;
60 | }
61 | - (BOOL)isPremiumOrBoughtAlc:(id)arg1 {
62 | return 1;
63 | }
64 | %end
--------------------------------------------------------------------------------
/Infuse 5++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook FCInAppPurchaseServiceMobile
2 | - (BOOL)hasValidReceipt {
3 | return 1;
4 | }
5 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
6 | return 1;
7 | }
8 | %end
9 |
10 | %hook FCInAppPurchaseServiceDummy
11 | - (BOOL)hasValidReceipt {
12 | return 1;
13 | }
14 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
15 | return 1;
16 | }
17 | %end
18 |
19 | %hook FCInAppPurchaseServiceBase
20 | - (BOOL)hasValidReceipt {
21 | return 1;
22 | }
23 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
24 | return 1;
25 | }
26 | - (BOOL)isFeaturePurchased:(int64_t)arg1 {
27 | return 1;
28 | }
29 | %end
30 |
31 | %hook FCInAppPurchaseServiceFullPro
32 | - (BOOL)hasValidReceipt {
33 | return 1;
34 | }
35 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
36 | return 1;
37 | }
38 | %end
--------------------------------------------------------------------------------
/Infuse 6++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook FCInAppPurchaseServiceMobile
2 | - (BOOL)hasValidReceipt {
3 | return 1;
4 | }
5 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
6 | return 1;
7 | }
8 | %end
9 |
10 | %hook FCInAppPurchaseServiceDummy
11 | - (BOOL)hasValidReceipt {
12 | return 1;
13 | }
14 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
15 | return 1;
16 | }
17 | %end
18 |
19 | %hook FCInAppPurchaseServiceBase
20 | - (BOOL)hasValidReceipt {
21 | return 1;
22 | }
23 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
24 | return 1;
25 | }
26 | - (BOOL)isFeaturePurchased:(int64_t)arg1 {
27 | return 1;
28 | }
29 | %end
30 |
31 | %hook FCInAppPurchaseServiceFullPro
32 | - (BOOL)hasValidReceipt {
33 | return 1;
34 | }
35 | - (BOOL)isFeaturePurchased:(int64_t)arg1 tillDate:(id *)arg2 {
36 | return 1;
37 | }
38 | %end
--------------------------------------------------------------------------------
/JioSaavn++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook UserData
2 | - (void)setProStatus:(BOOL)arg1 {
3 | arg1 = 1;
4 | %orig;
5 | }
6 | - (void)setFreemiumStatus:(BOOL)arg1 {
7 | arg1 = 0;
8 | %orig;
9 | }
10 | - (BOOL)skipLimitReached {
11 | return 0;
12 | }
13 | - (BOOL)isPro {
14 | return 1;
15 | }
16 | - (void)setIsPro:(BOOL)arg1 {
17 | arg1 = 1;
18 | %orig;
19 | }
20 | - (BOOL)isFreemium {
21 | return 0;
22 | }
23 | - (void)setIsFreemium:(BOOL)arg1 {
24 | arg1 = 0;
25 | %orig;
26 | }
27 | %end
28 |
29 | %hook PaywallManager
30 | + (BOOL)isProRowUser {
31 | return 1;
32 | }
33 | %end
34 |
35 | %hook DownloadingSongsVC
36 | - (BOOL)areDownloadsBlocked {
37 | return 0;
38 | }
39 | %end
40 |
41 | %hook SubscriptionManager
42 | - (BOOL)isUserDormant {
43 | return 0;
44 | }
45 | - (BOOL)canOfferFreeTrial {
46 | return 0;
47 | }
48 | - (BOOL)isUserAnyPro {
49 | return 1;
50 | }
51 | - (BOOL)isSubscriptionPrimeProduct {
52 | return 1;
53 | }
54 | %end
55 |
56 | %hook MediaCell
57 | - (BOOL)isUnavailableReuseId {
58 | return 0;
59 | }
60 | - (BOOL)isUnavailable {
61 | return 0;
62 | }
63 | - (void)setIsUnavailable:(BOOL)arg1 {
64 | arg1 = 0;
65 | %orig;
66 | }
67 | %end
68 |
69 | %hook AlbumVC
70 | - (BOOL)isUnavailable {
71 | return 0;
72 | }
73 | %end
--------------------------------------------------------------------------------
/Kodi++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook XBMCController
2 | - (void)enterBackground {
3 | }
4 | %end
--------------------------------------------------------------------------------
/Life++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ATMe
2 | - (BOOL)isSubscribed {
3 | return 1;
4 | }
5 | %end
--------------------------------------------------------------------------------
/Memorado++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook DebugPremiumValidatorPreferences
2 | - (BOOL)isPremium {
3 | return 1;
4 | }
5 | - (void)setIsPremium:(BOOL)arg1 {
6 | arg1 = 1;
7 | %orig;
8 | }
9 | %end
10 |
11 | %hook WorkoutCalendarCell
12 | - (void)configureForHomeWithWorkoutResults:(id)arg1 andDate:(id)arg2 userIsPremium:(BOOL)arg3 {
13 | arg3 = 1;
14 | %orig;
15 | }
16 | - (void)configureWithWorkoutResults:(id)arg1 andDate:(id)arg2 userIsPremium:(BOOL)arg3 {
17 | arg3 = 1;
18 | %orig;
19 | }
20 | - (void)setIconWithWorkoutResults:(id)arg1 assetPrefix:(id)arg2 andDate:(id)arg3 userIsPremium:(BOOL)arg4 {
21 | arg4 = 1;
22 | %orig;
23 | }
24 | %end
25 |
26 | %hook PremiumTypeChecker
27 | + (BOOL)isPremiumForPremiumType:(int)arg1 {
28 | return 1;
29 | }
30 | %end
31 |
32 | %hook PremiumStatusService
33 | - (BOOL)isPremiumForType:(int)arg1 {
34 | return 1;
35 | }
36 | - (BOOL)premium {
37 | return 1;
38 | }
39 | - (void)setPremium:(BOOL)arg1 {
40 | arg1 = 1;
41 | %orig;
42 | }
43 | %end
44 |
45 | %hook GamesService
46 | - (id)gameSessionForSceneName:(id)arg1 andIsPremium:(BOOL)arg2 {
47 | arg2 = 1;
48 | return %orig;
49 | }
50 | %end
51 |
52 | %hook RelaxTipData
53 | - (BOOL)isPremium {
54 | return 1;
55 | }
56 | - (void)setIsPremium:(BOOL)arg1 {
57 | arg1 = 1;
58 | %orig;
59 | }
60 | %end
--------------------------------------------------------------------------------
/Merriam-Webster++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook AppDelegate
2 | - (void)validateRemoveAdsSubscriptionWithCompletion:(id)arg1 {
3 | }
4 | - (void)showRemoveAdsNagWithProduct:(id)arg1 {
5 | }
6 | - (BOOL)isProductUpgraded {
7 | return 1;
8 | }
9 | - (void)setMustValidateReceipts {
10 | }
11 | - (BOOL)supportsThesaurus {
12 | return 1;
13 | }
14 | - (BOOL)adShouldBeVisible {
15 | return 0;
16 | }
17 | - (BOOL)canShowInterstitial {
18 | return 0;
19 | }
20 | - (BOOL)interstitialAdsEnabled {
21 | return 0;
22 | }
23 | - (BOOL)adsEnabled {
24 | return 0;
25 | }
26 | - (void)showNags {
27 | }
28 | - (void)showResetNag {
29 | }
30 | - (void)showRateNag {
31 | }
32 | %end
--------------------------------------------------------------------------------
/MyPrivacy++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook ClassOne
2 | - (void)validatePurchasesInternally {
3 | }
4 | - (BOOL)hasValidSubscription {
5 | return 1;
6 | }
7 | %end
8 |
9 | %ctor {
10 | %init(ClassOne = objc_getClass("MyPrivacy.SubscriptionManager"));
11 | };
--------------------------------------------------------------------------------
/Paloma++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook APNSubscription
2 | - (BOOL)isActive {
3 | return 1;
4 | }
5 | %end
6 |
7 | %hook APNSubscriptionsManager
8 | - (BOOL)hasActiveSubscription {
9 | return 1;
10 | }
11 | - (BOOL)isActiveSubscriptionInFreeTrialPeriod {
12 | return 0;
13 | }
14 | - (BOOL)isFreeTrial {
15 | return 0;
16 | }
17 | - (void)setIsFreeTrial:(BOOL)arg1 {
18 | arg1 = 0;
19 | %orig;
20 | }
21 | %end
22 |
23 | %ctor {
24 | %init(ClassOne = objc_getClass("Paloma.AppDelegate"));
25 | };
--------------------------------------------------------------------------------
/Plex++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook PMPlexIAPManager
2 | - (BOOL)hasBeenPurchasedUnlockLimitedPlayback {
3 | return 1;
4 | }
5 | %end
--------------------------------------------------------------------------------
/Psiphon++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook IAPStoreHelper
2 | + (BOOL)hasActiveSubscriptionForNowOnBlock:(id)arg1 {
3 | return 1;
4 | }
5 | + (BOOL)hasActiveSubscriptionForNow {
6 | return 1;
7 | }
8 | + (BOOL)hasActiveSubscriptionForDate:(id)arg1 {
9 | return 1;
10 | }
11 | + (BOOL)hasActiveSubscriptionForDate:(id)arg1 getExpiryDate:(id *)arg2 {
12 | return 1;
13 | }
14 | + (BOOL)hasActiveSubscriptionForDate:(id)arg1 inDict:(id)arg2 getExpiryDate:(id *)arg3 {
15 | return 1;
16 | }
17 | %end
18 |
19 | %hook SettingsViewController
20 | - (BOOL)hasActiveSubscription {
21 | return 1;
22 | }
23 | - (void)setHasActiveSubscription:(BOOL)arg1 {
24 | arg1 = 1;
25 | %orig;
26 | }
27 | %end
28 |
29 | %hook IAPViewController
30 | - (BOOL)hasActiveSubscription {
31 | return 1;
32 | }
33 | - (void)setHasActiveSubscription:(BOOL)arg1 {
34 | arg1 = 1;
35 | %orig;
36 | }
37 | %end
38 |
39 | %hook SubscriptionData
40 | - (BOOL)hasActiveSubscriptionForNow {
41 | return 1;
42 | }
43 | - (BOOL)hasActiveAuthorizationForDate:(id)arg1 {
44 | return 1;
45 | }
46 | %end
47 |
48 | %hook PsiCashClientModel
49 | - (BOOL)hasActiveSpeedBoostPurchase {
50 | return 1;
51 | }
52 | %end
53 |
54 | %hook InnerMeterView
55 | - (BOOL)speedBoosting {
56 | return 1;
57 | }
58 | - (void)setSpeedBoosting:(BOOL)arg1 {
59 | arg1 = 1;
60 | %orig;
61 | }
62 | %end
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # iOS-Tweaks
2 |
3 | The source code of all of my tweaks for the SarahH12099 Repo
4 |
5 | Please credit me if you are using the source code of my tweaks
6 |
7 | Please know the source code of all my tweaks isn't uploaded yet, I will be uploading the rest soon
8 |
9 | The source code maybe updated and maybe new ones will be added in the future but I don't know yet
--------------------------------------------------------------------------------
/Safari Background Playback/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook WKContentView
2 | - (void)_applicationWillResignActive:(id)arg1 {
3 | }
4 | %end
5 |
6 | %hook WKContentView
7 | - (void)_applicationDidEnterBackground {
8 | }
9 | %end
--------------------------------------------------------------------------------
/Solo VPN++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook SFUserCenter
2 | - (BOOL)isVip {
3 | return 1;
4 | }
5 | - (BOOL)isFreePremium {
6 | return 0;
7 | }
8 | - (void)setUsername:(id)arg1 {
9 | arg1 = @"SarahH12099";
10 | %orig;
11 | }
12 | - (void)setVipExpiredDate:(id)arg1 {
13 | NSString *dateStr = @"10-10-2099";
14 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
15 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
16 | NSDate *date = [dateFormat dateFromString:dateStr];
17 | arg1 = date;
18 | %orig;
19 | }
20 | - (void)setAutoRenew:(BOOL)arg1 {
21 | arg1 = 0;
22 | %orig;
23 | }
24 | - (NSString *)username {
25 | return @"SarahH12099";
26 | }
27 | - (NSDate *)vipExpiredDate {
28 | NSString *dateStr = @"10-10-2099";
29 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
30 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
31 | NSDate *date = [dateFormat dateFromString:dateStr];
32 | return date;
33 | }
34 | - (BOOL)isAutoRenew {
35 | return 0;
36 | }
37 | %end
38 |
39 | %hook SFVipHelper
40 | - (BOOL)isVip {
41 | return 1;
42 | }
43 | - (BOOL)isFreePremium {
44 | return 0;
45 | }
46 | %end
47 |
48 | %hook SFNetworkSpeedBar
49 | - (BOOL)isVip {
50 | return 1;
51 | }
52 | - (void)setIsVIP:(BOOL)arg1 {
53 | arg1 = 1;
54 | %orig;
55 | }
56 | %end
57 |
58 | %hook SFVPNServerArea
59 | - (BOOL)isVip {
60 | return 1;
61 | }
62 | - (void)setIsVIP:(BOOL)arg1 {
63 | arg1 = 1;
64 | %orig;
65 | }
66 | %end
--------------------------------------------------------------------------------
/SoundCloud++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook TrackMetaDataEntity
2 | - (BOOL)isOfflineSyncFeatureEnabled {
3 | return 1;
4 | }
5 | %end
6 |
7 | %hook UserFeaturesService
8 | - (BOOL)isOfflineSyncFeatureEnabled {
9 | return 1;
10 | }
11 | - (BOOL)isOfflineSyncEnabled {
12 | return 1;
13 | }
14 | - (void)disableOfflineSync {
15 | }
16 | - (BOOL)isKruxEnabled {
17 | return 1;
18 | }
19 | - (BOOL)isDevelopmentMenuEnabled {
20 | return 1;
21 | }
22 | - (BOOL)shouldRequestAds {
23 | return 0;
24 | }
25 | - (BOOL)isHQAudioFeatureEnabled {
26 | return 1;
27 | }
28 | %end
29 |
30 | %hook OfflineSyncConfigurationDataSource
31 | - (BOOL)isOfflineSyncFeatureEnabled {
32 | return 1;
33 | }
34 | - (BOOL)isOfflineSyncEnabled {
35 | return 1;
36 | }
37 | %end
38 |
39 | %hook OfflineBaseService
40 | - (BOOL)isOfflineSyncFeatureEnabled {
41 | return 1;
42 | }
43 | %end
44 |
45 | %hook AdDownloader
46 | - (BOOL)shouldRequestAds {
47 | return 0;
48 | }
49 | %end
50 |
51 | %hook MobileApiUser
52 | - (BOOL)isPro {
53 | return 1;
54 | }
55 | - (void)setIsPro:(BOOL)arg1 {
56 | arg1 = 1;
57 | %orig;
58 | }
59 | %end
60 |
61 | %hook UserSocialRelationshipModel
62 | - (BOOL)isPro {
63 | return 1;
64 | }
65 | - (void)setIsPro:(BOOL)arg1 {
66 | arg1 = 1;
67 | %orig;
68 | }
69 | %end
70 |
71 | %hook SearchUser
72 | - (BOOL)isPro {
73 | return 1;
74 | }
75 | %end
--------------------------------------------------------------------------------
/Star VPN++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook PCVPNLocation
2 | - (BOOL)isPremium {
3 | return 1;
4 | }
5 | - (void)setPremium:(BOOL)arg1 {
6 | arg1 = 1;
7 | %orig;
8 | }
9 | %end
10 |
11 | %hook PCClient
12 | - (double)expirationTime {
13 | NSString *dateStr = @"10-10-2099";
14 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
15 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
16 | NSDate *date = [dateFormat dateFromString:dateStr];
17 | double final = [date timeIntervalSince1970];
18 | return final;
19 | }
20 | - (BOOL)isPremium {
21 | return 1;
22 | }
23 | %end
24 |
25 | %hook PCLocationsViewController
26 | - (BOOL)isPremium {
27 | return 1;
28 | }
29 | - (void)setPremium:(BOOL)arg1 {
30 | arg1 = 1;
31 | %orig;
32 | }
33 | %end
34 |
35 | %hook PCLocationTableViewCell
36 | - (void)updateWithLocation:(id)arg1 premium:(BOOL)arg2 {
37 | arg2 = 1;
38 | %orig;
39 | }
40 | %end
--------------------------------------------------------------------------------
/Tubio++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook MobileYTWebViewController
2 | - (BOOL)isPremiumVersion {
3 | return 1;
4 | }
5 | - (void)setIsPremiumVersion:(BOOL)arg1 {
6 | arg1 = 1;
7 | %orig;
8 | }
9 | %end
10 |
11 | %hook RemoteRequestDelegate
12 | - (void)initWithReplySocket:(id)arg1 url:(id)arg2 host:(id)arg3 port:(int64_t)arg4 resource:(id)arg5 headers:(id)arg6 andQueue:(id)arg7 isM3U8:(BOOL)arg8 isPremium:(BOOL)arg9 useSD:(BOOL)arg10 {
13 | arg9 = 1;
14 | %orig;
15 | }
16 | - (BOOL)isPremium {
17 | return 1;
18 | }
19 | - (void)setIsPremium:(BOOL)arg1 {
20 | arg1 = 1;
21 | %orig;
22 | }
23 | %end
24 |
25 | %hook PlaylistInputStream
26 | - (void)initWithPlaylistURL:(id)arg1 isPremium:(BOOL)arg2 useSD:(BOOL)arg3 parent:(id)arg4 {
27 | arg2 = 1;
28 | %orig;
29 | }
30 | - (BOOL)isPremium {
31 | return 1;
32 | }
33 | - (void)setIsPremium:(BOOL)arg1 {
34 | arg1 = 1;
35 | %orig;
36 | }
37 | %end
38 |
39 | %hook TBInappPurchaseManager
40 | - (BOOL)productPurchased:(id)arg1 {
41 | return 1;
42 | }
43 | %end
--------------------------------------------------------------------------------
/Turbo VPN++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook FlurryUtil
2 | + (BOOL)deviceIsJailbroken {
3 | return 0;
4 | }
5 | + (BOOL)appIsCracked {
6 | return 0;
7 | }
8 | %end
9 |
10 | %hook AppsFlyerUtils
11 | + (BOOL)isJailbroken {
12 | return 0;
13 | }
14 | %end
15 |
16 | %hook ANSMetadata
17 | - (BOOL)computeIsJailbroken {
18 | return 0;
19 | }
20 | - (BOOL)isJailbroken {
21 | return 0;
22 | }
23 | %end
24 |
25 | %hook DUUrlRequestFilterManager
26 | + (BOOL)isJailBreak {
27 | return 0;
28 | }
29 | + (BOOL)isJailBreak1 {
30 | return 0;
31 | }
32 | + (BOOL)isJailBreak2 {
33 | return 0;
34 | }
35 | + (BOOL)isJailBreak3 {
36 | return 0;
37 | }
38 | + (BOOL)isJailBreak4 {
39 | return 0;
40 | }
41 | %end
42 |
43 | %hook ACPrivateBrowserController
44 | - (void)transitionInWithVPNConnected:(BOOL)arg1 serverIcon:(id)arg2 isVIP:(BOOL)arg3 {
45 | arg3 = 1;
46 | %orig;
47 | }
48 | %end
49 |
50 | %hook ACStatisticTool
51 | + (void)setUserID:(id)arg1 isVIP:(BOOL)arg2 {
52 | arg2 = 1;
53 | %orig;
54 | }
55 | %end
56 |
57 | %hook ACUserVIPInfo
58 | - (BOOL)isVIP {
59 | return 1;
60 | }
61 | - (BOOL)isAutoRenew {
62 | return 0;
63 | }
64 | - (void)setIsAutoRenew:(BOOL)arg1 {
65 | arg1 = 0;
66 | %orig;
67 | }
68 | - (NSDate *)vipExpiredDate {
69 | NSString *dateStr = @"10-10-2099";
70 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
71 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
72 | NSDate *date = [dateFormat dateFromString:dateStr];
73 | return date;
74 | }
75 | - (void)setVipExpiredDate:(id)arg1 {
76 | NSString *dateStr = @"10-10-2099";
77 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
78 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
79 | NSDate *date = [dateFormat dateFromString:dateStr];
80 | arg1 = date;
81 | %orig;
82 | }
83 | %end
84 |
85 | %hook ACUser
86 | - (BOOL)isVIP {
87 | return 1;
88 | }
89 | %end
90 |
91 | %hook ACUserStatisticTool
92 | + (void)setUserID:(id)arg1 isVIP:(BOOL)arg2 {
93 | arg2 = 1;
94 | %orig;
95 | }
96 | %end
97 |
98 | %hook ACVPNServerArea
99 | - (BOOL)isVIP {
100 | return 1;
101 | }
102 | - (void)setIsVIP:(BOOL)arg1 {
103 | arg1 = 1;
104 | %orig;
105 | }
106 | %end
107 |
108 | %hook APMInAppPurchaseItem
109 | - (BOOL)isFreeTrial {
110 | return 0;
111 | }
112 | - (void)setFreeTrial:(BOOL)arg1 {
113 | arg1 = 0;
114 | %orig;
115 | }
116 | - (BOOL)isIntroductoryOffer {
117 | return 0;
118 | }
119 | - (void)setIntroductoryOffer:(BOOL)arg1 {
120 | arg1 = 0;
121 | %orig;
122 | }
123 | %end
124 |
125 | %hook SubscriptionView
126 | - (void)autoRenewSwitchClick:(id)arg1 {
127 | }
128 | %end
129 |
130 | %hook RMAppReceipt
131 | - (BOOL)containsInAppPurchaseOfProductIdentifier:(id)arg1 {
132 | return 1;
133 | }
134 | - (BOOL)containsActiveAutoRenewableSubscriptionOfProductIdentifier:(id)arg1 forDate:(id)arg2 {
135 | return 0;
136 | }
137 | %end
138 |
139 | %hook RMAppReceiptIAP
140 | - (BOOL)isActiveAutoRenewableSubscriptionForDate:(id)arg1 {
141 | return 0;
142 | }
143 | %end
144 |
145 | %hook RMStoreUtils
146 | + (BOOL)isExpiredProductOfIdentifier:(id)arg1 {
147 | return 0;
148 | }
149 | + (BOOL)isExistActivedAutoRenewableSubscriptionForDate:(id)arg1 {
150 | return 0;
151 | }
152 | + (BOOL)isExistActivedAutoRenewableSubscription {
153 | return 0;
154 | }
155 | %end
--------------------------------------------------------------------------------
/Twitch++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook TWAccountManager
2 | - (BOOL)isTurbo {
3 | return 1;
4 | }
5 | %end
--------------------------------------------------------------------------------
/VPN Proxy Master++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook VipHelper
2 | + (BOOL)isVIP {
3 | return 1;
4 | }
5 | + (BOOL)isRenewable {
6 | return 0;
7 | }
8 | %end
9 |
10 | %hook ACStatisticTool
11 | + (void)setUserID:(id)arg1 isVIP:(BOOL)arg2 {
12 | arg2 = 1;
13 | %orig;
14 | }
15 | %end
16 |
17 | %hook ACUserVIPInfo
18 | - (BOOL)isVIP {
19 | return 1;
20 | }
21 | - (BOOL)isAutoRenew {
22 | return 0;
23 | }
24 | - (void)setIsAutoRenew:(BOOL)arg1 {
25 | arg1 = 0;
26 | %orig;
27 | }
28 | - (NSDate *)vipExpiredDate {
29 | NSString *dateStr = @"10-10-2099";
30 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
31 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
32 | NSDate *date = [dateFormat dateFromString:dateStr];
33 | return date;
34 | }
35 | - (void)setVipExpiredDate:(id)arg1 {
36 | NSString *dateStr = @"10-10-2099";
37 | NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
38 | [dateFormat setDateFormat:@"dd-MM-yyyy"];
39 | NSDate *date = [dateFormat dateFromString:dateStr];
40 | arg1 = date;
41 | %orig;
42 | }
43 | %end
44 |
45 | %hook ACUser
46 | - (BOOL)isVIP {
47 | return 1;
48 | }
49 | %end
50 |
51 | %hook ACUserStatisticTool
52 | + (void)setUserID:(id)arg1 isVIP:(BOOL)arg2 {
53 | arg2 = 1;
54 | %orig;
55 | }
56 | %end
57 |
58 | %hook ACVPNServerArea
59 | - (BOOL)isVIP {
60 | return 1;
61 | }
62 | - (void)setIsVIP:(BOOL)arg1 {
63 | arg1 = 1;
64 | %orig;
65 | }
66 | %end
67 |
68 | %hook ACVPNServersViewController
69 | - (BOOL)onTrialVIP {
70 | return 0;
71 | }
72 | %end
73 |
74 | %hook APMInAppPurchaseItem
75 | - (BOOL)isFreeTrial {
76 | return 0;
77 | }
78 | - (void)setFreeTrial:(BOOL)arg1 {
79 | arg1 = 0;
80 | %orig;
81 | }
82 | - (BOOL)isIntroductoryOffer {
83 | return 0;
84 | }
85 | - (void)setIntroductoryOffer:(BOOL)arg1 {
86 | arg1 = 0;
87 | %orig;
88 | }
89 | %end
90 |
91 | %hook MainViewController
92 | - (BOOL)showRatingAfterReturn {
93 | return 0;
94 | }
95 | - (void)setShowRatingAfterReturn:(BOOL)arg1 {
96 | arg1 = 0;
97 | %orig;
98 | }
99 | - (BOOL)rateInAppStore {
100 | return 0;
101 | }
102 | - (void)setRateInAppStore:(BOOL)arg1 {
103 | arg1 = 0;
104 | %orig;
105 | }
106 | - (BOOL)showVipButton {
107 | return 0;
108 | }
109 | - (void)setShowVipButton:(BOOL)arg1 {
110 | arg1 = 0;
111 | %orig;
112 | }
113 | - (void)onClickActButton:(id)arg1 {
114 | }
115 | %end
116 |
117 | %hook SettingsViewController
118 | - (void)onClickVip {
119 | }
120 | - (void)onClickFeedback {
121 | }
122 | - (void)onClickRate {
123 | }
124 | - (void)onClickAccount {
125 | }
126 | %end
127 |
128 | %hook RMAppReceipt
129 | - (BOOL)containsInAppPurchaseOfProductIdentifier:(id)arg1 {
130 | return 1;
131 | }
132 | - (BOOL)containsActiveAutoRenewableSubscriptionOfProductIdentifier:(id)arg1 forDate:(id)arg2 {
133 | return 0;
134 | }
135 | %end
136 |
137 | %hook RMAppReceiptIAP
138 | - (BOOL)isActiveAutoRenewableSubscriptionForDate:(id)arg1 {
139 | return 0;
140 | }
141 | %end
142 |
143 | %hook RMStoreUtils
144 | + (BOOL)isExpiredProductOfIdentifier:(id)arg1 {
145 | return 0;
146 | }
147 | + (BOOL)isExistActivedAutoRenewableSubscriptionForDate:(id)arg1 {
148 | return 0;
149 | }
150 | + (BOOL)isExistActivedAutoRenewableSubscription {
151 | return 0;
152 | }
153 | %end
--------------------------------------------------------------------------------
/YouTube Music++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook YTGlobalConfig
2 | - (BOOL)alwaysShowVisitAdvertiser {
3 | return 0;
4 | }
5 | %end
6 |
7 | %hook YTUpsell
8 | - (BOOL)isCounterfactual {
9 | return 1;
10 | }
11 | %end
12 |
13 | %hook YTIPlayerResponse
14 | - (BOOL)ytm_isAudioOnlyPlayable {
15 | return 1;
16 | }
17 | - (id)ytm_audioOnlyUpsell {
18 | return NULL;
19 | }
20 | - (id)offlineUpsell {
21 | return NULL;
22 | }
23 | - (id)backgroundUpsell {
24 | return NULL;
25 | }
26 | - (BOOL)isMonetized {
27 | return 0;
28 | }
29 | - (BOOL)isPlayableInBackground {
30 | return 1;
31 | }
32 | %end
33 |
34 | %hook YTSingleVideo
35 | - (BOOL)isPlayableInPictureInPicture {
36 | return 1;
37 | }
38 | - (BOOL)isPlayableInBackground {
39 | return 1;
40 | }
41 | %end
42 |
43 | %hook YTPlaybackData
44 | - (BOOL)isPlayableInBackground {
45 | return 1;
46 | }
47 | %end
48 |
49 | %hook YTIPlayabilityStatus
50 | - (BOOL)isKoreanAgeVerificationRequired {
51 | return 0;
52 | }
53 | - (BOOL)isAgeCheckRequired {
54 | return 0;
55 | }
56 | - (BOOL)isContentCheckRequired {
57 | return 0;
58 | }
59 | - (BOOL)isPlayableInBackground {
60 | return 1;
61 | }
62 | - (BOOL)isPlayableInPictureInPicture {
63 | return 1;
64 | }
65 | - (id)offlineUpsell {
66 | return NULL;
67 | }
68 | - (id)backgroundUpsell {
69 | return NULL;
70 | }
71 | %end
72 |
73 | %hook YTMVideoOverlayViewController
74 | - (BOOL)isContentPanAllowed {
75 | return 1;
76 | }
77 | - (id)maybeShowUserEducation {
78 | return NULL;
79 | }
80 | - (id)maybeShowAudioOnlyUpsell {
81 | return NULL;
82 | }
83 | - (BOOL)isAVSwitchAvailable {
84 | return 1;
85 | }
86 | - (BOOL)showAVSwitchUserEducation {
87 | return 0;
88 | }
89 | - (BOOL)canDoubleTapForCurrentPlayerState {
90 | return 1;
91 | }
92 | - (BOOL)isAudioOnlyAuthorized {
93 | return 1;
94 | }
95 | - (void)setAVSwitchAvailable:(BOOL)arg1 {
96 | arg1 = 1;
97 | %orig;
98 | }
99 | %end
100 |
101 | %hook YTMAudioCastUpsellDialogController
102 | - (id)showAudioCastUpsellDialogWithUpsellParentResponder:(id)arg1 {
103 | return NULL;
104 | }
105 | %end
106 |
107 | %hook YTMUpsellDialogController
108 | - (id)showUpsellDialogWithUpsell:(id)arg1 upsellParentResponder:(id)arg2 {
109 | return NULL;
110 | }
111 | - (id)showUpsellDialogWithUpsellResponderEvent:(id)arg1 {
112 | return NULL;
113 | }
114 | - (id)showUpsellDialogWithUpsell:(id)arg1 videoID:(id)arg2 toastType:(int)arg3 upsellParentResponder:(id)arg4 {
115 | return NULL;
116 | }
117 | %end
118 |
119 | %hook YTMSettings
120 | - (BOOL)areHintsDisabled {
121 | return 1;
122 | }
123 | - (BOOL)doubleTapToSeekEnabled {
124 | return 1;
125 | }
126 | - (BOOL)isAudioQualitySettingsEnabled {
127 | return 1;
128 | }
129 | - (BOOL)allowAudioOnlyManualQualitySelection {
130 | return 1;
131 | }
132 | - (BOOL)allowRestrictedContentFlow {
133 | return 1;
134 | }
135 | - (void)setHintsDisabled:(BOOL)arg1 {
136 | arg1 = 1;
137 | %orig;
138 | }
139 | %end
140 |
141 | %hook YTIBackgroundabilityRenderer
142 | - (id)backgroundUpsell {
143 | return NULL;
144 | }
145 | %end
146 |
147 | %hook YTMBackgroundUpsellNotificationController
148 | - (id)removePendingBackgroundNotifications {
149 | return NULL;
150 | }
151 | - (id)maybeScheduleBackgroundUpsellNotification {
152 | return NULL;
153 | }
154 | %end
155 |
156 | %hook YTMWatchViewController
157 | - (BOOL)isAudioOnlyAuthorized:(id)arg1 {
158 | return 1;
159 | }
160 | %end
161 |
162 | %hook YTMNavigationDrawerPromoView
163 | - (id)init {
164 | return NULL;
165 | }
166 | %end
167 |
168 | %hook YTDoubleTapToSeekController
169 | - (void)enableDoubleTapToSeek:(BOOL)arg1 {
170 | arg1 = 1;
171 | %orig;
172 | }
173 | - (void)showDoubleTapToSeekEducationView:(BOOL)arg1 {
174 | arg1 = 0;
175 | %orig;
176 | }
177 | %end
178 |
179 | %hook YTMContentViewController
180 | - (id)showUpsellOrUserMessageForOfflineVideos:(id)arg1 offlineWatchEndpoint:(id)arg2 {
181 | return NULL;
182 | }
183 | %end
184 |
185 | %hook YTIOfflineabilityRenderer
186 | - (id)offlineUpsell {
187 | return NULL;
188 | }
189 | %end
190 |
191 | %hook YTIOfflineState
192 | - (id)offlineUpsell {
193 | return NULL;
194 | }
195 | %end
196 |
197 | %hook YTPlayerPromoController
198 | - (BOOL)showBackgroundabilityUpsell {
199 | return 0;
200 | }
201 | - (BOOL)showBackgroundOnboardingHint {
202 | return 0;
203 | }
204 | %end
205 |
206 | %hook YTCarPlayController
207 | - (void)setPremiumSubscriber:(BOOL)arg1 {
208 | arg1 = 1;
209 | %orig;
210 | }
211 | - (BOOL)isPremiumSubscriber {
212 | return 1;
213 | }
214 | %end
--------------------------------------------------------------------------------
/ZiniTevi++/Tweak.xm:
--------------------------------------------------------------------------------
1 | %hook NavRootVC
2 | - (UIView *)viewAds {
3 | return NULL;
4 | }
5 | %end
6 |
7 | %hook ALInterstitialAd
8 | - (void)initWithSdk:(id)arg1 {
9 | }
10 | %end
11 |
12 | %hook Util
13 | - (BOOL)isLimitTrackingAds {
14 | return 0;
15 | }
16 | %end
--------------------------------------------------------------------------------