├── .gitignore ├── README.md ├── app ├── .gitignore ├── build.gradle ├── demokey.jks ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── assets │ └── manual │ │ ├── cmdline │ │ ├── commands │ │ │ ├── add.htm │ │ │ ├── bench.htm │ │ │ ├── delete.htm │ │ │ ├── extract.htm │ │ │ ├── extract_full.htm │ │ │ ├── hash.htm │ │ │ ├── index.htm │ │ │ ├── list.htm │ │ │ ├── rename.htm │ │ │ ├── style.css │ │ │ ├── test.htm │ │ │ └── update.htm │ │ ├── exit_codes.htm │ │ ├── index.htm │ │ ├── style.css │ │ ├── switches │ │ │ ├── ar_exclude.htm │ │ │ ├── ar_include.htm │ │ │ ├── ar_no.htm │ │ │ ├── bb.htm │ │ │ ├── bs.htm │ │ │ ├── charset.htm │ │ │ ├── exclude.htm │ │ │ ├── include.htm │ │ │ ├── index.htm │ │ │ ├── large_pages.htm │ │ │ ├── list_tech.htm │ │ │ ├── method.htm │ │ │ ├── output_dir.htm │ │ │ ├── overwrite.htm │ │ │ ├── password.htm │ │ │ ├── recurse.htm │ │ │ ├── sa.htm │ │ │ ├── scc.htm │ │ │ ├── scrc.htm │ │ │ ├── sdel.htm │ │ │ ├── sfx.htm │ │ │ ├── shared.htm │ │ │ ├── sni.htm │ │ │ ├── sns.htm │ │ │ ├── spf.htm │ │ │ ├── ssc.htm │ │ │ ├── stdin.htm │ │ │ ├── stdout.htm │ │ │ ├── stl.htm │ │ │ ├── stop_switch.htm │ │ │ ├── stx.htm │ │ │ ├── style.css │ │ │ ├── type.htm │ │ │ ├── update.htm │ │ │ ├── volume.htm │ │ │ ├── working_dir.htm │ │ │ └── yes.htm │ │ └── syntax.htm │ │ ├── fm │ │ ├── about.htm │ │ ├── benchmark.htm │ │ ├── index.htm │ │ ├── menu.htm │ │ ├── options.htm │ │ ├── plugins │ │ │ ├── 7-zip │ │ │ │ ├── add.htm │ │ │ │ ├── extract.htm │ │ │ │ ├── index.htm │ │ │ │ └── style.css │ │ │ ├── index.htm │ │ │ └── style.css │ │ └── style.css │ │ ├── general │ │ ├── 7z.htm │ │ ├── faq.htm │ │ ├── formats.htm │ │ ├── index.htm │ │ ├── license.htm │ │ ├── performance.htm │ │ ├── style.css │ │ └── thanks.htm │ │ ├── start.htm │ │ └── style.css │ ├── java │ └── com │ │ └── hzy │ │ └── p7zip │ │ └── app │ │ ├── MainApplication.java │ │ ├── activity │ │ └── MainActivity.java │ │ ├── adapter │ │ ├── FileItemAdapter.java │ │ └── PathItemAdapter.java │ │ ├── bean │ │ ├── FileInfo.java │ │ └── FileType.java │ │ ├── command │ │ └── Command.java │ │ ├── fragment │ │ ├── AboutFragment.java │ │ ├── HelpFragment.java │ │ └── StorageFragment.java │ │ └── utils │ │ └── P7zipUtils.java │ └── res │ ├── drawable-xhdpi │ ├── icon_file_archive.png │ ├── icon_folder_empty.png │ ├── icon_folder_full.png │ └── icon_unknown.png │ ├── drawable │ └── material_header_back.png │ ├── layout │ ├── activity_main.xml │ ├── app_bar_main.xml │ ├── content_main.xml │ ├── fragment_about.xml │ ├── fragment_help.xml │ ├── fragment_storage.xml │ ├── nav_header_main.xml │ ├── path_list_item.xml │ └── storage_list_item.xml │ ├── menu │ └── activity_main_drawer.xml │ ├── mipmap-hdpi │ └── ic_launcher.png │ ├── mipmap-mdpi │ └── ic_launcher.png │ ├── mipmap-xhdpi │ └── ic_launcher.png │ ├── mipmap-xxhdpi │ └── ic_launcher.png │ ├── values-zh-rCN │ ├── arrays.xml │ └── strings.xml │ └── values │ ├── arrays.xml │ ├── colors.xml │ ├── dimens.xml │ ├── strings.xml │ └── styles.xml ├── build.gradle ├── fastlane └── metadata │ └── android │ └── en-US │ ├── full_description.txt │ ├── images │ ├── icon.png │ └── phoneScreenshots │ │ ├── 01.jpg │ │ ├── 02.jpg │ │ ├── 03.jpg │ │ └── 04.jpg │ └── short_description.txt ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── libp7zip ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ ├── cpp │ ├── CMakeLists.txt │ ├── cmd │ │ ├── command.cpp │ │ └── command.h │ ├── ndkhelper.h │ ├── p7zip.cpp │ ├── p7zip │ │ ├── C │ │ │ ├── 7zBuf.h │ │ │ ├── 7zBuf2.c │ │ │ ├── 7zCrc.c │ │ │ ├── 7zCrc.h │ │ │ ├── 7zCrcOpt.c │ │ │ ├── 7zStream.c │ │ │ ├── 7zTypes.h │ │ │ ├── 7zVersion.h │ │ │ ├── Aes.c │ │ │ ├── Aes.h │ │ │ ├── Alloc.c │ │ │ ├── Alloc.h │ │ │ ├── Bcj2.c │ │ │ ├── Bcj2.h │ │ │ ├── Bcj2Enc.c │ │ │ ├── Blake2.h │ │ │ ├── Blake2s.c │ │ │ ├── Bra.c │ │ │ ├── Bra.h │ │ │ ├── Bra86.c │ │ │ ├── BraIA64.c │ │ │ ├── BwtSort.c │ │ │ ├── BwtSort.h │ │ │ ├── Compiler.h │ │ │ ├── CpuArch.c │ │ │ ├── CpuArch.h │ │ │ ├── Delta.c │ │ │ ├── Delta.h │ │ │ ├── HuffEnc.c │ │ │ ├── HuffEnc.h │ │ │ ├── LzFind.c │ │ │ ├── LzFind.h │ │ │ ├── LzFindMt.c │ │ │ ├── LzFindMt.h │ │ │ ├── LzHash.h │ │ │ ├── Lzma2Dec.c │ │ │ ├── Lzma2Dec.h │ │ │ ├── Lzma2Enc.c │ │ │ ├── Lzma2Enc.h │ │ │ ├── Lzma86.h │ │ │ ├── Lzma86Dec.c │ │ │ ├── Lzma86Enc.c │ │ │ ├── LzmaDec.c │ │ │ ├── LzmaDec.h │ │ │ ├── LzmaEnc.c │ │ │ ├── LzmaEnc.h │ │ │ ├── MtCoder.c │ │ │ ├── MtCoder.h │ │ │ ├── Ppmd.h │ │ │ ├── Ppmd7.c │ │ │ ├── Ppmd7.h │ │ │ ├── Ppmd7Dec.c │ │ │ ├── Ppmd7Enc.c │ │ │ ├── Ppmd8.c │ │ │ ├── Ppmd8.h │ │ │ ├── Ppmd8Dec.c │ │ │ ├── Ppmd8Enc.c │ │ │ ├── Precomp.h │ │ │ ├── RotateDefs.h │ │ │ ├── Sha1.c │ │ │ ├── Sha1.h │ │ │ ├── Sha256.c │ │ │ ├── Sha256.h │ │ │ ├── Sort.c │ │ │ ├── Sort.h │ │ │ ├── Threads.c │ │ │ ├── Threads.h │ │ │ ├── Xz.c │ │ │ ├── Xz.h │ │ │ ├── XzCrc64.c │ │ │ ├── XzCrc64.h │ │ │ ├── XzCrc64Opt.c │ │ │ ├── XzDec.c │ │ │ ├── XzEnc.c │ │ │ ├── XzEnc.h │ │ │ └── XzIn.c │ │ └── CPP │ │ │ ├── 7zip │ │ │ ├── Archive │ │ │ │ ├── 7z │ │ │ │ │ ├── 7zCompressionMode.cpp │ │ │ │ │ ├── 7zCompressionMode.h │ │ │ │ │ ├── 7zDecode.cpp │ │ │ │ │ ├── 7zDecode.h │ │ │ │ │ ├── 7zEncode.cpp │ │ │ │ │ ├── 7zEncode.h │ │ │ │ │ ├── 7zExtract.cpp │ │ │ │ │ ├── 7zFolderInStream.cpp │ │ │ │ │ ├── 7zFolderInStream.h │ │ │ │ │ ├── 7zHandler.cpp │ │ │ │ │ ├── 7zHandler.h │ │ │ │ │ ├── 7zHandlerOut.cpp │ │ │ │ │ ├── 7zHeader.cpp │ │ │ │ │ ├── 7zHeader.h │ │ │ │ │ ├── 7zIn.cpp │ │ │ │ │ ├── 7zIn.h │ │ │ │ │ ├── 7zItem.h │ │ │ │ │ ├── 7zOut.cpp │ │ │ │ │ ├── 7zOut.h │ │ │ │ │ ├── 7zProperties.cpp │ │ │ │ │ ├── 7zProperties.h │ │ │ │ │ ├── 7zRegister.cpp │ │ │ │ │ ├── 7zSpecStream.cpp │ │ │ │ │ ├── 7zSpecStream.h │ │ │ │ │ ├── 7zUpdate.cpp │ │ │ │ │ └── 7zUpdate.h │ │ │ │ ├── ApmHandler.cpp │ │ │ │ ├── ArHandler.cpp │ │ │ │ ├── ArjHandler.cpp │ │ │ │ ├── Bz2Handler.cpp │ │ │ │ ├── Cab │ │ │ │ │ ├── CabBlockInStream.cpp │ │ │ │ │ ├── CabBlockInStream.h │ │ │ │ │ ├── CabHandler.cpp │ │ │ │ │ ├── CabHandler.h │ │ │ │ │ ├── CabHeader.cpp │ │ │ │ │ ├── CabHeader.h │ │ │ │ │ ├── CabIn.cpp │ │ │ │ │ ├── CabIn.h │ │ │ │ │ ├── CabItem.h │ │ │ │ │ └── CabRegister.cpp │ │ │ │ ├── Chm │ │ │ │ │ ├── ChmHandler.cpp │ │ │ │ │ ├── ChmHandler.h │ │ │ │ │ ├── ChmIn.cpp │ │ │ │ │ └── ChmIn.h │ │ │ │ ├── ComHandler.cpp │ │ │ │ ├── Common │ │ │ │ │ ├── CoderMixer2.cpp │ │ │ │ │ ├── CoderMixer2.h │ │ │ │ │ ├── DummyOutStream.cpp │ │ │ │ │ ├── DummyOutStream.h │ │ │ │ │ ├── FindSignature.cpp │ │ │ │ │ ├── FindSignature.h │ │ │ │ │ ├── HandlerOut.cpp │ │ │ │ │ ├── HandlerOut.h │ │ │ │ │ ├── InStreamWithCRC.cpp │ │ │ │ │ ├── InStreamWithCRC.h │ │ │ │ │ ├── ItemNameUtils.cpp │ │ │ │ │ ├── ItemNameUtils.h │ │ │ │ │ ├── MultiStream.cpp │ │ │ │ │ ├── MultiStream.h │ │ │ │ │ ├── OutStreamWithCRC.cpp │ │ │ │ │ ├── OutStreamWithCRC.h │ │ │ │ │ ├── OutStreamWithSha1.cpp │ │ │ │ │ ├── OutStreamWithSha1.h │ │ │ │ │ ├── ParseProperties.cpp │ │ │ │ │ └── ParseProperties.h │ │ │ │ ├── CpioHandler.cpp │ │ │ │ ├── CramfsHandler.cpp │ │ │ │ ├── DeflateProps.cpp │ │ │ │ ├── DeflateProps.h │ │ │ │ ├── DmgHandler.cpp │ │ │ │ ├── ElfHandler.cpp │ │ │ │ ├── ExtHandler.cpp │ │ │ │ ├── FatHandler.cpp │ │ │ │ ├── FlvHandler.cpp │ │ │ │ ├── GptHandler.cpp │ │ │ │ ├── GzHandler.cpp │ │ │ │ ├── HandlerCont.cpp │ │ │ │ ├── HandlerCont.h │ │ │ │ ├── HfsHandler.cpp │ │ │ │ ├── IArchive.h │ │ │ │ ├── IhexHandler.cpp │ │ │ │ ├── Iso │ │ │ │ │ ├── IsoHandler.cpp │ │ │ │ │ ├── IsoHandler.h │ │ │ │ │ ├── IsoHeader.cpp │ │ │ │ │ ├── IsoHeader.h │ │ │ │ │ ├── IsoIn.cpp │ │ │ │ │ ├── IsoIn.h │ │ │ │ │ ├── IsoItem.h │ │ │ │ │ └── IsoRegister.cpp │ │ │ │ ├── LzhHandler.cpp │ │ │ │ ├── LzmaHandler.cpp │ │ │ │ ├── MachoHandler.cpp │ │ │ │ ├── MbrHandler.cpp │ │ │ │ ├── MslzHandler.cpp │ │ │ │ ├── MubHandler.cpp │ │ │ │ ├── Nsis │ │ │ │ │ ├── NsisDecode.cpp │ │ │ │ │ ├── NsisDecode.h │ │ │ │ │ ├── NsisHandler.cpp │ │ │ │ │ ├── NsisHandler.h │ │ │ │ │ ├── NsisIn.cpp │ │ │ │ │ ├── NsisIn.h │ │ │ │ │ └── NsisRegister.cpp │ │ │ │ ├── NtfsHandler.cpp │ │ │ │ ├── PeHandler.cpp │ │ │ │ ├── PpmdHandler.cpp │ │ │ │ ├── QcowHandler.cpp │ │ │ │ ├── Rar │ │ │ │ │ ├── Rar5Handler.cpp │ │ │ │ │ ├── Rar5Handler.h │ │ │ │ │ ├── RarHandler.cpp │ │ │ │ │ ├── RarHandler.h │ │ │ │ │ ├── RarHeader.h │ │ │ │ │ ├── RarItem.h │ │ │ │ │ └── RarVol.h │ │ │ │ ├── RpmHandler.cpp │ │ │ │ ├── SplitHandler.cpp │ │ │ │ ├── SquashfsHandler.cpp │ │ │ │ ├── SwfHandler.cpp │ │ │ │ ├── Tar │ │ │ │ │ ├── TarHandler.cpp │ │ │ │ │ ├── TarHandler.h │ │ │ │ │ ├── TarHandlerOut.cpp │ │ │ │ │ ├── TarHeader.cpp │ │ │ │ │ ├── TarHeader.h │ │ │ │ │ ├── TarIn.cpp │ │ │ │ │ ├── TarIn.h │ │ │ │ │ ├── TarItem.h │ │ │ │ │ ├── TarOut.cpp │ │ │ │ │ ├── TarOut.h │ │ │ │ │ ├── TarRegister.cpp │ │ │ │ │ ├── TarUpdate.cpp │ │ │ │ │ └── TarUpdate.h │ │ │ │ ├── Udf │ │ │ │ │ ├── UdfHandler.cpp │ │ │ │ │ ├── UdfHandler.h │ │ │ │ │ ├── UdfIn.cpp │ │ │ │ │ └── UdfIn.h │ │ │ │ ├── UefiHandler.cpp │ │ │ │ ├── VdiHandler.cpp │ │ │ │ ├── VhdHandler.cpp │ │ │ │ ├── VmdkHandler.cpp │ │ │ │ ├── Wim │ │ │ │ │ ├── WimHandler.cpp │ │ │ │ │ ├── WimHandler.h │ │ │ │ │ ├── WimHandlerOut.cpp │ │ │ │ │ ├── WimIn.cpp │ │ │ │ │ ├── WimIn.h │ │ │ │ │ └── WimRegister.cpp │ │ │ │ ├── XarHandler.cpp │ │ │ │ ├── XzHandler.cpp │ │ │ │ ├── XzHandler.h │ │ │ │ ├── ZHandler.cpp │ │ │ │ └── Zip │ │ │ │ │ ├── ZipAddCommon.cpp │ │ │ │ │ ├── ZipAddCommon.h │ │ │ │ │ ├── ZipCompressionMode.h │ │ │ │ │ ├── ZipHandler.cpp │ │ │ │ │ ├── ZipHandler.h │ │ │ │ │ ├── ZipHandlerOut.cpp │ │ │ │ │ ├── ZipHeader.h │ │ │ │ │ ├── ZipIn.cpp │ │ │ │ │ ├── ZipIn.h │ │ │ │ │ ├── ZipItem.cpp │ │ │ │ │ ├── ZipItem.h │ │ │ │ │ ├── ZipOut.cpp │ │ │ │ │ ├── ZipOut.h │ │ │ │ │ ├── ZipRegister.cpp │ │ │ │ │ ├── ZipUpdate.cpp │ │ │ │ │ └── ZipUpdate.h │ │ │ ├── Common │ │ │ │ ├── CWrappers.cpp │ │ │ │ ├── CWrappers.h │ │ │ │ ├── CreateCoder.cpp │ │ │ │ ├── CreateCoder.h │ │ │ │ ├── FilePathAutoRename.cpp │ │ │ │ ├── FilePathAutoRename.h │ │ │ │ ├── FileStreams.cpp │ │ │ │ ├── FileStreams.h │ │ │ │ ├── FilterCoder.cpp │ │ │ │ ├── FilterCoder.h │ │ │ │ ├── InBuffer.cpp │ │ │ │ ├── InBuffer.h │ │ │ │ ├── InOutTempBuffer.cpp │ │ │ │ ├── InOutTempBuffer.h │ │ │ │ ├── LimitedStreams.cpp │ │ │ │ ├── LimitedStreams.h │ │ │ │ ├── MemBlocks.cpp │ │ │ │ ├── MemBlocks.h │ │ │ │ ├── MethodId.cpp │ │ │ │ ├── MethodId.h │ │ │ │ ├── MethodProps.cpp │ │ │ │ ├── MethodProps.h │ │ │ │ ├── OffsetStream.cpp │ │ │ │ ├── OffsetStream.h │ │ │ │ ├── OutBuffer.cpp │ │ │ │ ├── OutBuffer.h │ │ │ │ ├── OutMemStream.cpp │ │ │ │ ├── OutMemStream.h │ │ │ │ ├── ProgressMt.cpp │ │ │ │ ├── ProgressMt.h │ │ │ │ ├── ProgressUtils.cpp │ │ │ │ ├── ProgressUtils.h │ │ │ │ ├── PropId.cpp │ │ │ │ ├── RegisterArc.h │ │ │ │ ├── RegisterCodec.h │ │ │ │ ├── StreamBinder.cpp │ │ │ │ ├── StreamBinder.h │ │ │ │ ├── StreamObjects.cpp │ │ │ │ ├── StreamObjects.h │ │ │ │ ├── StreamUtils.cpp │ │ │ │ ├── StreamUtils.h │ │ │ │ ├── UniqBlocks.cpp │ │ │ │ ├── UniqBlocks.h │ │ │ │ ├── VirtThread.cpp │ │ │ │ └── VirtThread.h │ │ │ ├── Compress │ │ │ │ ├── BZip2Const.h │ │ │ │ ├── BZip2Crc.cpp │ │ │ │ ├── BZip2Crc.h │ │ │ │ ├── BZip2Decoder.cpp │ │ │ │ ├── BZip2Decoder.h │ │ │ │ ├── BZip2Encoder.cpp │ │ │ │ ├── BZip2Encoder.h │ │ │ │ ├── BZip2Register.cpp │ │ │ │ ├── Bcj2Coder.cpp │ │ │ │ ├── Bcj2Coder.h │ │ │ │ ├── Bcj2Register.cpp │ │ │ │ ├── BcjCoder.cpp │ │ │ │ ├── BcjCoder.h │ │ │ │ ├── BcjRegister.cpp │ │ │ │ ├── BitlDecoder.cpp │ │ │ │ ├── BitlDecoder.h │ │ │ │ ├── BitlEncoder.h │ │ │ │ ├── BitmDecoder.h │ │ │ │ ├── BitmEncoder.h │ │ │ │ ├── BranchMisc.cpp │ │ │ │ ├── BranchMisc.h │ │ │ │ ├── BranchRegister.cpp │ │ │ │ ├── ByteSwap.cpp │ │ │ │ ├── CodecExports.cpp │ │ │ │ ├── CopyCoder.cpp │ │ │ │ ├── CopyCoder.h │ │ │ │ ├── CopyRegister.cpp │ │ │ │ ├── Deflate64Register.cpp │ │ │ │ ├── DeflateConst.h │ │ │ │ ├── DeflateDecoder.cpp │ │ │ │ ├── DeflateDecoder.h │ │ │ │ ├── DeflateEncoder.cpp │ │ │ │ ├── DeflateEncoder.h │ │ │ │ ├── DeflateRegister.cpp │ │ │ │ ├── DeltaFilter.cpp │ │ │ │ ├── HuffmanDecoder.h │ │ │ │ ├── ImplodeDecoder.cpp │ │ │ │ ├── ImplodeDecoder.h │ │ │ │ ├── ImplodeHuffmanDecoder.cpp │ │ │ │ ├── ImplodeHuffmanDecoder.h │ │ │ │ ├── LzOutWindow.cpp │ │ │ │ ├── LzOutWindow.h │ │ │ │ ├── LzhDecoder.cpp │ │ │ │ ├── LzhDecoder.h │ │ │ │ ├── Lzma2Decoder.cpp │ │ │ │ ├── Lzma2Decoder.h │ │ │ │ ├── Lzma2Encoder.cpp │ │ │ │ ├── Lzma2Encoder.h │ │ │ │ ├── Lzma2Register.cpp │ │ │ │ ├── LzmaDecoder.cpp │ │ │ │ ├── LzmaDecoder.h │ │ │ │ ├── LzmaEncoder.cpp │ │ │ │ ├── LzmaEncoder.h │ │ │ │ ├── LzmaRegister.cpp │ │ │ │ ├── LzmsDecoder.cpp │ │ │ │ ├── LzmsDecoder.h │ │ │ │ ├── Lzx.h │ │ │ │ ├── LzxDecoder.cpp │ │ │ │ ├── LzxDecoder.h │ │ │ │ ├── Mtf8.h │ │ │ │ ├── PpmdDecoder.cpp │ │ │ │ ├── PpmdDecoder.h │ │ │ │ ├── PpmdEncoder.cpp │ │ │ │ ├── PpmdEncoder.h │ │ │ │ ├── PpmdRegister.cpp │ │ │ │ ├── PpmdZip.cpp │ │ │ │ ├── PpmdZip.h │ │ │ │ ├── QuantumDecoder.cpp │ │ │ │ ├── QuantumDecoder.h │ │ │ │ ├── Rar1Decoder.cpp │ │ │ │ ├── Rar1Decoder.h │ │ │ │ ├── Rar2Decoder.cpp │ │ │ │ ├── Rar2Decoder.h │ │ │ │ ├── Rar3Decoder.cpp │ │ │ │ ├── Rar3Decoder.h │ │ │ │ ├── Rar3Vm.cpp │ │ │ │ ├── Rar3Vm.h │ │ │ │ ├── Rar5Decoder.cpp │ │ │ │ ├── Rar5Decoder.h │ │ │ │ ├── RarCodecsRegister.cpp │ │ │ │ ├── ShrinkDecoder.cpp │ │ │ │ ├── ShrinkDecoder.h │ │ │ │ ├── XpressDecoder.cpp │ │ │ │ ├── XpressDecoder.h │ │ │ │ ├── ZDecoder.cpp │ │ │ │ ├── ZDecoder.h │ │ │ │ ├── ZlibDecoder.cpp │ │ │ │ ├── ZlibDecoder.h │ │ │ │ ├── ZlibEncoder.cpp │ │ │ │ └── ZlibEncoder.h │ │ │ ├── Crypto │ │ │ │ ├── 7zAes.cpp │ │ │ │ ├── 7zAes.h │ │ │ │ ├── 7zAesRegister.cpp │ │ │ │ ├── HmacSha1.cpp │ │ │ │ ├── HmacSha1.h │ │ │ │ ├── HmacSha256.cpp │ │ │ │ ├── HmacSha256.h │ │ │ │ ├── MyAes.cpp │ │ │ │ ├── MyAes.h │ │ │ │ ├── MyAesReg.cpp │ │ │ │ ├── Pbkdf2HmacSha1.cpp │ │ │ │ ├── Pbkdf2HmacSha1.h │ │ │ │ ├── RandGen.cpp │ │ │ │ ├── RandGen.h │ │ │ │ ├── Rar20Crypto.cpp │ │ │ │ ├── Rar20Crypto.h │ │ │ │ ├── Rar5Aes.cpp │ │ │ │ ├── Rar5Aes.h │ │ │ │ ├── RarAes.cpp │ │ │ │ ├── RarAes.h │ │ │ │ ├── Sha1Cls.h │ │ │ │ ├── WzAes.cpp │ │ │ │ ├── WzAes.h │ │ │ │ ├── ZipCrypto.cpp │ │ │ │ ├── ZipCrypto.h │ │ │ │ ├── ZipStrong.cpp │ │ │ │ └── ZipStrong.h │ │ │ ├── ICoder.h │ │ │ ├── IDecl.h │ │ │ ├── IPassword.h │ │ │ ├── IProgress.h │ │ │ ├── IStream.h │ │ │ ├── MyVersion.h │ │ │ ├── PropID.h │ │ │ └── UI │ │ │ │ ├── Common │ │ │ │ ├── ArchiveCommandLine.cpp │ │ │ │ ├── ArchiveCommandLine.h │ │ │ │ ├── ArchiveExtractCallback.cpp │ │ │ │ ├── ArchiveExtractCallback.h │ │ │ │ ├── ArchiveName.cpp │ │ │ │ ├── ArchiveName.h │ │ │ │ ├── ArchiveOpenCallback.cpp │ │ │ │ ├── ArchiveOpenCallback.h │ │ │ │ ├── Bench.cpp │ │ │ │ ├── Bench.h │ │ │ │ ├── DefaultName.cpp │ │ │ │ ├── DefaultName.h │ │ │ │ ├── DirItem.h │ │ │ │ ├── EnumDirItems.cpp │ │ │ │ ├── EnumDirItems.h │ │ │ │ ├── ExitCode.h │ │ │ │ ├── Extract.cpp │ │ │ │ ├── Extract.h │ │ │ │ ├── ExtractMode.h │ │ │ │ ├── ExtractingFilePath.cpp │ │ │ │ ├── ExtractingFilePath.h │ │ │ │ ├── HashCalc.cpp │ │ │ │ ├── HashCalc.h │ │ │ │ ├── IFileExtractCallback.h │ │ │ │ ├── LoadCodecs.cpp │ │ │ │ ├── LoadCodecs.h │ │ │ │ ├── OpenArchive.cpp │ │ │ │ ├── OpenArchive.h │ │ │ │ ├── PropIDUtils.cpp │ │ │ │ ├── PropIDUtils.h │ │ │ │ ├── Property.h │ │ │ │ ├── SetProperties.cpp │ │ │ │ ├── SetProperties.h │ │ │ │ ├── SortUtils.cpp │ │ │ │ ├── SortUtils.h │ │ │ │ ├── TempFiles.cpp │ │ │ │ ├── TempFiles.h │ │ │ │ ├── Update.cpp │ │ │ │ ├── Update.h │ │ │ │ ├── UpdateAction.cpp │ │ │ │ ├── UpdateAction.h │ │ │ │ ├── UpdateCallback.cpp │ │ │ │ ├── UpdateCallback.h │ │ │ │ ├── UpdatePair.cpp │ │ │ │ ├── UpdatePair.h │ │ │ │ ├── UpdateProduce.cpp │ │ │ │ └── UpdateProduce.h │ │ │ │ └── Console │ │ │ │ ├── BenchCon.cpp │ │ │ │ ├── BenchCon.h │ │ │ │ ├── ConsoleClose.cpp │ │ │ │ ├── ConsoleClose.h │ │ │ │ ├── ExtractCallbackConsole.cpp │ │ │ │ ├── ExtractCallbackConsole.h │ │ │ │ ├── HashCon.cpp │ │ │ │ ├── HashCon.h │ │ │ │ ├── List.cpp │ │ │ │ ├── List.h │ │ │ │ ├── Main.cpp │ │ │ │ ├── MainAr.cpp │ │ │ │ ├── OpenCallbackConsole.cpp │ │ │ │ ├── OpenCallbackConsole.h │ │ │ │ ├── PercentPrinter.cpp │ │ │ │ ├── PercentPrinter.h │ │ │ │ ├── UpdateCallbackConsole.cpp │ │ │ │ ├── UpdateCallbackConsole.h │ │ │ │ ├── UserInputUtils.cpp │ │ │ │ └── UserInputUtils.h │ │ │ ├── Common │ │ │ ├── AutoPtr.h │ │ │ ├── CRC.cpp │ │ │ ├── C_FileIO.cpp │ │ │ ├── C_FileIO.h │ │ │ ├── ComTry.h │ │ │ ├── CommandLineParser.cpp │ │ │ ├── CommandLineParser.h │ │ │ ├── Common.h │ │ │ ├── CrcReg.cpp │ │ │ ├── Defs.h │ │ │ ├── DynLimBuf.cpp │ │ │ ├── DynLimBuf.h │ │ │ ├── DynamicBuffer.h │ │ │ ├── IntToString.cpp │ │ │ ├── IntToString.h │ │ │ ├── Lang.cpp │ │ │ ├── Lang.h │ │ │ ├── ListFileUtils.cpp │ │ │ ├── ListFileUtils.h │ │ │ ├── MyBuffer.h │ │ │ ├── MyCom.h │ │ │ ├── MyException.h │ │ │ ├── MyGuidDef.h │ │ │ ├── MyInitGuid.h │ │ │ ├── MyLinux.h │ │ │ ├── MyMap.cpp │ │ │ ├── MyMap.h │ │ │ ├── MyString.cpp │ │ │ ├── MyString.h │ │ │ ├── MyTypes.h │ │ │ ├── MyUnknown.h │ │ │ ├── MyVector.cpp │ │ │ ├── MyVector.h │ │ │ ├── MyWindows.cpp │ │ │ ├── MyWindows.h │ │ │ ├── MyXml.cpp │ │ │ ├── MyXml.h │ │ │ ├── NewHandler.cpp │ │ │ ├── NewHandler.h │ │ │ ├── Random.h │ │ │ ├── Sha1Reg.cpp │ │ │ ├── Sha256Reg.cpp │ │ │ ├── StdInStream.cpp │ │ │ ├── StdInStream.h │ │ │ ├── StdOutStream.cpp │ │ │ ├── StdOutStream.h │ │ │ ├── StringConvert.cpp │ │ │ ├── StringConvert.h │ │ │ ├── StringToInt.cpp │ │ │ ├── StringToInt.h │ │ │ ├── TextConfig.cpp │ │ │ ├── TextConfig.h │ │ │ ├── UTFConvert.cpp │ │ │ ├── UTFConvert.h │ │ │ ├── Wildcard.cpp │ │ │ ├── Wildcard.h │ │ │ └── XzCrc64Reg.cpp │ │ │ ├── Windows │ │ │ ├── DLL.cpp │ │ │ ├── DLL.h │ │ │ ├── Defs.h │ │ │ ├── ErrorMsg.cpp │ │ │ ├── ErrorMsg.h │ │ │ ├── FileDir.cpp │ │ │ ├── FileDir.h │ │ │ ├── FileFind.cpp │ │ │ ├── FileFind.h │ │ │ ├── FileIO.cpp │ │ │ ├── FileIO.h │ │ │ ├── FileName.cpp │ │ │ ├── FileName.h │ │ │ ├── Menu.h │ │ │ ├── NtCheck.h │ │ │ ├── PropVariant.cpp │ │ │ ├── PropVariant.h │ │ │ ├── PropVariantConv.cpp │ │ │ ├── PropVariantConv.h │ │ │ ├── PropVariantUtils.cpp │ │ │ ├── PropVariantUtils.h │ │ │ ├── Synchronization.cpp │ │ │ ├── Synchronization.h │ │ │ ├── Synchronization2.h │ │ │ ├── System.cpp │ │ │ ├── System.h │ │ │ ├── Thread.h │ │ │ ├── TimeUtils.cpp │ │ │ └── TimeUtils.h │ │ │ ├── include_windows │ │ │ ├── basetyps.h │ │ │ ├── tchar.h │ │ │ └── windows.h │ │ │ └── myWindows │ │ │ ├── StdAfx.h │ │ │ ├── config.h │ │ │ ├── initguid.h │ │ │ ├── myAddExeFlag.cpp │ │ │ ├── myPrivate.h │ │ │ ├── mySplitCommandLine.cpp │ │ │ └── wine_date_and_time.cpp │ └── str2args │ │ ├── str2args.cpp │ │ └── str2args.h │ ├── java │ └── com │ │ └── hzy │ │ └── libp7zip │ │ ├── ExitCode.java │ │ └── P7ZipApi.java │ └── res │ └── values │ └── strings.xml ├── license.txt ├── misc ├── screenshot.gif └── wechat.png └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- 1 | *.iml 2 | .gradle 3 | /local.properties 4 | /.idea 5 | .DS_Store 6 | /build 7 | /captures 8 | .externalNativeBuild 9 | -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | *.iml 3 | .externalNativeBuild 4 | -------------------------------------------------------------------------------- /app/demokey.jks: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/demokey.jks -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /ic_home/huzongyao/software/sdk/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | 19 | # Uncomment this to preserve the line number information for 20 | # debugging stack traces. 21 | #-keepattributes SourceFile,LineNumberTable 22 | 23 | # If you keep the line number information, uncomment this to 24 | # hide the original source file name. 25 | #-renamesourcefileattribute SourceFile 26 | -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 7 | 8 | 9 | 16 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/exit_codes.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Exit Codes from 7-Zip 6 | 7 | 8 | 9 | 10 | 11 |

Exit Codes from 7-Zip

12 | 13 |

7-Zip returns the following exit codes:

14 | 15 | 16 | 17 | 18 | 20 | 21 | 22 | 23 | 24 |
CodeMeaning
0No error
1Warning (Non fatal error(s)). For example, one or more files were 19 | locked by some other application, so they were not compressed.
2Fatal error
7Command line error
8Not enough memory for operation
255User stopped the process
25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/index.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Command Line Version User's Guide 6 | 7 | 8 | 9 | 10 | 11 |

Command Line Version User's Guide

12 | 13 | 14 |

7z.exe is the command line version of 7-Zip. 7z.exe uses 7z.dll 15 | from the 7-Zip package. 7z.dll is used by the 7-Zip File Manager also. 16 | 17 |

7za.exe (a = alone) is a standalone version of 7-Zip. 18 | 7za.exe supports only 7z, lzma, cab, zip, gzip, bzip2, Z and tar formats. 19 | 7za.exe doesn't use external modules. 20 | 21 |

27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/list_tech.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -slt (Show technical information) switch 6 | 7 | 8 | 9 | 10 | 11 |

-slt (Show technical information) switch

12 | 13 |

Sets technical mode for l (List) command.

14 | 15 |

Syntax

16 | 17 |
18 | -slt
19 | 
20 | 21 |

Example

22 | 23 |
24 | 7z l -slt archive.7z
25 | 
26 | 27 |

shows detailed technical information for the files in archive.7z.

28 | 29 |

Commands that can be used with this switch

30 | 31 |

32 | l (List) 33 |

34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/scc.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -scc (Set charset for console input/output) switch 6 | 7 | 8 | 9 | 10 | 11 |

-scc (Set charset for console input/output) switch

12 | 13 |

Sets charset for for console input/output.

14 | 15 |

Syntax

16 | 17 |
18 | -scc{UTF-8 | WIN | DOS}
19 | 
20 | 21 |

Default charset is DOS.

22 | 23 |
24 |
UTF-8
25 |
Unicode UTF-8 character set.
26 |
WIN
27 |
Default character set of Windows.
28 |
DOS
29 |
DOS (OEM) character set of Windows.
30 |
31 | 32 |

Example

33 | 34 |
35 | 7z l archive.7z -sccUTF-8
36 | 
37 | 38 |

lists files from archive.7z in UTF-8 encoding.

39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/scrc.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -scrc (Set hash function) switch 6 | 7 | 8 | 9 | 10 | 11 |

-scrc (Set hash function) switch

12 | 13 |

Sets hash function for "extract" and "hash" commands.

14 | 15 |

Syntax

16 | 17 |
18 | [-scrc{Method}]
19 | 
20 | 21 |

Supported methods: CRC32, CRC64, SHA1, SHA256, BLAKE2sp, *. Default method is CRC32.

22 | 23 |

Examples

24 | 25 |
26 | 7z t -scrcSHA256 archive.gz
27 | 
28 | 29 |

tests archive archive.gz and calculated SHA-256 for decompressed data.

30 | 31 |
32 | 7z h -scrcsha1 *.iso
33 | 
34 | 35 |

calculates SHA-1 for *.iso files.

36 | 37 | 38 |
39 | 7z h -scrc* file.iso
40 | 
41 | 42 |

calculates hash values for file.iso file.

43 | 44 |

Commands that can be used with this switch

45 | 46 |

47 | h (Hash), 48 | e (Extract), 49 | x (Extract with full paths) 50 |

51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/sdel.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -sdel (Delete files after including to archive) switch 6 | 7 | 8 | 9 | 10 | 11 |

-sdel (Delete files after compression) switch

12 | 13 |

Syntax

14 | 15 |
16 | -sdel
17 | 
18 | 19 |

If -sdel switch is specified, 7-Zip deletes files 20 | after including to archive. So it works like moving files to archive.

21 | 7-Zip deletes files at the end of operation and only if archive was successfully created.

22 | 23 |

Examples

24 | 25 |
26 | 7z a a.7z *.txt -sdel
27 | 
28 | 29 |

moves txt files from disk's directory to a.7z archive.

30 | 31 |

Commands that can be used with this switch

32 | 33 |

34 | a (Add) 35 |

36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/shared.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -ssw (Compress files open for writing) switch 6 | 7 | 8 | 9 | 10 | 11 |

-ssw (Compress files open for writing) switch

12 | 13 |

Compresses files open for writing by another applications. If this switch is not 14 | set, 7-zip doesn't include such files to archive.

15 | 16 |

Syntax

17 | 18 |
19 | -ssw
20 | 
21 | 22 |

Example

23 | 24 |
25 | 7z a archive.7z -ssw *.txt
26 | 
27 | 28 |

compresses all *.txt files in 29 | current folder including files open for writing by another applications.

30 | 31 |

Commands that can be used with this switch

32 | 33 |

34 | a (Add), 35 | h (Hash), 36 | u (Update) 37 |

38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/stl.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -stl (Set archive timestamp from the most recently modified file) switch 6 | 7 | 8 | 9 | 10 | 11 |

-stl (Set archive timestamp from the most recently modified file) switch

12 | 13 |

Syntax

14 | 15 |
16 | -stl
17 | 
18 | 19 |

If -stl switch is specified, 7-Zip sets timestamp for archive file as 20 | timestamp from the most recently modified file in that archive.

21 | 22 |

Examples

23 | 24 |
25 | 7z u a.7z -stl *.txt
26 | 
27 | 28 |

Commands that can be used with this switch

29 | 30 |

31 | a (Add), 32 | d (Delete), 33 | rn (Rename), 34 | u (Update) 35 |

36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/stop_switch.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -- (Stop switches parsing) switch 6 | 7 | 8 | 9 | 10 | 11 |

-- (Stop switches parsing) switch

12 | 13 |

Disables switch parsing after "--" on the command line. 14 | This is to allow 7-Zip to use file names that start with "-". 15 | 16 |

Syntax

17 | 18 |
19 | --
20 | 
21 | 22 |

Examples

23 | 24 |
25 | 7z t -- -ArchiveName.7z
26 | 
27 | 28 |

tests -ArchiveName.7z archive.

29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/volume.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -v (Create Volumes) switch 6 | 7 | 8 | 9 | 10 | 11 |

-v (Create Volumes) switch

12 | 13 |

Specifies volume sizes.

14 | 15 |

Syntax

16 | 17 |
18 | -v{Size}[b | k | m | g]
19 | 
20 | 
21 |
22 |
{Size}[b | k | m | g]
23 |
Specifies volume size in Bytes, Kilobytes (1 Kilobyte = 1024 bytes), 24 | Megabytes (1 Megabyte = 1024 Kilobytes) or Gigabytes (1 Gigabyte = 1024 Megabytes). 25 | if you specify only {Size}, 7-zip will treat it as bytes.
26 |
27 | 28 |

It's possible to specify several -v switches.

29 | 30 |

NOTE: Please don't use volumes (and don't copy volumes) before finishing archiving. 31 | 7-Zip can change any volume (including first volume) at the end of archiving operation.

32 | 33 |

Examples

34 | 35 |
36 | 7z a a.7z *.txt -v10k -v15k -v2m
37 | 
38 | 39 |

creates multivolume a.7z archive. 40 | First volume will be 10 KB, second will be 15 KB, and all others will be 2 MB.

41 | 42 |

Commands that can be used with this switch

43 | 44 |

45 | a (Add), 46 |

47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/cmdline/switches/yes.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -y (assume Yes on all queries) switch 6 | 7 | 8 | 9 | 10 | 11 |

-y (assume Yes on all queries) switch

12 | 13 |

Disables most of the normal user queries during 7-Zip 14 | execution. You can use this switch to suppress overwrite queries in the 15 | e (Extract) and 16 | x (Extract with full paths) commands.

17 | 18 |

Syntax

19 | 20 |
-y
21 | 22 |

Examples

23 | 24 |
25 | 7z x src.zip -y
26 | 
27 | 28 |

extracts all files from 29 | src.zip archive. All overwrite queries will be 30 | suppressed and files on disk with same filenames as in archive will be 31 | overwritten.

32 | 33 |

Commands that can be used with this switch

34 | 35 |

36 | e (Extract), 37 | x (Extract with full paths) 38 |

39 | 40 |

See also

41 | 42 |

43 | Switches: 44 | -ao (Overwrite mode), 45 |

46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/fm/about.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | About Dialog Box 6 | 7 | 8 | 9 | 10 | 11 |

About Dialog Box

12 | 13 |

The About dialog box provides information about 7-Zip. This dialog box is available 14 | from the Help menu.

15 | 16 | 19 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/fm/plugins/index.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Plugins 6 | 7 | 8 | 9 | 10 | 11 |

Plugins

12 | 13 |

The 7-Zip File Manager can use internal and external plugins.

14 | 15 |

Currently 7-Zip uses the following plugins:

16 |
17 |
7-Zip
18 |
Plugin for manipulating archives.
19 |
20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/general/index.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | General Information 6 | 7 | 8 | 9 | 10 | 11 |

General Information

12 | 13 |

The main features of 7-Zip

14 | 15 | 21 | 22 |

See Also

23 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/general/license.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | License for use and distribution 6 | 7 | 8 | 9 | 10 | 11 |

License

12 | 13 |

7-Zip Copyright (C) 1999-2016 Igor Pavlov.

14 | 15 |

Licenses for files are:

16 | 17 |
  • 7z.dll: GNU LGPL + unRAR restriction 18 |
  • All other files: GNU LGPL 19 | 20 | 21 |

    The GNU LGPL + unRAR restriction means that you must follow both 22 | GNU LGPL rules and unRAR restriction rules.

    23 | 24 |

    Note: You can use 7-Zip on any computer, including a computer in a commercial 25 | organization. You don't need to register or pay for 7-Zip.

    26 | 27 |

    Read file License.txt for full information about license.

    28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /app/src/main/assets/manual/start.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7-Zip Start Page 6 | 7 | 8 | 9 | 10 | 11 |

    7-Zip

    12 | 13 |

    Welcome to 7-Zip 16.02

    14 |

    7-Zip is a file archiver with a high compression ratio.

    15 | 16 |

    The documentation for 7-Zip includes:

    17 | 18 | 23 | 24 |

    See Also

    25 | 26 | 30 | 31 |
    32 | 33 |

    Copyright (c) 1999-2016 Igor Pavlov

    34 |

    Web site: www.7-zip.org

    35 |

    Support: www.7-zip.org/support.html

    36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /app/src/main/java/com/hzy/p7zip/app/MainApplication.java: -------------------------------------------------------------------------------- 1 | package com.hzy.p7zip.app; 2 | 3 | import android.app.Application; 4 | 5 | import com.blankj.utilcode.util.Utils; 6 | 7 | /** 8 | * Created by huzongyao on 17-7-7. 9 | */ 10 | 11 | public class MainApplication extends Application { 12 | 13 | @Override 14 | public void onCreate() { 15 | super.onCreate(); 16 | Utils.init(this); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /app/src/main/java/com/hzy/p7zip/app/bean/FileType.java: -------------------------------------------------------------------------------- 1 | package com.hzy.p7zip.app.bean; 2 | 3 | /** 4 | * Created by huzongyao on 17-7-13. 5 | */ 6 | 7 | public enum FileType { 8 | folderEmpty, 9 | folderFull, 10 | filearchive, 11 | fileunknown, 12 | } 13 | -------------------------------------------------------------------------------- /app/src/main/java/com/hzy/p7zip/app/command/Command.java: -------------------------------------------------------------------------------- 1 | package com.hzy.p7zip.app.command; 2 | 3 | /** 4 | * Created by huzongyao on 8/1/17. 5 | */ 6 | 7 | public class Command { 8 | 9 | public static String getExtractCmd(String archivePath, String outPath) { 10 | return String.format("7z x '%s' '-o%s' -aoa", archivePath, outPath); 11 | } 12 | 13 | public static String getCompressCmd(String filePath, String outPath, String type) { 14 | return String.format("7z a -t%s '%s' '%s'", type, outPath, filePath); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/icon_file_archive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/drawable-xhdpi/icon_file_archive.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/icon_folder_empty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/drawable-xhdpi/icon_folder_empty.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/icon_folder_full.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/drawable-xhdpi/icon_folder_full.png -------------------------------------------------------------------------------- /app/src/main/res/drawable-xhdpi/icon_unknown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/drawable-xhdpi/icon_unknown.png -------------------------------------------------------------------------------- /app/src/main/res/drawable/material_header_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/drawable/material_header_back.png -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 15 | 16 | 24 | 25 | 26 | -------------------------------------------------------------------------------- /app/src/main/res/layout/app_bar_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 14 | 15 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /app/src/main/res/layout/content_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_help.xml: -------------------------------------------------------------------------------- 1 | 2 | 6 | 7 | 11 | -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_storage.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 15 | 16 | 20 | 21 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/res/layout/nav_header_main.xml: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/layout/path_list_item.xml: -------------------------------------------------------------------------------- 1 | 2 | 8 | 9 | 14 | 15 | 21 | 22 | 28 | 29 | -------------------------------------------------------------------------------- /app/src/main/res/menu/activity_main_drawer.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 11 | 14 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tiann/AndroidP7zip/2706b141b60302c2ff466f6ece629a14960daee3/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rCN/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 压缩 5 | 解压 6 | 删除 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/values-zh-rCN/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | P7Zip 4 | 5 | 设置 6 | 设置 7 | 存储 8 | Home 9 | 关于 10 | 帮助 11 | 选择操作 12 | -------------------------------------------------------------------------------- /app/src/main/res/values/arrays.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Compress 5 | Extract 6 | Remove 7 | 8 | -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | #3F51B5 4 | #303F9F 5 | #FF4081 6 | 7 | -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 16dp 4 | 16dp 5 | 16dp 6 | 160dp 7 | 16dp 8 | 9 | -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 15 | 16 |