0

我正在开发一个用户需要去某个地方的应用程序,所以,我的客户想要使用 WAZE 应用程序,但我无法让它在 Android 中运行。

根据 WAZE 我必须这样做:

try
{
    String url = "waze://?q=Hawaii";
    Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( url ) );
    startActivity( intent );
}
catch ( ActivityNotFoundException ex  )
{
  Intent intent = new Intent( Intent.ACTION_VIEW, Uri.parse( "market://details?id=com.waze" ) );
 startActivity(intent);
}

因此,我将其转换为 Titanium 代码,如下所示:

            try{
               var intent = Ti.Android.createIntent({
                   action: Ti.Android.ACTION_VIEW,
                   data: waze
               });                           
               Titanium.Android.startService(intent);                     
             }               
             catch(e){
               Titanium.Platform.openURL("market://details?id=com.waze");
             }

(“位智”是我有网址的字符串变量)

但总是去“Catch”广告带我去商店。(Waze 已经安装在我的设备上)

这是您可以在 waze 主页中找到信息的链接。 https://www.waze.com/es-419/about/dev

提前致谢。

4

1 回答 1

1

我认为您需要创建一个新活动,而不是启动一个服务。我相信您在 try 块中的代码应该是:

try{
           var intent = Ti.Android.createIntent({
               action: Ti.Android.ACTION_VIEW,
               data: waze
           });                           
           Ti.Android.currentActivity.startActivity(intent);                   
         }               
         catch(e){
           Titanium.Platform.openURL("market://details?id=com.waze");
         }
于 2017-06-16T15:24:54.243 回答