Let $A\subseteq \mathbb{S}^{n-1}$. Observe that $B^n\setminus A$ is convex and hence an absolute retract. Present a direct proof of this.
I have the following problem. I'm not really sure how to approach this in a "direct" way. Honestly I'm not completely sure what direct even means here, I guess it means I can't use Dugundji extension theorem. Using the definition, I don't think that leads me to anywhere. Another idea was to prove it's a retract of an absolute retract, but I clearly can't do this with something known to be an absolute retract like $\mathbb{R}^n$, I only obtain that $B^n$ is an absolute retract this way.
We can easily show that $B^n \setminus A$ is a retract of an absolute retract provided $A$ is closed. Choose a map $f : S^{n-1} \to [1,2]$ such that $f^{-1}(1) = A$. Define $$D = \{0\} \cup \{ x \in \mathbb R^n \setminus \{0\} \mid \lVert x \rVert < f(x/\lVert x \rVert)\} .$$ This is an open subset of $\mathbb R^n$ which is the union of all half-open line segments $S_f(v) = \{ tv \mid t \in [0, f(v))\}$ with $v \in S^{n-1}$. Clearly $D \cap B^n = B^n \setminus A$. The radial retraction $r : \mathbb R^n \to B^n$ given by $r(x) = x /\lVert x \rVert$ for $\lVert x \rVert \ge 1$ and $r(x) = x$ for $\lVert x \rVert \le 1$ has the property $r(D) = B^n \setminus A$, thus $B^n \setminus A$ is a retract of $D$.
We shall show that $D \approx U(0;2) = \{ x \in \mathbb R^n \mid \lVert x \rVert < 2\}$. Since the open ball $U(0;2)$ is homeomorphic to $\mathbb R^n$, it is an absolute retact and so is $D$. Define
$$h : U(0;2) \to D, h(x) = \begin{cases} 0 & x = 0 \\ \frac 12 f(x/\lVert x \rVert)x & x \ne 0 \end{cases}.$$ It is an easy exercise to show that $h$ is a homeomorphism.
If you want, you can also directly consider the map $\rho = r \circ h$ without showing that $h$ is a homeomorphism.