Файл сохранен, несмотря на то, что ваше приложение не имеет READ / WRITE_EXTERNAL_STORAGE. Это связано с тем, что API Play Services запускаются в привилегированном процессе, отдельно от вашего приложения. Даже если у вашего приложения нет разрешений, Play Services может записывать файлы. К сожалению, выполнение в отдельном процессе не позволяет соседним соединениям записывать данные в хранилище вашего частного приложения. И это также означает, что, хотя вы не можете прочитать файл, вы по-прежнему отвечаете за его очистку, иначе он останется на диске бесконечно.
Чтобы объяснить больше о проблеме, из-за отсутствия разрешений вы не можете прочитать файл. Этот сбой кэшируется в тот момент, когда вы получаете onPayloadReceived. Я сообщу об ошибке, чтобы избежать кеширования ошибки, но потребуется много времени, чтобы исправить и отправить новый SDK. Обходные пути либо ...
Спасибо всем, я нашел, как удалить предупреждения.
Как sysrqb сказал, wsdl пространство имен было или удалено или никогда не существовало. Кажется, что инструмент xsd.exe знает определение Гуида внутренне, но это не может проверить xsd схему.
Как Банк Японии указал, единственный способ проверить схему с Гуидами в нем, к (ре), определяют тот тип в схеме. Прием здесь должен добавить тип Гуида к тому же пространству имен "http://microsoft.com/wsdl/types". Таким образом, xsd.exe сделает надлежащую ассоциацию между http://microsoft.com/wsdl/types:Guid и Системой. Гуид
Я сделал новый xsd файл для типа гуида:
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://microsoft.com/wsdl/types/" >
<xs:simpleType name="guid">
<xs:annotation>
<xs:documentation xml:lang="en">
The representation of a GUID, generally the id of an element.
</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Затем я выполняю xsd.exe и с моим исходным xsd файлом и с этим новым xsd файлом:
xsd.exe myschema.xsd guid.xsd /c
Цитата отсюда:
XmlSchema guidSchema = new XmlSchema();
guidSchema.TargetNamespace = "http://microsoft.com/wsdl/types/";
XmlSchemaSimpleTypeRestriction guidRestriction = new XmlSchemaSimpleTypeRestriction();
guidRestriction.BaseTypeName = new XmlQualifiedName("string", XmlSchema.Namespace);
XmlSchemaPatternFacet guidPattern = new XmlSchemaPatternFacet();
guidPattern.Value = @"[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}";
guidRestriction.Facets.Add(guidPattern);
XmlSchemaSimpleType guidType = new XmlSchemaSimpleType();
guidType.Name = "guid";
guidType.Content = guidRestriction;
guidSchema.Items.Add(guidType);
schemaSet.Add(guidSchema);
XmlSchema speakerSchema = new XmlSchema();
speakerSchema.TargetNamespace = "http://www.microsoft.com/events/teched2005/";
// ...
XmlSchemaElement idElement = new XmlSchemaElement();
idElement.Name = "ID";
// Here's where the magic happens...
idElement.SchemaTypeName = new XmlQualifiedName("guid", "http://microsoft.com/wsdl/types/");
Похоже, что wsdl страница расширения пространства имен была удалена, таким образом, это не может найти информацию о типе, Вам нужно.