2016-07-08 1 views
1

必要に応じてサービスを作成している間に、surfaceView & surfaceHolderがインテントを介してサービスに渡されています。同じことをサービス側でどのように抽出することができますか。 これを試していますが、成功することはできませんでした。 活動:インテントを通過したときのsurfaceView、surfaceHolderの抽出

intent2.putExtra("surfaceView",mSurfaceView.toString()); 
intent2.putExtra("surfaceHolder",mSurfaceHolder.toString()); 

サービス:

Object view_obj = intent.getExtras().get("surfaceView"); 
mSurfaceView = (SurfaceView) view_obj; 
Object holder_obj=intent.getExtras().get("surfaceHolder");; 
mSurfaceHolder = (SurfaceHolder) holder_obj; 

答えて

1

あなたは余分なIntent経由で任意のViewを渡すことはできません。 SurfaceHolderの実装にParcelableを実装することはできますが、のコピーのいずれかのサービスにSurfaceViewが割り当てられていないことがあります。

+0

私のアプリにフォーカスがあるときはいつでも、バックグラウンドのビデオ録画を実現しようとしています。これを行うために、私はすべてのアクティビティで作成したサービスにsurfaceViewとsurfaceHolderを渡そうとしています。だから、アプリケーションがバックグラウンドになってその状態を保存している間に、surfaceHolderを単に着陸アクティビティにして、アプリケーションがシリアライズ可能かパーセル化できるかによってアプリケーションがフォーカスに戻ったときに復元するのは、その行為ですか? – lancer025

+0

@ lancer025:あなたがしようとしていることを達成する方法がわかりません。申し訳ありません。とにかく、ありがとう、 – CommonsWare

+0

あなたのアイデアは私にそうするための道を示しました。 @CommonsWare – lancer025

関連する問題