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.
-
AndroidAsync
Asynchronous socket, http (client+server), websocket, and socket.io library for android. Based on nio, not threads. -
AndroidNetworking
Android Networking is a powerful library for doing any type of networking in Android applications. -
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. -
No Internet Layout Library
#layout #check_internet -
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.
Get performance insights in less than 4 minutes
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
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/