Мой Samsung Galaxy Ace имеет последнюю официальную ночную версию CyanogenMod. У меня есть Windows XP, bluetooth-ключ и драйверы bluesoleil.
Я могу отправлять изображения и файлы apk со своего компьютера на телефон. Но когда я пытаюсь отправить файл epub или файл 7z, мой компьютер говорит:
«Отказано в доступе. Убедитесь, что у вас есть права доступа к файлам или папкам».
Поэтому я попытался создать сжатый файл и вместо 7z использовал .zip. И смог отправить. Поэтому я уверен, что в моем телефоне есть список разрешенных типов файлов для получения. Есть ли способ отредактировать его? Спасибо.
PS: я попытался отклонить файл (который успешно прошел), и он дал ту же ошибку отказа в доступе на моем компьютере. Поэтому я считаю, что мой телефон автоматически блокирует определенные типы файлов. Спасибо.
Причина, по которой это не работает, заключается в том, что существуют определенные типы данных, которые разрешены, такие как JPG, PNG, zip, pdf, текст, все остальное отфильтровывается и запрещается по простой причине безопасности и для предотвращения злонамеренного использования передачи двоичного файла. исполняемый через него, например.
Вы не можете редактировать их, так как они запекаются в ПЗУ и создаются во время компиляции.
Посмотрите в packages/app/Bluetooth/src/com/android/bluetooth/Constants.java
:
public static final String[] ACCEPTABLE_SHARE_INBOUND_TYPES = new String[] {
"*",
"image/*",
"video/*",
"audio/*",
"text/x-vcard",
"text/plain",
"text/html",
"application/zip",
"application/vnd.ms-excel",
"application/msword",
"application/vnd.ms-powerpoint",
"application/pdf",
};
В принципе, это похоже на типы MIME, встречающиеся среди веб-серверов, такие как загрузка PNG или JPG на сайт. Фильтры будут на месте, чтобы предотвратить загрузку двоичных файлов Windows.