3

私は自分の方法からアクティビティを開始することができましたが、onReceive()実際に行う必要がありますstartActivityForResult();

これを行う方法はありますか?

ちなみに、アプリが写真を撮る意図を開始したときに表示されるように、アプリを「カメラ」アプリにするにはどうすればよいですか?

4

2 に答える 2

4

ブロードキャスト レシーバーについて知っておくべき重要なことは、5 秒ほどでアプリがクラッシュするため、実行時間の長いプロセスをそこに追加しないことです。

あなたの場合に行う最善のことは、ブロードキャストレシーバーから他のアクティビティを意図し、そのアクティビティの使用からstartActivityForResult()、写真を取得してそこから続行することです...

于 2012-12-04T19:41:55.200 に答える
2

startActivityForResultクラスでActivity定義されており、アクティビティのインスタンスを必要とするため、からのみ呼び出すことができます。Activity

一般的なオブジェクトにしかアクセスできず、クラスでメソッドが定義されていないstartAcivity()ため、ブロードキャストレシーバーからのみ呼び出すことができます..onRecieve()contextstartActivityForResult

于 2012-12-04T19:33:23.053 に答える