如何从过滤器获取意图数据? (Android版IntentFilter Mono)

时间:2013-01-03 18:06:27

标签: android mono xamarin.android

我为url创建了一个intent过滤器作为一些网址,但我不知道如何在查看午餐时获取数据,我搜索论坛,xamarin网站和google andorid dev。在它使用的android示例代码中:

Get the intent that started this activity
Intent intent = getIntent();
Uri data = intent.getData();

但在单声道的Android中我找不到这样的方法我测试使用Intent.HasExtra(Intent.ExtraText).ToString()但总是返回“False”

[Activity(Label = "View App")]
[IntentFilter(new[] { Intent.ActionView }, 
Categories = new[] { Intent.CategoryDefault, Intent.CategoryBrowsable }, 
DataHost = "search", DataScheme = "market", Priority = 100)]
public class ViewApp : Activity
{
    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
        SetContentView(Resource.Layout.ViewApp);
        TextView mainText = FindViewById<TextView>(Resource.Id.mainText);

        mainText.Text = Intent.HasExtra(Intent.ExtraText).ToString() + "\r\n";
        mainText.Text += Intent.HasExtra(Intent.ExtraStream).ToString() + "\r\n";
    }
}

android午餐我的活动,但是我无法找到如何从android过滤器中获取数据,就像Android中的原始Uri数据一样有帮助吗?

1 个答案:

答案 0 :(得分:3)

Java中的Setters / Getters(setFoo() / getFoo())在Mono for Android中作为属性公开,以便坚持使用C#样式。

因此,Java中的getIntent().getData()在Mono for Android中公开为Intent . Data