XML动态加载如何在直播视频网站源码中实现

以下是直播视频网站源码实现XML动态加载的相关代码

复制代码
```cpp
public static View loadUrlXml(Context context,String url){
View parent = null;
//判断是否主线程
if (Looper.getMainLooper().getThread().getId() == Thread.currentThread().getId())
{
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
try
{
byte[] result = null;
HttpURLConnection urlcon = (HttpURLConnection) new URL(url).openConnection();
urlcon.connect();
InputStream in = urlcon.getInputStream();
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte[] buf = new byte[1024];
int i;
while ((i = in.read(buf)) != -1)
{
bos.write(buf, 0, i);
}
in.close();
result = bos.toByteArray();
bos.close();
urlcon.disconnect();
Class<?> xmlBlock= Class.forName("android.content.res.XmlBlock");
Constructor cobj= xmlBlock.getConstructor(byte[].class);
cobj.setAccessible(true);
Object obj= cobj.newInstance(result);
Method m= xmlBlock.getDeclaredMethod("newParser");
m.setAccessible(true);
XmlResourceParser parser= (XmlResourceParser) m.invoke(obj);
parent = LayoutInflater.from(context).inflate(parser, null);
}
catch (Exception e)
{
e.printStackTrace();
}
return parent;
}
```
复制代码

 


以上就是以下是直播视频网站源码实现XML动态加载的相关代码, 更多内容欢迎关注之后的文章

posted @   云豹科技-苏凌霄  阅读(57)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示