Other solution for the given problem

cant we just convert the given binary tree in inorder array and then convert it doubly linked list?

Yes that can be done but that will not be an optimal approach. You are taking extra space in that case. Optimal approach is just by modifying the next pointers of each node.