رفتن به مطلب
  • 0

ارسال و دریافت اطلاعات بوسیله json در پوشه


amir mahdizadeh

سوال

سلام دوستان

من با توجه به توضیحات خود سایت پوشه پیش رفتم اما متاسفانه به نتیجه نرسیدم

من میخوام یه سری اطلاعات رو با json به برنامم بفرستم و اونا رو توی Toast  نشون بدم اما این کار انجام نمیشه

لطفا کمکم کنید

اینم کدهام

package question.team.cyber.question;


import android.content.Intent;
import android.widget.Toast;

import org.json.JSONException;
import org.json.JSONObject;

import co.ronash.pushe.PusheListenerService;

public class MyPushListener extends PusheListenerService {
    @Override
    public void onMessageReceived(JSONObject message, JSONObject content) {
        if (message.length() == 0)
            return; //json is empty
        android.util.Log.i("Pushe", "Custom json Message: " + message.toString()); //print json to logCat

        //your code
        try {
            String s1 = message.getString("titr");
            String s2 = message.getString("matn");
            Toast.makeText(getApplicationContext(),s1+s2,Toast.LENGTH_LONG).show();
            android.util.Log.e("Pushe", "Json Message\n Titr: " + s1 + "\n Matn: " + s2);
            Intent i = new Intent(getApplicationContext(),activity_menu.class)
                    .putExtra("s1",s1)
                    .putExtra("s2",s2);
            startActivity(i);
        } catch (JSONException e) {
            android.util.Log.e("", "Exception in parsing json", e);
        }

    }
}

با تشکر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

12 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

@الیاس شهریاری دوستان هیچ کس نیست منو یاری کنه؟؟؟

بد جور گیرکردم:sorry:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

واسه نمایش جیسونی که از پنل پوشه میفرستید سمت اندروید در سرویس باید کد نمایش توست مسیجتون رو داخل Handler قرار بدید چون نمیتونید مستقیما از سرویس توست رو نشون بدید و  تغییرات UI داشته باشید

 

package pushe.elyas.erfani;

import android.os.Handler;
import android.widget.Toast;

import org.json.JSONObject;

import co.ronash.pushe.PusheListenerService;

/**
 * Created by Elyas on 30/11/2016.
 */
public class MyPushListener extends PusheListenerService {
    @Override
    public void onMessageReceived(final JSONObject message, JSONObject content){
        Handler handler = new Handler(getMainLooper());
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                Toast.makeText(getApplicationContext(),message.toString(),Toast.LENGTH_LONG).show();
            }
        },10);

    }
}

از پنل پوشه هم :

جدید

اعلان پیشرفته

تنها ارسال اطلاعات به اپلیکیشن، به کاربر چیزی نمایش داده نشود رو انتخاب میکنید و در قسمت بعد هم  جیسون مورد نظرتون رو ارسال میکنید

مثال یک Json :

{
"name": "Elyas",
"mail": "[email protected]",
"phone": "14125124123"
 }

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 18 ساعت قبل، Elyas Erfani گفته است :

واسه نمایش جیسونی که از پنل پوشه میفرستید سمت اندروید در سرویس باید کد نمایش توست مسیجتون رو داخل Handler قرار بدید چون نمیتونید مستقیما از سرویس توست رو نشون بدید و  تغییرات UI داشته باشید

 


package pushe.elyas.erfani;

import android.os.Handler;
import android.widget.Toast;

import org.json.JSONObject;

import co.ronash.pushe.PusheListenerService;

/**
 * Created by Elyas on 30/11/2016.
 */
public class MyPushListener extends PusheListenerService {
    @Override
    public void onMessageReceived(final JSONObject message, JSONObject content){
        Handler handler = new Handler(getMainLooper());
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                Toast.makeText(getApplicationContext(),message.toString(),Toast.LENGTH_LONG).show();
            }
        },10);

    }
}

از پنل پوشه هم :

جدید

اعلان پیشرفته

تنها ارسال اطلاعات به اپلیکیشن، به کاربر چیزی نمایش داده نشود رو انتخاب میکنید و در قسمت بعد هم  جیسون مورد نظرتون رو ارسال میکنید

مثال یک Json :


{
"name": "Elyas",
"mail": "[email protected]",
"phone": "14125124123"
 }

 

ممنون از جوابتون آقا الیاس

اما من این کار رو  انجام دادم ولی هیچ چیزی بهم نشون نداد حتی توی لاگ هم بهم چیزی نشون نداد

من نوتیفیکیشن ارسال میکنم بدستم میرسه اما اطلاعات جیسون برام نمیاد

فکر میکنم مشکل از جای دیگه باشه

الان کد رو به این شکل تغییر دادم همونطور که شما گفتین

import android.os.Handler;
import android.util.Log;
import android.widget.Toast;

import org.json.JSONException;
import org.json.JSONObject;
import co.ronash.pushe.PusheListenerService;

public class MyPushListener extends PusheListenerService {
    @Override
    public void onMessageReceived(final JSONObject message, JSONObject content) {
        if (message.length() == 0)
            return; //json is empty

        android.util.Log.i("Pushe", "Custom json Message: " + message.toString()); //print json to logCat

        //your code
        try {
            final String s1 = message.getString("titr");
            String s2 = message.getString("matn");
            android.util.Log.e("Pushe", "Json Message Titr: " + s1 + " Matn: " + s2);
            Log.i(" AmountYourVarriable :", "ooooooooooooooooooooooooooooooooo"+s1);
            Handler handler = new Handler(getMainLooper());
            handler.postDelayed(new Runnable() {
                @Override
                public void run() {
                    Toast.makeText(getApplicationContext(),s1, Toast.LENGTH_LONG).show();
                }
            },10);
        } catch (JSONException e) {
            android.util.Log.e("", "Exception in parsing json", e);
        }

    }
}

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببینید کد Receiver سرویس مشکلی نداره و میگید پوش معمولی هم   ارسال میشه واستون پس پوشه رو هم به درستی راه اندازی کردید و  مشکلی نداره

 

سرویس PusheListener رو در منیفست پروژه تعریف کردید ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

از دوستان و مدیران کسی نیست که به من کمک کنه بدجور گیر کردم هیچ منبعی هم واسه حل مشکلم پیدا نکردم:fekr::shout:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

شما دارید ارسال داده هارو روی گوشی تست میکنید یا   شبیه ساز ؟

روی گوشی واقعی تست کنید

همچنین قبل از اون از ثبت شدن گوشی شما در سایت پوشه پس از نصب برنامه اطمینان حاصل نمایید (مثلا نوتیفیکیشن ارسال کنید ببینید میرسه یا خیر!)

اگر موارد بالا رو انجام دادید و باز به نتیجه نرسیدید اطلاع بدید :53:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ممنون از پاسختون استاد ایزدی

بله من روی گوشی واقعی تست میکنم

و نوتیفیکیشن هم وقتی ارسال میکنم بدستم میرسه

اما اطلاعات با جیسون خیر

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، Elyas Erfani گفته است :

ببینید کد Receiver سرویس مشکلی نداره و میگید پوش معمولی هم   ارسال میشه واستون پس پوشه رو هم به درستی راه اندازی کردید و  مشکلی نداره

 

سرویس PusheListener رو در منیفست پروژه تعریف کردید ؟

من داخل منیقست کر زیر را بعد از تگ application قرار دادم

 <service
        android:name=".MyPushListener"
        android:exported="false">
        <intent-filter>
            <action android:name="co.ronash.pushe.RECEIVE" />
        </intent-filter>
    </service>

واقعا دیگه نمیدونم مشکل از کجاست:fekr:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوستان اصلا روش کد نویسی من درسته؟؟؟

ینی اینکه وقتی اطلاعات رو از جیسون میگیریم کجا باید توست مسیج رو نشون بدیم و کدش رو بنویسیم

اگه درست نوشتم پس چرا نشون نمیده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوست عزیز شکیبا باشید... 3 امتیاز منفی براتون ثبت  شد

صبر کنین بنده دارم تست میکنم به نتیجه رسیدم اطلاع میدم....

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 19 ساعت قبل، Elyas Erfani گفته است :

ببینید کد Receiver سرویس مشکلی نداره و میگید پوش معمولی هم   ارسال میشه واستون پس پوشه رو هم به درستی راه اندازی کردید و  مشکلی نداره

 

سرویس PusheListener رو در منیفست پروژه تعریف کردید ؟

کسی نیست به من کمک کنه عزیزان؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...