2

SoapObject からブール値を取得しようとしています。Android で kSOAP2 を使用する Web サーバーからの応答から取得しました...

Web 呼び出しからの応答を SoapObject に保存しました。

SoapObject sResult = (SoapObject)envelope.bodyIn;

応答を反復処理して値を取得しています

SoapObject soapresults = (SoapObject)sResult.getProperty(0);

for (int i = 0; i < count; i++)
{
    SoapObject mail = (SoapObject)soapresults.getProperty(i);

    /*Getting the values here*/   
}

メールの SoapObject は次のようになります。

MessageInstance=anyType{AuthorName=Børnehaven; CreatedAtUtc=2012-04-10T18:30:00; ID=631; MessageBody=Husk i morgen; 受信者=anyType{FullName=null; ID=2104535421; IsRead = true; ReadAtUtc=2012-04-10T18:30:00; }; };

そして、私が問題を抱えている唯一の値は、ブール値として保存したい「IsRead」値です...

私はいくつかのことを試しました:

(Boolean)mail.getProperty("IsRead");
((Boolean) mail.getProperty("IsRead")).booleanValue();

しかし、私は取得し続けます:

W/System.err(1283): java.lang.RuntimeException: 無効なプロパティ: IsRead

正しい入手方法は?

4

1 に答える 1

7

このコードスニペットを試してください:

SoapObject soRecipient = (SoapObject) mail.getProperty("Recipient");

boolean isRead = Boolean.parseBoolean(soRecipient.getPropertyAsString("IsRead"));
String fullName = soRecipient.getPropertyAsString("FullName");
String id = soRecipient.getPropertyAsString("Id");
String readAtUtc = soRecipient.getPropertyAsString("ReadAtUtc");
于 2012-05-11T12:27:56.137 に答える