Fastjson 안드로이드 버전


Fastjson Android 버전

Fastjson은 표준 버전에 비해 Android 가상 머신 dalvik에서 지원하지 않는 일부 기능을 제거하여 jar를 더 작게 만듭니다. 메소드 호출 감소 등을 포함하여 dalvik에 대한 최적화가 이루어졌습니다. 구문 분석이 JSONObject/JSONArray인 경우 기본 org.json보다 빠르고 직렬화 및 역직렬화 JavaBean 성능이 jackson/gson보다 좋습니다.

Maven을 통해 다운로드

:

<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>VERSION_CODE</version>
</dependency>

또는 Gradle:

compile 'com.alibaba:fastjson:VERSION_CODE'

Android 버전에서 제거된 기능을 대체하려면 여기 또는 여기 또는 여기에서 실제 릴리스 버전 번호를 사용하세요. VERSION_CODE , 例如 1.1.54.android

1. ASM

Dalvik 가상 머신의 바이트코드 형식은 Java SE의 바이트코드 형식과 다릅니다. 현재 ASM 동적 최적화는 Android에서 구현할 수 없습니다.

2.AWT

Android의 Dalvik 가상 머신은 awt를 지원하지 않으므로 awt 관련 클래스 직렬화 및 역직렬화 지원의 표준 버전이 제거됩니다.

3.AtomicXXX

AtomicXXX는 POJO의 속성으로 사용되어서는 안되며 일반적으로 사용되지 않으므로 Android 버전에서는 제거되었습니다.

4. Clob 객체 직렬화는 지원되지 않습니다.

5. JSONPObject

이 함수는 웹 jsonp 데이터 생성에 사용되며 안드로이드 클라이언트에서는 일반적으로 사용되지 않으므로 제거되었습니다.

6. WeakReference/SoftReference/AtomicReference와 같은 참조 필드 유형은 직렬화 및 역직렬화에 지원되지 않으므로 POJO의 속성으로 일반적으로 사용되지 않습니다.

7. 다음 방법은 일반적으로 사용되지 않으며 지원되지 않습니다.

public abstract class JSON {
    public static parseObject(byte[] input, int off, int len, CharsetDecoder charsetDecoder, Type clazz,
                                      Feature... features) { ... }

    public static Object parse(byte[] input, int off, int len, CharsetDecoder charsetDecoder, 
                                      int features) {}

    public static Object parse(byte[] input, int off, int len, CharsetDecoder charsetDecoder, 
                                      Feature...features) {}

    public static Object parse(byte[] input, int off, int len, CharsetDecoder charsetDecoder, 
                                      int features) {}
}

// JSONSerializerMap已废弃,不支持
com.alibaba.fastjson.serializer.JSONSerializer.JSONSerializer(JSONSerializerMap)

8 일부 버려진 클래스는 지원되지 않습니다.


com.alibaba.fastjson.parser.JavaBeanMapping com.alibaba.fastjson.parser.ParserConfig를 사용하세요. com.alibaba .fastjson.serializer.JSONSerializerMap 대신 com.alibaba.fastjson.parser.DefaultExtJSONParser 대신 com.alibaba.fastjson.serializer.SerializeConfig를 사용하십시오. 대신 com.alibaba.fastjson.parser.DefaultJSONParser를 사용하십시오.

9. 더 이상 사용되지 않는 메소드는 지원되지 않습니다

class com.alibaba.fastjson.JSONWriter {
    @Deprecated
    public void writeStartObject();

    @Deprecated
    public void writeEndObject();

    @Deprecated
    public void writeStartArray();

    @Deprecated
    public void writeEndArray();
}