Handing out customs and/or immigration forms on board is probably the best solution. If handed out prior to boarding there will always be some people who leave them behind in the departure lounge or even the duty free shops!
Perhaps more logical would be to hand out the applicable destination forms soon after take-off. Then people can complete them at their leisure!
Certainly not as happened to us on Air Canada where after a 13 hour flight YYZ-NRT the cabin crew handed out the Japanese Immigration forms after the aircraft had commenced the (very choppy) initial descent into Narita.