我想通过URL方案分享一个链接,比如电报.
我创造了这个:
tg:// msg?text = www.example.com?t=12
链接,打开电报,但没有其他事情发生.
我在Viber上使用了相同的代码,它的工作原理如下:
viber:// forward?text = www.example.com?t=12
它在viber中用这个文本打开一条新消息:
www.example.com
换句话说,它削减了我的网址.
任何的想法?
我正在开发一个Cocoa应用程序,它使用自定义方案的URL启动/激活,该方案在Info.plist文件中注册,如下所示:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>Open myscheme:// URLs</string>
<key>CFBundleURLSchemes</key>
<array>
<string>myscheme</string>
</array>
</dict>
</array>
Run Code Online (Sandbox Code Playgroud)
我的问题是,一旦应用程序启动或激活,我该如何判断启动应用程序的URL是什么?在iOS上,使用-application:openURL:sourceApplication:annotation:UIApplicationDelegate上的方法很容易,因为它传递了NSURL实例.
我希望能够通过myscheme:// do/something/awesome等URL将数据传入我的应用程序
因此,如果您想要链接到电话号码,您可以执行类似的操作
<a href="tel:18005555555">Click to Call</a>
Run Code Online (Sandbox Code Playgroud)
这在移动网站上常用,并且在桌面网站上也越来越受欢迎(主要得益于我认为的Skype).但是有些计算机/设备无法支持它.有没有办法告诉用户是否能够处理tel:links?
解决方案可以是服务器端或客户端,但我认为它需要是客户端.
我已经研究了大多数自定义URL方案问答,但我没有找到可能的答案.
我想通过点击浏览器中的某个URL(移动设备上的任何一个)来启动我的应用程序,问题是我的给定URL无法修改,因为它也提供IOS应用程序,它看起来像这样:
"myapp:// http://www.name.com/path/path2/ "
我不知道如何处理"myapp:// http://"并构建一个正确的意图过滤器,我尝试的一切都行不通.任何帮助将不胜感激,如果我错过了相关的答案,请不要道歉.
这是我到目前为止所尝试的:
<activity
android:name="com.myapp.test.SplashScreen"
android:exported="true"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<!-- Test for URL scheme -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="www.name.com"
android:path="/path/path2/"
android:scheme="http" />
<data
android:host="www.name.com"
android:path="/path/path2/"
android:scheme="https" />
<data android:scheme="myapp" />
</intent-filter>
<!-- End Test for URL scheme -->
</activity>
Run Code Online (Sandbox Code Playgroud)
注意:我尝试使用/不使用导出:true
我正在开发需要自定义URL方案的应用程序,看起来像"appname://"
我搜索了很多东西,也找到了很多相关的问题,但我还是遇到了麻烦.
我如何从浏览器测试此URL方案?目前,每当我输入浏览器的地址栏"appname://"时,它就会直接进入谷歌搜索.
我在AndroidManifest.xml中有这个:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="appname"
android:host="appnamehost"/>
</intent-filter>
Run Code Online (Sandbox Code Playgroud) 以下URL方案适用于以前的版本,但在iOS 9上不再起作用:
comgooglemaps://?q=Google+Japan,+Minato,+Tokyo,+Japan¢er=35.660888,139.73073&zoom=15&views=transit
Run Code Online (Sandbox Code Playgroud)
在iOS 9上有什么变化阻止应用程序使用URL方案打开其他应用程序吗?
我有一个生成动态日历(icalendar)的网站.让我们假设这个日历可以通过HTTP访问这样的URL
http://www.example.com/cal?q=<user query>
Run Code Online (Sandbox Code Playgroud)
到目前为止一切正常.
现在我想让用户使用他们喜欢的日历客户端订阅这个日历.对于ios,如果我使用webcal://URL方案发布日历URL,我可以实现此目的.
谢谢
我需要在遵循短信或电子邮件链接时启动应用程序.我已经阅读过关于URL方案的内容,并且已经测试了它并且它可以工作,但问题是如果设备上没有安装应用程序,则不会发生任何事情.如果没有安装应用程序我需要一种打开网址的方法,但我找不到这样做的方法......
任何的想法?
谢谢
我在iOS 9中使用我们的登录系统有一个奇怪的重定向应用程序问题.
现在,我已经允许了abitrary有效负载,并且我的url方案在我的plist文件中正确设置.
这是怎么回事:
现在,如果用户关闭SFSafariViewController,返回我们的应用程序登录页面并尝试再次登录,每次从那里重定向到应用程序,每次调用openUrl AppDelegate方法.
请注意,在iOS9上,我们之前已将应用程序外部重定向到Safari以完成登录过程(而不是使用SFSafariViewController)并遇到相同的问题,而"在应用程序中打开"弹出窗口重定向到应用程序只会显示在第二次登录尝试和向上.
这一切都只发生在iOS 9上.在iOS 8上,此问题不会出现,我们的用户在登录后始终会重定向到该应用.
在OAuth登录后发送到应用程序的重定向URL在首次登录尝试时都是相同的.
有人在iOS 9上遇到过这样的问题吗?
我的应用程序使用URL方案将用户直接带到Settings/General/About部分,以下URL在10.3.x中正常工作.
"应用程序-偏好设置:根=通用及路径=关于"
但是,此URL方案不再适用于iOS 11 GM构建.它只会启动"设置"应用,但不会对用户进行任何进一步的操作.有人知道iOS 11正式发布中是否有这种情况?提前致谢.
url-scheme ×10
ios ×5
android ×3
ios9 ×2
objective-c ×2
url ×2
calendar ×1
cocoa ×1
deep-linking ×1
google-maps ×1
html ×1
icalendar ×1
intentfilter ×1
ios11 ×1
macos ×1
openurl ×1
swift ×1
uri ×1