ورود

View Full Version : اشکال در استفاده از سرویس



rubiks.kde
یک شنبه 02 تیر 1392, 00:06 صبح
سلام به همه دوستان.
مدتی هست به دنبال یک مثال خوب در مورد نحوه استفاده از سرویس هستم ولی تا کنون چیزی که میخواهم رو پیدا نکردم . اون چیزی که مد نظرم هست رو توضیح میدم اگه دوستان لطف کنند و کمک کنند ممنون میشم.

من میخوام برنامه ایی بنویسم که بعد از زدن دکمه back برنامه بسته نشه و در background در حال اجرا باشه.

دقیقا مثل برنامه های gmail و ... هر وقت آپدیتی بود بهم خبر بده ( با نوتیفیکشن).

تا الان خیلی کار کردم و هیچ کدوم از کد هام توی یه حالت استیبل نبودن و بعد از مدتی کرش میکنند.

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

باتشکر

darkenerboy
یک شنبه 02 تیر 1392, 12:38 عصر
خوب این خیلی باحاله
قبلا انجام دادم
ببین اول باید مشخص کنی که میخوای چه جوری سرویست صدا زده بشه
با برودکست های خود اندروید یا میخوای خودت یک برودکست رو رجیستر کنی
اگه گزینه ی دوم مد نظرت هستش broadcast registration رو جستجو کن
اما اگر گزینه اول مد نظرت هستش حواست باشه چون شاید برنامه ی دیگه ای اونو منتظر اون باشه واسه اینکه برنامت اول اونو بگیره priority رو بزار 1000 :لبخند:
خوب حالا هر وقت برودکست صادر بشه میتونی به برنامت پیام میده
بعد از بررسی اگه برودکست مورد نظرت بود میتونی ناتیفیکیشن صادر کنی دیگه یا هر کاری که خواستی :متفکر:

موفق باشید

rubiks.kde
دوشنبه 03 تیر 1392, 13:29 عصر
خوب این خیلی باحاله
قبلا انجام دادم
ببین اول باید مشخص کنی که میخوای چه جوری سرویست صدا زده بشه
با برودکست های خود اندروید یا میخوای خودت یک برودکست رو رجیستر کنی
اگه گزینه ی دوم مد نظرت هستش broadcast registration رو جستجو کن
اما اگر گزینه اول مد نظرت هستش حواست باشه چون شاید برنامه ی دیگه ای اونو منتظر اون باشه واسه اینکه برنامت اول اونو بگیره priority رو بزار 1000 :لبخند:
خوب حالا هر وقت برودکست صادر بشه میتونی به برنامت پیام میده
بعد از بررسی اگه برودکست مورد نظرت بود میتونی ناتیفیکیشن صادر کنی دیگه یا هر کاری که خواستی :متفکر:

موفق باشید

میشه نمونه کد یا برنامه ایی اگه دارید که میشه در اختیار دیگران بزارید رو اینجا بزارید تا ازش استفاده کنیم.
باتشکر

abbasalim
دوشنبه 03 تیر 1392, 16:14 عصر
سلام
شما اینو ببینید اگه به نظرتون مفید کدش رو قرار بدم :
http://cafebazaar.ir/app/ir.esfandune.rabbitdemo/?l=fa

darkenerboy
دوشنبه 03 تیر 1392, 17:27 عصر
البته این سرویس نیست
این همون چیزیه که gmail ازش استفاده میکنه BroadcastReceiver هستش
این کلاسی هستش که برودکست رو میگیره

public class SmsReceiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//---get the SMS message passed in---
Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
String str = "";
if (bundle != null)
{
//---retrieve the SMS message received---
Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
for (int i=0; i<msgs.length; i++){
msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
str += "SMS from " + msgs[i].getOriginatingAddress();
str += " :";
str += msgs[i].getMessageBody().toString();
str += "\n";
}
//---display the new SMS message---
Toast.makeText(context, str, Toast.LENGTH_SHORT).show();
}
}
}

اینم قسمت مربوت به منی فست

<receiver android:name=".SmsReceiver" android:exported="true">
<intent-filter android:priority="1000">
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
</receiver>

بازم اگه سوالی بود در خدمتم