用于监控或调试INTENT呼叫的AVD工具/应用程序

时间:2014-09-24 15:23:54

标签: android android-intent

在我开始编写一个我正在寻找现有应用程序之前,我可以推送到AVD图像,该图像将作为尽可能多的常见 mime 类型的虚拟/默认接收器。

这个想法是测试一个成功的共享,而不必将构建推送到物理设备或刀具并将特定的应用程序分叉到模拟器。标准的AVD图像非常适合测试:“没有应用可以执行此操作”路径通过我的代码,但不是积极的分享。

1 个答案:

答案 0 :(得分:0)

作为权宜之计,根据我上面的评论,我根据tutorialspoint.com示例创建了一个虚拟接收器应用程序,它只显示了公用URI。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_custom);

    TextView label = (TextView) findViewById(R.id.show_data);

    Uri url = getIntent().getData();
    label.setText(url.toString());
}

简单地展开清单中的过滤器集,以涵盖大多数情况:

    <activity
        android:name=".CustomActivity"
        android:label="@string/title_activity_custom" >
        <intent-filter>
            <action android:name="com.example.intentdemo.LAUNCH" />
            <action android:name="android.intent.action.SEND" />
            <action android:name="android.intent.action.VIEW" />
            <action android:name="android.intent.action.EDIT" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:scheme="http" />
            <data android:scheme="https" />
            <data android:scheme="ftp" />
            <data android:scheme="fax" />
            <data android:scheme="tel" />
            <data android:scheme="tv" />
            <data android:scheme="telnet" />
            <data android:scheme="file" />
            <data android:scheme="data" />
            <data android:scheme="im" />
            <data android:scheme="irc" />
            <data android:scheme="gtalk" />
            <data android:scheme="info" />
            <data android:scheme="ldap" />
            <data android:scheme="imap" />
            <data android:scheme="mailto" />
            <data android:scheme="pop" />
            <data android:scheme="skype" />
            <data android:scheme="spotify" />
            <data android:scheme="ssh" />
            <data android:scheme="smb" />
            <data android:scheme="nfs" />
            <data android:scheme="steam" />
        </intent-filter>
    </activity>