如何通过代码将共享菜单项添加到库

时间:2009-08-01 04:13:26

标签: android intentfilter

我知道如何通过Menuifest.xml实现此问题,另请参阅:

Google Android Developer Group related issue

但我的问题是如何通过java代码而不是Menuifest.xml添加Gallery的共享菜单。

我的代码如下:

public class MyActivity extends Activity {

private static final String TAG = "MyActivity";

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    IntentFilter intentFilter = new IntentFilter();
    intentFilter.addAction(Intent.ACTION_SEND);
    intentFilter.addCategory(Intent.CATEGORY_DEFAULT);
    try {
        intentFilter.addDataType("image/*");
    } catch (MalformedMimeTypeException e) {
        Log.e(TAG, e.toString());
    }

    Intent x = registerReceiver(new BroadcastReceiver() {
        public void onReceive(Context context, Intent intent) { 
            Log.d(TAG, "Received intent "+intent);
            intent.setComponent(new ComponentName(context, Uploader.class));
            startActivity(intent);
        }
        }, intentFilter);

    if (x==null)
        Log.i(TAG, "failed to regist a receiver");
    else
        Log.i(TAG, "registed a receiver successfully");
    // ...

但是registerReceiver总是返回null,并且没有菜单添加到Gallery的Share。

谢谢。

Anthony Xu

1 个答案:

答案 0 :(得分:1)

我在谷歌android开发者小组中询问了这个任务,并且安卓团队成员给了我回复:thread in android group

希望对你有所帮助。