相关疑难解决方法(0)

使用非活动的startActivityForResult

我有MainActivity这是一个Activity和其他类(这是一个简单的java类),我们称之为"SimpleClass".现在我想从该类运行命令startActivityForResult.

现在我虽然我可以传递那个类(SimpleClass),只有MainActivity的上下文,问题是,你不能运行context.startActivityForResult(...);

所以使SimpleClass使用'startActivityForResult的唯一方法; 是将MainActivity的引用作为Activity变量传递给SimpleClass,如下所示:

在MainActivity类中,我以这种方式创建SimpleClass的实例:

SimpleClass simpleClass=new SimpleClass(MainActivity.this);
Run Code Online (Sandbox Code Playgroud)

现在这就是SimpleClass的样子:

public Class SimpleClass {

Activity myMainActivity;

   public SimpleClass(Activity mainActivity) {
       super();
       this.myMainActivity=mainActivity;    
   }
....


    public void someMethod(...) {
        myMainActivity.startActivityForResult(...);
    }

}
Run Code Online (Sandbox Code Playgroud)

现在它的工作,但不是一个正确的方式这样做?我恐怕将来可能会有一些内存泄漏.

谢谢.射线.

java android

76
推荐指数
2
解决办法
6万
查看次数

来自服务的StartActivityForResult

我喜欢在这个例子中启用蓝牙.

但是我的类不是Activity而是Service,因此我无法调用startActivityForResult.我怎么解决这个问题?.我知道还有其他一些问题已得到解答

使用非活动的startActivityForResult

但这并没有解决我的问题,因为我的应用程序包含服务而没有别的.

java android bluetooth

22
推荐指数
2
解决办法
3万
查看次数

从IME开始生成活动结果

我正在开发一个应用程序,它应该将一些文本返回给启动意图的应用程序.

但启动意图的应用程序是IME /软键盘.因此,StartActivityForResult不可用,因为IME是一项服务.

我怎样才能做到这一点?

到目前为止我得到了什么:

键盘:

final Intent intent = new Intent("com.example.helloworld.GETTEXT");
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addFlags(Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
intent.putExtra("keyboard", true);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)

其他应用:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Bundle extras = getIntent().getExtras();
    if (extras == null){                
        return;
    } else {
        finish();
    }
}

@Override
public void finish() {
    Intent data = new Intent();
    data.putExtra("test", "PASSED");
    setResult(RESULT_OK, data);
    super.finish();
}
Run Code Online (Sandbox Code Playgroud)

android android-intent startactivityforresult

5
推荐指数
1
解决办法
554
查看次数

Android和RESTful服务

在谷歌I/O期间的Virgil Dobjanschi谈话中,他提到Services用于进行提取,然后使用回调来通知Activity何时完成.他从未详细说明如何实现此回调,我似乎无法在任何地方找到任何有用的信息.

我想他说你根本不需要实现绑定?

有线索吗?

android

1
推荐指数
1
解决办法
2216
查看次数