Merge lp:~humpolec-team/humpolec/UbuntuInstaller_lp1264034 into lp:humpolec

Proposed by Yuan-Chen Cheng
Status: Merged
Merged at revision: 32
Proposed branch: lp:~humpolec-team/humpolec/UbuntuInstaller_lp1264034
Merge into: lp:humpolec
Diff against target: 118 lines (+56/-1)
3 files modified
res/menu/installer_menu.xml (+5/-0)
res/values/strings.xml (+5/-1)
src/com/canonical/ubuntu/installer/InstallActivity.java (+46/-0)
To merge this branch: bzr merge lp:~humpolec-team/humpolec/UbuntuInstaller_lp1264034
Reviewer Review Type Date Requested Status
Rex Tsai Approve
Review via email: mp+200031@code.launchpad.net

Description of the change

Dump:
1. Board fingerprint
2. apk version
3. content of terminal
on /sdcard to make it easy to debug

To post a comment you must log in.
Revision history for this message
Rex Tsai (chihchun) wrote :

LGTM, +1

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'res/menu/installer_menu.xml'
--- res/menu/installer_menu.xml 2013-12-20 03:39:53 +0000
+++ res/menu/installer_menu.xml 2013-12-25 06:14:14 +0000
@@ -5,6 +5,11 @@
5 android:orderInCategory="100"5 android:orderInCategory="100"
6 android:showAsAction="never"6 android:showAsAction="never"
7 android:title="@string/action_detele_download"/>7 android:title="@string/action_detele_download"/>
8 <item
9 android:id="@+id/action_dump_terminal"
10 android:orderInCategory="100"
11 android:showAsAction="never"
12 android:title="@string/action_dump_terminal"/>
8<!-- <item13<!-- <item
9 android:id="@+id/action_settings"14 android:id="@+id/action_settings"
10 android:orderInCategory="100"15 android:orderInCategory="100"
1116
=== modified file 'res/values/strings.xml'
--- res/values/strings.xml 2013-12-20 03:39:53 +0000
+++ res/values/strings.xml 2013-12-25 06:14:14 +0000
@@ -4,6 +4,7 @@
4 <string name="app_name">Ubuntu Dual Boot</string>4 <string name="app_name">Ubuntu Dual Boot</string>
5 <string name="action_settings">Settings</string>5 <string name="action_settings">Settings</string>
6 <string name="action_detele_download">Delete download</string>6 <string name="action_detele_download">Delete download</string>
7 <string name="action_dump_terminal">Dump Terminal</string>
7 <string name="action_install">Install</string>8 <string name="action_install">Install</string>
8 <string name="action_uninstall">Uninstall Ubuntu</string>9 <string name="action_uninstall">Uninstall Ubuntu</string>
9 <string name="action_uninstall_button">Uninstall</string>10 <string name="action_uninstall_button">Uninstall</string>
@@ -29,7 +30,10 @@
29 <string name="deleting_user_data">Deleting Ubuntu user data</string>30 <string name="deleting_user_data">Deleting Ubuntu user data</string>
30 <string name="fail_fetching_versions">Fail to fetch available versions</string>31 <string name="fail_fetching_versions">Fail to fetch available versions</string>
31 <string name="uninstall_dialog_message">This will remove all Ubuntu system files and Ubuntu swap file</string>32 <string name="uninstall_dialog_message">This will remove all Ubuntu system files and Ubuntu swap file</string>
32 33 <string name="terminal_is_empty">Terminal is emtpy.</string>
34 <string name="terminal_dump_succ">Dump Terminal to file success</string>
35 <string name="terminal_dump_fail">Dump Terminal to file fail</string>
36 <string name="external_storage_unavailable">External Storage is not available</string>
33 <!-- Strings for Launch screen -->37 <!-- Strings for Launch screen -->
34 <string name="launch_title">Ubuntu</string>38 <string name="launch_title">Ubuntu</string>
35 <string name="label_channel">Channel:</string>39 <string name="label_channel">Channel:</string>
3640
=== modified file 'src/com/canonical/ubuntu/installer/InstallActivity.java'
--- src/com/canonical/ubuntu/installer/InstallActivity.java 2013-12-23 09:13:47 +0000
+++ src/com/canonical/ubuntu/installer/InstallActivity.java 2013-12-25 06:14:14 +0000
@@ -1,7 +1,12 @@
1package com.canonical.ubuntu.installer;1package com.canonical.ubuntu.installer;
22
3import java.io.File;
4import java.io.FileWriter;
5import java.text.SimpleDateFormat;
6import java.util.Calendar;
3import java.util.HashMap;7import java.util.HashMap;
4import java.util.List;8import java.util.List;
9import java.util.Locale;
510
6import com.canonical.ubuntu.installer.R;11import com.canonical.ubuntu.installer.R;
7import com.canonical.ubuntu.installer.TextPickerDialog;12import com.canonical.ubuntu.installer.TextPickerDialog;
@@ -12,6 +17,7 @@
12import com.canonical.ubuntu.widget.UbuntuButton;17import com.canonical.ubuntu.widget.UbuntuButton;
1318
14import android.os.Bundle;19import android.os.Bundle;
20import android.os.Environment;
15import android.app.Activity;21import android.app.Activity;
16import android.app.ProgressDialog;22import android.app.ProgressDialog;
17import android.content.BroadcastReceiver;23import android.content.BroadcastReceiver;
@@ -19,6 +25,8 @@
19import android.content.Intent;25import android.content.Intent;
20import android.content.IntentFilter;26import android.content.IntentFilter;
21import android.content.SharedPreferences;27import android.content.SharedPreferences;
28import android.content.pm.PackageInfo;
29import android.content.pm.PackageManager;
22import android.text.Html;30import android.text.Html;
23import android.text.method.ScrollingMovementMethod;31import android.text.method.ScrollingMovementMethod;
24import android.util.Log;32import android.util.Log;
@@ -126,6 +134,44 @@
126 mDownloadedVersion = null;134 mDownloadedVersion = null;
127 requestServiceState();135 requestServiceState();
128 break;136 break;
137 case R.id.action_dump_terminal:
138 CharSequence terminalText = mTerminal.getText();
139 if (terminalText.length() == 0) {
140 Utils.showToast(this.getApplicationContext(), R.string.terminal_is_empty);
141 break;
142 }
143
144 Calendar c = Calendar.getInstance();
145 SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd_HH:mm:ss", Locale.US);
146 String formattedDate = df.format(c.getTime());
147
148 String filename = "UbuntuInstaller-" + formattedDate + ".log";
149 File dumpFile = null;
150 try {
151 File vSDCard;
152 if(Environment.getExternalStorageState().equals(Environment.MEDIA_REMOVED)) {
153 Utils.showToast(this.getApplicationContext(), R.string.external_storage_unavailable);
154 break;
155 } else {
156 vSDCard = Environment.getExternalStorageDirectory();
157 }
158
159 dumpFile = new File(vSDCard + "/" + filename);
160 FileWriter dumpFileWriter = new FileWriter(dumpFile);
161 dumpFileWriter.write("Device: " + android.os.Build.FINGERPRINT + "\n");
162
163 Context context = this.getApplicationContext();
164 PackageInfo pInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_META_DATA);
165 String versionInfo = pInfo.versionName;
166 dumpFileWriter.write("APK Version: " + versionInfo + "\n");
167
168 dumpFileWriter.write(terminalText.toString());
169 dumpFileWriter.close();
170 Utils.showToast(this.getApplicationContext(), getResources().getString(R.string.terminal_dump_succ) + ": " + dumpFile.getPath());
171 } catch (Exception e) {
172 Utils.showToast(this.getApplicationContext(), getResources().getString(R.string.terminal_dump_fail) + ": " + dumpFile.getPath());
173 }
174 break;
129 }175 }
130 return super.onOptionsItemSelected(item);176 return super.onOptionsItemSelected(item);
131 }177 }

Subscribers

People subscribed via source and target branches

to all changes: