public class MainActivity extends AppCompatActivity {
private AutoCompleteTextView autoCompleteTextView;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView);
new HttpGetTask().execute("http://192.168.0.107/abc/translator.php");
}
public class HttpGetTask extends AsyncTask<String, String, List<TranslatorModel>> {
#Override
protected List<TranslatorModel> doInBackground(String... params) {
HttpURLConnection connection = null;
BufferedReader reader = null;
try {
URL url = new URL(params[0]);
connection = (HttpURLConnection) url.openConnection();
connection.connect();
InputStream stream = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(stream));
StringBuffer buffer = new StringBuffer();
String line = "";
while ((line = reader.readLine()) != null) {
buffer.append(line);
}
String finalJson = buffer.toString();
JSONArray parentArray = new JSONArray(finalJson);
List<TranslatorModel> translatorModelList = new ArrayList<>();
for(int i= 0; i<parentArray.length();i++) {
JSONObject finalObject = parentArray.getJSONObject(i);
TranslatorModel translatorModel = new TranslatorModel();
translatorModel.setEnglish(finalObject.getString("englishSentence"));
translatorModelList.add(translatorModel);
}
return translatorModelList;
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
} finally {
if (connection != null) {
connection.disconnect();
}
try {
if (reader != null) {
reader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return null;
}
#Override
protected void onPostExecute(List<TranslatorModel> data) {
super.onPostExecute(data);
}
}
}
englishSentence is a string json object . setter and getter methods are defined in a TranslatorModel class. i want to display englishSentence values in my autocompleteTextView
Problem:
Which code will be used for displaying data in autocompletetextview ?
Where to add array adaptar class and which code will work ?
Which code will be used onPostExecute Method ?
add ArrayAdapter inside onPostExecute method
#Override
protected void onPostExecute(List<TranslatorModel> data) {
ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,data);
autoCompleteTextView.setAdapter(adapter);
autoCompleteTextView.setThreshold(1);
super.onPostExecute(data);
}
Related
I'm trying to parse JSON from this
string x = "http://www.neowsapp.com/rest/v1/neo/3725762?api_key=DEMO_KEY";
In the browser I can see all the data from this link, but in the parsing method, it can't be converted to a JSONObject.
The error is in this line, in the Utilsul class:
root = new JSONObject(x);
Here is the class containing all the methods for parsing:
public class Utilsul {
private static URL createURL(String x){
URL myurl = null;
try {
myurl = new URL(x);
} catch (MalformedURLException e) {
e.printStackTrace();
}
// Log.i("obtine link ", myurl.toString());
return myurl;
}
private static String raspunsul(URL myurl){
String rasp = "";
HttpURLConnection httpURLConnection = null;
InputStream inputStream = null;
try {
httpURLConnection = (HttpURLConnection) myurl.openConnection();
inputStream = httpURLConnection.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream);
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
String liniaCurenta = "";
StringBuffer stringBuffer = new StringBuffer();
while ((liniaCurenta = bufferedReader.readLine())!=null){
stringBuffer.append(liniaCurenta);
}
rasp = stringBuffer.toString();
bufferedReader.close();
inputStreamReader.close();
} catch (IOException e) {
e.printStackTrace();
}
finally {
if (inputStream != null){
try {
inputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
}
httpURLConnection.disconnect();
}
// Log.i("Obtine Raspuns", rasp);
return rasp;
}
private static ArrayList<Obiectul> obtineSir(String x){
ArrayList<Obiectul> sirul = new ArrayList<>();
JSONObject root = null;
try {
root = new JSONObject(x);
// Log.i("Obtine root ", root.toString());
JSONArray sirJONURI = root.getJSONArray("close_approach_data");
for (int i=0; i<sirJONURI.length(); i++){
JSONObject obiectCurent = sirJONURI.getJSONObject(i);
String data = obiectCurent.getString("close_approach_date");
JSONObject jsonViteza = obiectCurent.getJSONObject("relative_velocity");
String viteza = jsonViteza.getString("kilometers_per_hour");
JSONObject jsonDistanta = obiectCurent.getJSONObject("miss_distance");
String distanta = jsonDistanta.getString("kilometers");
sirul.add(new Obiectul(data, viteza, distanta));
}
} catch (JSONException e) {
e.printStackTrace();
}
return sirul;
}
public static ArrayList<Obiectul> toateOdata(String x){
URL ur = createURL(x);
String raspuns = raspunsul(ur);
ArrayList<Obiectul> sir = obtineSir(raspuns);
return sir;
}
}
And here is the class where the parsing will be execute:
public class ActivityB extends AppCompatActivity {
RecyclerView rv;
AdaptorRecycler mAdapter;
ArrayList<Obiectul> sirul;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_b);
rv = findViewById(R.id.toataLista);
rv.setLayoutManager(new LinearLayoutManager(this));
ClasaAsy clasaAsy = new ClasaAsy();
clasaAsy.execute(linkul());
}
private String linkul(){
String link = "http://www.neowsapp.com/rest/v1/neo/3725762?api_key=DEMO_KEY";
return link;
}
public class ClasaAsy extends AsyncTask<String, Void, ArrayList<Obiectul>>{
#Override
protected ArrayList<Obiectul> doInBackground(String... strings) {
ArrayList<Obiectul> sir = Utilsul.toateOdata(strings[0]);
return sir;
}
#Override
protected void onPostExecute(ArrayList<Obiectul> obiectuls) {
mAdapter = new AdaptorRecycler(ActivityB.this, obiectuls);
rv.setAdapter(mAdapter);
}
}
And here is the Adapter for the RecyclerView (which is tested working, with an ArrayList randomly written).
public class AdaptorRecycler extends RecyclerView.Adapter<AdaptorRecycler.ClasaVH> {
Context context;
ArrayList<Obiectul> sirul;
public AdaptorRecycler(Context context, ArrayList<Obiectul> sirul) {
this.context = context;
this.sirul = sirul;
}
public class ClasaVH extends RecyclerView.ViewHolder{
TextView data, viteza, distanta;
public ClasaVH(#NonNull View itemView) {
super(itemView);
data = itemView.findViewById(R.id.textView2);
viteza = itemView.findViewById(R.id.textView3);
distanta = itemView.findViewById(R.id.textView4);
}
}
#NonNull
#Override
public ClasaVH onCreateViewHolder(#NonNull ViewGroup parent, int viewType) {
return new ClasaVH(LayoutInflater.from(context).inflate(R.layout.randul, parent, false));
}
#Override
public void onBindViewHolder(#NonNull ClasaVH holder, int position) {
Obiectul a = sirul.get(position);
holder.data.setText(a.getData());
holder.viteza.setText(a.getViteza());
holder.distanta.setText(a.getDistanta());
}
#Override
public int getItemCount() {
return sirul.size();
}
}
For some reason, the JSONObject root is never initialised and I couldn't find why.
Please kindly give me an idea, what else should I try.
Thanks
i am using the APi of https://openweathermap.org/current
i want to get particular weather part from the API as below my code so i am using JSON
Here below link is API key where i want weather part
http://samples.openweathermap.org/data/2.5/weather?q=London,uk&appid=b1b15e88fa797225412429c1c50c122a1
Value null of type org.json.JSONObject$1 cannot be converted to JSONObject
I am using the AsyncTask
My MainActivity is here
public class MainActivity extends AppCompatActivity {
String data ;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DownloadWeatherData downloadWeatherData = new DownloadWeatherData();
try {
downloadWeatherData.execute("http://samples.openweathermap.org/data/2.5/weather?q=London,uk&appid=b1b15e88fa797225412429c1c50c122a1").get();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Here is my java file
public class DownloadWeatherData extends AsyncTask {
String weatherdata;
#Override
protected String doInBackground(String... urls)
{
try {
URL url = new URL(urls[0]);
HttpURLConnection connection =(HttpURLConnection) url.openConnection();
connection.connect();
InputStreamReader inputStreamReader = new InputStreamReader(connection.getInputStream());
int data = inputStreamReader.read();
while(data!=-1)
{
char str = (char)data;
weatherdata+=str;
data = inputStreamReader.read();
}
return weatherdata;
}
catch (MalformedURLException e)
{
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
#Override
protected void onPostExecute(String s)
{
super.onPostExecute(s);
try {
JSONObject jsonObject = new JSONObject(s);
String info = jsonObject.getString("weather");
Log.d("weatherpart",info);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
You are doing it wrong. Weather is an array not a json object. Do it like this:
JSONObject jsonObj = new JSONObject(s);
JSONArray ja_data = jsonObj.getJSONArray("weather");
int length = ja_data.length();
for(int i=0; i<length; i++) {
JSONObject jsonObj = ja_data.getJSONObject(i);
.
.
.
}
I've made this code to download this JSON:
private void rxPublishProgress()
{
final OkHttpClient mOkHttpClient = new OkHttpClient();
final Request mRequest = new Request.Builder().url(AirportService.SERVICE_ENDPOINT).build();
Observable.create(new Observable.OnSubscribe<String>()
{
#Override
public void call(Subscriber<? super String> subscriber)
{
try {
InputStream inputStream;
okhttp3.Response response = mOkHttpClient.newCall(mRequest).execute();
if (response.isSuccessful())
{
inputStream = response.body().byteStream();
long len = response.body().contentLength();
String progress = "0";
subscriber.onNext(progress);
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
byte[] data = new byte[1024];
long total = 0;
int count;
String line = null;
final int bufferSize = 1024;
boolean flag = false;
JSONObject jsonObject = null;
final char[] buffer = new char[bufferSize];
final StringBuilder out = new StringBuilder();
Reader in = new InputStreamReader(inputStream, "UTF-8");
for(;flag ==false ;)
{
count = in.read(buffer, 0, buffer.length);
if (count == -1)
{
progress = "100";
subscriber.onNext(progress);
flag = true;
}
else
{
out.append(buffer, 0, count);
// Log.d("out",out.toString());
total += count;
progress = String.valueOf(total * 100 / len);
subscriber.onNext(progress);
}
}
inputStream.close();
// try parse the string to a JSON object
try
{
jsonObject = new JSONObject(out.toString());
}
catch (JSONException e)
{
e.printStackTrace();
}
Log.d("lengt",String.valueOf(jsonObject.length()));
subscriber.onCompleted();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}).subscribeOn(Schedulers.newThread()).subscribe(new Subscriber<String>() {
#Override
public void onCompleted()
{
Log.d("Complete","complete");
}
#Override
public void onError(Throwable e)
{
}
#Override
public void onNext(final String progress) {
getActivity().runOnUiThread(new Runnable() {
#Override
public void run()
{
percentage.setText(progress+"%");
}
});
}
});
and it works, but I don't know how to retrieve this JSON or to convert with GSON.
I need to retrieve the percentage of download because it's a specific request of this project, but I need also the JSONObject or the List . How could I do to have this?
Thanks
As i got you have 1 Observable and you need:
1) display percentage
2) do something else
So you can do like this:
Observable<okhttp3.Response> responseObservable = Observable.create(/*your code to return response*/)
.subscribeOn(Schedulers.newThread())
.replay(1)
.refCount();
responseObservable
.map(toPercents())
.subscribe(displayPercents());
responseObservable
.map(toSomethingElse())
.subscribe(displaySomethingElse());
ArrayList<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();
//URL to get JSON Array
private static String url = "http://jsonplaceholder.typicode.com/posts";
//JSON Node Names
// private static final String TAG_OS = "Employee";
private static final String TAG_USER= "userId";
private static final String TAG_NAME = "id";
private static final String TAG_TITLE = "title";
private static final String TAG_BODY = "body";
JSONArray android = null;
#Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
list = new ArrayList<HashMap<String, String>>();
Btngetdata = (Button)findViewById(R.id.getdata);
Btngetdata.setOnClickListener(new View.OnClickListener() {
#Override
public void onClick(View view) {
new JSONParse().execute();
}
});
}
private class JSONParse extends AsyncTask<String, String, JSONObject> {
private ProgressDialog pDialog;
#Override
protected void onPreExecute() {
super.onPreExecute();
ver = (TextView)findViewById(R.id.user);
name = (TextView)findViewById(R.id.id);
api = (TextView)findViewById(R.id.titile);
body =(TextView)findViewById(R.id.body);
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setMessage("Getting Data ...");
pDialog.setIndeterminate(false);
pDialog.setCancelable(true);
pDialog.show();
}
#Override
protected JSONObject doInBackground(String... args) {
JSONParser jParser = new JSONParser();
// Getting JSON from URL
JSONObject json = jParser.getJSONFromUrl(url);
return json;
}
#Override
protected void onPostExecute(JSONObject json) {
pDialog.dismiss();
try {
// Getting JSON Array from URL
android = json.getJSONArray("");
for(int i = 0; i < android.length(); i++){
JSONObject c = android.getJSONObject(i);
// Storing JSON item in a Variable
String ver = c.getString(TAG_USER);
String name = c.getString(TAG_NAME);
String api = c.getString(TAG_TITLE);
String body =c.getString(TAG_BODY);
HashMap<String, String> map = new HashMap<String, String>();
map.put(TAG_USER, ver);
map.put(TAG_NAME, name);
map.put(TAG_TITLE, api);
map.put(TAG_BODY, body);
list.add(map);
List=(ListView)findViewById(R.id.list);
ListAdapter adapter = new SimpleAdapter(MainActivity.this, list,
R.layout.list_v,
new String[] { TAG_USER,TAG_NAME, TAG_TITLE,TAG_BODY }, new int[] {
R.id.user,R.id.id, R.id.titile,R.id.body});
List.setAdapter(adapter);
List.setOnItemClickListener(new AdapterView.OnItemClickListener() {
#Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this, "You Clicked at "+list.get(+position).get("name"), Toast.LENGTH_SHORT).show();
}
});
}
} catch (JSONException e) {
e.printStackTrace();
}
}
}
}
json parse:-
public class JSONParser {
static InputStream is = null;
static JSONObject jObj = null;
static String json = "";
// constructor
public JSONParser() {
}
public JSONObject getJSONFromUrl(String url) {
// Making HTTP request
try {
// defaultHttpClient
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(
is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "n");
}
is.close();
json = sb.toString();
} catch (Exception e) {
Log.e("Buffer Error", "Error converting result " + e.toString());
}
// try parse the string to a JSON object
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
Log.e("JSON Parser", "Error parsing data " + e.toString());
}
// return JSON String
return jObj;
}
}
Logcat here
java.lang.NullPointerException: Attempt to invoke virtual method 'org.json.JSONArrayorg.json.JSONObject.getJSONArray(java.lang.String)' on a null object reference
at com.example.mind.sqlitedatabase.MainActivity$JSONParse.onPostExecute(MainActivity.java:134)
at com.example.mind.sqlitedatabase.MainActivity$JSONParse.onPostExecute(MainActivity.java:103)
at android.os.AsyncTask.finish(AsyncTask.java:636)
at android.os.AsyncTask.access$500(AsyncTask.java:177)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:653)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5254)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Actually, I faced problem when I click get button to call uri for json parsing.
But when in android device json = null parsing...
Here I used Volley library, it handle the all the things which you did manually(Asynctask, httprequest for json).
I hope it may helps you
// JsonObject request
public void getJSONFromUrl(String url) {
RequestQueue queue = Volley.newRequestQueue(getActivity());
JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.GET,
url, null,
new Response.Listener<JSONObject>() {
#Override
public void onResponse(JSONObject response) {
Log.d("Response", "Response" + response);
//handle the json response
handleResponse(response);
}
}, new Response.ErrorListener() {
#Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d("Error", "Error: " + error.getMessage());
}
});
queue.add(jsonObjReq);
}
// converting from json to Map using JsonHelper class
public void handleResponse(JSONObject response) {
Map<String, Object> map = new HashMap<>();
if(response != null){
try {
// JsonObject to Map
map = JsonHelper.toMap(response);
// boolean isSuccess = map.get("success")
// if(isSuccess){
//}
if (map.size() != 0){
// use the data
}
Log.d("MAp","map" + map);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
here below class will help converting json response to MAP, from map to json.
copied from https://gist.github.com/codebutler/2339666
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.*;
public class JsonHelper {
public static Object toJSON(Object object) throws JSONException {
if (object instanceof Map) {
JSONObject json = new JSONObject();
Map map = (Map) object;
for (Object key : map.keySet()) {
json.put(key.toString(), toJSON(map.get(key)));
}
return json;
} else if (object instanceof Iterable) {
JSONArray json = new JSONArray();
for (Object value : ((Iterable)object)) {
json.put(value);
}
return json;
} else {
return object;
}
}
public static boolean isEmptyObject(JSONObject object) {
return object.names() == null;
}
public static Map<String, Object> getMap(JSONObject object, String key) throws JSONException {
return toMap(object.getJSONObject(key));
}
public static Map<String, Object> toMap(JSONObject object) throws JSONException {
Map<String, Object> map = new HashMap();
Iterator keys = object.keys();
while (keys.hasNext()) {
String key = (String) keys.next();
map.put(key, fromJson(object.get(key)));
}
return map;
}
public static List toList(JSONArray array) throws JSONException {
List list = new ArrayList();
for (int i = 0; i < array.length(); i++) {
list.add(fromJson(array.get(i)));
}
return list;
}
private static Object fromJson(Object json) throws JSONException {
if (json == JSONObject.NULL) {
return null;
} else if (json instanceof JSONObject) {
return toMap((JSONObject) json);
} else if (json instanceof JSONArray) {
return toList((JSONArray) json);
} else {
return json;
}
}
}
volley library usage
http://www.androidhive.info/2014/09/android-json-parsing-using-volley/
I've a requirement. I have a working POST call ("http://localhost:8080/POSTAPI/table/testmaster/create"). I sent JSON data through postman and details got inserted into MySQL database. Now i'm trying to send the json data through apache httpcleint. but, it failed to insert into mysql database.
CloseableHttpClient client = HttpClients.createDefault();
HttpPost post = new HttpPost("http://localhost:8080/POSTAPI/table/testmaster/create");
JSONObject testmaster = new JSONObject();
testmaster.put("testRunId", testRunId);
testmaster.put("testClassName", className);
testmaster.put("testMethod", methodName);
testmaster.put("createdBy", "leela");
testmaster.put("createdDate", startDate);
testmaster.put("lastUpdatedBy", "raghu");
testmaster.put("lastUpdatedDate", endDate);
testmaster.put("attribute1", "methodName");
testmaster.put("attribute1Value",methodName );
testmaster.put("attribute2", "result");
testmaster.put("attribute2Value", successResult);
testmaster.put("attribute3", "Test Suite");
testmaster.put("attribute3Value", suiteName);
testmaster.put("attribute4", "test group");
testmaster.put("attribute4Value", TestGroup);
testmaster.put("attribute5", "dataprovider");
testmaster.put("attribute5Value", dataProvider);
StringEntity stringEntity = new StringEntity(testmaster.toString());
post.setEntity(stringEntity);
post.setHeader("Accept", "application/json");
post.setHeader("Content-type", "application/json");
CloseableHttpResponse response = client.execute(post);
System.out.println("Status: "+response.getStatusLine());
This is what i tried. if anybody have any idea of post operation through httpclient or any other alternative please let me know. Thanks in advance.
Use the following code :
private class postJsonData extends AsyncTask<Void, Integer, Boolean> {
ProgressDialog dialog;
String responseString = null;
private postJsonData() {
super();
dialog = new ProgressDialog(MainActivity.this);
this.dialog.setTitle("Please wait.");
this.dialog.setCancelable(false);
this.dialog.show();
}
#Override
protected void onPreExecute() {
dialog.setProgress(0);
super.onPreExecute();
}
#Override
protected void onProgressUpdate(Integer... progress) {
// Making progress bar visible
if (this.dialog.isShowing()) {
dialog.setProgress(progress[0]);
}
}
#SuppressWarnings("deprecation")
#Override
protected Boolean doInBackground(Void... params) {
Boolean result=false;
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://192.168.2.2/android/jsonpost.php");
try {
JSONObject testmaster = new JSONObject();
try {
testmaster.put("testRunId", "1");
testmaster.put("testClassName", "className");
testmaster.put("testMethod", "methodName");
testmaster.put("createdBy", "leela");
testmaster.put("createdDate", "startDate");
} catch (JSONException e) {
e.printStackTrace();
}
List<NameValuePair> nameValuePairs = new ArrayList<>();
nameValuePairs.add(new BasicNameValuePair("json_string", testmaster.toString()));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Making server call
HttpResponse response = httpclient.execute(httppost);
HttpEntity r_entity = response.getEntity();
int statusCode = response.getStatusLine().getStatusCode();
if (statusCode == 200) {
// Server response
responseString = EntityUtils.toString(r_entity);
result = false;
} else {
responseString = "Error occurred! Http Status Code: "
+ statusCode;
result = false;
}
} catch (final ClientProtocolException e) {
runOnUiThread(new Runnable() {
#Override
public void run() {
Toast.makeText(getApplicationContext(),
"ClientProtocolException : " + e.toString(),
Toast.LENGTH_LONG)
.show();
}
});
result = false;
} catch (final IOException e) {
runOnUiThread(new Runnable() {
#Override
public void run() {
Toast.makeText(getApplicationContext(),
"IOException : " + e.toString(),
Toast.LENGTH_LONG)
.show();
}
});
result = false;
}
return result;
}
#Override
protected void onPostExecute(final Boolean success) {
//progressBar.setVisibility(View.GONE);
if (dialog.isShowing()){
dialog.dismiss();
}
runOnUiThread(new Runnable() {
#Override
public void run() {
Toast.makeText(getApplicationContext(),
"Response from Server: " + responseString ,
Toast.LENGTH_LONG)
.show();
}
});
if (success){
}else{
}
super.onPostExecute(success);
}
}
Here is my php code which accepts the json string and decode into array.
<?php
if (empty($_POST['json_string'])) {
echo "Empty json data";
exit;
}else{
$json_string = $_POST['json_string'];
}
$params = array();
$params = json_decode($json_string,true);
//echo $params['testClassName'];
var_dump($params);
?>