Opened 9 months ago

Closed 8 months ago

#29626 closed defect (fixed)

TBA: Application name is now "Always-On Notifications"

Reported by: sysrqb Owned by: tbb-team
Priority: Very High Milestone:
Component: Applications/Tor Browser Version:
Severity: Normal Keywords: tbb-mobile, TBA-a3, TorBrowserTeam201903, tbb-8.5
Cc: eighthave Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Why? eighthave noticed this, too. It seems like this is coming from Orbot's pref_use_persistent_notifications_title string? Something changed between 8.5a7 and 8.5a8.

Child Tickets

Change History (4)

comment:1 Changed 9 months ago by gk

Keywords: tbb-mobile TBA-a3 TorBrowserTeam201903 added

comment:2 Changed 9 months ago by sysrqb

Okay, I was worried this may be a result of manually tweaking the version code (due to #28685), and it seems this is the case. When I created the tweaked AndroidManifest.xml file, it was compiled from a different source (not a tor-browser-build build), so it seems some of the string indices changed. The result of this is the manifest file now points to the wrong strings for android:label. Thankfully, this is the only erroneous change, but still it isn't good (I'm sorry I wasn't more careful with this change). At the time when I made this, I noticed there were additional modifications within the file but they seemed insignificant. Now I know they weren't.

(See the end of this comment for the overall effect)

Diffing the outputs from:

aapt l -a tor-browser-8.5a8-android-armv7-multi-qa.apk
aapt l -a tor-browser-8.5a8-android-armv7-multi.apk
--- aapt_l_a_8.5a8_qa   2019-03-01 15:40:27.039709996 +0000
+++ aapt_l_a_8.5a8      2019-03-01 15:37:53.990400730 +0000
@@ -1,6 +1,3 @@
-META-INF/MANIFEST.MF
-META-INF/ANDROIDQ.SF
-META-INF/ANDROIDQ.RSA
 AndroidManifest.xml
 assets/LICENSE
 assets/common/bridges.txt
@@ -1571,9 +1568,11 @@
 platform.ini
 removed-files
 assets/omni.ja
-assets/distribution/extensions/
 assets/distribution/extensions/https-everywhere-eff@eff.org.xpi
 assets/distribution/extensions/{73a6fe31-595d-460b-a920-fcc0f8843232}.xpi
+META-INF/TBA_ALPH.SF
+META-INF/TBA_ALPH.RSA
+META-INF/MANIFEST.MF
 
 Resource table:
 Package Groups (1)
@@ -46657,7 +46656,7 @@
 N: android=http://schemas.android.com/apk/res/android
   E: manifest (line=1)
     A: android:sharedUserId(0x0101000b)="org.torproject.torbrowser_alpha.sharedID" (Raw: "org.torproject.torbrowser_alpha.sharedID")
-    A: android:versionCode(0x0101021b)=(type 0x10)0x7823c271
+    A: android:versionCode(0x0101021b)=(type 0x10)0x7823c272
     A: android:versionName(0x0101021c)="60.5.1" (Raw: "60.5.1")
     A: android:installLocation(0x010102b7)=(type 0x10)0x1
     A: package="org.torproject.torbrowser_alpha" (Raw: "org.torproject.torbrowser_alpha")
@@ -46695,12 +46694,12 @@
       A: android:name(0x01010003)="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" (Raw: "android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS")
     E: application (line=16)
       A: android:theme(0x01010000)=@0x7f0d0143
-      A: android:label(0x01010001)=@0x7f0801db
+      A: android:label(0x01010001)=@0x7f0802cc
       A: android:icon(0x01010002)=@0x7f0200ed
       A: android:name(0x01010003)="org.mozilla.gecko.GeckoApplication" (Raw: "org.mozilla.gecko.GeckoApplication")
       A: android:allowClearUserData(0x01010005)=(type 0x12)0xffffffff
       A: android:configChanges(0x0101001f)=(type 0x11)0x484
-      A: android:description(0x01010020)=@0x7f080028
+      A: android:description(0x01010020)=@0x7f08001a
       A: android:allowBackup(0x01010280)=(type 0x12)0x0
       A: android:logo(0x010102be)=@0x7f0200fe
       A: android:hardwareAccelerated(0x010102d3)=(type 0x12)0xffffffff
@@ -46848,7 +46847,7 @@
             A: android:name(0x01010003)="android.intent.category.DEFAULT" (Raw: "android.intent.category.DEFAULT")
       E: activity (line=100)
         A: android:theme(0x01010000)=@0x7f0d014a
-        A: android:label(0x01010001)=@0x7f0801db
+        A: android:label(0x01010001)=@0x7f0802cc
         A: android:name(0x01010003)="org.mozilla.gecko.BrowserApp" (Raw: "org.mozilla.gecko.BrowserApp")
         A: android:exported(0x01010010)=(type 0x12)0xffffffff
         A: android:taskAffinity(0x01010012)="org.torproject.torbrowser_alpha.BROWSER" (Raw: "org.torproject.torbrowser_alpha.BROWSER")
@@ -46945,7 +46944,7 @@
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.partnerbookmarks" (Raw: "org.torproject.torbrowser_alpha.partnerbookmarks")
       E: activity (line=144)
         A: android:theme(0x01010000)=@0x7f0d00f7
-        A: android:label(0x01010001)=@0x7f0801f7
+        A: android:label(0x01010001)=@0x7f0802da
         A: android:name(0x01010003)="org.mozilla.gecko.overlays.ui.ShareDialog" (Raw: "org.mozilla.gecko.overlays.ui.ShareDialog")
         A: android:launchMode(0x0101001d)=(type 0x10)0x1
         A: android:configChanges(0x0101001f)=(type 0x11)0x2037
@@ -47058,18 +47057,18 @@
       E: service (line=163)
         A: android:name(0x01010003)="org.mozilla.gecko.overlays.service.OverlayActionService" (Raw: "org.mozilla.gecko.overlays.service.OverlayActionService")
       E: provider (line=164)
-        A: android:label(0x01010001)=@0x7f080337
+        A: android:label(0x01010001)=@0x7f0803a9
         A: android:name(0x01010003)="org.mozilla.gecko.db.PasswordsProvider" (Raw: "org.mozilla.gecko.db.PasswordsProvider")
         A: android:exported(0x01010010)=(type 0x12)0x0
         A: android:process(0x01010011)="org.torproject.torbrowser_alpha.PasswordsProvider" (Raw: "org.torproject.torbrowser_alpha.PasswordsProvider")
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.db.passwords" (Raw: "org.torproject.torbrowser_alpha.db.passwords")
       E: provider (line=165)
-        A: android:label(0x01010001)=@0x7f080337
+        A: android:label(0x01010001)=@0x7f0803a9
         A: android:name(0x01010003)="org.mozilla.gecko.db.LoginsProvider" (Raw: "org.mozilla.gecko.db.LoginsProvider")
         A: android:exported(0x01010010)=(type 0x12)0x0
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.db.logins" (Raw: "org.torproject.torbrowser_alpha.db.logins")
       E: provider (line=166)
-        A: android:label(0x01010001)=@0x7f080336
+        A: android:label(0x01010001)=@0x7f0803a8
         A: android:name(0x01010003)="org.mozilla.gecko.db.FormHistoryProvider" (Raw: "org.mozilla.gecko.db.FormHistoryProvider")
         A: android:exported(0x01010010)=(type 0x12)0x0
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.db.formhistory" (Raw: "org.torproject.torbrowser_alpha.db.formhistory")
@@ -47078,7 +47077,7 @@
         A: android:exported(0x01010010)=(type 0x12)0x0
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.profiles" (Raw: "org.torproject.torbrowser_alpha.profiles")
       E: provider (line=168)
-        A: android:label(0x01010001)=@0x7f080338
+        A: android:label(0x01010001)=@0x7f0803aa
         A: android:name(0x01010003)="org.mozilla.gecko.db.TabsProvider" (Raw: "org.mozilla.gecko.db.TabsProvider")
         A: android:exported(0x01010010)=(type 0x12)0x0
         A: android:authorities(0x01010018)="org.torproject.torbrowser_alpha.db.tabs" (Raw: "org.torproject.torbrowser_alpha.db.tabs")
@@ -47190,15 +47189,15 @@
         A: android:allowTaskReparenting(0x01010204)=(type 0x12)0xffffffff
         A: android:noHistory(0x0101022d)=(type 0x12)0xffffffff
       E: activity (line=214)
-        A: android:label(0x01010001)=@0x7f080029
+        A: android:label(0x01010001)=@0x7f08001b
         A: android:name(0x01010003)="org.torproject.android.vpn.VPNEnableActivity" (Raw: "org.torproject.android.vpn.VPNEnableActivity")
         A: android:exported(0x01010010)=(type 0x12)0x0
       E: activity (line=215)
-        A: android:label(0x01010001)=@0x7f080029
+        A: android:label(0x01010001)=@0x7f08001b
         A: android:name(0x01010003)="org.torproject.android.settings.SettingsPreferences" (Raw: "org.torproject.android.settings.SettingsPreferences")
       E: activity (line=216)
         A: android:theme(0x01010000)=@0x7f0d01c3
-        A: android:label(0x01010001)=@0x7f080029
+        A: android:label(0x01010001)=@0x7f08001b
         A: android:name(0x01010003)="org.torproject.android.ui.AppManagerActivity" (Raw: "org.torproject.android.ui.AppManagerActivity")
       E: service (line=217)
         A: android:name(0x01010003)="org.torproject.android.service.TorService" (Raw: "org.torproject.android.service.TorService")
@@ -47239,7 +47238,7 @@
             A: android:name(0x01010003)="android.intent.category.HOME" (Raw: "android.intent.category.HOME")
       E: activity (line=242)
         A: android:theme(0x01010000)=@0x7f0d0143
-        A: android:label(0x01010001)=@0x7f080352
+        A: android:label(0x01010001)=@0x7f08012a
         A: android:name(0x01010003)="org.torproject.android.ui.hiddenservices.HiddenServicesActivity" (Raw: "org.torproject.android.ui.hiddenservices.HiddenServicesActivity")
         E: meta-data (line=243)
           A: android:name(0x01010003)="android.support.PARENT_ACTIVITY" (Raw: "android.support.PARENT_ACTIVITY")
@@ -47250,7 +47249,7 @@
         A: android:authorities(0x01010018)="org.torproject.torbrowser.ui.hiddenservices.providers" (Raw: "org.torproject.torbrowser.ui.hiddenservices.providers")
       E: activity (line=246)
         A: android:theme(0x01010000)=@0x7f0d0143
-        A: android:label(0x01010001)=@0x7f080087
+        A: android:label(0x01010001)=@0x7f080044
         A: android:name(0x01010003)="org.torproject.android.ui.hiddenservices.ClientCookiesActivity" (Raw: "org.torproject.android.ui.hiddenservices.ClientCookiesActivity")
         E: meta-data (line=247)
           A: android:name(0x01010003)="android.support.PARENT_ACTIVITY" (Raw: "android.support.PARENT_ACTIVITY")

Addresses of strings with multi-qa.apk:

$ aapt l -a tor-browser-8.5a8-android-armv7-multi-qa.apk | grep -E '0x7f0801db|0x7f080028|0x7f0801f7|0x7f080337|0x7f080336|0x7f080338|0x7f080029|0x7f0d01c3|0x7f080352|0x7f080087' | grep "spec resource"
      spec resource 0x7f080028 org.torproject.torbrowser_alpha:string/app_description: flags=0x00000004
      spec resource 0x7f080029 org.torproject.torbrowser_alpha:string/app_name: flags=0x00000004
      spec resource 0x7f080087 org.torproject.torbrowser_alpha:string/client_cookies: flags=0x00000004
      spec resource 0x7f0801db org.torproject.torbrowser_alpha:string/moz_app_displayname: flags=0x00000004
      spec resource 0x7f0801f7 org.torproject.torbrowser_alpha:string/overlay_share_label: flags=0x00000004
      spec resource 0x7f080336 org.torproject.torbrowser_alpha:string/sync_configure_engines_title_history: flags=0x00000004
      spec resource 0x7f080337 org.torproject.torbrowser_alpha:string/sync_configure_engines_title_passwords: flags=0x00000004
      spec resource 0x7f080338 org.torproject.torbrowser_alpha:string/sync_configure_engines_title_tabs: flags=0x00000004
      spec resource 0x7f080352 org.torproject.torbrowser_alpha:string/title_activity_hidden_services: flags=0x00000004
      spec resource 0x7f0d01c3 org.torproject.torbrowser_alpha:style/Theme.AppCompat: flags=0x00000000

Addresses of offsets in tweaked multi.apk:

$ aapt l -a tor-browser-8.5a8-android-armv7-multi.apk | grep -E '0x7f0802cc|0x7f08001a|0x7f0802da|0x7f0803a9|0x7f0803a8|0x7f0803aa|0x7f08001b|0x7f08012a|0x7f080044' | grep "spec resource"
      spec resource 0x7f08001a org.torproject.torbrowser_alpha:string/activate: flags=0x00000004
      spec resource 0x7f08001b org.torproject.torbrowser_alpha:string/activity_stream_delete_history: flags=0x00000004
      spec resource 0x7f080044 org.torproject.torbrowser_alpha:string/bookmark_save: flags=0x00000004
      spec resource 0x7f08012a org.torproject.torbrowser_alpha:string/firstrun_urlbar_subtext: flags=0x00000004
      spec resource 0x7f0802cc org.torproject.torbrowser_alpha:string/pref_use_persistent_notifications_title: flags=0x00000004
      spec resource 0x7f0802da org.torproject.torbrowser_alpha:string/print: flags=0x00000004
      spec resource 0x7f0803a8 org.torproject.torbrowser_alpha:string/wizard_tips_proxy: flags=0x00000004
      spec resource 0x7f0803a9 org.torproject.torbrowser_alpha:string/wizard_tips_story_maker: flags=0x00000004
      spec resource 0x7f0803aa org.torproject.torbrowser_alpha:string/wizard_tips_title: flags=0x00000004

End result:

string/moz_app_displayname -> string/pref_use_persistent_notifications_title
string/app_description -> string/activate
string/overlay_share_label -> string/print
string/sync_configure_engines_title_passwords -> string/wizard_tips_story_maker
string/sync_configure_engines_title_history -> string/wizard_tips_proxy
string/sync_configure_engines_title_tabs -> string/wizard_tips_title
string/app_name -> string/activity_stream_delete_history
string/title_activity_hidden_services -> string/firstrun_urlbar_subtext
string/client_cookies -> string/bookmark_save

comment:3 Changed 9 months ago by gk

Keywords: tbb-8.5 added

Tickets on our radar for 8.5

comment:4 Changed 8 months ago by gk

Resolution: fixed
Status: newclosed

I think we can close this as fixed by #28685. Please reopen if I am wrong here.

Note: See TracTickets for help on using tickets.