How do you find the values that $x$ can take by squaring? $$|x+4| \cdot |x-4| = x+4$$
How do you find the values that $x$ can take by squaring? 
How I've tried
$$|x+4|^2 \cdot |x-4|^2 = (x+4)^2$$
and
$$|x^2+16| \cdot |x^2+16| = x^2+16$$
I think I went wrong. 

You can consider two cases:
If $\ x+4=0$, then $x=-4$. So
$$\vert{x+4}\vert(x-4)=0=x+4.$$
IF $\ x+4\neq 0$, then you can write
$$x-4=\frac{x+4}{x+4}=\mathrm{sign}(x+4)=\begin{cases} 1 &x+4\geq0\\ -1&x+4<0\end{cases}=\begin{cases} 1 &x\geq-4\\ -1&x<-4\end{cases}$$

from that the solutins are $x=3$ is $\ x=5$.

Or you can take squares like you said:
$$(x+4)^{2}(x-4)^{2}=(x+4)^{2}$$
and saying again if $x=-4$ both sides are equal to $0$. Otherwise you can cancel both factors $(x+4)^{2}$ (remember only when $x\neq -4$) to get:
$$ (x+4)^{2}(x-4)^{2}=(x+4)^{2} \overset{\displaystyle{x\neq-4}}{\Longrightarrow} (x-4)^2=1 \Longrightarrow x-4=\pm 1$$
so, $x-4=-1$ or $x-4=1$, so the 3 solutions are:
$$x_1=-4, x_2=3, x_3=5$$
