2

そのため、Android プロジェクトで単純な xml を使用しており、エミュレーターでは正常に動作しますが、デバイスで使用するとこの例外が発生します

07-25 11:52:17.351: I/dalvikvm(2934): Could not find method javax.xml.stream.XMLInputFactory.newInstance, referenced from method org.simpleframework.xml.stream.StreamProvider.<init>
07-25 11:52:17.351: W/dalvikvm(2934): VFY: unable to resolve static method 6849: Ljavax/xml/stream/XMLInputFactory;.newInstance ()Ljavax/xml/stream/XMLInputFactory;

stax api jar などを依存関係に追加しようとしましたが、dalvik がコンパイルされませんでした。面白いことに、クラスパスに私の simple-xml-2.7.jar しかないエミュレーターですべて動作します。

どんなポインタでも大歓迎です。私の Android デバイスには Android 4.1.1 が搭載されています。

Java オブジェクトを xml に変換しています。オブジェクトは次のとおりです。コードはエミュレーターで正常に動作することに注意してください。エラーは、Android 4.1.1 を搭載した実際のデバイスでのみ報告されます。

@Default
@Namespace(reference="http://bo.myobject")
public class Header implements Serializable
{

    private final static long serialVersionUID = 1L;
    @Element(required = false)
    protected String xyz;

    public Header() {
        super();
    }

    public Header(final String xyz) {
        this.xyz = xyz;
    }

   getters/setters
}
4

1 に答える 1

0

この質問に対する発言は正しくありません。コードは、デバイスとエミュレーターの両方で機能しています。以下のメッセージは、Android での Simple XML の動作とは関係ありません。Android では、StAX ではなく XML プルを使用します。

07-25 11:52:17.351: I/dalvikvm(2934): メソッド org.simpleframework.xml.stream.StreamProvider から参照されるメソッド javax.xml.stream.XMLInputFactory.newInstance が見つかりませんでした。

07-25 11:52:17.351: W/dalvikvm(2934): VFY: 静的メソッド 6849 を解決できません: Ljavax/xml/stream/XMLInputFactory;.newInstance ()Ljavax/xml/stream/XMLInputFactory;

このメッセージは無視してください。

于 2013-07-26T10:45:26.713 に答える