我正在为android和ios开发一个带有xamarin表单的应用程序。该应用程序的一个重要内容是对电子邮件中的某些链接作出反应。我能够对这些链接做出反应并在应用程序中创建逻辑,但我需要将应用程序放在前面。
有没有办法做到这一点?
提前谢谢你。 抱歉我的英文。
最好的问候。
答案 0 :(得分:0)
您想要查找custom URL scheme和deep linking。
使用自定义网址方案,您可以注册yourapp://value1/value2
。然后,只要有人打开电子邮件中的链接或以yourapp://
开头的任何地方,您的应用就会启动。
通过深层链接,您甚至可以回复“普通”网址。就像当您点击Facebook个人资料链接并且您的应用程序被打开时,这就是深层链接。
答案 1 :(得分:0)
在Xamarin.Forms for Android
中在您通过URL方案在MainActivity
或SplashActivity
中获得请求后
protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
var data = Intent?.Data?.EncodedAuthority;
if (data != null)
{
Finish();
ActivityManager am = (ActivityManager)GetSystemService(Context.ActivityService);
IEnumerable<RunningTaskInfo> tasklist = am.GetRunningTasks(100);
am.MoveTaskToFront(tasklist.First().Id, 0);
}
else
{
//....
}
}
您需要添加
"android.permission.REORDER_TASKS"
"android.permission.GET_TASKS"
到AndroidManifest.xml
http://summarynote.blogspot.com/2013/10/android-how-to-bring-app-in-background.html