Description
simple http request lib
NetworkConnection alternatives and similar packages
Based on the "Network" category.
Alternatively, view NetworkConnection alternatives based on common mentions on social networks and blogs.
-
okhttp
Square’s meticulous HTTP client for the JVM, Android, and GraalVM. -
AndroidAsync
Asynchronous socket, http(s) (client+server) and websocket library for android. Based on nio, not threads. -
async-http-client
Asynchronous Http and WebSocket Client library for Java -
AndroidNetworking
🚀 A Complete Fast Android Networking Library that also supports HTTP/2 🚀 -
Android Volley
Official Android HTTP library that makes networking for easier and faster. -
robospice
Repo of the Open Source Android library : RoboSpice. RoboSpice is a modular android library that makes writing asynchronous long running tasks easy. It is specialized in network requests, supports caching and offers REST requests out-of-the box using extension modules. -
unirest-java
Unirest in Java: Simplified, lightweight HTTP client library. -
android-lite-http
LiteHttp is a simple, intelligent and flexible HTTP framework for Android. With LiteHttp you can make HTTP request with only one line of code! It could convert a java model to the parameter and rander the response JSON as a java model intelligently. -
node-android
Run Node.js on Android by rewrite Node.js in Java -
wasp
Compact and easy to use, 'all-in-one' android network solution -
No Internet Layout Library
#layout #check_internet -
IceSoap
Easy, asynchronous, annotation-based SOAP for Android -
OptimusHTTP
:satellite: [Android Library] Simplified async networking in android -
Rx.Network
Observe Android's CONNECTIVITY_CHANGE broadcasts using RxJava. -
networking
An android asynchronous http client built on top of HttpURLConnection. -
Minimized API Service Library
Minimized API library which is used call the server request in andorid. -
Packetzoom
SDK for optimizing HTTP requests and free analytics service for networking.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of NetworkConnection or a related project?
README
NetworkConnection 
Overview
NetworkConnection is a simple library to http request support. this mean goal is to provide a very simple interface to developer.
Gradle
compile 'com.github.rudda:networkconnetion:0.0.1'
Permissions
add line in android manifest file
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
Simple GET Request -with Return JSONArray
1º step: you must implements JsonArrayListener interface
public class MainActivity extends AppCompatActivity implements JsonArrayListener
2º step: you must to instance customRequest class and set attribuites base url ( setBaseUrl ) , router ( setRouter ) and the method to request ( GET or POST ) this example GET.
CustomRequest customRequest = new CustomRequest();
customRequest.setBaseUrl("http://localhost/users"); //base url
customRequest.setRouter("/"); //router to REST API
customRequest.setMethod(Request.Method.GET);// methods ( get or post )
customRequest.setResult(0); //optional
NetworkConnection.getInstance(this).execute(this, customRequest);
3º step: the return. the return can come in three states: success, fail and loading. The first state is always loading the second state can be success or fail. warning: you can also use the requestCode to represent a specific call.
@Override
public void sucess(JSONArray Jsonarray, int requestCode) {
Toast.makeText(this, "sucess", Toast.LENGTH_SHORT).show();
TextView tv = (TextView) findViewById(R.id.response);
tv.setText(Jsonarray.toString());
}
@Override
public void fail(String message, int requestCode) {
Toast.makeText(this, "falha", Toast.LENGTH_SHORT).show();
}
@Override
public void loading(boolean loading, int requestCode) {
Toast.makeText(this, "carregando...", Toast.LENGTH_SHORT).show();
}
add headers
you must instantiate a hashmap of type add key and respective values. Then just add the hashmap to the setHeader method of an instance of the CustomRequest class. the example below shows how to add an authorization header.
HashMap<String, String> params = new HashMap<>();
params.put("Authorization", "Basic " + CustomRequest.generateAutorizationHeader(email, pass));
customRequest.setHeaders(params);
working with JsonObject or String
how to work JsonObject or String? Easy :) ... do you must to implement JSONObjectListener and/or StringListener interface as shown below.
public class MainActivity extends AppCompatActivity implements StringListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
CustomRequest customRequest = new CustomRequest();
customRequest.setBaseUrl("http://localhost/users"); //base url
customRequest.setRouter("/"); //router to REST API
customRequest.setMethod(Request.Method.GET);// methods ( get or post )
customRequest.setResult(0); //optional
NetworkConnection.getInstance(this).execute(this, customRequest);
}
public void fail(String message, int requestCode) {
}
@Override
public void loading(boolean loading, int requestCode) {
}
@Override
public void sucess(String string, int requestCode) {
}
}
OR
public class MainActivity extends AppCompatActivity implements JSONObjectListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
CustomRequest customRequest = new CustomRequest();
customRequest.setBaseUrl("http://localhost/users"); //base url
customRequest.setRouter("/"); //router to REST API
customRequest.setMethod(Request.Method.GET);// methods ( get or post )
customRequest.setResult(0); //optional
NetworkConnection.getInstance(this).execute(this, customRequest);
}
public void fail(String message, int requestCode) {
}
@Override
public void loading(boolean loading, int requestCode) {
}
@Override
public void sucess(JSONObject jsonObject, int requestCode) {
}
}
Simple Post Request
CustomRequest customRequest = new CustomRequest();
customRequest.setBaseUrl("http://localhost/users"); //base url
customRequest.setRouter("/"); //router to REST API
customRequest.setMethod(Request.Method.POST);// methods ( get or post )
customRequest.setResult(0); //optional
NetworkConnection.getInstance(this).execute(this, customRequest);
add params to Post Request
CustomRequest customRequest = new CustomRequest();
customRequest.setBaseUrl("http://localhost/users"); //base url
customRequest.setRouter("/"); //router to REST API
customRequest.setMethod(Request.Method.POST);// methods ( get or post )
customRequest.setResult(0); //optional
HashMap<String, String> params= new HashMap<>();
params.put("param_1", "value_1");
params.put("param_2", "value_2");
params.put("param_3", "value_3");
customRequest.setParams(params); //only POST
NetworkConnection.getInstance(this).execute(this, customRequest);
acknowledgment
agradecimento a contribuição direta/indireta de thiengo calopsita por meio do canal Vinicios Thiengo e do seu blog https://www.thiengo.com.br/