USB: Add dialog with instructions for installing AFT
Bug: 5032807 Change-Id: Ic7737629c6081a3d6192e060da525fcc4c494919 Signed-off-by: Mike Lockwood <lockwood@android.com>
This commit is contained in:
@@ -1761,6 +1761,12 @@
|
|||||||
<string name="usb_label_installer_cd">Install Android File Transfer application for Mac</string>
|
<string name="usb_label_installer_cd">Install Android File Transfer application for Mac</string>
|
||||||
<!-- Storage setting. Label for installer CD [CHAR LIMIT=30]-->
|
<!-- Storage setting. Label for installer CD [CHAR LIMIT=30]-->
|
||||||
<string name="usb_label_installer_cd_done">Done installing Android File Transfer application for Mac</string>
|
<string name="usb_label_installer_cd_done">Done installing Android File Transfer application for Mac</string>
|
||||||
|
<!-- Installer CD dialog title [CHAR LIMIT=30] -->
|
||||||
|
<string name="dlg_installer_cd_title">Android File Transfer app for Mac</string>
|
||||||
|
<!-- Installer CD dialog text [CHAR LIMIT=NONE] -->
|
||||||
|
<string name="dlg_installer_cd_text">Step 1:\nOn your Mac, double-click androidfiletransfer.msg\n\nStep 2:\nIn the Installer window, drag Android File Transfer to Applications.</string>
|
||||||
|
<!-- Installer CD dialog OK button text [CHAR LIMIT=NONE] -->
|
||||||
|
<string name="dlg_installer_cd_ok">Done following these steps</string>
|
||||||
|
|
||||||
<!-- Phone info screen, section titles: -->
|
<!-- Phone info screen, section titles: -->
|
||||||
<string name="battery_status_title">Battery status</string>
|
<string name="battery_status_title">Battery status</string>
|
||||||
|
@@ -16,10 +16,13 @@
|
|||||||
|
|
||||||
package com.android.settings.deviceinfo;
|
package com.android.settings.deviceinfo;
|
||||||
|
|
||||||
|
import android.app.AlertDialog;
|
||||||
|
import android.app.Dialog;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
import android.content.ContentQueryMap;
|
import android.content.ContentQueryMap;
|
||||||
import android.content.ContentResolver;
|
import android.content.ContentResolver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.content.DialogInterface;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.hardware.usb.UsbManager;
|
import android.hardware.usb.UsbManager;
|
||||||
@@ -52,6 +55,8 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
private static final String KEY_INSTALLER_CD = "usb_installer_cd";
|
private static final String KEY_INSTALLER_CD = "usb_installer_cd";
|
||||||
private static final int MENU_ID_INSTALLER_CD = Menu.FIRST;
|
private static final int MENU_ID_INSTALLER_CD = Menu.FIRST;
|
||||||
|
|
||||||
|
private static final int DLG_INSTALLER_CD = 1;
|
||||||
|
|
||||||
private UsbManager mUsbManager;
|
private UsbManager mUsbManager;
|
||||||
private String mInstallerImagePath;
|
private String mInstallerImagePath;
|
||||||
private CheckBoxPreference mMtp;
|
private CheckBoxPreference mMtp;
|
||||||
@@ -60,6 +65,9 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
|
|
||||||
private final BroadcastReceiver mStateReceiver = new BroadcastReceiver() {
|
private final BroadcastReceiver mStateReceiver = new BroadcastReceiver() {
|
||||||
public void onReceive(Context content, Intent intent) {
|
public void onReceive(Context content, Intent intent) {
|
||||||
|
if (!intent.getBooleanExtra(UsbManager.USB_CONNECTED, false)) {
|
||||||
|
removeDialog(DLG_INSTALLER_CD);
|
||||||
|
}
|
||||||
updateToggles();
|
updateToggles();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -108,6 +116,24 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
new IntentFilter(UsbManager.ACTION_USB_STATE));
|
new IntentFilter(UsbManager.ACTION_USB_STATE));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Dialog onCreateDialog(int id) {
|
||||||
|
switch (id) {
|
||||||
|
case DLG_INSTALLER_CD:
|
||||||
|
return new AlertDialog.Builder(getActivity())
|
||||||
|
.setTitle(R.string.dlg_installer_cd_title)
|
||||||
|
.setMessage(R.string.dlg_installer_cd_text)
|
||||||
|
.setPositiveButton(R.string.dlg_installer_cd_ok,
|
||||||
|
new DialogInterface.OnClickListener() {
|
||||||
|
public void onClick(DialogInterface dialog, int which) {
|
||||||
|
// Disable installer CD, return to default function.
|
||||||
|
mUsbManager.setCurrentFunction(null, false);
|
||||||
|
}})
|
||||||
|
.create();
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private void updateToggles() {
|
private void updateToggles() {
|
||||||
if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MTP)) {
|
if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MTP)) {
|
||||||
mMtp.setChecked(true);
|
mMtp.setChecked(true);
|
||||||
@@ -164,10 +190,12 @@ public class UsbSettings extends SettingsPreferenceFragment {
|
|||||||
if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MASS_STORAGE)) {
|
if (mUsbManager.isFunctionEnabled(UsbManager.USB_FUNCTION_MASS_STORAGE)) {
|
||||||
// Disable installer CD, return to default function.
|
// Disable installer CD, return to default function.
|
||||||
mUsbManager.setCurrentFunction(null, false);
|
mUsbManager.setCurrentFunction(null, false);
|
||||||
|
removeDialog(DLG_INSTALLER_CD);
|
||||||
} else {
|
} else {
|
||||||
// Enable installer CD. Don't set as default function.
|
// Enable installer CD. Don't set as default function.
|
||||||
mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MASS_STORAGE, false);
|
mUsbManager.setCurrentFunction(UsbManager.USB_FUNCTION_MASS_STORAGE, false);
|
||||||
mUsbManager.setMassStorageBackingFile(mInstallerImagePath);
|
mUsbManager.setMassStorageBackingFile(mInstallerImagePath);
|
||||||
|
showDialog(DLG_INSTALLER_CD);
|
||||||
}
|
}
|
||||||
updateToggles();
|
updateToggles();
|
||||||
return true;
|
return true;
|
||||||
|
Reference in New Issue
Block a user