نمایش نتایج 1 تا 2 از 2

نام تاپیک: دیکد کردن Json

  1. #1

    دیکد کردن Json

    سلام من توی جاوا کدهای زیر رو نوشتم کارش این هست که پیام ها رو استخراج میکنه و بصورت json تبدیل میکنه و باید به سرور ارسال بکنه!تا اینجای کار مشکلی نیست مشکل اینجاست که بلد نیستم با php اطلاعات دریافت شده رو دیکد کنم
    package ir.server.android;


    import android.app.Activity;
    import android.content.ContentResolver;
    import android.database.Cursor;
    import android.net.ConnectivityManager;
    import android.net.NetworkInfo;
    import android.net.Uri;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.support.design.widget.FloatingActionButton ;
    import android.support.design.widget.Snackbar;
    import android.support.v7.app.AppCompatActivity;
    import android.support.v7.widget.Toolbar;
    import android.util.Log;
    import android.view.View;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.Toast;


    import org.apache.http.HttpResponse;
    import org.apache.http.client.HttpClient;
    import org.apache.http.client.methods.HttpPost;
    import org.apache.http.entity.StringEntity;
    import org.apache.http.impl.client.DefaultHttpClient;
    import org.json.JSONObject;


    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.util.HashMap;
    import java.util.Map;


    public class MainActivity extends AppCompatActivity {
    public Map<String,Sms> texts = null;


    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    if(isConnected()){
    Toast.makeText(getApplicationContext(),"Internet Connected!",Toast.LENGTH_LONG).show();
    }else{
    Toast.makeText(getApplicationContext(), "No Internet Connection",Toast.LENGTH_LONG).show();
    }
    FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
    fab.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
    .setAction("Action", null).show();
    new HttpAsyncTask().execute("insert link to server");
    }
    });
    }
    public Map<String,Sms> getAllSms(){
    Log.e("apps", "hapahapa");
    Map<String,Sms> lstSms = new HashMap<String, Sms>();
    Sms objSms = new Sms();
    Uri message = Uri.parse("content://sms/");
    ContentResolver cr = getApplicationContext().getContentResolver();


    Cursor c = cr.query(message, null, null, null, null);
    int totalSMS = c.getCount();
    Log.e("apps else", totalSMS + "total");


    if(c.moveToFirst()){
    for(int i=0; i<totalSMS; i++){
    objSms = new Sms();
    objSms.setId(c.getString(c.getColumnIndexOrThrow(" _id")));
    objSms.setAddress(c.getString(c.getColumnIndexOrTh row("address")));
    objSms.setMsg(c.getString(c.getColumnIndexOrThrow( "body")));
    objSms.setReadState(c.getString(c.getColumnIndexOr Throw("read")));
    objSms.setTime(c.getString(c.getColumnIndexOrThrow ("date")));


    if(c.getString(c.getColumnIndexOrThrow("type")).co ntains("1")){
    objSms.setFolderName("inbox");
    } else{
    objSms.setFolderName("sent");
    }


    lstSms.put("AllSMS", objSms);
    Log.d("lstSms", lstSms + "ALLSMS");
    c.moveToNext();
    }
    }


    c.close();


    return lstSms;


    }
    public static String POST(String url,Map<String, Sms> apps ){
    Sms wekasms1 = new Sms();
    InputStream ip = null;
    String result = "";


    try{
    //create http client
    HttpClient httpclient = new DefaultHttpClient();


    //make POST request to the given URL.
    HttpPost httpPost = new HttpPost(url);


    String json = "";


    //build jsonObject
    JSONObject jsonObject = new JSONObject();


    jsonObject.put("id", wekasms1.getId());
    jsonObject.put("address", wekasms1.getAddress());
    jsonObject.put("read", wekasms1.getReadState());
    jsonObject.put("body", wekasms1.getMsg());
    jsonObject.put("date", wekasms1.getTime());
    jsonObject.put("FolderName", wekasms1.getFolderName());




    Log.d("jsonOb", jsonObject+"built jsonObject");


    //convert JSONObject to JSON to String
    json = jsonObject.toString();
    Log.e("converted json to Str", json);


    //**Alternative method of converting Sms object to Json
    /*ObjectMapper mapper = new ObjectMapper();
    json = mapper.writeValueAsString(hizosms);
    */


    //set json to string entity
    StringEntity se = new StringEntity(json);


    //set httpPost Entity
    httpPost.setEntity(se);
    Log.d("httpPost", httpPost+ "We've set httpPost Entity");
    //Set some headers to inform server about the type of the content.
    httpPost.setHeader("Accept", "application/json");
    httpPost.setHeader("Content-type", "application/json");


    //Execute POST request to the given URL
    HttpResponse httpResponse = httpclient.execute(httpPost);


    //recieve response as inputstream
    ip = httpResponse.getEntity().getContent();


    //convert inputstream to string
    if(ip!=null){
    result = convertInputStreamToString(ip);
    }
    }catch(Exception e){
    Log.d("InputStream", e.getLocalizedMessage());
    }
    //return result
    return result;
    }
    private static String convertInputStreamToString(InputStream ip) throws IOException {
    BufferedReader bfr = new BufferedReader(new InputStreamReader(ip));
    String line = "";
    String result = "";


    while((line = bfr.readLine()) !=null)
    result += line;
    ip.close();


    return result;
    }
    public boolean isConnected(){
    ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Activity.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();


    if(networkInfo != null && networkInfo.isConnected())
    return true;
    else
    return false;


    }
    class HttpAsyncTask extends AsyncTask<String, Void, String> {


    @Override
    protected String doInBackground(String... urls) {


    Map<String, Sms> apps = getAllSms();


    final int max = apps.size();


    for(int i=0; i<max; i++){
    apps.get(i);
    }


    return POST(urls[0],apps);
    // TODO Auto-generated method stub
    }
    //display the result of the Asynctask
    @Override
    protected void onPostExecute(String result) {
    Toast.makeText(getBaseContext(), "ALLSMS SENT", Toast.LENGTH_LONG).show();
    }
    }
    }



  2. #2
    کاربر دائمی آواتار hamedarian2009
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    گرگان
    پست
    1,691

    نقل قول: دیکد کردن Json


تاپیک های مشابه

  1. دیکد کردن برنامه های دات نت و محافظت از سورس
    نوشته شده توسط ara_prg در بخش C#‎‎
    پاسخ: 16
    آخرین پست: پنج شنبه 25 بهمن 1386, 02:19 صبح
  2. دیکد کردن صفحات cgi
    نوشته شده توسط yazdan در بخش دیگر زبان های اسکریپتی
    پاسخ: 0
    آخرین پست: جمعه 15 آبان 1383, 20:46 عصر
  3. دیکد کردن cgi
    نوشته شده توسط yazdan در بخش PHP
    پاسخ: 0
    آخرین پست: چهارشنبه 06 آبان 1383, 06:51 صبح
  4. دیکد کردن base64
    نوشته شده توسط مهدی فهمیده غلامی در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 05 مرداد 1383, 17:01 عصر
  5. باز کردن و دیکد کردن فایل HEX
    نوشته شده توسط masoode در بخش برنامه نویسی در Delphi
    پاسخ: 5
    آخرین پست: یک شنبه 02 آذر 1382, 14:59 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •