xposedinstaller's People
Forkers
pulser percy215 morristech burstlam x00null doruh uiss yunman serioz777 spazik69 hoshiimo androplus-org wadecope jayhamman kexuejin wrightrocket westcripp steven90 dzakus kismeter pdurand claytonjared waleedhassan ruqqq sas100069 agungraharjo meetloaf13 supervolt ashishb arvter aienkel ojoker0 rogelio6 elelinux xiaobi625 daveshow hops323 deenoo kevincorazza shiningdrops anthonycgl liveasx aljohanei v1sk marciozomb13 gac2009 jordontnyc2 kjones56 luminger bobquentok pcoder morphemic420 itzagoodlife cphacker yeonsh jlripoll marbulas hero355 elmasevmem michfood fredro 0x4d4e miui-ru sergemon7 bjtu2011 choldimir mohammadag purplechen ruling xuchdeid wcf1987 lionzeye kusl alienyd vallpv77 giacogius novic rosaage cye3s xiedantibu azgold10 dydbg cobann germainz dilesh garyd9 orz-forks libertymarine android-sec tempbottle gaich nick0lay zartre monkeytest15 nqk mhaz7 jerdog heizenbug thenorth chundongwangxposedinstaller's Issues
Notify on new module update
Hi!
It will be nice to have notifications when there is new module update. Is it possible?
Add Malaysia Translation
<!-- General/various strings -->
<string name="app_name">Pemasangan Xposed</string>
<string name="menuSend">Menghantar</string>
<string name="menuSaveToSd">Simpan Ke Kad SD</string>
<string name="xposed_not_active">Versi terbaru Xposed masih tidak aktif. Adakah anda ingin memasang framework dan reboot?</string>
<!-- Welcome screen / main sections -->
<string name="welcome">Selamat datang <b>Pemasangan Xposed</b>!\nSila pilih apa yang and mahukan:</string>
<string name="tabInstall">Framework</string>
<string name="tabInstallDescription">Disini anda boleh menguruskan Xposed framework, yang mana keperluan untuk setiap modul berfungsi.</string>
<string name="tabModules">Modul</string>
<string name="tabModulesDescription">Framework bekerja sendiri samaada \'atau tidak memasukkan sebarang fungsi. Anda perlu modul untuk itu. Dalam seksyen ini anda boleh aktifkan modul selepas anda telah memasangnya.</string>
<string name="tabDownload">Muat Turun</string>
<string name="tabDownloadDescription">Pada seksyen ini memberikan anda akses repositori daripada modul, jadi anda boleh mencari dan muat turun salah satu yang anda suka dan pastikan yang terkini.</string>
<string name="welcome_framework_update_available">Sebahagian kemas kini untuk Xposed framework tersedia (%s).</string>
<string name="welcome_update_available">Satu atau lebih kemas kini(s) modul tersedia.</string>
<string name="tabSettings">Tetapan</string>
<string name="tabSettingsDescription">Pergi ke bahagian ini untuk mengkonfigurasi pemasangan Xposed dan framework.</string>
<string name="tabLogs">Log</string>
<string name="tabLogsDescription">Tunjuk dan simpan/hantar log bagi Xposed framework.</string>
<string name="tabAbout">Mengenai</string>
<string name="tabAboutDescription">Pelajari mengenai seseorang yang mencipta Xposed, dimana untuk dapatkan sokongan untuk aplikasi ini dan lain-lain.</string>
<!-- Installer tab -->
<string name="install">Memasang/Kemaskini</string>
<string name="uninstall">Nyah Pasang</string>
<string name="installedVersion">Aktif</string>
<string name="latestVersion">dibundle</string>
<string name="versions">Versi:</string>
<string name="soft_reboot">Reboot Perlahan</string>
<string name="reboot">Reboot</string>
<string name="areyousure">Adakah anda pasti?</string>
<string name="phone_not_compatible">Xposed tidak (lagi) sesuai dengan versi Android SDK %1$d atau akitek pemprosessan anda (%2$s).</string>
<string name="not_tested_but_compatible">Xposed belum lagi diuji dengan versi Android SDK %d, tetapi kelihatan sesuai. Anda boleh mencuba memasangnya jika anda fikirkan sesuatu cabaran.</string>
<!-- Modules tab -->
<string name="module_is_not_activated_yet">Xposed modul belum aktif lagi</string>
<string name="module_empty_description">(Keterangan tidak tersedia)</string>
<string name="module_no_ui">Modul ini tidak menyediakan antara muka pengguna</string>
<string name="no_xposed_modules_found">Xposed module ditemui!</string>
<string name="xposed_module_list_updated">Senarai Xposed modul telah dikemaskini\nDitukar dan aktif selepas reboot</string>
<string name="warning_xposed_min_version">Modul ini memerlukan XposedBridge versi terbaru (%d) dan itu tidak boleh diaktifkan.</string>
<string name="no_min_version_specified">Modul ini tidak menyatakan versi XposedBridge yang diperlukan.</string>
<string name="warning_min_version_too_low">Modul ini telah dicipta untuk versi XposedBridge %1$d, tetapi disebabkan oleh perubahan yang tidak serasi dalam versi %2$d, ianya telah dilumpuhkan.</string>
<string name="module_launch">Lancarkan UI</string>
<string name="module_download_updates">Muat Turun/Kemaskini</string>
<string name="module_support">Sokongan</string>
<string name="module_app_info">Mengenai Aplikasi</string>
<string name="module_uninstall">Nyah Pasang</string>
<!-- Download tab -->
<string name="menuSearch">Cari</string>
<string name="menuReload">Reload</string>
<string name="changes">Perubahan:</string>
<string name="branch_display">(%s cawangan)</string>
<string name="download_author">Oleh %s</string>
<string name="download_unknown_author">Pemilik tidak diketahui</string>
<string name="download_status_installed">Pemasangan(versi %s)</string>
<string name="download_status_update_available">Kemaskini tersedia (versi %1$s \u2192 %2$s)</string>
<string name="download_timestamps">Ditambah pada %1$s \u00b7 Kemaskini %2$s</string>
<string name="download_sorting_title">Perintah susunan</string>
<string name="download_sorting_status">Susunan secara status</string>
<string name="download_sorting_updated">Susunan mengikut kemaskini terakhir</string>
<string name="download_sorting_created">Susunan mengikut tarikh dicipta</string>
<string name="download_section_framework">Framework</string>
<string name="download_section_update_available">Kemaskini tersedia</string>
<string name="download_section_installed">Dipasangkan/string>
<string name="download_section_not_installed">Tidak dipasang/string>
<string name="download_section_24h">Selepas 24 jam</string>
<string name="download_section_7d">Selepas 7 hari</string>
<string name="download_section_30d">Selepas 30 hari</string>
<string name="download_section_older">Lebih daripada 30 hari lepas</string>
<!-- Settings tab -->
<string name="settings_group_download">muat turun</string>
<string name="settings_enable_downloads">Membolehkan Muat turun</string>
<string name="settings_enable_downloads_summary">Benarkan Xposed Installer utk memeriksa kemaskini dan modul terbaru</string>
<string name="settings_group_experimental" tools:ignore="UnusedResources">Eksperimen</string>
<string name="settings_performance_experiment" tools:ignore="UnusedResources">Prestasi experimen</string>
<string name="settings_performance_experiment_summary" tools:ignore="UnusedResources">Jika anda membolehkan ini, Prestasi sistem anda mungkin sama ada kenaikan, penurunan atau tetap sama. Jangan ragu untuk mencuba dan membuat laporan yang kesan yang anda lihat (atau jika tidak ada pada semua). Anda perlu memasang semula framework dan reboot selepas menukar ini.</string>
<!-- Logs tab -->
<string name="logs_load_failed">Tidak boleh membaca log:</string>
<string name="logs_save_failed">Tidak boleh menulis log ke Kad SD:</string>
<string name="sdcard_not_writable">Kad SD tidak ditemui atau hanya baca sahaja</string>
<!-- About tab -->
<string name="about_developers_label">Main developers:</string>
<string name="about_developers"><a href="http://forum.xda-developers.com/member.php?u=4419114">rovo89</a> and <a href="http://forum.xda-developers.com/member.php?u=4322181">Tungstwenty</a></string>
<string name="about_developers_warning">Dilarang <b>tidak</b> menghubungi kami secara terus untuk sokongan,gunakan link dibawah.</string>
<string name="about_translator_label">Penterjemah:</string>
<string name="translator">Jay3Belas</string>
<string name="about_version_label">Versi Aplikasi ini:</string>
<string name="about_source_label">Source code:</string>
<string name="about_support_label">Dapatkan bantuan di:</string>
<string name="about_support_warning">Link ini adalah untuk pemasangan dan framework <b>sahaja</b>! Jika anda perlu bantuan mengenai modul, Jangan <b>tidak</b> menggunanya, hubungi pemilik modul sebaliknya.</string>
<string name="about_libraries_label">Perpustakaan digunakan:</string>
<!-- DownloadView -->
<string name="download_view_download">Muat Turun</string>
<string name="download_view_install">Memasang</string>
<string name="download_view_cancel">Batal</string>
<string name="download_view_no_url">Tidak ada URL link</string>
<string name="download_view_running">Muat turun sedang berjalan (%1$,d of %2$,d kB)</string>
<string name="download_view_waiting">Muat turun sedang menunggu</string>
<string name="download_view_successful">Muat turun berjaya</string>
<string name="download_view_failed">Muat turun gagal (error %d)</string>
<!-- DownloadUtils -->
<string name="download_md5sum_incorrect">MD5 sum tidak betul (downloaded: %1$s, expected: %2$s)</string>
<string name="download_could_not_read_file">Tidak dapat membaca fail yang dimuat turun: %s</string>
<string name="download_no_valid_apk">File yg dimuat turun adalah tidak sah APK (atau tidak serasi)</string>
<string name="download_incorrect_package_name">Nama pakej tidak betul (downloaded: %1$s, expected: %2$s)</string>
<!-- RepoLoader -->
<string name="repo_download_failed_http">Memuat turun %1$s failed: %2$d (%3$s)</string>
<string name="repo_download_failed">Memuat turun %1$s failed: %2$s</string>
<string name="repo_load_failed">Tidak dapat memuat repositori dari %1$s:\n%2$s</string>
Use navigation drawer
Instead of using a drop-down menu, shouldn't we use a navigation drawer such as the one in the Play Store app ? With different tabs for the different sections, and some smaller tabs for the "settings" and "about" sections (like Play Store).
Download info TextView is cut
While downloading bigger apk (e.g. GravityBox) the download info providing the progress of the download is too big in some translations and therefore the text will be displayed underneath the progressbar.
The following screenshot was posted on XDA and can also be reproduced on my device (N5, default DPI, no font tweaks)
Possible resolution: Put progress bar and cancel button in one line. Move textview below progress bar and set layout to fit two lines, so that the view won't move if the textview expands to two lines.
Unfortunately I wasn't able to fix it myself as I know too less about layout xmls.
Mistake sorry
Sorry sorry
Compatibility for ROMs which extend the Resources class themselves
Hi,
My phone is Huawei P6 with android 4.4.2 and when i upgrade my Xposed to new version (2.6) that is installed but not activated and not worked!
Please fix this bug!
Freezing apps don't disable module
- Install app
- Check module
- Reboot
- Freeze app with module
- Reboot
- Module still works
I think that when the application is freezed, the module should not work.
Can you provide details of the API reference
You release the wiki is too humble, and even a lot of API reference no record
Such as Xposedhelpers many important functions in a class
Your wiki recorded findandhookmethod only this method
Not everyone can understand the CPP code
In order to facilitate more Java developers, want you to provide details of the API reference
Hidden Refresh button when searching
http://i.imgur.com/aoeFZhxl.jpg
Go to Download page, start type something in search panel and Refresh button is hidden. Probably bug only on devices with low res displays.
repo.xml downloaded in plaintext
The installer grabs the repo listing in plain text :
wget http://dl.xposed.info/repo.xml.gz
It would be possible for someone to MITM this and insert malicious xposed extensions.
ART compatibility
Since the next major version of Android will be probably be using the ART Runtime ART will be needed to be supported in the future. Any idea what we can do to add support for the same? If Anyone else is working on it what's the current status on it's development?
XposedInstaller๏ผjava.lang.IllegalAccessError
Loading Xposed v54 (for Zygote)...
Running ROM '4.0.015.P1.8190' with fingerprint 'Coolpad/full_lc1810/lc1810_8190:4.0.3/IML74K/4.0.062.P1.131106.8190:user/release-keys'
Loading modules from /data/app/biz.bokhorst.xprivacy-1.apk
Loading class biz.bokhorst.xprivacy.XPrivacy
java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
at dalvik.system.DexFile.defineClass(Native Method)
at dalvik.system.DexFile.loadClassBinaryName(DexFile.java:195)
at dalvik.system.DexPathList.findClass(DexPathList.java:315)
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:58)
at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
at de.robv.android.xposed.XposedBridge.loadModule(XposedBridge.java:421)
at de.robv.android.xposed.XposedBridge.loadModules(XposedBridge.java:386)
at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:120)
at dalvik.system.NativeStart.main(Native Method)
How does this error happens? How to solve?
Xposed can not find class
My Issue is quite strage.
I am working on a Wechat Plugin. The origin app has an extra dex file in it's folder app_dex
which can be called plugin-dex. The plugin-dex contains some activities and UIs and
what I want to hook is in the plugin-dex.
when the app package was loaded, Xposed cant find the UI class, but startActivity(myUI Intent) is
able to launch.
Perhaps the two dex file in the same app are not loaded at one time ,How can I use Xposed to
solve the problem?
Add an option to disable Xposed's launcher icon
This doesn't bother me directly, but I keep on getting PMs on XDA about integrating Xposed into a Winzip-powered ROM.
Now I always respond with saying they should just add the APK, but mostly everyone wants to remove the icon, so they resort to modifying the APK (rather than compiling from source even), but I don't help with that.
Ideally. WelcomeActivity's intent-filter would be only for the action de.robv.android.xposed.installer.OPEN_XPOSED, and an alias would be added so the launcher icon stays. The alias can be disabled with pm disable if someone needs that, the option should not be added to the UI however.
This would reduce (or eliminate?) ROMs shipping a custom APK of Xposed.
If you're interested, I can do this myself, otherwise I'm not interested in doing this for myself since I wouldn't use it.
Improvements
Hi,
i got some ideas about Xposed Installer
1, Option to clear logs
2, Click on notification when downloading module to open "module page"
Detect Aliyun OS and prevent installation
These ROMs are not really Android. They have built their own compiler which is incompatible with Xposed. Idea: Prevent installation when "/system/framework/framework.jar.jex" is found.
Enable fast scrolling, tags
Since Xposed repo grows, I think we need this.
Maybe "module tags" would help too. So we can sort modules by tags (show only modules with "TouchWiz" tag only etc...)
Activate and reboot action is bugged
50690a1 adds an action "Activate and reboot" to activate a module right from the installer notification. However, even though the module is activated after selecting the option the module will not work! It's checked in the modules list but it's not being loaded (see debug.log). The module needs to be toggled inactive-active followed by a reboot to fully work. Tested with Xposed GEL Settings and No Wireless Charging Sound.
java.lang.VerifyError when using Xposed
Hi,
I'm working on an app with ~100,000 active users and we're getting reports of a few weird crashes. The thing they have in common is that they all have XposedBridge.java
in their stacktrace as well as being sdk version 16 or lower. I've been in touch with one of the users and he says it crashes even though he disables all Xposed modules.
The crash is a java.lang.VerifyError
on one of our own classes. This indicates this class uses methods that is for some reason not available on the classpath.
Here is the imported classes:
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.WeakHashMap;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Build;
import android.util.LruCache;
We use a couple of methods not available in sdk version <=16, but they are guarded by if-checks on the Build.VERSION.SDK_INT
and it works just fine on all devices that doesn't use Xposed.
The methods are:
Bitmap.getAllocationByteCount()
(sdk 19)
LruCache.trimToSize(int maxSize)
(sdk 17)
XposedInstallerActivity: NullPointerException during startup
Starting the XposedInstallerActivity from shell causing a NullPointerException.
Reproduce it by:
am start -n de.robv.android.xposed.installer/.XposedInstallerActivity
Version: 2.6.1
Enhancement - move the content in assets to libs
Current, there are some files in the assets
, it must be unpacked before any usage. But if it's in the libs
directory, it will just in the /data/data/*/lib
, and this avoids of the unpack assets.
However, the path name must in the format of libXXXX.so
.
White icons are not visible in modules list
White icons such the one of ActivityForceNewTask are not visible in the module list since the background is no longer a gradient but a opaque white.
We could draw an outline of the icon if the overall color is white. For this we can actually use the code of com.android.launcher3 since it does the same thing in createGlowingOutline(). This outline is created when dragging an icon to visualize it's drop location.
I can try and implement this if the issue is accepted.
http://androidxref.com/4.4.2_r1/xref/packages/apps/Launcher3/src/com/android/launcher3/BubbleTextView.java#206
Widgets to fast access to tabs
Hi,
Looks like you are going to bring us new UI for Xposed Installer. I have one idea. What about create widgets to fast access to Xposed's tabs (modules, framework, download)?
UI Redesign
The new UI gives us all the features but it's not very intuitive.
That's why I thought about it and tried to optimize it.
First thing: remove the "home" activity and just use a navigation drawer(as said in the other "issue" you can still keep the dropdown enabled).
Then I'd put the current "home" activity into the navigation instead and use it as the default one(this way we don't need to open a new activity when switching between our screens).
Then I'd like to reorganize the navigation targets.
The new ones would be(in order):
- Home/News
- Store
- My Modules
- Logs
- About
- Settings
- Reboot
I'd style this drawer like the playstore one. the first four should be big and should be navigation targets. About, should be opened in a Dialog - Settings in a new Activity. Reboot should show a dialog, too as I'll mention later.
The default view Home would look like the the sections in playstore's home where you have a big title, three apps in a row and a "more"-button.
Our section's would be "Updates" and "New Modules".
The Store would have three tabs "Modules", "Xposed", and "Categories".
The Modules Tab would be exactly the same as the current "Download"-Activity.
Xposed would have two sections like the Home view with the titles "Installer" and "Framework".
It should be easy to update from there. I wouldn't add the installation-mode switch there because we have settings for that.(I'd show a popup if xposed isn't installed though).
Also we don't need the reboot options there because we moved them to the navigation drawer and xposed creates notifications and popups for that anyway.
The Categories Tab wouldn't work right now because we don't have this information but this should be added in future.
The menu positions settings, logs and about don't need any changes.
If you select Reboot you'll see a dialog which asks you if you want to do a soft or hard reboot.
These changes would really improve Xposed.
No notification buttons for sideloaded module
I am just playing with Xposed, developing small module and I have just realized that notification about new/updated sideloaded module (APK from exclipse) do not include notification buttons (Reboot and activate). There is no such buttons for sideloaded modules.
Can you add these buttons, please?
Embedded images are not loaded
I am not sure if we want this...
http://i.imgur.com/f6pW6sR.png (http://repo.xposed.info/module/hk.kennethso168.xposed.advancedrebootmenu)
Empty module list after turn on screen
- Turn screen on
- Empty module list https://www.dropbox.com/s/xmb1r2bznueuyn8/2013-10-12%2020.16.13.png
- Back
- Module
- All module is displayed
Device: N4
ROM: CM 10.2 20131005-NIGHTLY-mako
Xposed installer version: 2.3.1
Segmentation fault
Installing using zip in recovery fails if device is encrypted
Xposed Framework can only be installed via Xposed Android app if the device is encrypted.
This is a serious issue for XPrivacy users, because XPrivacy (and Xposed Framework) gets disabled on flashing a new nightly.
Currently the user has to:
- Reboot into recovery
- Flash nightly from external sdcard
- Try to install Xposed Framework using the zip -> fails because device is encrypted
- Reboot into Android
- XPrivacy warns the user because Xposed is not installed
- Apps do whatever because XPrivacy is disabled
- Run Xposed app, install Xposed Framework, reboot
the problem here is steps 5 and 6 because step 3 fails :/
Empty intent (action == null) to provider causes crash
E/AndroidRuntime(10274): FATAL EXCEPTION: main
E/AndroidRuntime(10274): Process: de.robv.android.xposed.installer, PID: 10274
E/AndroidRuntime(10274): java.lang.RuntimeException: Unable to start receiver de.robv.android.xposed.installer.PackageChangeReceiver: java.lang.NullPointerException
E/AndroidRuntime(10274): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2426)
E/AndroidRuntime(10274): at android.app.ActivityThread.access$1700(ActivityThread.java:135)
E/AndroidRuntime(10274): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1272)
E/AndroidRuntime(10274): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime(10274): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime(10274): at android.app.ActivityThread.main(ActivityThread.java:5017)
E/AndroidRuntime(10274): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime(10274): at java.lang.reflect.Method.invoke(Method.java:515)
E/AndroidRuntime(10274): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
E/AndroidRuntime(10274): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
E/AndroidRuntime(10274): at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
E/AndroidRuntime(10274): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime(10274): Caused by: java.lang.NullPointerException
E/AndroidRuntime(10274): at de.robv.android.xposed.installer.PackageChangeReceiver.onReceive(PackageChangeReceiver.java:19)
E/AndroidRuntime(10274): at android.app.ActivityThread.handleReceiver(ActivityThread.java:2419)
E/AndroidRuntime(10274): ... 11 more
Auto-save logcat during installation
It would be useful to have some logic on the Installer (potentially optional) to help obtain better troubleshooting info with less effort from non-tech users.
One of these would be storing the logcat while doing a soft-reboot, so it can then be posted or shared.
A process can be spawned on the background with nohup to avoid getting it killed when the zygote process tree restarts:
nohup .../logcat_grabber.sh &
logcat_grabber.sh could contain:
logcat -v time > .../logcat.log
CHILD_PID=$!
sleep <reasonable seconds to wait for the boot(loop)>
kill $CHILD_PID
Actually, check http://stackoverflow.com/a/2387538 for some additional safety to prevent killing the child in case some other process has already reused its pid.
Handle android system update
At the moment, xposed prevents android system updates to be installed.
When the system reboots to the boot loader to install the update, the update script with the obtuse error message:
app_process has unexpected content
To fix it, you have to disable the framework and redo the install.
I don't know if xposedinstaller can be notified that a system update has been downloaded and automatically disable itself.
(The updates are usually a zip file located in the /cache folder)
After that, the system has to be rooted again(by flashing supersu.zip: the super su all is installed, but the su executable is not present on the system anymore)
If you don't you won't be able to re enable xposed.
And this were I noticed something strange: when I tried to re enable xposed without having flashed supersu.all, xposed displayed a messagebox with no message and a toast claiming that the install was successful and that I needed to reboot the phone.
Of course it wasn't the case.
Limit log size
I just got an 100MB log and my storrage memory run to low.
IMHO it would be a god idea to limit the log size to an usefull filesize.
cu
Play Store link
Reminder per request.
Crash when restore activity
Logcat
I/ActivityManager( 589): Start proc de.robv.android.xposed.installer for activity de.robv.android.xposed.installer/.XposedInstallerActivity: pid=9163 uid=10131 gids={50131, 1015, 3003, 1028}
D/AndroidRuntime( 9163): Shutting down VM
W/dalvikvm( 9163): threadid=1: thread exiting with uncaught exception (group=0x4154e700)
E/AndroidRuntime( 9163): FATAL EXCEPTION: main
E/AndroidRuntime( 9163): java.lang.RuntimeException: Unable to start activity ComponentInfo{de.robv.android.xposed.installer/de.robv.android.xposed.installer.XposedInstallerActivity}: java.lang.NullPointerException
E/AndroidRuntime( 9163): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2339)
E/AndroidRuntime( 9163): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2389)
E/AndroidRuntime( 9163): at android.app.ActivityThread.access$600(ActivityThread.java:153)
E/AndroidRuntime( 9163): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1269)
E/AndroidRuntime( 9163): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 9163): at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 9163): at android.app.ActivityThread.main(ActivityThread.java:5289)
E/AndroidRuntime( 9163): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 9163): at java.lang.reflect.Method.invoke(Method.java:525)
E/AndroidRuntime( 9163): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
E/AndroidRuntime( 9163): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
E/AndroidRuntime( 9163): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 9163): Caused by: java.lang.NullPointerException
E/AndroidRuntime( 9163): at de.robv.android.xposed.installer.DownloadDetailsFragment.onCreateView(DownloadDetailsFragment.java:67)
E/AndroidRuntime( 9163): at android.app.Fragment.performCreateView(Fragment.java:1695)
E/AndroidRuntime( 9163): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
E/AndroidRuntime( 9163): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1057)
E/AndroidRuntime( 9163): at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1039)
E/AndroidRuntime( 9163): at android.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:1840)
E/AndroidRuntime( 9163): at android.app.Activity.performCreate(Activity.java:5136)
E/AndroidRuntime( 9163): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
E/AndroidRuntime( 9163): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2293)
E/AndroidRuntime( 9163): ... 11 more
W/ActivityManager( 589): Force finishing activity de.robv.android.xposed.installer/.XposedInstallerActivity
D/dalvikvm( 589): GC_FOR_ALLOC freed 417K, 28% free 29129K/40076K, paused 105ms, total 105ms
D/dalvikvm( 589): GC_FOR_ALLOC freed 765K, 29% free 28737K/40076K, paused 102ms, total 102ms
D/dalvikvm( 856): GC_CONCURRENT freed 772K, 50% free 5387K/10768K, paused 2ms+3ms, total 35ms
E/ ( 1266): POO
W/ActivityManager( 589): Activity pause timeout for ActivityRecord{4242de38 u0 de.robv.android.xposed.installer/.XposedInstallerActivity}
I/Process ( 9163): Sending signal. PID: 9163 SIG: 9
I/ActivityManager( 589): Process de.robv.android.xposed.installer (pid 9163) has died.
I/ActivityManager( 589): Start proc de.robv.android.xposed.installer for activity de.robv.android.xposed.installer/.WelcomeActivity: pid=9201 uid=10131 gids={50131, 1015, 3003, 1028}
D/libEGL ( 9201): loaded /system/lib/egl/libEGL_adreno200.so
D/libEGL ( 9201): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
D/libEGL ( 9201): loaded /system/lib/egl/libGLESv2_adreno200.so
I/Adreno200-EGL( 9201): <qeglDrvAPI_eglInitialize:265>: EGL 1.4 QUALCOMM Build: Iabe52cfaeae4c5fab1acacfe6f056ba15fa93274
D/OpenGLRenderer( 9201): Enabling debug mode 0
I/ActivityManager( 589): Displayed de.robv.android.xposed.installer/.WelcomeActivity: +1s366ms (total +2s335ms)
Support backuptool
It would be great if the Installer could add a backuptool script so xposed will be automatically restored when applying OTA updates.
This is important if you use modules like XPrivacy because apps will get full access until you re-installed xposed.
White background on Installer startup
If a dark theme is selected and the Xposed Installer is being started, the background will be white while the WelcomeActivity is created.
This is a known issue with a possible fix provided and therefore the issue is meant as a reminder for the next release.
Bootloop
Hey, I just install xposed and do a soft reboot and now I'm stuck at brand (Orange) logo.
I've entered in recovery mod and try to flash Xposed-Disabler-Recovery.zip but I get "installation aborted". Also I put another .zip (I think is exactly the same but anyway) on sdcard and it doesn't work with that either. I can't connect with adb shell for some reason and I don't have any ideas left. Can you guys help me unflash this?
I have a Orange Hiro (Alcatel OT Idol Mini) and there's no custom ROM or stock ROM available so I can't flash a ROM to overwrite /system
Mounte /system beschreibbar... -> Segmentation fault
After update from 2.50 to 2.51 i get this error if i try to install.
I want check if it work if i go back to 2.50, but i do not find the 2.50 apk. Could you please provide the apk so i could check if the error my system or an 2.51 Bug?
cu
How about use getLinkTextColors instead of android.R.attr.textColorLink
txtValue.setTextColor(ThemeUtil.getThemeColor(getActivity(), android.R.attr.textColorLink));
This doesn't work on Gingerbread, and it's a bit complex. How about use
txtValue.setTextColor(txtValue.getLinkTextColors())
Furthermore, getThemeColor
only returns a single color, and getLinkTextColors
returns ColorStateList
.
It's so simple, so I didn't issue a pull request.
Version 2.6.1 made my device freezing, unstable
I am on s4 (9505) rooted. Recently upgraded to 2.6.1, but soon after it widgets started freezing phone crashing. And the experimental features of greenify disappeared. What do I do?
Useless warning before loading completion
I posted it on XDA and I think it should be here also. I got answer from @rovo89 and he said he had different priorities and this bug was low priority for him thus maybe some other developer (@Tungstwenty ?) can take and fix this issue.
Read on XDA: http://forum.xda-developers.com/showpost.php?p=52915515&postcount=11705
or here:
"When you are browsing Xposed repo in Chrome (or any browser) and then you click on some module, share it to Xposed Installer, Xposed shows "there is no module with package name bla bla". After Xposed Installer finish loading, it shows this module correctly. I think Xposed should not show this warning before it finish loading. "
Module list doesnt update after any module uninstalation
I use v2.6 beta 1 and found bug.
I had some unused modules, so I decided to uninstall them in xposed module list by clicking on Uninstall button. After uninstalation, modules list is not refreshed and when I click on Framework tab and back to Module tab, app crashed.
Do you need log or can you reproduce it yourself?
Ask user for reboot after enabling module
After enabling module(s), Xposed Installer should ask user for reboot (normal/soft) because its user-friendly (user will just click and all ok)
System.getProperty("java.class.path") return XposedBridge.jar path
an app to detect xposed then generate a sha256 hash of System.getProperty("java.class.path") in app and compare it.
the default value of System.getProperty("java.class.path") in android is .
http://developer.android.com/reference/java/lang/System.html
can hook this function to fix it?
Force close when resume app
Settings indicator for modules with settings
Hi,
Some Xposed modules have own settings. If it has <category android:name="android.intent.category.LAUNCHER" />
it shows in launcher.
But I developed small module called QuickPic2Gallery -http://repo.xposed.info/module/com.pyler.quickpic2gallery. It has own settings but since "you set it once and you are done", I use for Settings <category android:name="de.robv.android.xposed.category.MODULE_SETTINGS" />
, so it doesnt show in launcher.
But I realize that there is UI problem. User don't know if module provides additional settings when you go to Modules tab in Xposed Installer. You need to click on module to see if there is Launch UI option (or long click on module)
I think the best solution here will be small settings icon in module textview to indicate additional settings.
System Services
Okay, I said that I would look into adding Services via Xposed, and this is what I have come up with so far.
package android.os;
/*
* The AIDL Interface
*/
/** {@hide} */
interface IXAService {
String getText();
}
package com.android.server;
import android.content.Context;
import android.os.IBinder;
import android.os.IXAService;
import android.os.RemoteException;
/*
* The actual service that will be registered with Android.
* This instance will be the one getting parsed as an IBinder instance when
* calling ServiceManager.getService("xa.service")
*/
public class XAService extends IXAService.Stub {
/*
* The hook that will get the service registered in the ServiceManager
*/
public static void inject() {
XposedTools.hookMethods(
XposedTools.findClass("com.android.server.am.ActivityManagerService"),
"main",
new XC_MethodHook() {
@Override
protected final void afterHookedMethod(final MethodHookParam param) {
Context context = (Context) param.getResult();
XposedHelpers.callMethod(
XposedHelpers.findClass("android.os.ServiceManager", null),
"addService",
new Class[]{String.class, IBinder.class},
"xa.service",
new XAService(context)
);
}
}
);
}
private final Context mContext;
public XAService(Context context) {
mContext = context;
}
@Override
public String getText() throws RemoteException {
return "This is a test";
}
}
package com.my.package;
import com.android.server.XAService;
/*
* You made it, so you know what this is :)
*/
public final class XposedHook implements IXposedHookZygoteInit {
@Override
public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable {
XAService.inject();
}
}
package android.os;
/*
* This is so that regular application can use the wrapper XAServiceManager.
* For some reason XposedHelpers.getClass() will fail when using an application ClassLoader
*/
public class ServiceManager {
public static IBinder getService(String name) { return null; }
}
package android.os;
/*
* This is a wrapper for XAService that is accessible to all.
* Based on how all Android services work.
*/
public final class XAServiceManager {
private static XAServiceManager oInstance;
private IXAService mService;
public static XAServiceManager getService() {
if (oInstance == null) {
oInstance = new XAServiceManager();
}
return oInstance;
}
private XAServiceManager() {
mService = IXAService.Stub.asInterface(
ServiceManager.getService("xa.service")
);
}
public String getText() {
try {
return mService.getText();
} catch (RemoteException e) { e.printStackTrace(); }
return null;
}
}
package com.my.package;
/*
* Just a test activity
*/
public class MyActivity extends Activty {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
XAServiceManager manager = XAServiceManager.getService();
Toast.makeText(this, manager.getText(), Toast.LENGTH_LONG).show();
}
}
Normally, all system services is registered from com.android.server.SystemServer
, however they are registered within a Thread where you will have no access to the context no mater if you hook before or after. Instead I hooked it in com.android.server.am.ActivityManagerService.main()
which is the first call made by the SystemServer
thread to get the system context, right before all of the services are created and registered.
After this, you can use ServiceManager.getService(String name) like with any other system service. However, this is only available to Android, so like Android does it, I made a wrapper for applications (XAServiceManager)
which is available to all. And if one should fallow the true Android syntax, you could also hook android.os.ContextImpl
and add it to Context.getSystemService()
if you don't like to use XAServiceManager.getService()
.
Either way, this will create a service that can be used to do anything. And the context in XAService.mContext
is the System Context, so it should have access to anything. And it can be used to share data between multiple processes as XAService
will be the same no mater where you use it from. And you can decide which part of it should be accessible globally by just excluding/including it in the wrapper XAServiceManager
, just like Android does.
A lot of fun stuff can be created with this, but my first thought, which is why I looked into it in the first place, was to share data between processes without having to write files or database entries. So maybe this could be used to create some standard Xposed communication API to share things like property values and such. This could be small configs between settings and module (Since a static class will do no good here) or just data sharing between two separate Android processes. The biggest issue is properly the cleanup part if devs forget to clear some of the old unused data.
Also, normal applications is not able to create this type of Service. This type is only meant for the parts of Android that contains the same Context throughout the lifetime of the OS. So it will need to be added into ServiceManager via a Zygote hook.
XposedInstaller crashes upon App installation
Hey @rovo89, with much respect to your great work, I'm afraid I have to file this Issue because I'm having troubles when installing any new App on my HTC One. I wonder why this is happening, Xposed ran fine before. My device is currently running AOKP KitKat 4.4.4 and Kernel Linux version 3.4.82-g47fef4f.
Upon installing any new or updating any App, my Launcher as well as the Xposed Installer crashes and I cannot open it again afterwards until rebooting. Hopefully this logcat will help you solve this.
Scrolling while downloading causes crash
Scrolling the download versions list while a download is active will cause the UI to crash.
Reproduce:
- open GravityBox in download section
- go to versions list
- click "Download" on latest version
- wait until download starts
- scroll down to the bottom of the list
-> UI crashes
Please see the logcat for further information! NullPointerException in line 125.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.