--- /home/hans/code/fdroid/data/tmp/org.schabi.sharewithnewpipe_2.apk +++ /home/hans/code/fdroid/data/tmp/sigcp_org.schabi.sharewithnewpipe_2.apk ├── zipinfo {} │ @@ -1,8 +1,8 @@ │ -Zip file size: 1238270 bytes, number of entries: 365 │ +Zip file size: 1237369 bytes, number of entries: 365 │ -rw---- 2.0 fat 38081 bl defN 08-Jan-01 00:00 META-INF/MANIFEST.MF │ -rw---- 2.0 fat 38202 bl defN 08-Jan-01 00:00 META-INF/5F4BDB8C.SF │ -rw---- 2.0 fat 1326 bl defN 08-Jan-01 00:00 META-INF/5F4BDB8C.RSA │ -rw---- 2.0 fat 41 bl defN 08-Jan-01 00:00 META-INF/buildserverid │ -rw---- 2.0 fat 41 bl defN 08-Jan-01 00:00 META-INF/fdroidserverid │ -rw---- 2.0 fat 2060 bX defN 08-Jan-01 00:00 AndroidManifest.xml │ -rw---- 2.0 fat 396 bl defN 08-Jan-01 00:00 res/anim/abc_fade_in.xml │ @@ -359,9 +359,9 @@ │ -rw---- 2.0 fat 508 bl defN 08-Jan-01 00:00 res/layout/support_simple_spinner_dropdown_item.xml │ -rw---- 1.0 fat 3166 b- stor 08-Jan-01 00:00 res/mipmap-hdpi-v4/ic_launcher.png │ -rw---- 1.0 fat 1824 b- stor 08-Jan-01 00:00 res/mipmap-mdpi-v4/ic_launcher.png │ -rw---- 1.0 fat 4187 b- stor 08-Jan-01 00:00 res/mipmap-xhdpi-v4/ic_launcher.png │ -rw---- 1.0 fat 6614 b- stor 08-Jan-01 00:00 res/mipmap-xxhdpi-v4/ic_launcher.png │ -rw---- 1.0 fat 9271 b- stor 08-Jan-01 00:00 res/mipmap-xxxhdpi-v4/ic_launcher.png │ -rw---- 1.0 fat 195176 b- stor 08-Jan-01 00:00 resources.arsc │ --rw---- 2.0 fat 2334980 bl defN 08-Jan-01 00:00 classes.dex │ -365 files, 2900245 bytes uncompressed, 1170482 bytes compressed: 59.6% │ +-rw---- 2.0 fat 2334888 bl defN 08-Jan-01 00:00 classes.dex │ +365 files, 2900153 bytes uncompressed, 1170449 bytes compressed: 59.6% ├── AndroidManifest.xml │ @@ -1,9 +1,9 @@ │ │ - ├── smali/android/support/v4/app/BundleCompatDonut.smali │ @@ -96,17 +96,17 @@ │ │ invoke-virtual {v1, p0, v3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; │ │ move-result-object v1 │ │ check-cast v1, Landroid/os/IBinder; │ :try_end_1 │ - .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_2 │ - .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_3 │ - .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_1 │ + .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_3 │ + .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_1 │ + .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_2 │ │ .line 58 │ :goto_1 │ return-object v1 │ │ .line 43 │ :catch_0 │ @@ -233,17 +233,17 @@ │ │ const/4 v3, 0x1 │ │ aput-object p2, v2, v3 │ │ invoke-virtual {v1, p0, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; │ :try_end_1 │ - .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_2 │ - .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_3 │ - .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_1 │ + .catch Ljava/lang/reflect/InvocationTargetException; {:try_start_1 .. :try_end_1} :catch_3 │ + .catch Ljava/lang/IllegalAccessException; {:try_start_1 .. :try_end_1} :catch_1 │ + .catch Ljava/lang/IllegalArgumentException; {:try_start_1 .. :try_end_1} :catch_2 │ │ .line 82 │ :cond_1 │ :goto_1 │ return-void │ │ .line 67 ├── smali/android/support/v4/media/IMediaBrowserServiceCallbacksAdapterApi21$Stub.smali │ @@ -47,16 +47,16 @@ │ │ invoke-virtual {v1, v2, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; │ │ move-result-object v2 │ │ sput-object v2, Landroid/support/v4/media/IMediaBrowserServiceCallbacksAdapterApi21$Stub;->sAsInterfaceMethod:Ljava/lang/reflect/Method; │ :try_end_0 │ - .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_1 │ - .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 100 │ :goto_0 │ return-void │ │ .line 97 │ :catch_0 ├── smali/android/support/v4/media/IMediaBrowserServiceCallbacksAdapterApi21.smali │ @@ -128,16 +128,16 @@ │ │ invoke-virtual {v2, v3, v4}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; │ │ move-result-object v3 │ │ iput-object v3, p0, Landroid/support/v4/media/IMediaBrowserServiceCallbacksAdapterApi21;->mOnLoadChildrenMethod:Ljava/lang/reflect/Method; │ :try_end_0 │ - .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_1 │ - .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 53 │ .end local v1 # "parceledListSliceClass":Ljava/lang/Class; │ .end local v2 # "theClass":Ljava/lang/Class; │ :goto_0 │ return-void ├── smali/android/support/v4/media/ParceledListSliceAdapterApi21.smali │ @@ -34,16 +34,16 @@ │ │ invoke-virtual {v1, v2}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor; │ │ move-result-object v2 │ │ sput-object v2, Landroid/support/v4/media/ParceledListSliceAdapterApi21;->sConstructor:Ljava/lang/reflect/Constructor; │ :try_end_0 │ - .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_1 │ - .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0 │ + .catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_1 │ │ .line 37 │ :goto_0 │ return-void │ │ .line 34 │ :catch_0 ├── smali/android/support/v7/appcompat/R.smali │ @@ -26,10 +26,9 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 9 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ - .line 953 │ return-void │ .end method ├── smali/org/schabi/sharewithnewpipe/R.smali │ @@ -27,10 +27,9 @@ │ .method public constructor ()V │ .locals 0 │ │ .prologue │ .line 10 │ invoke-direct {p0}, Ljava/lang/Object;->()V │ │ - .line 2104 │ return-void │ .end method ├── smali/org/schabi/sharewithnewpipe/RelayActivity.smali │ @@ -34,22 +34,24 @@ │ │ move-result v0 │ │ if-nez v0, :cond_0 │ │ const-string v0, "youtu.be" │ │ + .line 152 │ invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z │ │ move-result v0 │ │ if-nez v0, :cond_0 │ │ const-string v0, "vnd.youtube" │ │ + .line 153 │ invoke-virtual {p1, v0}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z │ │ move-result v0 │ │ if-eqz v0, :cond_1 │ │ .line 154 │ @@ -63,139 +65,131 @@ │ :cond_1 │ const/4 v0, 0x0 │ │ goto :goto_0 │ .end method │ │ .method private getUris(Ljava/lang/String;)[Ljava/lang/String; │ - .locals 8 │ + .locals 7 │ .param p1, "sharedText" # Ljava/lang/String; │ │ .prologue │ .line 90 │ - new-instance v4, Ljava/util/HashSet; │ + new-instance v1, Ljava/util/HashSet; │ │ - invoke-direct {v4}, Ljava/util/HashSet;->()V │ + invoke-direct {v1}, Ljava/util/HashSet;->()V │ │ .line 92 │ - .local v4, "result":Ljava/util/Collection;, "Ljava/util/Collection;" │ + .local v1, "result":Ljava/util/Collection;, "Ljava/util/Collection;" │ if-eqz p1, :cond_2 │ │ .line 94 │ - const-string v6, "\\p{Space}" │ + const-string v3, "\\p{Space}" │ │ - invoke-virtual {p1, v6}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ + invoke-virtual {p1, v3}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String; │ │ - move-result-object v1 │ + move-result-object v0 │ │ .line 96 │ - .local v1, "array":[Ljava/lang/String; │ - move-object v0, v1 │ - │ - .local v0, "arr$":[Ljava/lang/String; │ - array-length v3, v0 │ + .local v0, "array":[Ljava/lang/String; │ + array-length v4, v0 │ │ - .local v3, "len$":I │ - const/4 v2, 0x0 │ + const/4 v3, 0x0 │ │ - .local v2, "i$":I │ :goto_0 │ - if-ge v2, v3, :cond_2 │ + if-ge v3, v4, :cond_2 │ │ - aget-object v5, v0, v2 │ + aget-object v2, v0, v3 │ │ .line 98 │ - .local v5, "s":Ljava/lang/String; │ - invoke-static {v5}, Lorg/schabi/sharewithnewpipe/RelayActivity;->trim(Ljava/lang/String;)Ljava/lang/String; │ + .local v2, "s":Ljava/lang/String; │ + invoke-static {v2}, Lorg/schabi/sharewithnewpipe/RelayActivity;->trim(Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v5 │ + move-result-object v2 │ │ .line 100 │ - invoke-virtual {v5}, Ljava/lang/String;->length()I │ + invoke-virtual {v2}, Ljava/lang/String;->length()I │ │ - move-result v6 │ + move-result v5 │ │ - if-eqz v6, :cond_0 │ + if-eqz v5, :cond_0 │ │ .line 101 │ - const-string v6, ".+://.+" │ + const-string v5, ".+://.+" │ │ - invoke-virtual {v5, v6}, Ljava/lang/String;->matches(Ljava/lang/String;)Z │ + invoke-virtual {v2, v5}, Ljava/lang/String;->matches(Ljava/lang/String;)Z │ │ - move-result v6 │ + move-result v5 │ │ - if-eqz v6, :cond_1 │ + if-eqz v5, :cond_1 │ │ .line 102 │ - invoke-static {v5}, Lorg/schabi/sharewithnewpipe/RelayActivity;->removeHeadingGibberish(Ljava/lang/String;)Ljava/lang/String; │ + invoke-static {v2}, Lorg/schabi/sharewithnewpipe/RelayActivity;->removeHeadingGibberish(Ljava/lang/String;)Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-interface {v4, v6}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z │ + invoke-interface {v1, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z │ │ .line 96 │ :cond_0 │ :goto_1 │ - add-int/lit8 v2, v2, 0x1 │ + add-int/lit8 v3, v3, 0x1 │ │ goto :goto_0 │ │ .line 103 │ :cond_1 │ - const-string v6, ".+\\..+" │ + const-string v5, ".+\\..+" │ │ - invoke-virtual {v5, v6}, Ljava/lang/String;->matches(Ljava/lang/String;)Z │ + invoke-virtual {v2, v5}, Ljava/lang/String;->matches(Ljava/lang/String;)Z │ │ - move-result v6 │ + move-result v5 │ │ - if-eqz v6, :cond_0 │ + if-eqz v5, :cond_0 │ │ .line 104 │ - new-instance v6, Ljava/lang/StringBuilder; │ + new-instance v5, Ljava/lang/StringBuilder; │ │ - invoke-direct {v6}, Ljava/lang/StringBuilder;->()V │ + invoke-direct {v5}, Ljava/lang/StringBuilder;->()V │ │ - const-string v7, "http://" │ + const-string v6, "http://" │ │ - invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ + invoke-virtual {v5, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; │ │ - move-result-object v6 │ + move-result-object v5 │ │ - invoke-interface {v4, v6}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z │ + invoke-interface {v1, v5}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z │ │ goto :goto_1 │ │ .line 110 │ - .end local v0 # "arr$":[Ljava/lang/String; │ - .end local v1 # "array":[Ljava/lang/String; │ - .end local v2 # "i$":I │ - .end local v3 # "len$":I │ - .end local v5 # "s":Ljava/lang/String; │ + .end local v0 # "array":[Ljava/lang/String; │ + .end local v2 # "s":Ljava/lang/String; │ :cond_2 │ - invoke-interface {v4}, Ljava/util/Collection;->size()I │ + invoke-interface {v1}, Ljava/util/Collection;->size()I │ │ - move-result v6 │ + move-result v3 │ │ - new-array v6, v6, [Ljava/lang/String; │ + new-array v3, v3, [Ljava/lang/String; │ │ - invoke-interface {v4, v6}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; │ + invoke-interface {v1, v3}, Ljava/util/Collection;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; │ │ - move-result-object v6 │ + move-result-object v3 │ │ - check-cast v6, [Ljava/lang/String; │ + check-cast v3, [Ljava/lang/String; │ │ - return-object v6 │ + return-object v3 │ .end method │ │ .method private static removeHeadingGibberish(Ljava/lang/String;)Ljava/lang/String; │ .locals 4 │ .param p0, "input" # Ljava/lang/String; │ │ .prologue │ @@ -306,23 +300,24 @@ │ .line 138 │ invoke-virtual {v0, v3}, Ljava/lang/String;->substring(I)Ljava/lang/String; │ │ move-result-object v0 │ │ goto :goto_0 │ │ - .line 142 │ + .line 141 │ :cond_3 │ :goto_1 │ invoke-virtual {v0}, Ljava/lang/String;->length()I │ │ move-result v1 │ │ if-lez v1, :cond_1 │ │ + .line 142 │ invoke-virtual {v0}, Ljava/lang/String;->length()I │ │ move-result v1 │ │ add-int/lit8 v1, v1, -0x1 │ │ invoke-virtual {v0}, Ljava/lang/String;->length()I ├── original/AndroidManifest.xml │ @@ -40,16 +40,16 @@ │ 00000270: 7300 6900 6f00 6e00 4e00 6100 6d00 6500 s.i.o.n.N.a.m.e. │ 00000280: 0000 0800 6d00 6100 6e00 6900 6600 6500 ....m.a.n.i.f.e. │ 00000290: 7300 7400 0000 1b00 6f00 7200 6700 2e00 s.t.....o.r.g... │ 000002a0: 7300 6300 6800 6100 6200 6900 2e00 7300 s.c.h.a.b.i...s. │ 000002b0: 6800 6100 7200 6500 7700 6900 7400 6800 h.a.r.e.w.i.t.h. │ 000002c0: 6e00 6500 7700 7000 6900 7000 6500 0000 n.e.w.p.i.p.e... │ 000002d0: 0300 3100 2e00 3100 0000 0200 3200 3300 ..1...1.....2.3. │ -000002e0: 0000 0b00 3600 2e00 3000 2d00 3200 3100 ....6...0.-.2.1. │ -000002f0: 3600 3600 3700 3600 3700 0000 0800 7500 6.6.7.6.7.....u. │ +000002e0: 0000 0b00 3600 2e00 3000 2d00 3200 3700 ....6...0.-.2.7. │ +000002f0: 3000 3400 3000 3000 3200 0000 0800 7500 0.4.0.0.2.....u. │ 00000300: 7300 6500 7300 2d00 7300 6400 6b00 0000 s.e.s.-.s.d.k... │ 00000310: 0b00 6100 7000 7000 6c00 6900 6300 6100 ..a.p.p.l.i.c.a. │ 00000320: 7400 6900 6f00 6e00 0000 0800 6100 6300 t.i.o.n.....a.c. │ 00000330: 7400 6900 7600 6900 7400 7900 0000 2900 t.i.v.i.t.y...). │ 00000340: 6f00 7200 6700 2e00 7300 6300 6800 6100 o.r.g...s.c.h.a. │ 00000350: 6200 6900 2e00 7300 6800 6100 7200 6500 b.i...s.h.a.r.e. │ 00000360: 7700 6900 7400 6800 6e00 6500 7700 7000 w.i.t.h.n.e.w.p.