کلیدستان

نسخه‌ی کامل: چک کردن نصب بودن برنامه اندروید Viber بر روی گوشی کاربر
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
 با سلام و روز بخیر
با تشکر از ادمین محترم بابت راهنمایی هاشون

من برای مورد زیر به مشکل بر خوردم:
از چه کدی استفاده کنم که چک کنه که برنامه Viber بر روی دستگاه نصب است یا خیر
 اگر نصب بود به اکتیویتی B برود
و
اگر نصب نبود به اکتیوی C برود
خیلی ممنون میشم هرکدام از دوستان که میدونن لطف کنن و بهم کمک کنن
با تشکر  
سلام.
قبلا سوال مشابهی پرسیده بودید، این مورد نیز دقیقا مثل همان است و تنها باید نام package مربوط به برنامه viber را در برنامه اندروید خود ذخیره کنید و سپس همان مراحلی که در موضوع زیر شرح دادیم را اجرا کنید (فقط این بار، نتیجه به صورت رفتن به Activity های مختلف از برنامه اندروید می باشد) :

http://www.kelidestan.com/forum/showthread.php?tid=4802

از چه کدی برای مقایسه نام پکیج ها که گفتید(3- نام package برنامه اندروید مورد نظر را با نام های package به دست آمده مقایسه کنید تا ببینید که کدامیک از آن دو حالت پیش می آید.)
 استفاده کنم؟
ابتدا کدهای موجود در کلید زیر را ببینید :

http://www.kelidestan.com/keys/keys.php?key=319

اگر دقت کنید، بخشی از آن، شامل کدهای زیر است :

کد:
int applist_length = applist.size();
for(int x = 0; x < applist_length; x = x+1) {
     ApplicationInfo data = applist.get(x);
     String packageName = data.packageName;
     // default action
}

در این بخش از کدها، نام package های تمامی برنامه های اندروید نصب بر روی گوشی اندروید، در یک حلقه for ، در متغیری با نام packageName ذخیره می شوند (یعنی در هر گام از حلقه for ، نام یک  package در متغیر  packageName ذخیره می شود)، بنابراین شما به جای عبارت default action //  ، کدی بنویسید که نام package مورد نظرتان را در هر گام، با مقدار فعلی ذخیره شده در متغیر  packageName مقایسه کند و شرط بگذارید که اگر برابر بودند، یک متغیر (که مقدار اولیه آن برابر 0 بوده) برابر 1 قرار داده شود، بنابراین بعد از کدهای حلقه، اگر آن متغیر برابر 1 بود، یعنی برنامه بر روی گوشی نصب است، اما اگر برابر 0 بود، یعنی نصب نیست.
برای مقایسه دو رشته (String) از نظر برابر بودن، کلید زیر را بخوانید (نام package را به صورت رشته در متغیرها ذخیره کرده ایم) :

http://www.kelidestan.com/keys/keys.php?key=282

(۱۳۹۳/۰۸/۱۲, ۱۲:۱۴ ق.ظ)'admin' نوشته: [ -> ]ابتدا کدهای موجود در کلید زیر را ببینید :

http://www.kelidestan.com/keys/keys.php?key=319

اگر دقت کنید، بخشی از آن، شامل کدهای زیر است :


کد:
int applist_length = applist.size();
for(int x = 0; x < applist_length; x = x+1) {
ApplicationInfo data = applist.get(x);
String packageName = data.packageName;
// default action
}

در این بخش از کدها، نام package های تمامی برنامه های اندروید نصب بر روی گوشی اندروید، در یک حلقه for ، در متغیری با نام packageName ذخیره می شوند (یعنی در هر گام از حلقه for ، نام یک  package در متغیر  packageName ذخیره می شود)، بنابراین شما به جای عبارت default action //  ، کدی بنویسید که نام package مورد نظرتان را در هر گام، با مقدار فعلی ذخیره شده در متغیر  packageName مقایسه کند و شرط بگذارید که اگر برابر بودند، یک متغیر (که مقدار اولیه آن برابر 0 بوده) برابر 1 قرار داده شود، بنابراین بعد از کدهای حلقه، اگر آن متغیر برابر 1 بود، یعنی برنامه بر روی گوشی نصب است، اما اگر برابر 0 بود، یعنی نصب نیست.
برای مقایسه دو رشته (String) از نظر برابر بودن، کلید زیر را بخوانید (نام package را به صورت رشته در متغیرها ذخیره کرده ایم) :

http://www.kelidestan.com/keys/keys.php?key=282



 


خیلی خیلی ممنون