Android系統默認會將用戶點擊的“桌面圖標”的位置發送給啓動頁MainActivity,以此來實現某些系統的過渡動畫,所以在MainActivity中調用下面的代碼是可以得到當前App的icon座標的。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third);
TextView textView = findViewById(R.id.location);
Rect rect = getIntent().getSourceBounds();
if (null != rect) {
textView.setText(rect.toShortString());
}
}
}
這就是icon在桌面的座標了,代表左上角和右下角位置,但是需要注意的地方是,如果不是點擊icon啓動的App,而是通過adb啓動的,那是拿不到這個信息的,rect會返回null,所以這個需要做好判斷。