Controle los enlaces caducados mientras analiza JSON desde la aplicación de Android

Estoy diseñando una aplicación en Kotlin que analiza json-array. Completé la aplicación con éxito, pero me quedé atrapado en un error menor (en mi caso principal). He analizado correctamente la matriz y mostrado la matriz requerida de objects en CardView y también abrí el enlace en el browser cuando se hace clic en el elemento de la tarjeta. .

Problema

JSON contiene ciertos enlaces caducados o que ya no se usan. ¿Cómo manejo esos enlaces (caducados) desde dentro de la aplicación cuando el usuario hace clic en esa tarjeta en particular (con cualquier post florido o `ImageView)? Me siento cómodo con los conceptos básicos de Android y sigo aprendiendo a diseñar Kotlin en aplicaciones de Android y busqué en Internet a mi leal saber y entender, pero todos mis esfuerzos fueron en vano.

Cualquier ayuda es cálida y benévola bienvenida ….

A continuación está mi fragment de código ( FeedViewHolder.kt ):

 class FeedViewHolder(itemView: View):RecyclerView.ViewHolder(itemView), View.OnClickListener,View.OnLongClickListener { var txtTitle: TextView var txtPubdate: TextView var txtContent: TextView private var itemClickListener: ItemClickListener? = null init { txtTitle = itemView.findViewById(R.id.txtTitle) as TextView txtPubdate = itemView.findViewById(R.id.txtPubdate) as TextView txtContent = itemView.findViewById(R.id.txtContent) as TextView itemView.setOnClickListener(this) itemView.setOnLongClickListener(this) } fun setItemClickListener(itemClickListener: ItemClickListener) { this.itemClickListener = itemClickListener } override fun onClick(v: View?) { itemClickListener!!.onClick(v, adapterPosition, false) } override fun onLongClick(v: View?): Boolean { itemClickListener!!.onClick(v, adapterPosition, true) return true } } 

Clase de adaptador

 class FeedAdapter(private val rssObject: RSSObject, private val mContext:Context): RecyclerView.Adapter<FeedViewHolder>() { private val inflater:LayoutInflater init { inflater = LayoutInflater.from(mContext) } override fun getItemCount(): Int { return rssObject.items.size } override fun onBindViewHolder(holder: FeedViewHolder, position: Int) { holder.txtTitle.text = rssObject.items[position].title holder.txtContent.text = rssObject.items[position].Content holder.txtPubdate.text = rssObject.items[position].pubDate holder.setItemClickListener(ItemClickListener { view, position, isLongClick -> if(!isLongClick){ val browserIntent = Intent(Intent.ACTION_VIEW, Uri.parse(rssObject.items[position].link)) browserIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK) mContext.startActivity(browserIntent) } }) } override fun onCreateViewHolder(parent: ViewGroup?, viewType: Int): FeedViewHolder { val itemView = inflater.inflate(R.layout.row,parent,false) return FeedViewHolder(itemView) }