如何跳轉到其他APP(android)
阿新 • • 發佈:2018-12-03
有很多小夥伴會遇上這樣的需求,從自己的app頁面跳轉到其他APP介面,一般情況下都是在自己的主包中跳轉到公司其他APP,或者是合作方的APP,如果手機中沒有這款APP會下載這款APP 。
今天,博主就教你們如何跳轉到其他app。不多說,直接上程式碼。
public class TiaoZhuan extends AppCompatActivity implements View.OnClickListener { //首先我們必須要知道要跳轉的app的包名,每一個APP的包名都是獨立的,縱使是馬甲包和主包的包名也是不一樣的。 //我們將要跳轉的包名填在以下位置。 public static final String APP_PACKAGE_NAME = "com.daiba.wsjr1"; private Button bt; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_tiao_zhuan); //在佈局中寫一個button按鈕,在這裡初始化。 bt = (Button) findViewById(R.id.bt_call); //為按鈕設定監聽 bt.setOnClickListener(this); } @Override public void onClick(View v) { //監聽被觸發是啟動跳轉的方法。 launchapp(this); } //跳轉頁面的方法 private void launchapp(Context context) { //判斷當前手機是否有要跳入的app if (isAppInstalled(context,APP_PACKAGE_NAME)){ //如果有根據包名跳轉 context.startActivity(context.getPackageManager().getLaunchIntentForPackage(APP_PACKAGE_NAME)); }else{ //如果沒有,走進入系統商店找到這款APP,提示你去下載這款APP的程式 goToMarket(context, APP_PACKAGE_NAME); } } //這裡是進入應用商店,下載指定APP的方法。 private void goToMarket(Context context, String packageName) { Uri uri = Uri.parse("market://details?id=" + packageName); Intent goToMarket = new Intent(Intent.ACTION_VIEW, uri); try { context.startActivity(goToMarket); } catch (Exception e) { } } //這裡是判斷APP中是否有相應APP的方法 private boolean isAppInstalled(Context context, String packageName) { try { context.getPackageManager().getPackageInfo(packageName,0); return true; } catch (Exception e) { e.printStackTrace(); return false; } } } 轉載地址:https://www.jianshu.com/p/31fecdbc7a5d