El sospechoso, identificado como Yujiro Iimori, de 33 años, entró en varias tiendas después del ataque y quedó grabado por las cámaras de vigilancia, la última vez la noche del domingo, mientras se dirigía a una zona montañosa.
Según la agencia Kyodo, el sospechoso asestó al menos siete puñaladas a un agente cuyos colegas habían salido del puesto policial para atender una llamada de emergencia, y huyó de la escena con la pistola de la víctima.
El policía herido, de 26 años, permanece en coma.
Además: Presidente argentino viajará a Japón para asistir a la cumbre del G20
En el momento del arresto, había cuatro balas en lugar de cinco en el cargador de la pistola que el sospechoso llevaba encima, sin que se sepa dónde habría disparado la quinta.
El diario The Mainichi, que cita a la policía de la prefectura de Osaka, indica que el detenido alegó un trastorno mental.
"No fui yo quien lo hizo. Fue por que mi enfermedad empeoró", habría dicho Iimori durante un interrogatorio.
Según la información preliminar, el hombre posee un certificado de discapacidad mental.
El incidente ocurrió mientras en Osaka se siguen reforzando las medidas de seguridad de cara a la cumbre del Grupo de los 20 países industrializados y emergentes (G20), prevista para el 28 y el 29 de junio.