Pack200 Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200.
[Android.Runtime.Register("java/util/jar/Pack200", DoNotGenerateAcw=true)]
public abstract class Pack200 : Java.Lang.Object
[<Android.Runtime.Register("java/util/jar/Pack200", DoNotGenerateAcw=true)>]
type Pack200 = class
inherit Object
- Herança
- Atributos
Comentários
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. Consulte a Especificação JSR 200 do Formato de Transferência de Rede em http://jcp.org/aboutJava/communityprocess/review/jsr200/index.html
Normalmente, o mecanismo de empacotamento é usado por desenvolvedores de aplicativos para implantar ou hospedar arquivos JAR em um site. O mecanismo de descompactação é usado por aplicativos de implantação para transformar o fluxo de bytes de volta ao formato JAR.
Aqui está um exemplo usando packer e unpacker:
{@code
import java.util.jar.Pack200;
import java.util.jar.Pack200.*;
...
// Create the Packer object
Packer packer = Pack200.newPacker();
// Initialize the state by setting the desired properties
Map p = packer.properties();
// take more time choosing codings for better compression
p.put(Packer.EFFORT, "7"); // default is "5"
// use largest-possible archive segments (>10% better compression).
p.put(Packer.SEGMENT_LIMIT, "-1");
// reorder files for better compression.
p.put(Packer.KEEP_FILE_ORDER, Packer.FALSE);
// smear modification times to a single value.
p.put(Packer.MODIFICATION_TIME, Packer.LATEST);
// ignore all JAR deflation requests,
// transmitting a single request to use "store" mode.
p.put(Packer.DEFLATE_HINT, Packer.FALSE);
// discard debug attributes
p.put(Packer.CODE_ATTRIBUTE_PFX+"LineNumberTable", Packer.STRIP);
// throw an error if an attribute is unrecognized
p.put(Packer.UNKNOWN_ATTRIBUTE, Packer.ERROR);
// pass one class file uncompressed:
p.put(Packer.PASS_FILE_PFX+0, "mutants/Rogue.class");
try {
JarFile jarFile = new JarFile("/tmp/testref.jar");
FileOutputStream fos = new FileOutputStream("/tmp/test.pack");
// Call the packer
packer.pack(jarFile, fos);
jarFile.close();
fos.close();
File f = new File("/tmp/test.pack");
FileOutputStream fostream = new FileOutputStream("/tmp/test.jar");
JarOutputStream jostream = new JarOutputStream(fostream);
Unpacker unpacker = Pack200.newUnpacker();
// Call the unpacker
unpacker.unpack(f, jostream);
// Must explicitly close the output.
jostream.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
Um arquivo Pack200 compactado com gzip pode ser hospedado em servidores Web HTTP/1.1. Os aplicativos de implantação podem usar "Accept-Encoding=pack200-gzip". Isso indica ao servidor que o aplicativo cliente deseja uma versão do arquivo codificado com Pack200 e compactado com gzip. Consulte o Guia de Implementação Java para obter mais detalhes e técnicas.
Salvo indicação em contrário, passar um null
argumento para um construtor ou método nesta classe fará com que um NullPointerException
seja lançado.
Adicionado em 1.5.
Documentação Java para java.util.jar.Pack200
.
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.
Construtores
Pack200(IntPtr, JniHandleOwnership) |
Um construtor usado ao criar representações gerenciadas de objetos JNI; chamado pelo tempo de execução. |
Propriedades
Class |
Retorna a classe de tempo de execução deste |
Handle |
O identificador para a instância subjacente do Android. (Herdado de Object) |
JniIdentityHashCode |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
JniPeerMembers |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. |
PeerReference |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
ThresholdClass |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
ThresholdType |
Esta API suporta a infraestrutura Mono para Android e não se destina a ser usada diretamente do seu código. |
Métodos
Clone() |
Cria e retorna uma cópia desse objeto. (Herdado de Object) |
Dispose() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
Dispose(Boolean) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
Equals(Object) |
Indica se algum outro objeto é "igual" a este. (Herdado de Object) |
GetHashCode() |
Retorna um valor de código hash para o objeto. (Herdado de Object) |
JavaFinalize() |
Chamado pelo coletor de lixo em um objeto quando a coleta de lixo determina que não há mais referências ao objeto. (Herdado de Object) |
NewPacker() |
Obtenha nova instância de uma classe que implementa Packer. |
NewUnpacker() |
Obtenha nova instância de uma classe que implementa Unpacker. |
Notify() |
Ativa um único thread que está aguardando no monitor deste objeto. (Herdado de Object) |
NotifyAll() |
Ativa todos os threads que estão aguardando no monitor deste objeto. (Herdado de Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Define a propriedade Handle. (Herdado de Object) |
ToArray<T>() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
ToString() |
Retorna uma representação de cadeia de caracteres do objeto. (Herdado de Object) |
UnregisterFromRuntime() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
Wait() |
Faz com que o thread atual aguarde até que ele seja ativado, normalmente sendo <em notificado</em> ou <em>interrompido</em>>. (Herdado de Object) |
Wait(Int64) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Wait(Int64, Int32) |
Faz com que o thread atual aguarde até que ele seja despertado, normalmente sendo <em>notificado</em> ou <em interrompido</em>, ou até que>uma certa quantidade de tempo real tenha decorrido. (Herdado de Object) |
Implantações explícitas de interface
IJavaPeerable.Disposed() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.Finalized() |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.JniManagedPeerState |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. (Herdado de Object) |
Métodos de Extensão
JavaCast<TResult>(IJavaObject) |
Executa uma conversão de tipo verificada em tempo de execução do Android. |
JavaCast<TResult>(IJavaObject) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. |
GetJniTypeName(IJavaPeerable) |
Transforma um arquivo JAR de ou para um fluxo compactado no formato Pack200. |