[INVESTIGATION] Android Pie - Multitasking Gesture - Google Pixel 2 Themes, Apps, and Mods

I'm opening this thread because I want to work out the multitasking gesture API implemented in Android Pie (I think DP3+.)
I'm going to try reverse-engineering the APK but I'm including a dumped copy here for anyone else who wants to have a shot at it.
(Note to Moderators: I have no idea if this kind of thing is allowed - if not, you can just delete the thread.)

Quick update; I reverse engineered some of the APK with Fernflower.
The code is heavily obfuscated but I think I found the relevant code. (This is just a quick glance as I don't have the time to go through it thoroughly.)
The ZIP contains:
com/android/systemui/shared:
recents/...*
system/...*
R.java
(I don't want to type out the whole list)

Related

How can I view the source code of an android app?

This is probably a noob question, but how can you view the coding of an android application? I just had a small test app developed for me and I would like to look at the "guts" of it.
I downloaded the emulator but I haven't been able to figure out how to see my app's code using it. Maybe there is another way that's easier? You know, something akin to the "view page source" tab enabled in many browsers that allows you to see an html page's code?
I tried opening it with TextEdit on my Mac but it says its not readable.
What's an easy way to take a look at/edit the code?
Thanks in advance for your help!
Android-apktool
Android-apktool - A tool for reengineering Android apk files ...
http: / / code.google.com/p/android-apktool
It is a tool for reengineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications; it makes possible to debug smali code step by step. Also it makes working with app easier because of project-like files structure and automation of some repetitive tasks like building apk, etc.
It is NOT intended for piracy and other non-legal uses. It could be used for localizing, adding some features or support for custom platforms and other GOOD purposes. Just try to be fair with authors of an app, that you use and probably like.
Click to expand...
Click to collapse
Google "apk manager"
Sent from my DROIDX using XDA App
Thank guys, however it says it can't be found - see this screencast I recorded: screencast.com/t/kII8UcBqE1RQ
Any ideas?
I feel like it can't be that complicated, but there is almost no info about in on Google...

Project Cream (Beta)

Hello everybody,
I'm Alessandro and I'm a student in IT Security at University of Milan.
I'm doing a thesis about Android Malware and I'm building a system to automatize the analyze of every App in every Market.
This system use a lot of free opensource products that I'm trying to customize and integrate.
The base idea is to enumerate all App in every Market (offical and not), download every free app and get Apk, at this point there is a first step that involve our customized version of Androguard for static analysis, next step is an hybrid analysis in a customized Android running on emulator.
More in detail:
- We are trying to enumerate all App using Android market api code.google.com/p/android-market-api and we are currently at work
- We want to download every free App enumerated by previous step, I think is not possible to download directly Apk, so I assume that I must *download App in an emulator and save Apk by a backup utility, any suggest??
- Next step is to anakyze Apk with Androguard and publish report (MD5 of Apk, permission declared, services...) to Db - not yet started
- After androguard we have to install Apk in emulator running customized Android, and here we have a lot of difficulties.
First of all we want to install App silently, without human actions, this is not possible by default but did you think is possible to modify Android source code to allow this?
In addition I have built a customized kernel with SELinux support, next problem is that I have to add SELinux commands to BusyBox and cross-compile, anyone have already do this?
After that, we must create a scripts (maybe an App?) to run tcpdump and get suspect traffic data, get SELinux logs and made a sort of anomaly detection.
All this result must be sent to the same Db so we have a comparison between static and hybrid analysis for same App.
We are asking you a little help if anyone have already do one or more pieces of this system or if anyone wants to contribute in this project.
Thank you for all

Adding a screenshot feature in Android 2.3

Hi; hopefully I'm posting this question in the right subforum. I'm sorry if that's not so.
I'm adding a screenshot feature to Android 2.3 for a given device. The goal is to have something similar to what the Galaxy Note does: take a screenshot from anywhere in the phone by pressing a couple of keys, and then start an image editor to edit the screenshot.
I've been using the Android Screenshot Library for this, although I've had to rewrite a few parts because it wasn't working as it should have. So far, my project has the following parts:
1) A native daemon running as root, which captures the framebuffer and saves it into an image.
2) An Android Service that apps can bind to in order to take screenshots.
3) An app that works as an image editor.
All of these parts are already working. My problem now is that I'm not really sure how to integrate this into Android.
The daemon and the editor are easy: both can be integrated either in source code or as prebuilt binaries/packages into the Android source and then generate a system image, and modifying init.rc to start the daemon at boot. But I can't figure out how to integrate my service.
I need to be able to capture a screenshot from anywhere, and that means being able to catch key presses system wide. I've been looking into the Android source code for the component that takes care of this, but I'm at a loss. I need to bind the service somewhere, and then I need to be able to catch the keys and access the service from anywhere.
I'm not even sure whether I'm using the right approach for this or not. As far as I know, key presses can only be caught from activities, so it's not as easy as having a service running indefinitely in the background that can catch key presses. My guess is that I have to modify something in the Android framework but I'm not sure what.
So, my questions are the following:
1) How can I catch key presses system-wide? What do I have to modify in the Android source code in order to catch my desired key press combo whenever I want?
2) What would be the best place to place my service? Is there such a thing as a "system-wide app" that my service can be added to?
3) Is my approach even possible at all?
Thank you in advance for any replies.
bump
I'd really appreciate any clues or maybe some pointers about how the Galaxy Note or Android 4.0 do this.

Cannot Import Google Platform (AOSP) App's Java File to Android SystemUI Java File.

Hi all,
Excited to be a new member to this forum, seems like there is lots of powerful information here.
So, not the most clear title ever, but a specific example of my problem goes like this. If I want to take advantage of googles launcher3 src code such as CellLayout.java (packages/apps/Launcher3/src/com/android/launcher3/CellLayout.java) so I can play with the ability to reorganize the home screens app layout using the methods existing in that file. I would wish to import this CellLayout.java file so I can use it from a quick setting tile button's file, such as in the airplane mode tile.
In file frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/AirplaneModeTile.java
So if I add the line "import com.android.launcher3.CellLayout;" in AirplaneModeTile.java, when I do a full AOSP build with the changes to the two files I get a compile time Error on the import code that "launcher3 cannot be resolved".
If I had to guess these two files are in different domains of sorts, and I think when I build using GNU make from the top directory, the Google App's code (h t tps:// android.googlesource. c o m /platform/packages/apps/) such as the AlarmClock, Contacts, Camera, and Launcher3 for example are built and then removed from scope at a different time than the Android systemui code.
Any thoughts on how to fix this?

[TOOL] bindump - Dump binder service endpoint holders (owners) and users

Hello all,
(Note to mods: I'm too junior to post in Android Dev fora, so please someone move my post, I believe it's worthwhile as this is really useful)
I've updated my little known but highly useful 'bin dump' tool to work on Android 9 and later. This tool is like "service", able to list services, but not just In the normal namespace - also in the vndbinder (though that requires root).
The primary use of this tool is to list who's actually holding or using the service. There's a full explanation on how I accomplish this at the webpage - newandroidbook.com/tools/bindump.html (mods: please make this a link? I can't). This way you can see who's using "power", for example (i.e. holds wake locks) , or "SurfaceFlinger" (i.e. has activity views) or "activity" (i.e is an activity/service/broadcast receiver).
Unfortunately, the advanced use requires root, due to binder's debugfs entries being chowned and chmodded nowadays.
The tool DOES NOT use libbinder, and I effectively rewrote the whole thing in pure C with the low level ioctl()s. I support Android 9 and onwards (if you need insights to the parcel format, which changed three times in between these versions.. let me know). Should work everywhere - That said, I've seen idiosyncrasies in Samsung devices which I've accounted for. Feedback more than welcome.
I need a 32bit version , is source available?
Tool is not open source (too much secret sauce and re-implementation of libBinder from scratch) but I built a bdsm.armv7 binary and linked it from the download page
(direct: http://NewAndroidBook.com/tools/bdsm.armv7)
Thanks , will try that out

Categories

Resources