diff --git a/src/main/java/com/reandroid/apk/CrcOutputStream.java b/src/main/java/com/reandroid/apk/CrcOutputStream.java index b99d5f3f7..f03629677 100644 --- a/src/main/java/com/reandroid/apk/CrcOutputStream.java +++ b/src/main/java/com/reandroid/apk/CrcOutputStream.java @@ -15,17 +15,19 @@ */ package com.reandroid.apk; +import com.reandroid.utils.CRCDigest; + import java.io.IOException; import java.io.OutputStream; -import java.util.zip.CRC32; +@Deprecated public class CrcOutputStream extends OutputStream { - private final CRC32 crc; + private final CRCDigest crc; private long length; private long mCheckSum; public CrcOutputStream() { super(); - this.crc = new CRC32(); + this.crc = new CRCDigest(); } public long getLength(){ return length; diff --git a/src/main/java/com/reandroid/apk/SingleJsonTableInputSource.java b/src/main/java/com/reandroid/apk/SingleJsonTableInputSource.java index e6193425f..80ac01731 100644 --- a/src/main/java/com/reandroid/apk/SingleJsonTableInputSource.java +++ b/src/main/java/com/reandroid/apk/SingleJsonTableInputSource.java @@ -21,6 +21,7 @@ import com.reandroid.arsc.chunk.TableBlock; import com.reandroid.json.JSONException; import com.reandroid.json.JSONObject; +import com.reandroid.utils.CRCDigest; import java.io.*; @@ -58,9 +59,9 @@ public long getLength() throws IOException{ } @Override public long getCrc() throws IOException { - CrcOutputStream outputStream=new CrcOutputStream(); + CRCDigest outputStream = new CRCDigest(); this.write(outputStream); - return outputStream.getCrcValue(); + return outputStream.getValue(); } public TableBlock getTableBlock() throws IOException{ if(mCache != null){ diff --git a/src/main/java/com/reandroid/apk/SplitJsonTableInputSource.java b/src/main/java/com/reandroid/apk/SplitJsonTableInputSource.java index 7e450210b..e00681c93 100644 --- a/src/main/java/com/reandroid/apk/SplitJsonTableInputSource.java +++ b/src/main/java/com/reandroid/apk/SplitJsonTableInputSource.java @@ -17,6 +17,7 @@ import com.reandroid.archive.BlockInputSource; import com.reandroid.arsc.chunk.TableBlock; +import com.reandroid.utils.CRCDigest; import java.io.*; @@ -54,9 +55,9 @@ public long getLength() throws IOException{ } @Override public long getCrc() throws IOException { - CrcOutputStream outputStream=new CrcOutputStream(); + CRCDigest outputStream = new CRCDigest(); this.write(outputStream); - return outputStream.getCrcValue(); + return outputStream.getValue(); } public TableBlock getTableBlock() throws IOException { if(mCache!=null){ diff --git a/src/main/java/com/reandroid/apk/xmlencoder/XMLEncodeSource.java b/src/main/java/com/reandroid/apk/xmlencoder/XMLEncodeSource.java index 49b200240..6ae9280ca 100644 --- a/src/main/java/com/reandroid/apk/xmlencoder/XMLEncodeSource.java +++ b/src/main/java/com/reandroid/apk/xmlencoder/XMLEncodeSource.java @@ -1,10 +1,10 @@ package com.reandroid.apk.xmlencoder; import com.reandroid.apk.APKLogger; -import com.reandroid.apk.CrcOutputStream; import com.reandroid.archive.ByteInputSource; import com.reandroid.arsc.chunk.PackageBlock; import com.reandroid.arsc.chunk.xml.ResXmlDocument; +import com.reandroid.utils.CRCDigest; import com.reandroid.utils.io.IOUtil; import com.reandroid.xml.source.XMLParserSource; import org.xmlpull.v1.XmlPullParser; @@ -12,7 +12,6 @@ import java.io.IOException; import java.io.OutputStream; -import java.util.zip.CRC32; public class XMLEncodeSource extends ByteInputSource { private final PackageBlock packageBlock; @@ -31,7 +30,7 @@ public long getLength() throws IOException { } @Override public long getCrc() throws IOException{ - CRC32 crc32 = new CRC32(); + CRCDigest crc32 = new CRCDigest(); byte[] bytes = getArray(); crc32.update(bytes, 0, bytes.length); return crc32.getValue(); diff --git a/src/main/java/com/reandroid/archive/BlockInputSource.java b/src/main/java/com/reandroid/archive/BlockInputSource.java index 5a5a2ab2f..ffd27dc0f 100644 --- a/src/main/java/com/reandroid/archive/BlockInputSource.java +++ b/src/main/java/com/reandroid/archive/BlockInputSource.java @@ -15,9 +15,9 @@ */ package com.reandroid.archive; -import com.reandroid.apk.CrcOutputStream; import com.reandroid.arsc.base.Block; import com.reandroid.arsc.base.BlockRefresh; +import com.reandroid.utils.CRCDigest; import java.io.IOException; import java.io.OutputStream; @@ -51,9 +51,9 @@ public long getLength() throws IOException{ @Override public long getCrc() throws IOException{ Block block = getBlock(); - CrcOutputStream outputStream=new CrcOutputStream(); + CRCDigest outputStream = new CRCDigest(); block.writeBytes(outputStream); - return outputStream.getCrcValue(); + return outputStream.getValue(); } @Override public long write(OutputStream outputStream) throws IOException { diff --git a/src/main/java/com/reandroid/archive/InputSource.java b/src/main/java/com/reandroid/archive/InputSource.java index 75ffcbef1..721ec2fd4 100644 --- a/src/main/java/com/reandroid/archive/InputSource.java +++ b/src/main/java/com/reandroid/archive/InputSource.java @@ -17,13 +17,13 @@ import com.reandroid.arsc.chunk.TableBlock; import com.reandroid.arsc.chunk.xml.AndroidManifestBlock; +import com.reandroid.utils.CRCDigest; import com.reandroid.utils.CompareUtil; import com.reandroid.utils.StringsUtil; import com.reandroid.utils.io.FileUtil; import java.io.*; import java.util.Comparator; -import java.util.zip.CRC32; public abstract class InputSource { private final String name; @@ -174,7 +174,7 @@ public String toString(){ private void calculateCrc() throws IOException { InputStream inputStream=openStream(); long length=0; - CRC32 crc = new CRC32(); + CRCDigest crc = new CRCDigest(); int bytesRead; byte[] buffer = new byte[1024*64]; while((bytesRead = inputStream.read(buffer)) != -1) { diff --git a/src/main/java/com/reandroid/archive/io/CountingInputStream.java b/src/main/java/com/reandroid/archive/io/CountingInputStream.java index 95c3fa359..282a5498e 100644 --- a/src/main/java/com/reandroid/archive/io/CountingInputStream.java +++ b/src/main/java/com/reandroid/archive/io/CountingInputStream.java @@ -15,25 +15,25 @@ */ package com.reandroid.archive.io; +import com.reandroid.utils.CRCDigest; import com.reandroid.utils.HexUtil; import java.io.IOException; import java.io.InputStream; -import java.util.zip.CRC32; public class CountingInputStream extends InputStream { private final T inputStream; - private final CRC32 crc; + private final CRCDigest crc; private long size; private long mCheckSum; private boolean mFinished; public CountingInputStream(T inputStream, boolean disableCrc){ this.inputStream = inputStream; - CRC32 crc32; + CRCDigest crc32; if(disableCrc){ crc32 = null; }else { - crc32 = new CRC32(); + crc32 = new CRCDigest(); } this.crc = crc32; } diff --git a/src/main/java/com/reandroid/archive/io/CountingOutputStream.java b/src/main/java/com/reandroid/archive/io/CountingOutputStream.java index c887cd078..c0a1b9d9a 100644 --- a/src/main/java/com/reandroid/archive/io/CountingOutputStream.java +++ b/src/main/java/com/reandroid/archive/io/CountingOutputStream.java @@ -15,23 +15,24 @@ */ package com.reandroid.archive.io; +import com.reandroid.utils.CRCDigest; + import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.util.zip.CRC32; public class CountingOutputStream extends OutputStream { private final T outputStream; - private CRC32 crc; + private CRCDigest crc; private long size; private boolean mClosed; public CountingOutputStream(T outputStream, boolean disableCrc){ this.outputStream = outputStream; - CRC32 crc32; + CRCDigest crc32; if(disableCrc){ crc32 = null; }else { - crc32 = new CRC32(); + crc32 = new CRCDigest(); } this.crc = crc32; } @@ -42,7 +43,7 @@ public CountingOutputStream(T outputStream){ public void disableCrc(boolean disableCrc) { if(!disableCrc){ if(crc == null){ - this.crc = new CRC32(); + this.crc = new CRCDigest(); } }else{ this.crc = null; @@ -50,7 +51,7 @@ public void disableCrc(boolean disableCrc) { } public void reset(){ - this.crc = new CRC32(); + this.crc = new CRCDigest(); this.size = 0L; } public T getOutputStream() {