close
تبلیغات در اینترنت
تشخیص نصب برنامه,نصب برنامه,نصب اپلیکیشن,تشخیص نصب اپلیکیشن,کد اندروید
صفحه اصلی پرشین استک

{ پرشین استک }

به دنیای برنامه نویسی خوش آمدید
|


پرشین استک تنها یک سایت نیست ، بلکه یک پروژه همگانی می باشد .


تعداد مطالب :
142


تعداد توسعه دهندگان :
11


تاریخ امروز :
سه شنبه 04 اردیبهشت 1397

به کانال تلگرام ما بپیوندید


×

لیست سوالات من

افزودن

چگونه می توان برنامه نویسی کرد طوری که تشخیص داد آیا اپلیکیشن در اندروید نصب شده یا نه ؟

ما برنامه های کاربردی را نصب کرده ایم .

1. اگر برنامه  در دستگاه نصب شده باشد ، برنامه به طور خودکار باز است .

2. در غیر این صورت برنامه خاصی را نصب کنیم .

 

پاسخ 1 :

این کد را امتحان کنید :

 

public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);


// Add respective layout
setContentView(R.layout.main_activity);


// Use package name which we want to check
boolean isAppInstalled = appInstalledOrNot("com.check.application");

if(isAppInstalled){
//This intent will help you to launch if the package is already installed
IntentLaunchIntent = getPackageManager()
.getLaunchIntentForPackage("com.check.application");
startActivity(LaunchIntent);

Log.i("Application is already installed.");
}else{
// Do whatever we want to do if application not installed
// For example, Redirect to play store

Log.i("Application is not currently installed.");
}
}

private boolean appInstalledOrNot(String uri){
PackageManager pm = getPackageManager();
try{
pm.getPackageInfo(uri,PackageManager.GET_ACTIVITIES);
return true;
}catch(PackageManager.NameNotFoundException e){
}

return false;
}

}

 

پاسخ 2 :

 

public static boolean isAppInstalled(Context context,String packageName){
try{
context.getPackageManager().getApplicationInfo(packageName,0);
return true;
}
catch(PackageManager.NameNotFoundException e){
returnfalse;

}
}

 

من تصمیم گرفتم آنرا در یک کلاس کمکی به عنوان یک ابزار استاتیک وارد کنم .

نمونه کد :

 

boolean whatsappFound = AndroidUtils.isAppInstalled(context,"com.whatsapp");

 

این پاسخ نشان می دهد که چگونه برنامه را از فروشگاه گوگل پلی در صورتی که برنامه از دست رفته باشد ، دریافت می کند . همچنین مراقب دستگاه هایی که Play Store ندارند باشید .

 

پاسخ 3 :

کد زیر می تواند کاربردی باشد .

یک شی Intent با اطلاعات مناسب ایجاد کنید و بررسی کنید که آیا Intent قابل فراخوانی است یا از متد زیر استفاده نمی کند :

 

private boolean isCallable(Intent intent){ 
List<ResolveInfo> list = getPackageManager().queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return list.size()>0;
}

 

پاسخ 4 :

اگر نام پکیج را می دانید ، این کار بدون استفاده از بلوک try-catch یا تکرار از طریق یک دسته از پکیج ها انجام می شود :

 

public static boolean isPackageInstalled(Context context,String packageName){
final PackageManager packageManager = context.getPackageManager();
Intent intent = packageManager.getLaunchIntentForPackage(packageName);
if(intent ==null){
returnfalse;
}
List<ResolveInfo> list = packageManager.queryIntentActivities(intent,PackageManager.MATCH_DEFAULT_ONLY);
return list.size()>0;
}

 

 

پاسخ 5 :

این کد برای اطمینان از اینکه برنامه نصب شده را بررسی می کند، همچنین بررسی می کند تا مطمئن شود که آن فعال شده است :

 

private boolean isAppInstalled(String packageName){
PackageManager pm = getPackageManager();
try{
pm.getPackageInfo(packageName,PackageManager.GET_ACTIVITIES);
return pm.getApplicationInfo(packageName,0).enabled;
}
catch(PackageManager.NameNotFoundException e){
e.printStackTrace();
return false;
}
}

 

 

پاسخ 6 : من فکر می کنم که استفاده از بلوک try-catch مناسب نیست . این کد می تواند کاربرد داشته باشد :

 

public static boolean appInstalledOrNot(Context context,String uri){
PackageManager pm = context.getPackageManager();
List<PackageInfo> packageInfoList = pm.getInstalledPackages(PackageManager.GET_ACTIVITIES);
if(packageInfoList !=null){
for(PackageInfo packageInfo : packageInfoList){
String packageName = packageInfo.packageName;
if(packageName !=null&& packageName.equals(uri)){
return true;
}
}
}
return false;
}

 

صفحه اصلی

46

17 / 05 / 1396

PERSIAN STACK


دانلود تمامی API های اندروید

ادامه مطلب

689

چرا گاهی اوقات API موقعیت مکانی سرویس گوگل پلی ، موقعیت مکانی اشتباهی را برمی گرداند ؟

ادامه مطلب

651

چگونه نرم افزار ضبط صدای اندرویدی بسازیم ؟

ادامه مطلب

551

چرا TextView کلمات را با حروف می شکند ؟

ادامه مطلب

513

چگونه Google API برای سطح API 25 را پیدا کنیم ؟

ادامه مطلب

383

چرا وبسایت تجارت الکترونیک Magento 2 در Webview اندروید کار نمی کند ؟

ادامه مطلب

383

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

ادامه مطلب

347

قسمت شانزدهم - جدول ها در HTML

ادامه مطلب

273

دانلود کتابخانه Retrofit برای اندروید + پروژه

ادامه مطلب

269

دانلود سورس کد بازی اندرویدی Klooni 1010! + فایل APK

ادامه مطلب

261

در تکمیل خودکار اندروید ، دلیل dispatchProvideAutofillStructure() not laid out چیست ؟

ادامه مطلب

247

چرا زمانی که با استفاده از cordova در اندروید 7.0 ، اس ام اس ارسال می کنیم ، با اثتثنای (Exception) امنیتی مواج

ادامه مطلب

245

آیا راهی برای یافتن تغیرات ماه در نمای تقویم اندروید (calendar view) وجود دارد ؟

ادامه مطلب

243

چگونه ارور com.bumptech.glide.Registry$NoModelLoaderAvailableException: Failed to find any ModelLoaders را در اندروید رفع کنیم ؟

ادامه مطلب

209

دانلود سورس کد اپلیکیشن هواشناسی برای اندروید + فایل APK

ادامه مطلب

199

دانلود سورس کد اپلیکیشن اسکنر بارکد برای اندروید + فایل APK

ادامه مطلب

157

دانلود سورس کد تمامی نسخه های تلگرام + فایل های نصبی

ادامه مطلب

155

آموزش استفاده از دیتابیس آماده در پروژه اندرویدی

ادامه مطلب

149

دانلودسورس کد اپلیکیشن موزیک پلیر برای اندروید + فایل APK

ادامه مطلب

143

دانلود تمامی نسخه های gradle برای اندروید

ادامه مطلب

143

دانلود اسکریپت جاوای PS-CH# - ایجاد ورودی متنی پیشرفته

ادامه مطلب

یکشنبه 05 آذر 1396

قسمت هفدهم - لیست ها در HTML

ادامه مطلب

یکشنبه 21 آبان 1396

چگونه می توان با استفاده از CSS ، رنگ placeholder را تغییر داد ؟

ادامه مطلب

یکشنبه 21 آبان 1396

قسمت شانزدهم - جدول ها در HTML

ادامه مطلب

شنبه 20 آبان 1396

دانلود تمامی نسخه های gradle برای اندروید

ادامه مطلب

شنبه 20 آبان 1396

قسمت پانزدهم - عکس ها در HTML

ادامه مطلب

جمعه 19 آبان 1396

قسمت چهاردهم - لینک ها در HTML

ادامه مطلب

یکشنبه 14 آبان 1396

آموزش ساخت و شخصی سازی Navigation Drawer در اندروید استودیو

ادامه مطلب

یکشنبه 14 آبان 1396

قسمت سیزدهم - CSS در HTML

ادامه مطلب

شنبه 13 آبان 1396

قسمت بیست و پنجم (قسمت آخر) - آموزش ساخت بازی حدس

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت بیست و چهارم - آموزش نحوه ی پردازش فایل ها در جاوا

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت بیست و سوم - برنامه تکمیلی جاوا (6)

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت بیست و دوم - معرفی آرایه ها در جاوا

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت بیست و یکم - برنامه تکمیلی جاوا (5)

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت بیستم - معرفی مفهوم وراثت در جاوا

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت نوزدهم - برنامه تکمیلی جاوا (4)

ادامه مطلب

پنجشنبه 11 آبان 1396

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

ادامه مطلب

پنجشنبه 11 آبان 1396

قسمت هفدهم - برنامه تکمیلی جاوا (2-3)

ادامه مطلب

چهارشنبه 10 آبان 1396

چگونه در برنامه نویسی اندروید ، یک ListView با متن و عکس بسازیم ؟

ادامه مطلب

سه شنبه 09 آبان 1396

چگونه در برنامه نویسی اندروید از فونت شخصی خود استفاده کنیم ؟

ادامه مطلب

سه شنبه 09 آبان 1396

دانلود تمامی نسخه های gradle برای اندروید

ادامه مطلب

آموزش ساخت و شخصی سازی Navigation Drawer در اندروید استودیو

ادامه مطلب

چگونه در برنامه نویسی اندروید ، یک ListView با متن و عکس بسازیم ؟

ادامه مطلب

چگونه در برنامه نویسی اندروید از فونت شخصی خود استفاده کنیم ؟

ادامه مطلب

چگونه در برنامه نویسی اندروید می توان آیدی موبایل را بدست آورد ؟

ادامه مطلب

چگونه در برنامه نویسی اندروید برنامه تماس بسازیم ؟

ادامه مطلب

چگونه در برنامه نویسی اندروید یک منو ساده بسازیم ؟

ادامه مطلب

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

ادامه مطلب

چگونه می توان در اندروید RTL یا LTR صفحه را ثابت کرد ؟

ادامه مطلب

چگونه می توان در اندروید حالت افقی (landscape) را غیر فعال کرد ؟

ادامه مطلب

آموزش استفاده از دیتابیس آماده در پروژه اندرویدی

ادامه مطلب

دانلود سورس کد تمامی نسخه های تلگرام + فایل های نصبی

ادامه مطلب

دانلود کتابخانه GSON برای اندروید + پروژه

ادامه مطلب

دانلود سورس کد اپلیکیشن آموزش زبان انگلیسی + فایل APK

ادامه مطلب

چگونه نگذاریم در آغاز اکتیویتی ، EditText فوکوس را بدست آورد ؟

ادامه مطلب

چگونه کیبورد پیش فرض اندروید (Soft Keyboard) را پنهان کرده یا ببندیم ؟

ادامه مطلب

چرا سرعت مجازی ساز اندروید کم است و چگونه می توان سرعت آنرا افزایش داد ؟

ادامه مطلب

تفاوت بین واحد های اندازه گیری "px" , "dp" , "dip" و "sp" چیست ؟

ادامه مطلب

دانلود سورس کد اپلیکیشن آهنگ سازی برای اندروید + فایل APK

ادامه مطلب

دانلود سورس کد اپلیکیشن هواشناسی برای اندروید + فایل APK

ادامه مطلب

× برای نظر گذاشتن یا پاسخ دادن به سوالات باید در سایت عضو باشید !

برای حمایت از ما روی بنر های زیر کلیک کنید .

برای سفارش تبلیغات به ما ایمیل بزنید .

×

ارتباط با ما