ios - 从我的应用程序获取坐标到 Uber(ios、swift4)

标签 ios swift coordinates uber-api

我只是想知道我是否可以像 Android 一样向 Uber 应用程序发送坐标。

对于 Android,我确实喜欢如下:

requestButton.setOnClickListener(new Button.OnClickListener() {
    public void onClick(View v) {

        Intent i;
        PackageManager manager = getPackageManager();
        try {
            i = manager.getLaunchIntentForPackage("com.ubercab");
            if (i == null)
                throw new PackageManager.NameNotFoundException();
            i = new Intent(Intent.ACTION_VIEW, Uri.parse("geo:"+ job.getCompany().getLat()+
                    ","+ job.getCompany().getLon()+
                    "?q="+ job.getCompany().getLat()+","+ job.getCompany().getLon()+
                    "("+ job.getCompany().getName()+")"));
            i.setPackage("com.ubercab");
            startActivity(i);
        } catch (PackageManager.NameNotFoundException e) {

            coordinatorLayout = (CoordinatorLayout) findViewById(R.id.cord);

            Snackbar snackbar = Snackbar
                    .make(coordinatorLayout, "Please install Uber App", Snackbar.LENGTH_LONG)
                    .setAction("Install", new View.OnClickListener() {
                        @Override
                        public void onClick(View view) {
                            Intent intent = new Intent(Intent.ACTION_VIEW);
                            intent.setData(Uri.parse("market://details?id=com.ubercab"));
                             startActivity(intent);
                        }
                    });

            snackbar.show();
        }

对于 Swift 4,我确实喜欢这样。

if (UIApplication.shared.canOpenURL(URL(string:"uber://")!)) {
    alert.addAction(UIAlertAction(title: "Uber Ride", style: .default, handler: { (alert) in
        UIApplication.shared.open(URL(string: "uber://?ll=\(location.coordinate.latitude),\(location.coordinate.longitude)&navigate=no")!, options:[:], completionHandler: nil)
    }))
}

是的,它确实从我的应用程序转到 Uber 应用程序,但它并不像 Android 那样具有协调性。我的问题是,是否有可能像 Android 那样通过坐标来意图其他应用程序?

最佳答案

Uber iOS app has a URL scheme您可以用它来实现您的要求。他们还提供 Uber Rides iOS SDK允许您通过提供坐标等轻松生成深层链接。

关于ios - 从我的应用程序获取坐标到 Uber(ios、swift4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49185685/

相关文章:

swift - 旋转时的 Xcode Storyboard View

android - android中的 Canvas 在不同设备上是成比例的

java - 在y轴java上反射(reflect)方法中的坐标

ios - UITableView tableHeaderView 用户交互不起作用

ios - 为什么即使没有 QuartzCore 也可以使用 Core Animation?

Swift 对默认初始化器的访问控制

ios - 添加计时器以更新 UIView 背景颜色

C++ OpenGL 错误的 Collada 纹理坐标

iphone - 每个 tableview 组中的自定义单元格数量

ios - 每天更新(我的代码有效吗?)