You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Version: 1.2.0
APK Artifact: link to it. GitHub apparently does not want me to upload this 100MB apk.
Args: jadx -d out -r --show-bad-code --deobf --deobf-max 256 --respect-bytecode-access-modifiers target.apk
Thingies keep changing back and forth between each runs. For example:
Example 1: Access modifiers (while without --respect-bytecode-access-modifiers)
etc. I got lots of them while not making any change to apk and jobf files. It steadily generates 500ish changed files with 3000ish
weird additions and deletions.
Example 2: Access method changes
After I enabled the --respect-bytecode-access-modifiers now it cluttered me with following changes:
diff --git a/com/tencent/biz/pubaccount/readinjoy/RIJXTabViewPagerController.java b/com/tencent/biz/pubaccount/readinjoy/RIJXTabViewPagerController.java
index 283bf220c..a0367a08f 100644
--- a/com/tencent/biz/pubaccount/readinjoy/RIJXTabViewPagerController.java+++ b/com/tencent/biz/pubaccount/readinjoy/RIJXTabViewPagerController.java@@ -2,21 +2,28 @@
import android.content.Context;
import android.support.p010v4.app.Fragment;
+import com.huawei.hms.push.constant.RemoteMessageConst;
import com.tencent.biz.pubaccount.readinjoy.common.RIJXTabFrameUtils;
import com.tencent.biz.pubaccount.readinjoy.config.handlers.RIJXTabConfigHandler;
import com.tencent.biz.pubaccount.readinjoy.struct.TabChannelCoverInfo;
import com.tencent.biz.pubaccount.readinjoy.view.widget.RIJXTabBar;
import com.tencent.biz.pubaccount.readinjoy.view.widget.ReadInJoyChannelViewPager;
import com.tencent.mobileqq.activity.SplashActivity;
+import com.tencent.mobileqq.app.AppConstants;
import com.tencent.qphone.base.util.QLog;
import cooperation.readinjoy.ReadInJoyHelper;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import kotlin.Metadata;
import kotlin.collections.CollectionsKt;
import kotlin.jvm.internal.Intrinsics;
import kotlin.text.StringsKt;
+import org.jetbrains.annotations.NotNull;+import org.jetbrains.annotations.Nullable;+/* compiled from: P */
public final class RIJXTabViewPagerController {
/* renamed from: a */
@@ -33,6 +40,7 @@
/* renamed from: a */
private String f20029a = "0";
+ @NotNull
/* renamed from: a */
private final List<TabChannelCoverInfo> f20030a = new ArrayList();
@@ -40,7 +48,7 @@
/* renamed from: b */
private final String f20031b = "RIJXTabViewPagerController";
- public RIJXTabViewPagerController(ReadInJoyChannelViewPager readInJoyChannelViewPager, ReadInJoyChannelViewPager.CustomFragmentPagerAdapter customFragmentPagerAdapter, RIJXTabBar rIJXTabBar) {+ public RIJXTabViewPagerController(@NotNull ReadInJoyChannelViewPager readInJoyChannelViewPager, @NotNull ReadInJoyChannelViewPager.CustomFragmentPagerAdapter customFragmentPagerAdapter, @NotNull RIJXTabBar rIJXTabBar) {
Intrinsics.checkParameterIsNotNull(readInJoyChannelViewPager, "viewPager");
Intrinsics.checkParameterIsNotNull(customFragmentPagerAdapter, "viewPagerAdapter");
Intrinsics.checkParameterIsNotNull(rIJXTabBar, "tabBar");
@@ -154,7 +162,7 @@ private final int mo31944a(int i) {
}
/* renamed from: a */
- public final void mo31945a(Context context) {+ public final void mo31945a(@NotNull Context context) {
Intrinsics.checkParameterIsNotNull(context, "context");
RIJChannelStayTimeMonitor.f20020a.m22351b();
this.f20028a.clearOnPageChangeListeners();
@@ -163,11 +171,13 @@ public final void mo31945a(Context context) {
}
}
+ @Nullable
/* renamed from: a */
public final Fragment m22362a() {
return this.f20027a.mo41806a();
}
+ @Nullable
/* renamed from: a */
public final Fragment m22363a(int i) {
return this.f20027a.mo41807a(i);
diff --git a/com/tencent/biz/pubaccount/readinjoy/RIJChannelStayTimeMonitor.java b/com/tencent/biz/pubaccount/readinjoy/RIJChannelStayTimeMonitor.java
index 88baf93d2..d45f1f990 100644
--- a/com/tencent/biz/pubaccount/readinjoy/RIJChannelStayTimeMonitor.java+++ b/com/tencent/biz/pubaccount/readinjoy/RIJChannelStayTimeMonitor.java@@ -17,13 +17,8 @@
import java.util.Map;
import kotlin.Lazy;
import kotlin.LazyKt;
-import kotlin.Metadata;
import kotlin.jvm.internal.Intrinsics;
-import org.jetbrains.annotations.NotNull;-import org.jetbrains.annotations.Nullable;-/* compiled from: P */
public final class RIJChannelStayTimeMonitor {
/* renamed from: a */
@@ -80,7 +75,7 @@ public final void mo31942c() {
}
/* renamed from: a */
- public final void mo31939a(@NotNull TabChannelCoverInfo tabChannelCoverInfo, int i) {+ public final void mo31939a(TabChannelCoverInfo tabChannelCoverInfo, int i) {
Intrinsics.checkParameterIsNotNull(tabChannelCoverInfo, "tabChannelCoverInfo");
f20022a = tabChannelCoverInfo;
f20018a = i;
@@ -97,7 +92,7 @@ public final void mo31937a(int i) {
}
/* renamed from: a */
- public final void mo31938a(int i, int i2, @Nullable String str) {+ public final void mo31938a(int i, int i2, String str) {
Long remove;
QLog.m191622d("RIJChannelStayTimeMonitorImpl", 2, "exitChannel, channelID = " + i);
if (i != -1 && (remove = mo31936a().remove(Integer.valueOf(i))) != null) {
The text was updated successfully, but these errors were encountered:
I am seeing similar behavior, but it can be remedied by forcing a single thread (-j 1). Using -j 1, I get the same output each time. Just tested on 1.3.0.
This is still happening on the latest 1.4.4 release, but -j 1 is no longer a complete mitigation. It will reduce the number of differences between runs, but does not eliminate them.
-j 1 still works, so long as Jadx doesn't run out of memory while decompilling. After using -Xms8G -Xss1G in my java opts, I am getting identical output on multiple runs of jadx 1.4.4.
Version: 1.2.0
APK Artifact: link to it. GitHub apparently does not want me to upload this 100MB apk.
Args:
jadx -d out -r --show-bad-code --deobf --deobf-max 256 --respect-bytecode-access-modifiers target.apk
Thingies keep changing back and forth between each runs. For example:
Example 1: Access modifiers (while without --respect-bytecode-access-modifiers)
etc. I got lots of them while not making any change to apk and jobf files. It steadily generates 500ish changed files with 3000ish
weird additions and deletions.
Example 2: Access method changes
After I enabled the
--respect-bytecode-access-modifiers
now it cluttered me with following changes:Example 3: Access modifiers (again, this time with --respect-bytecode-access-modifiers)
I still got this even I have it set to respect:
And it duplicates. Weird++:
Example 4: Constants
Example 5: Kotlin Metadatas
Example 6: `@Nullable` and `@NotNull` s
The text was updated successfully, but these errors were encountered: