代码之家  ›  专栏  ›  技术社区  ›  Juan Carlos Salinas Ojeda

钛安卓-开放式应用程序包名

  •  0
  • Juan Carlos Salinas Ojeda  · 技术社区  · 6 年前

    在我的一个应用程序中,我需要打开一个应用程序,如果应用程序不存在,打开谷歌游戏商店下载应用程序。 好吧,这就是问题所在,应用程序没有URL方案,因此,打开该应用程序的唯一方法是使用包名称。

    现在,本土的方式是

    Intent launchIntent = getPackageManager().getLaunchIntentForPackage("videoconference.geainternacional.com.telemedicina");
    startActivity(launchIntent);
    

    我不能把本地代码翻译成Appcelerator代码,有人能帮我吗我正在尝试,但没有成功。

    try{
       var intent = Ti.Android.createIntent({
           action: Ti.Android.ACTION_VIEW,
           data: "videoconference.geainternacional.com.telemedicina"
       });                           
       Ti.Android.currentActivity.startActivity(intent);                   
    }               
    catch(e){
       Titanium.Platform.openURL(params.URLedoctorANDROID);
    }                 
    

    提前谢谢。
    Axway Appcelerator工作室,内部版本:5.0.0.201712081732
    SDK 7.1.0通用版。

    1 回复  |  直到 6 年前
        1
  •  1
  •   Juan Carlos Salinas Ojeda    6 年前

    我在回答我自己的问题,因为在蒂斯拉克,约书亚很快给了我代码,让它发挥作用。

    答案是:

           try{
               var intent = Ti.Android.createIntent({
                   action: Ti.Android.ACTION_MAIN,
                   className: "videoconference.geainternacional.com.telemedicina.activities.PresentacionActivity",
                   packageName: "videoconference.geainternacional.com.telemedicina",
               });
               intent.addCategory(Ti.Android.CATEGORY_LAUNCHER);
               intent.setFlags(Ti.Android.FLAG_ACTIVITY_NEW_TASK);
               Ti.Android.currentActivity.startActivity(intent);    
           }    
           catch(e){
               Titanium.Platform.openURL(params.URLedoctorANDROID);              
           }             
    

    我希望这能对其他人有所帮助。