summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--AndroidManifest.xml2
-rw-r--r--res/values-el/strings.xml15
-rw-r--r--res/values-en-rGB/strings.xml15
-rw-r--r--res/values-ja/strings.xml2
-rw-r--r--res/values-nl/strings.xml15
-rw-r--r--res/values-sv/strings.xml15
-rw-r--r--res/values-uk/strings.xml15
-rw-r--r--res/values-zu/strings.xml15
-rwxr-xr-xsrc/com/android/packageinstaller/InstallAppProgress.java27
-rw-r--r--src/com/android/packageinstaller/PackageInstallerActivity.java61
10 files changed, 100 insertions, 82 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 0bc6866..dfc1a6d 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -27,6 +27,7 @@
<action android:name="android.intent.action.INSTALL_PACKAGE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="file" />
+ <data android:scheme="package" />
</intent-filter>
</activity>
<activity android:name=".InstallAppProgress"
@@ -37,7 +38,6 @@
android:excludeFromRecents="true"
android:theme="@android:style/Theme.DeviceDefault.Dialog.NoActionBar">
<intent-filter>
- <action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.DELETE" />
<action android:name="android.intent.action.UNINSTALL_PACKAGE" />
<category android:name="android.intent.category.DEFAULT" />
diff --git a/res/values-el/strings.xml b/res/values-el/strings.xml
index 99d0222..f5da539 100644
--- a/res/values-el/strings.xml
+++ b/res/values-el/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Πρόγραμμα εγκατάστασης πακέτου"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Επόμενο"</string>
<string name="install" msgid="5896438203900042068">"Εγκατάσταση"</string>
<string name="done" msgid="3889387558374211719">"Τέλος"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Να επιτρέπεται σε αυτήν την εφαρμογή να:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Θέλετε να εγκαταστήσετε αυτήν την εφαρμογή; Δεν απαιτείται οποιαδήποτε ειδική πρόσβαση."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Θέλετε να εγκαταστήσετε μια ενημέρωση σε αυτήν την υπάρχουσα εφαρμογή; Τα υπάρχοντα δεδομένα σας δεν θα χαθούν. Η ενημερωμένη εφαρμογή θα έχει πρόσβαση σε:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Θέλετε να εγκαταστήσετε μια ενημέρωση σε αυτήν την ενσωματωμένη εφαρμογή; Τα υπάρχοντα δεδομένα σας δεν θα χαθούν. Η ενημερωμένη εφαρμογή θα έχει πρόσβαση σε:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Θέλετε να εγκαταστήσετε μια ενημέρωση για αυτήν την υπάρχουσα εφαρμογή; Τα υπάρχοντα δεδομένα σας δεν θα χαθούν. Δεν απαιτείται ειδική πρόσβαση."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Θέλετε να εγκαταστήσετε μια ενημέρωση για αυτήν την ενσωματωμένη εφαρμογή; Τα υπάρχοντα δεδομένα σας δεν θα χαθούν. Δεν απαιτείται ειδική πρόσβαση."</string>
<string name="install_failed" msgid="6579998651498970899">"Η εφαρμογή δεν έχει εγκατασταθεί."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"Το πακέτο ενδέχεται να είναι κατεστραμμένο."</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"Υπάρχει ήδη εγκατεστημένο ένα πακέτο με το ίδιο όνομα και με προβληματική υπογραφή."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Κατάργηση εγκατάστασης ενημέρωσης"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"Η δραστηριότητα <xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> αποτελεί τμήμα της ακόλουθης εφαρμογής:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Θέλετε να καταργήσετε την εγκατάσταση αυτής της εφαρμογής;"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Θέλετε να καταργήσετε την εγκατάσταση αυτής της εφαρμογής για "<b>"όλους"</b>" τους χρήστες; Η εφαρμογή και τα δεδομένα της θα καταργηθούν από "<b>"όλους"</b>" τους χρήστες στη συσκευή."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Θέλετε να αντικαταστήσετε αυτήν την εφαρμογή με την εργοστασιακή έκδοση;"</string>
<string name="uninstalling" msgid="5556217435895938250">"Κατάργηση εγκατάστασης..."</string>
<string name="uninstall_done" msgid="3792487853420281888">"Η κατάργηση εγκατάστασης ολοκληρώθηκε."</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Σφάλμα ανάλυσης"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"Παρουσιάστηκε ένα πρόβλημα κατά την ανάλυση του πακέτου."</string>
<string name="newPerms" msgid="6039428254474104210">"Νέο"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"Όλα"</string>
<string name="privacyPerms" msgid="1850527049572617">"Απόρρητο"</string>
<string name="devicePerms" msgid="6733560207731294504">"Πρόσβαση συσκευής"</string>
<string name="no_new_perms" msgid="6657813692169565975">"Αυτή η ενημέρωση δεν απαιτεί νέες άδειες."</string>
diff --git a/res/values-en-rGB/strings.xml b/res/values-en-rGB/strings.xml
index 5a7fc47..ddedaba 100644
--- a/res/values-en-rGB/strings.xml
+++ b/res/values-en-rGB/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Package installer"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Next"</string>
<string name="install" msgid="5896438203900042068">"Install"</string>
<string name="done" msgid="3889387558374211719">"Done"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Allow this app to:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Do you want to install this application? It does not require any special access."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Do you want to install an update to this existing application? Your existing data will not be lost. The updated application will get access to:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Do you want to install an update to this built-in application? Your existing data will not be lost. The updated application will get access to:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Do you want to install an update to this existing application? Your existing data will not be lost. It does not require any special access."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Do you want to install an update to this built-in application? Your existing data will not be lost. It does not require any special access."</string>
<string name="install_failed" msgid="6579998651498970899">"App not installed."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"The package appears to be corrupt."</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"An existing package by the same name with a conflicting signature is already installed."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Uninstall update"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> is part of the following app:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Do you want to uninstall this app?"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Do you want to uninstall this app for "<b>"all"</b>" users? The application and its data will be removed from "<b>"all"</b>" users on the device."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Do you want to replace this app with the factory version?"</string>
<string name="uninstalling" msgid="5556217435895938250">"Uninstalling…"</string>
<string name="uninstall_done" msgid="3792487853420281888">"Uninstall finished"</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Parse error"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"There was a problem while parsing the package."</string>
<string name="newPerms" msgid="6039428254474104210">"New"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"All"</string>
<string name="privacyPerms" msgid="1850527049572617">"Privacy"</string>
<string name="devicePerms" msgid="6733560207731294504">"Device Access"</string>
<string name="no_new_perms" msgid="6657813692169565975">"This update requires no new permissions."</string>
diff --git a/res/values-ja/strings.xml b/res/values-ja/strings.xml
index a206218..9512605 100644
--- a/res/values-ja/strings.xml
+++ b/res/values-ja/strings.xml
@@ -55,7 +55,7 @@
<string name="allow_source_dlg_text" msgid="3927580956764099076">"<xliff:g id="APP_NAME">%1$s</xliff:g>が他のアプリをインストールしようとしています。"\n\n"今後この操作を許可しますか?"</string>
<string name="manage_applications" msgid="4033876279091996596">"アプリを管理"</string>
<string name="dlg_app_replacement_title" msgid="1232230739563820951">"アプリを更新しますか?"</string>
- <string name="dlg_app_replacement_statement" msgid="2992911899989907492">"このアプリをインストールすると別のアプリが上書きされます。"\n\n"過去のユーザーデータはすべて保存されます。"</string>
+ <string name="dlg_app_replacement_statement" msgid="2992911899989907492">"このアプリは既存のアプリを上書きします。"\n\n"過去のユーザーデータはすべて保存されます。"</string>
<string name="dlg_sys_app_replacement_statement" msgid="1900046590819605929">"これはシステムアプリです。"\n\n"過去のユーザーデータはすべて保存されます。"</string>
<string name="out_of_space_dlg_title" msgid="7843674437613797326">"容量不足です"</string>
<string name="out_of_space_dlg_text" msgid="4774775404294282216">"<xliff:g id="APP_NAME">%1$s</xliff:g>をインストールできませんでした。空き容量を増やしてもう一度お試しください。"</string>
diff --git a/res/values-nl/strings.xml b/res/values-nl/strings.xml
index 2f06a4e..e15685a 100644
--- a/res/values-nl/strings.xml
+++ b/res/values-nl/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Installatieprogramma van pakket"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Volgende"</string>
<string name="install" msgid="5896438203900042068">"Installeren"</string>
<string name="done" msgid="3889387558374211719">"Gereed"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Toestaan dat deze app:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Wilt u deze app installeren? Hiervoor is geen speciale toegang vereist."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Wilt u een update voor deze bestaande app installeren? Uw huidige gegevens gaan niet verloren. De bijgewerkte app krijgt toegang tot:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Wilt u een update van deze ingebouwde app installeren? Uw huidige gegevens gaan niet verloren. De bijgewerkte app krijgt toegang tot:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Wilt u een update voor deze bestaande app installeren? Uw huidige gegevens gaan niet verloren. Hiervoor is geen speciale toegang vereist."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Wilt u een update voor deze ingebouwde app installeren? Uw huidige gegevens gaan niet verloren. Hiervoor is geen speciale toegang vereist."</string>
<string name="install_failed" msgid="6579998651498970899">"App niet geïnstalleerd."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"Het pakket lijkt beschadigd."</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"Een bestaand pakket met dezelfde naam en een conflicterende handtekening is al geïnstalleerd."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Update verwijderen"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> maakt deel uit van de volgende app:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Wilt u deze app verwijderen?"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Wilt u deze app verwijderen voor "<b>"alle"</b>" gebruikers? Deze app en de gegevens ervan worden verwijderd voor "<b>"alle"</b>" gebruikers van het apparaat."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Wilt u deze app vervangen door de fabrieksversie?"</string>
<string name="uninstalling" msgid="5556217435895938250">"Verwijderen..."</string>
<string name="uninstall_done" msgid="3792487853420281888">"Verwijdering voltooid."</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Parseerfout"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"Er is een probleem opgetreden bij het parseren van het pakket."</string>
<string name="newPerms" msgid="6039428254474104210">"Nieuw"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"Alle"</string>
<string name="privacyPerms" msgid="1850527049572617">"Privacy"</string>
<string name="devicePerms" msgid="6733560207731294504">"Apparaattoegang"</string>
<string name="no_new_perms" msgid="6657813692169565975">"Voor deze update zijn geen nieuwe rechten vereist."</string>
diff --git a/res/values-sv/strings.xml b/res/values-sv/strings.xml
index b3a41c8..8bac71d 100644
--- a/res/values-sv/strings.xml
+++ b/res/values-sv/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Installationsprogram för paket"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Nästa"</string>
<string name="install" msgid="5896438203900042068">"Installera"</string>
<string name="done" msgid="3889387558374211719">"Färdig"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Tillåt att appen:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Vill du installera den här appen? Den kräver ingen särskild åtkomst."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Vill du installera en uppdatering till den här befintliga appen? Dina befintliga data försvinner inte. Den uppdaterade appen får åtkomst till:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Vill du installera en uppdatering till den här befintliga förinstallerade appen? Dina befintliga data försvinner inte. Den uppdaterade appen får åtkomst till:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Vill du installera en uppdatering av den befintliga appen? Dina befintliga data försvinner inte. Ingen särskild åtkomst krävs."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Vill du installera en uppdatering av den inbyggda appen? Dina befintliga data försvinner inte. Ingen särskild åtkomst krävs."</string>
<string name="install_failed" msgid="6579998651498970899">"Appen har inte installerats."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"Paketet verkar vara skadat."</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"Det finns redan ett paket med samma namn och en signatur som är i konflikt."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Avinstallera uppdateringen"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> är en del av följande app:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Vill du avinstallera appen?"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Vill du avinstallera den här appen för "<b>"alla"</b>" användare? Appen och alla data i den tas bort från "<b>"alla"</b>" användare på enheten."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Vill du att ersätta den här appen med fabriksversionen?"</string>
<string name="uninstalling" msgid="5556217435895938250">"Avinstallerar…"</string>
<string name="uninstall_done" msgid="3792487853420281888">"Avinstallationen har slutförts."</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Analysfel"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"Ett problem uppstod när paketet analyserades."</string>
<string name="newPerms" msgid="6039428254474104210">"Nytt"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"Alla"</string>
<string name="privacyPerms" msgid="1850527049572617">"Sekretess"</string>
<string name="devicePerms" msgid="6733560207731294504">"Enhetsåtkomst"</string>
<string name="no_new_perms" msgid="6657813692169565975">"Det krävs inga nya behörigheter för den här uppdateringen."</string>
diff --git a/res/values-uk/strings.xml b/res/values-uk/strings.xml
index 942df2b..761ee94 100644
--- a/res/values-uk/strings.xml
+++ b/res/values-uk/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Програма встановлення пакета"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Далі"</string>
<string name="install" msgid="5896438203900042068">"Установити"</string>
<string name="done" msgid="3889387558374211719">"Готово"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Дозволити цій програмі:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Дійсно встановити цю програму? Їй не потрібні жодні особливі доступи."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Дійсно встановити оновлення для цієї наявної програми? Існуючі дані втрачено не буде. Оновлена програма отримає доступ до:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Дійсно встановити оновлення для цієї вбудованої програми? Існуючі дані втрачено не буде. Оновлена програма отримає доступ до:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Хочете встановити оновлення для наявної програми? Ваші наявні дані не зникнуть. Спеціальний доступ не потрібен."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Хочете встановити оновлення для цієї вбудованої програми? Ваші наявні дані не зникнуть. Спеціальний доступ не потрібен."</string>
<string name="install_failed" msgid="6579998651498970899">"Програму не встановлено."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"Імовірно, пакет пошкоджено."</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">"Існуючий пакет із такою ж назвою з несумісним підписом уже встановлено."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Видалити оновлення"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"Дія <xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> є частиною такої програми:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Видалити цю програму?"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Хочете видалити цю програму для "<b>"всіх"</b>" користувачів? Програму та її дані буде видалено для "<b>"всіх"</b>" користувачів цього пристрою."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Замінити цю програму на заводську версію?"</string>
<string name="uninstalling" msgid="5556217435895938250">"Видалення..."</string>
<string name="uninstall_done" msgid="3792487853420281888">"Видалення завершено."</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Помилка аналізу"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"Під час аналізу пакету виникла помилка."</string>
<string name="newPerms" msgid="6039428254474104210">"Нові"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"Усі"</string>
<string name="privacyPerms" msgid="1850527049572617">"Конфіденційність"</string>
<string name="devicePerms" msgid="6733560207731294504">"Доступ до пристрою"</string>
<string name="no_new_perms" msgid="6657813692169565975">"Для цього оновлення не потрібні нові дозволи."</string>
diff --git a/res/values-zu/strings.xml b/res/values-zu/strings.xml
index 56b36bd..ea419e1 100644
--- a/res/values-zu/strings.xml
+++ b/res/values-zu/strings.xml
@@ -17,8 +17,7 @@
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="app_name" msgid="2738748390251381682">"Isifaki sephakheji"</string>
- <!-- no translation found for next (3057143178373252333) -->
- <skip />
+ <string name="next" msgid="3057143178373252333">"Okulandelayo"</string>
<string name="install" msgid="5896438203900042068">"Faka"</string>
<string name="done" msgid="3889387558374211719">"Kwenziwe"</string>
<string name="security_settings_desc" msgid="2706691034244052604">"Vumela le-app uku:"</string>
@@ -30,10 +29,8 @@
<string name="install_confirm_question_no_perms" msgid="5918305641302873520">"Ngabe ufuna ukufaka lolu hlelo lokusebenza? Alidingi ukufinyelela okukhethekile."</string>
<string name="install_confirm_question_update" msgid="4624159567361487964">"Ngabe ufuna ukufaka isibuyekezo ohlelweni lokusebenza olukhona? Idatha yakho ekhona izolahleka. Uhlelo lokusebenza olubuyekeziwe lizothola ukufinyelela ku:"</string>
<string name="install_confirm_question_update_system" msgid="1302330093676416336">"Ngabe ufuna ukufaka isibuyekezo kulolu hlelo lokusebenza olakhelwe phakathi? Idatha yakho ekhona izolahleka. Uhlelo lokusebenza olubuyekeziwe luzothola ukufinyelela ku:"</string>
- <!-- no translation found for install_confirm_question_update_no_perms (4885928136844618944) -->
- <skip />
- <!-- no translation found for install_confirm_question_update_system_no_perms (7676593512694724374) -->
- <skip />
+ <string name="install_confirm_question_update_no_perms" msgid="4885928136844618944">"Ingabe ufuna ukufaka isibuyekezo kulolu hlelo lokusebenza olukhona? Idatha yakho ekhona ngeke ilahleke. Akudingi ukufinyelela okukhethekile."</string>
+ <string name="install_confirm_question_update_system_no_perms" msgid="7676593512694724374">"Ungabe ufuna ukukhipha isibuyekezo kulolu hlelo lokusebenza olakhelwe ngaphakathi? Idatha yakho ekhona ngeke ilahleke. Akudingi ukufinyelela okukhethekile."</string>
<string name="install_failed" msgid="6579998651498970899">"I-app ayifakiwe."</string>
<string name="install_failed_invalid_apk" msgid="1287935707565682604">"Iphasela libonakala lonakalisiwe"</string>
<string name="install_failed_inconsistent_certificates" msgid="1517751954440692054">" Iphakheji enegama elifanayo nesiginisha ephikisayo isivele ifakiwe."</string>
@@ -66,8 +63,7 @@
<string name="uninstall_update_title" msgid="4146940097553335390">"Khipha isibuyekezo"</string>
<string name="uninstall_activity_text" msgid="6680688689803932550">"I-<xliff:g id="ACTIVITY_NAME">%1$s</xliff:g> ingxenye yohlelo lokusebenza olulandelayo:"</string>
<string name="uninstall_application_text" msgid="6691975835951187030">"Ufuna ukukhipha le-app?"</string>
- <!-- no translation found for uninstall_application_text_all_users (5574704453233525222) -->
- <skip />
+ <string name="uninstall_application_text_all_users" msgid="5574704453233525222">"Ingabe ufuna ukukhipha lolu hlelo lokusebenza kubo "<b>"bonke"</b>" abasebenzisi? Uhlelo lokusebenza nedatha yalo kuzosuswa kubo "<b>"bonke"</b>" abasebenzisi kudivayisi."</string>
<string name="uninstall_update_text" msgid="2056387942084605027">"Ufuna ukumiselela le app ngenguqulo yenkampani?"</string>
<string name="uninstalling" msgid="5556217435895938250">"Iyakhipha..."</string>
<string name="uninstall_done" msgid="3792487853420281888">"Ukukhipha kuqedile"</string>
@@ -78,8 +74,7 @@
<string name="Parse_error_dlg_title" msgid="6079580916889596257">"Iphutha lokuhlwaya"</string>
<string name="Parse_error_dlg_text" msgid="7623286983621067011">"Kube nenkinga yokwehlukanisa iphakheji."</string>
<string name="newPerms" msgid="6039428254474104210">"Okusha"</string>
- <!-- no translation found for allPerms (1024385515840703981) -->
- <skip />
+ <string name="allPerms" msgid="1024385515840703981">"Konke"</string>
<string name="privacyPerms" msgid="1850527049572617">"Ubumfihlo"</string>
<string name="devicePerms" msgid="6733560207731294504">"Ukufinyelela kwedivayisi"</string>
<string name="no_new_perms" msgid="6657813692169565975">"Lesi sibuyekezo asidingi zimvume."</string>
diff --git a/src/com/android/packageinstaller/InstallAppProgress.java b/src/com/android/packageinstaller/InstallAppProgress.java
index a2feacf..e281fd3 100755
--- a/src/com/android/packageinstaller/InstallAppProgress.java
+++ b/src/com/android/packageinstaller/InstallAppProgress.java
@@ -163,7 +163,7 @@ public class InstallAppProgress extends Activity implements View.OnClickListener
mPackageURI = intent.getData();
final String scheme = mPackageURI.getScheme();
- if (scheme != null && !"file".equals(scheme)) {
+ if (scheme != null && !"file".equals(scheme) && !"package".equals(scheme)) {
throw new IllegalArgumentException("unexpected scheme " + scheme);
}
@@ -227,8 +227,14 @@ public class InstallAppProgress extends Activity implements View.OnClickListener
Log.w(TAG, "Replacing package:" + mAppInfo.packageName);
}
- final File sourceFile = new File(mPackageURI.getPath());
- PackageUtil.AppSnippet as = PackageUtil.getAppSnippet(this, mAppInfo, sourceFile);
+ final PackageUtil.AppSnippet as;
+ if ("package".equals(mPackageURI.getScheme())) {
+ as = new PackageUtil.AppSnippet(pm.getApplicationLabel(mAppInfo),
+ pm.getApplicationIcon(mAppInfo));
+ } else {
+ final File sourceFile = new File(mPackageURI.getPath());
+ as = PackageUtil.getAppSnippet(this, mAppInfo, sourceFile);
+ }
mLabel = as.label;
PackageUtil.initSnippetForNewApp(this, as, R.id.app_snippet);
mStatusTextView = (TextView)findViewById(R.id.center_text);
@@ -250,8 +256,19 @@ public class InstallAppProgress extends Activity implements View.OnClickListener
referrer, null);
PackageInstallObserver observer = new PackageInstallObserver();
- pm.installPackageWithVerificationAndEncryption(mPackageURI, observer, installFlags,
- installerPackageName, verificationParams, null);
+ if ("package".equals(mPackageURI.getScheme())) {
+ try {
+ pm.installExistingPackage(mAppInfo.packageName);
+ observer.packageInstalled(mAppInfo.packageName,
+ PackageManager.INSTALL_SUCCEEDED);
+ } catch (PackageManager.NameNotFoundException e) {
+ observer.packageInstalled(mAppInfo.packageName,
+ PackageManager.INSTALL_FAILED_INVALID_APK);
+ }
+ } else {
+ pm.installPackageWithVerificationAndEncryption(mPackageURI, observer, installFlags,
+ installerPackageName, verificationParams, null);
+ }
}
@Override
diff --git a/src/com/android/packageinstaller/PackageInstallerActivity.java b/src/com/android/packageinstaller/PackageInstallerActivity.java
index 8cf9967..93a52df 100644
--- a/src/com/android/packageinstaller/PackageInstallerActivity.java
+++ b/src/com/android/packageinstaller/PackageInstallerActivity.java
@@ -25,7 +25,9 @@ import android.content.DialogInterface.OnCancelListener;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
+import android.content.pm.PackageUserState;
import android.content.pm.PackageManager.NameNotFoundException;
import android.content.pm.PackageParser;
import android.graphics.Rect;
@@ -66,7 +68,7 @@ public class PackageInstallerActivity extends Activity implements OnCancelListen
private Uri mReferrerURI;
private boolean localLOGV = false;
PackageManager mPm;
- PackageParser.Package mPkgInfo;
+ PackageInfo mPkgInfo;
ApplicationInfo mSourceInfo;
// ApplicationInfo object primarily used for already existing applications
@@ -438,12 +440,19 @@ public class PackageInstallerActivity extends Activity implements OnCancelListen
String[] oldName = mPm.canonicalToCurrentPackageNames(new String[] { pkgName });
if (oldName != null && oldName.length > 0 && oldName[0] != null) {
pkgName = oldName[0];
- mPkgInfo.setPackageName(pkgName);
+ mPkgInfo.packageName = pkgName;
+ mPkgInfo.applicationInfo.packageName = pkgName;
}
// Check if package is already installed. display confirmation dialog if replacing pkg
try {
+ // This is a little convoluted because we want to get all uninstalled
+ // apps, but this may include apps with just data, and if it is just
+ // data we still want to count it as "installed".
mAppInfo = mPm.getApplicationInfo(pkgName,
PackageManager.GET_UNINSTALLED_PACKAGES);
+ if ((mAppInfo.flags&ApplicationInfo.FLAG_INSTALLED) == 0) {
+ mAppInfo = null;
+ }
} catch (NameNotFoundException e) {
mAppInfo = null;
}
@@ -469,27 +478,49 @@ public class PackageInstallerActivity extends Activity implements OnCancelListen
mPm = getPackageManager();
final String scheme = mPackageURI.getScheme();
- if (scheme != null && !"file".equals(scheme)) {
- throw new IllegalArgumentException("unexpected scheme " + scheme);
+ if (scheme != null && !"file".equals(scheme) && !"package".equals(scheme)) {
+ Log.w(TAG, "Unsupported scheme " + scheme);
+ setPmResult(PackageManager.INSTALL_FAILED_INVALID_URI);
+ return;
}
- final File sourceFile = new File(mPackageURI.getPath());
- mPkgInfo = PackageUtil.getPackageInfo(sourceFile);
-
- // Check for parse errors
- if (mPkgInfo == null) {
- Log.w(TAG, "Parse error when parsing manifest. Discontinuing installation");
- showDialogInner(DLG_PACKAGE_ERROR);
- setPmResult(PackageManager.INSTALL_FAILED_INVALID_APK);
- return;
+ final PackageUtil.AppSnippet as;
+ if ("package".equals(mPackageURI.getScheme())) {
+ try {
+ mPkgInfo = mPm.getPackageInfo(mPackageURI.getSchemeSpecificPart(),
+ PackageManager.GET_PERMISSIONS | PackageManager.GET_UNINSTALLED_PACKAGES);
+ } catch (NameNotFoundException e) {
+ }
+ if (mPkgInfo == null) {
+ Log.w(TAG, "Requested package " + mPackageURI.getScheme()
+ + " not available. Discontinuing installation");
+ showDialogInner(DLG_PACKAGE_ERROR);
+ setPmResult(PackageManager.INSTALL_FAILED_INVALID_APK);
+ return;
+ }
+ as = new PackageUtil.AppSnippet(mPm.getApplicationLabel(mPkgInfo.applicationInfo),
+ mPm.getApplicationIcon(mPkgInfo.applicationInfo));
+ } else {
+ final File sourceFile = new File(mPackageURI.getPath());
+ PackageParser.Package parsed = PackageUtil.getPackageInfo(sourceFile);
+
+ // Check for parse errors
+ if (parsed == null) {
+ Log.w(TAG, "Parse error when parsing manifest. Discontinuing installation");
+ showDialogInner(DLG_PACKAGE_ERROR);
+ setPmResult(PackageManager.INSTALL_FAILED_INVALID_APK);
+ return;
+ }
+ mPkgInfo = PackageParser.generatePackageInfo(parsed, null,
+ PackageManager.GET_PERMISSIONS, 0, 0, null,
+ new PackageUserState());
+ as = PackageUtil.getAppSnippet(this, mPkgInfo.applicationInfo, sourceFile);
}
//set view
setContentView(R.layout.install_start);
mInstallConfirm = findViewById(R.id.install_confirm_panel);
mInstallConfirm.setVisibility(View.INVISIBLE);
- final PackageUtil.AppSnippet as = PackageUtil.getAppSnippet(
- this, mPkgInfo.applicationInfo, sourceFile);
PackageUtil.initSnippetForNewApp(this, as, R.id.app_snippet);
// Deal with install source.