# How to attach two links in Gazebo with using roslaunch

I have already read this answer How can two links of different robots attach to each other on contact during simulation?. However, I don't understand clearly.

I am a beginner in ROS and Gazebo and I have finished tutorial Gazebo. Also, I am trying to realize the environment of harvesting something with using MoveIt! and Gazebo. I finished to realize both of robots and tree which has something like fruits.

1) How can I realize that the robot's hand can attach fruits? I think it can be realize by using AttachStaticModel() and DetachStaticModel(). I can't imagine the path to using this function. Perhaps, looking at the argument of AttachStaticModel(), I can use the model as a pointer variable and declare the address of model and offset from the hand as the input of AttachStaticModel(). However, this is that I need to receive the JointState of the robot because the offset need to know the position of hand and the robot is spawned to Gazebo by roslaunch, right?
2)When I did this in the plugin Tutorial, I used gzserver to calculate the sdf of the plugin, and then launched gzclient as a GUI. Can this method be used in conjunction with roslaunch? If so, I'd like to know how to use it.