marzika / snapprefs Goto Github PK
View Code? Open in Web Editor NEWA project which offer enhanced features for Snapchat throught the Xposed Framework.
License: GNU General Public License v3.0
A project which offer enhanced features for Snapchat throught the Xposed Framework.
License: GNU General Public License v3.0
Shouldn't be in version control - Android studio changes it when you open the project on a new computer which causes pulls and branch changes to fail.
I have an Asus ZenFone 5. Applying this module ends up in a bootloop. Tried 1.4.3 beta 3 and beta 2. .Android version: 5.0
I noticed a issue with groups. The issue is that people in groups get mixed up. For example:
People A in A group
People B in B group
People C in C group
When you choose the people, everything is fine nothing wrong. But then when you close snapchat or something the people in groups get mixed up like:
People A are suddenly in C group
People B are in A group for no reason.. and so on.
I don't have a logcat of the issue as I went back to the stable version. It happens when alot of people are in the groups. It stays normal if only small number of people are in one group.
I use Samsung S3 Mini and when I updated Snapprefs to 1.6.4 and Snapchat 9.20.4.0, even if I choose Autosave I have to sweep to save.
Everything else works just right, except that it slows the processing of Snapchat App itself sometimes.
Since we already have automatic and swipe to save, please consider allowing the option of sending screen captured messages when the screenshot keys are pressed (in addition to actually saving the pictures as well).
Sending pictures from the gallery to the story? How to do?
When automatically saving snaps, the sender gets a screenshot notification. Using current Snapchat (9.11.0.0) and Snapprefs (1.4.3 via Xposed).
Not sure how many of these you are aware of, the current app at the time of me posting this though has a couple issues.
In the "Buy/Activate membership" menu, the field to request your username for godmod has no button under it, I don't have premium so I don't know if that's something that only pops up after you've done that or what, if that's the case then ignore this.
Another bug is in the visual filter store, when you click "Manage Visual Filters" the list comes up with a transparent background and pressing back exits out of the entire visual filter store screen. Everything else is looking good, I can separate this in to two issues or provide screenshots etcetera if needed.
It still vibrates when saving a snap even though I unchecked the setting.
Could You possibly update this awesome module to work with latest Snapchat version?
In General > Misc, the option "show snapprefs icon in launcher" makes Snapprefs crash every time I try to use it.
I use Android 4.2.2 and can provide a logcat if you need it
When I save stories automatically, my phone vibrates for 10 seconds for each snap, and saves it multiple times. Disabling "vibrate when saved" does nothing.
Its crashing on SnapChat 9.3.1.0. Not sure if this is just because I'm on 5.1 xposed or because it's broken.
The latest snapchat update blocked root users.
I've been looking around the sourcecode for a bit and tried to fix it.
I managed to fix one root check but I could not find any other checks.
I still can't login while the methods that check are deactivated.
The methods and fixes are:
VO.b() return false;
VO.c() return false;
VO.d() return false;
VO.e() return false;
XU.i(String arg) arg[0] = "0";
Snapchat version: 9.20.2.0
VO class has an string "/system/app/Superuser.apk"
And XU class has a string "two_fa_mechanism_used" and a lot of setters.
Interesting classes are:
com.snapchat.android.apiv2.LoginTask
The following snippet of code is currently broken in HookMethods.java
:
location.setImageDrawable(mResources.getDrawable(R.drawable.location));
Is it possible to add the proper location.png
files in the various drawable folders?
It would be handy do see a link to the XDA page
Has to be updated for v9.4.2.0
I am sure this is a simple enchantment and here's the theory:
When you send a local image in SC, the original behavior is it will send it as a "message" and it will behave just like sent text.
What about we override the behavior and make SC think that this snap has been just captured? From a legal point of view, this will allow using a better camera app to take a normal shot and then send it like a normal snap.
I am personally going to take on the task once I finish school as well.
can not be! The logon attempt failed temporarily. (I removed xposed)
If one wanted to use a extremely beta, no help offered version, how would they to abiut compiling this code?
Hi,
In snapprefs, I noticed that an option offers to show a snapprefs button integrated in snapchat.
While the sharing button is there, when pulling down / tapping the snap icon, I don't see this button. There are, as usual, the 'help' button, 'trophies', and snapchat settings at the top, + the 'add friends' things. What does it looks like, could I be missing it ?
I can provide both Xposed Log & logcat if you need them, and my device is a Samsung with Android 4.2.2 .
Hello,
It looks like snapchat has been updated and thus the proguard obfuscated classes have changed. May I suggested adding some functionality to heuristically look for the classes and methods you need. For example for :
//ScreenshotDetector class
public static final String SCREENSHOTDETECTOR_CLASS = "ara";
You could look through all the classes and search for certain strings or function signatures. Like return me the class which has the string "blah" as a field initializer with a function of return value boolean that takes two parameters int and string.
I/Xposed (14564): ----------------- SNAPPREFS HOOKED -----------------
I/Xposed (14564): SnapChat Version: 9.15.1.0 (720)
I/Xposed (14564): SnapPrefs Version: 1.4.7 (15)
E/Xposed (14564): java.lang.NoSuchMethodError: ara#a(java.util.List)#exact
E/Xposed (14564): at de.robv.android.xposed.XposedHelpers.findMethodExact(XposedHelpers.java:181)
E/Xposed (14564): at de.robv.android.xposed.XposedHelpers.findAndHookMethod(XposedHelpers.java:131)
E/Xposed (14564): at de.robv.android.xposed.XposedHelpers.findAndHookMethod(XposedHelpers.java:138)
E/Xposed (14564): at com.marz.snapprefs.HookMethods.handleLoadPackage(HookMethods.java:244)
E/Xposed (14564): at de.robv.android.xposed.IXposedHookLoadPackage$Wrapper.handleLoadPackage(IXposedHookLoadPackage.java:20)
E/Xposed (14564): at de.robv.android.xposed.callbacks.XC_LoadPackage.call(XC_LoadPackage.java:34)
E/Xposed (14564): at de.robv.android.xposed.callbacks.XCallback.callAll(XCallback.java:70)
E/Xposed (14564): at de.robv.android.xposed.XposedBridge$1.beforeHookedMethod(XposedBridge.java:174)
E/Xposed (14564): at de.robv.android.xposed.XposedBridge.handleHookedMethod(XposedBridge.java:648)
E/Xposed (14564): at android.app.ActivityThread.handleBindApplication(<Xposed>)
E/Xposed (14564): at android.app.ActivityThread.access$1500(ActivityThread.java:151)
E/Xposed (14564): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
E/Xposed (14564): at android.os.Handler.dispatchMessage(Handler.java:102)
E/Xposed (14564): at android.os.Looper.loop(Looper.java:135)
E/Xposed (14564): at android.app.ActivityThread.main(ActivityThread.java:5254)
E/Xposed (14564): at java.lang.reflect.Method.invoke(Native Method)
E/Xposed (14564): at java.lang.reflect.Method.invoke(Method.java:372)
E/Xposed (14564): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
E/Xposed (14564): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
E/Xposed (14564): at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:115)
Snapchat started detecting the xposed framework files and blocking login attempts.
This xda link goes through different users workarounds and strategies:
http://forum.xda-developers.com/xposed/snapchat-rooted-phones-xposed-t3283198
From what I can gather from that thread and my personal experiences, snapchat seems to be checking for the xposed files during the initial login, and not after.
I have had two interesting experiences myself:
I don't have any experience developing for xposed, and a small bit of experience with android development in general, so as a question for the devs here, would it be feasible to intercept this call and override the return value? Naively I would assume that snapchat is simply stat
ing the file, or the java equivalent, and we could just return E_NOSUCHFILE
or whatever.
I can not download when I click on the snap sees downward. (Snap without saving)
only I have this problem?
Phone: Nexus 5 with Cyanogenmod 12.1
Android version: Android 5.1.1
Snapchat version: v9.21.1.0
Snapprefs version: 1.6.5
Xposed framework version: 78.0
Hello,
I use iFont to change the system's font. It used to work with Snapchat/Snapprefs (v9.20.2.0 Beta/1.6.3), but when I updated both of them (v9.21.1.0/1.6.5), Snapchat no longer used my custom font. Disabling Snapprefs in the Xposed framwork fixes the problem. Am I missing some options in Snapprefs to change the font or is it unintended?
Thanks
Hello!
I was wondering if you automate the process of mapping the obfuscated classes of SC in any way.
I mean, doing it by trial and error seems stupid.
Do you use some software to compare classes from different versions or anything?
Thanks
Would be nice if you had some sort of checklist, like on the stream but somewhere so there is a way of tracking the development.
Hi,
When I clear snapprefs data, a lot of options (I'll try to remember all of them next time) makes the app crash if I check/uncheck them, but only once : after relaunching snapprefs once I never have any other crash when i use THIS option, until I clear data again.
Example :
Clear app data, Launch snapprefs, open the menu and try to tap on "Spoofing" . This make snapprefs crash on my device. After relaunching it, the "spoofing" menu is accessible without any other crash.
Android 4.2.2 and I can provide logcat, as usual.
When are we getting a new update? I have been waiting for the update for a long time.
Basically, I wish for a UI that when a user imports a image (IE: from the gallery instead of taking it), that will allow the user to move and scale it to fit SnapChat's frame.
Don't know if this is possible, but I figured I'd ask.
Cheers
I noticed that you've had the next set of obfuscation fixes in the repository for around a week now, but haven't updated the module APK so a lot of features don't work for those that has snapprefs installed even if the fixes have been made.
Is there a potential alternative method of handling the obfuscation strings so that they can be released/integrated into the app quicker?
Perhaps an online source (doesn't even have to be an API, toss json files onto github pages and tell the app to check the repo daily) with string names and known-blacklisted features for every supported version of SC, that way you can release those outside of the app lifecycle for faster updates and if a certain snapchat change turns out to crash snapprefs, you have a way of remotely disabling that feature so it keeps working.
I'm not sure if xposed will work with dynamic strings as hook class/method names, but just an idea.
This didn't happen on my OnePlus One or Note 4, but on my BLU Pure XL, if I have Snapprefs on and tap on the Snapchat icon, my phone stops responding to everything for a couple minutes. Screen touches and button presses do nothing. When it comes back, Snapchat may or may not be loaded, but within a minute of my phone being "usable" again, it crashes and restarts itself. Log is attached.
Hey there, now that the xda thread is defunct, I'm wondering what the easiest place is to get notified of the next update, whenever it happens to be released. I know in that past you've posted to your Snapchat story, teasing releases. I also seem to recall you posting to Instagram now and then, which actually would be the easiest solution, seeing as how I could set Instagram to notify me of posts from your account. I'm just trying to narrow down where I should watch - could you tell me which is the best place?
Thanks!
Hi again !
As usual, when viewing a story, tapping the bottom of the screen will open a chat with the author.
However, when I enable the 'save button' feature, it's so low that tapping it open the chat instead.
Like you suggested in another thread, it could be because of my 540*960 resolution though.
Compiled the app to check everything out, noticed there isnt an option for rainbow text,
Did you remove that or? And i didnt get the new things like font or any of thoose to work for me. Live blocking works and the new sharing button works´, and the open settings from snapchat app works.
Hi ! I'm reviewing the way snapprefs & snapchat works (and it's pretty interesting)
Looking at the xml preferences of snapchat, I already saw that the lenses are forced by snapprefs, hooking the "is_device_whitelisted_for_lenses_on_backend" to true.
With a recent version of snapchat, (9.27 i guess, I'm not really sure) the 'pinnable stickers' were added. This gif is explaining what they do better than me , but it still works only with major devices, like lenses.
A 'pinnable_stickers' value has been added to the preferences, and they work the same way as lenses : If it's set to true, these stickers are working, if it isn't, they won't 'show up'.
I'm thinking of hooking the 'pinnable_stickers' value to true, the same way as lenses, in the same file, with almost the same code, would it be possible ?
Thank you for your time and patience !
Hello new version of snapchat is not compatible with snappref . Have you idea to fix this ?
If you need help tell me.
Thank.
Hey, unfortunately we can't use old snapchat versions anymore. Is there any possibility that we could get an update soon?
Ever since Marshmallow (and some Lollipop devices) a lot of users that have software keys have problems with them overlapping with Snapchat's bottom buttons
I'm wondering if it's possible to fix this via an enhancement on your module? Like an option to raise the bottom of the app 48dpi (or w.e the size of the navbar) if the option is enabled. Thank you.
I do not understand exactly what is written I did not know much English, I apologize for it. Working on this module? Update close? I want them to know. Thank you :)
Jenkins is currently failing on this build with the following error.
:app:compileDebugJavaWithJavac/var/lib/jenkins/workspace/Snapprefs/app/src/main/java/com/marz/snapprefs/GcmBroadcastReceiver.java:13: error: class GCMBroadcastReceiver is public, should be declared in a file named GCMBroadcastReceiver.java
public class GCMBroadcastReceiver extends WakefulBroadcastReceiver {
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
FAILED
FAILURE: Build failed with an exception.
- What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
</code?
The last step specifies to long-press the T icon, but that doesn't do anything anymore. I think that functionality is now in the triangle icon?
It's been around 3 to 4 months since snapprefs update, link to XDA has also been closed and it is stated that it will reopen once update has arrived. There is no clue of any new update which was said to be released very soon by Marzika. Please tell us if an update is being developed and if it is then when will it get launched?
My last thread was closed by Marzika with a reply that he will update snapprefs when everyone learns that he doesn't own anyone anything and stuff. Well FYI everyone knows that. People learnt that the same day you closed XDA thread. It would be better if you say clearly if you are ever going to launch or you are just developing it in freetime for timepass of yours or never going to launch. With your response we can know to update our snapchat and not stay on 9.21.1.0
My understanding of the issue isn't really clear, sorry about that. From what I understand, Snapprefs saves a story each time I watch it. It creates a lot of duplicated files. I'm pretty sure it saves the file multiple times without me even watching the story multiple times. It is the unclear part.
EDIT:
I did some testing and here's a better review of the issue. I removed all saved snaps, then I watched a random snap and Snapprefs saved 6 identical files...
Phone: Nexus 5 with Cyanogenmod 12.1
Android version: Android 5.1.1
Snapchat version: v9.20.2.0 Beta
Snapprefs version: 1.6.3
Xposed framework version: 78.0
For the time being, I wrote a small bash script that filter and moves duplicates. Here it is if someone is interested: https://gist.github.com/TheNiceGuy/262ac6a2c7107acf7ac2. It basically hashes each file and checks for duplicates. It does not remove duplicate Stories with ReceivedSnaps, they are checked separately. Thanks.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.