他のアプリの上に線を引くことはできますか?
たとえば、地図を表示するアプリがあり、そのアプリの上に線を引きたいとします。たとえば、A から B へのルートです。
許可を追加しました
android.permission.SYSTEM_ALERT_WINDOW
そして、他のアプリの上にビューを表示するコードを追加しました。
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final WindowManager.LayoutParams param=new WindowManager.LayoutParams();
param.flags=WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
final View view=findViewById(R.id.my_floating_view);
final ViewGroup parent=(ViewGroup)view.getParent();
if(parent!=null)
parent.removeView(view);
param.format=PixelFormat.RGBA_8888;
param.type=WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
param.gravity=Gravity.CENTER;
param.width=parent!=null?LayoutParams.WRAP_CONTENT:view.getLayoutParams().width;
param.height=parent!=null?LayoutParams.WRAP_CONTENT:view.getLayoutParams().height;
final WindowManager wmgr=(WindowManager)getApplicationContext().getSystemService(Context.WINDOW_SERVICE);
wmgr.addView(view,param);
}
私の問題は、アプリを開くとアクティビティ全体が表示され、アクティビティを非表示にして、別のアプリケーションの上にあるビューのみを表示することです。つまり、地図アプリケーションの私の例では、地図を表示し、その上に描画した線を表示したいと考えています。アプリケーションの名前などを見たくありません。
どうやってやるの?