Skip to content

thiagomarquesrocha/ocean-lib

Repository files navigation

Ocean Lib

Uma lib Android feita para construir apps em poucas linhas, reúne as melhores soluções em Android, do serviço HTTP ao processamento de Imagens.

Ocean Library

Download

Adiciona no build.gradle raiz do seu projeto

allprojects {
	repositories {
		...
		maven { url "https://jitpack.io" }
	}
}

Adiciona no build.gradle da pasta app do seu projeto

dependencies {
   compile 'com.github.thiagomarquesrocha:ocean-lib:1.0.1'
}

Recursos

Como usar o Ocean Library?

Veja alguns exemplos de uso da bilbioteca

Ocean Library possui suporte para execução e tratamento de imagens sincronizando com views e otimizando o carregamento quando for necessário trabalhar com imagens externas como URL's ou imagens locais como Uri's.

Todas as imagens são processadas de forma assíncrona, de forma que evite os famosos "gargalos" de memórias e as "travadinhas" do seu app quando estiver processando imagens, seja elas locais ou externas.

Bitmap

Carregar um bitmap em um ImageView

URL

Ocean.glide(context)
             .load("http://revista.oceanmanaus.com/oceanbook/moodle2.jpg")
             .build(GlideRequest.BITMAP)
             .resize(width, height) // Tamanho em pixel
             .into(ImageView);

Callback

Delegar um observador para receber o bitmap da imagem quando ela estiver pronto para uso

Ocean.glide(context)
            .load("http://revista.oceanmanaus.com/oceanbook/moodle2.jpg")
            .build(GlideRequest.BITMAP)
            .resize(width, height) // Tamanho em pixel
            .addDelegateImageBitmap(new ImageDelegate.BitmapListener() {
                @Override
                public void createdImageBitmap(Bitmap imageBitmap) {
                     // Bitmap pronto para uso               
                }
            })
            .into(ImageView);

Bytes

Carregar somente os bytes da imagem

URI

Ocean.glide(context)
             .load(Uri.parse("/sdcard/cats.jpg"))
             .build(GlideRequest.BYTES)
             .toBytes(WIDTH, HEIGHT); // Tamanho em pixel

Callback

Delegar um observador para receber os bytes da imagem quando eles estiverem pronto para uso

Ocean.glide(context)
            .load(R.mipmap.ic_launcher)
            .build(GlideRequest.BYTES)
            .addDelegateImageBytes(new ImageDelegate.BytesListener() {
                @Override
                public void createdImageBytes(byte[] data) {
                                    
                }
            })
            .toBytes(WIDTH, HEIGHT); // Tamanho em pixel

Ver mais exemplos

Requisições HTTP do tipo POST E GET

Como usar

@Override
protected void onCreate(Bundle savedInstanceState){

    // Iniciando uma nova requisição
    Ocean.newRequest("http://servidor", callback);
}

Request.RequestListener callback = new Request.RequestListener() {
    @Override
    public void onRequestOk(String response, JSONObject jsonObject, int error) {

    }
}

POST

Ocean.newRequest("http://servidor", callback)
.post()
.add("par1", "valor1")
.add("par2", 1)
.add("parN", 1.0f)
.send();

GET

Ocean.newRequest("http://servidor", callback).get().send();

Upload de arquivos

@Override
protected void onCreate(Bundle savedInstanceState){

    // Implementacao para recuperar o arquivo

    byte[] bitMapData; // Converter o arquivo para recuperar os bytes

    HashMap<String, byte[]> file = new HashMap<>();
    file.put("file.png", bitMapData);

    Ocean.newRequest("http://localhost/servidor", callback)
            .post()
            .add("file", file)
            .send();
}

Utiliza

Http-Request

Glide

Surviving-with-android

Equipe

Thiago Marques

Alessandro Barreto

LICENÇA

OceanLib is open-sourced software licensed under the MIT license

About

Uma lib Android feita para construir apps em poucas linhas, reúne as melhores soluções em Android, do serviço HTTP ao processamento de Imagens.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages