导航:首页 > 操作系统 > android获取metadata

android获取metadata

发布时间:2022-09-13 23:44:26

① 怎么读取android studio中的渠道

可以参考如下内容:
/**
* 获取渠道名
* @param ctx 此处习惯性的设置为activity,实际上context就可以
* @return 如果没有获取成功,那么返回值为空
*/
public static String getChannelName(Activity ctx) {
if (ctx == null) {
return null;
}
String channelName = null;
try {
PackageManager packageManager = ctx.getPackageManager();
if (packageManager != null) {
//注意此处为ApplicationInfo 而不是 ActivityInfo,因为友盟设置的meta-data是在application标签中,而不是某activity标签中,所以用ApplicationInfo
ApplicationInfo applicationInfo = packageManager.getApplicationInfo(ctx.getPackageName(), PackageManager.GET_META_DATA);
if (applicationInfo != null) {
if (applicationInfo.metaData != null) {
channelName = applicationInfo.metaData.getString("");
}
}

}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return channelName;
}

提取为通用方法:
/**
* 获取application中指定的meta-data
* @return 如果没有获取成功(没有对应值,或者异常),则返回值为空
*/
public static String getAppMetaData(Context ctx, String key) {
if (ctx == null || TextUtils.isEmpty(key)) {
return null;
}
String resultData = null;
try {
PackageManager packageManager = ctx.getPackageManager();
if (packageManager != null) {
ApplicationInfo applicationInfo = packageManager.getApplicationInfo(ctx.getPackageName(), PackageManager.GET_META_DATA);
if (applicationInfo != null) {
if (applicationInfo.metaData != null) {
resultData = applicationInfo.metaData.getString(key);
}
}

}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}

return resultData;
}

② android开发里的faq是什么意思

  1. 获取手机当前的横竖屏模式。


使用这个属性,启动系统的屏幕兼容程序,对app的UI在大屏幕或小屏幕上进行屏幕兼容处理。

通常对不同尺寸的屏幕我们要做不同像素的资源来进行UI布局处理,有时候这样处理也不能达到很好的效果。此时,我们就可以用此选项来控制,在大屏幕上,是否使用系统的兼容模式来放大UI来填充屏幕,或者在小屏幕上进行缩放填充屏幕。

③ android开发中怎么获取manifest.xml文件中的信息

1. 用Java包给应用程序命名。这个包名是应用程序的唯一标识;
2. 描述应用程序的组件---组成应用程序的Activity、Service、Broadcast Receiver以及Content Provider。它要用每个组件的实现类来命名,并向外发布对应组件功能(例如,组件所能处理的Intent消息)。这些声明会让Android系统了解应用程序中组件,以及这些组件被加载的条件。
3. 判断哪些进程是主应用程序组件。
4. 声明应用程序所必须的权限,以便能够访问被保护的API,以及能够跟其他应用程序进行交互。
5. 为了跟应用程序组件进行交互,还声明了其他要求有的权限。
6. 列出了能够提供应用程序运行时的分析和其他信息的Instrumentation类。只有在开发和测试应用程序时才在清单文件中声明这些类,在应用程序被发布之前,要删除这些类。
7. 声明应用程序所要求的最小的Android API级别。
8. 列出应用程序必须链接的外部库。

④ Android使用MediaMetadataRetriever类获取视频帧时一直无法正确读取路径文件,iamge显示位null

从API 8开始,新增了一个类:
android.media.ThumbnailUtils这个类提供了3个静态方法一个用来获取第一帧得到的Bitmap,2个对图片进行缩略处理。
public static Bitmap createVideoThumbnail (String filePath, int kind)

第一个参数是文件的路径,第二个参数是指定图片的大小,有两种选择Thumbnails.MINI_KIND与Thumbnails.MICRO_KIND。
第一种文档上说大小是512 x 384 ,我用一个MP4格式文件测试得到544 x 960,用一个wmv格式文件测试得到160 x 120。明显不靠谱。第二种参数两种格式文件得到的大小都是 96 x 96,这个才是缩略图。extractThumbnail(Bitmap source, int width, int height, int options)
extractThumbnail(Bitmap source, int width, int height)

这两种方法都是用来处理Bitmap的大小的,第一个参数是要处理的Bitmap,第二个参数是处理后宽度,第三个是高度,第四个参数options,如果options定义为OPTIONS_RECYCLE_INPUT,则回收资源。也就是说可以用第三种方法把截取到的第一帧的Bitmap转成任意想要的大小,第三个方法还可以获取内存卡内图片的缩略图。
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(path1, Thumbnails.MINI_KIND);
bitmap = ThumbnailUtils.extractThumbnail(bitmap, 210, 210);

从API 10开始新增一类MediaMetadataRetriever可以用来获取媒体文件的信息
MediaMetadataRetriever mmr = new MediaMetadataRetriever();
mmr.setDataSource(/sdcard/33.mp4);
Bitmap bitmap = mmr.getFrameAtTime();
image.setImageBitmap(bitmap);
System.out.println(mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DATE)+);
System.out.println(mmr.extractMetadata(MediaMetadataRetriever.METADATA_KEY_MIMETYPE)+);
mmr.release();

MediaMetadataRetriever可以获取任何一帧的缩略图。

public static Bitmap createVideoThumbnail(String filePath) {
// MediaMetadataRetriever is available on API Level 8
// but is hidden until API Level 10
Class clazz = null;
Object instance = null;
try {
clazz = Class.forName(android.media.MediaMetadataRetriever);
instance = clazz.newInstance();

Method method = clazz.getMethod(setDataSource, String.class);
method.invoke(instance, filePath);

// The method name changes between API Level 9 and 10.
if (Build.VERSION.SDK_INT <= 9) {
return (Bitmap) clazz.getMethod(captureFrame).invoke(instance);
} else {
byte[] data = (byte[]) clazz.getMethod(getEmbeddedPicture).invoke(instance);
if (data != null) {
Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
if (bitmap != null) return bitmap;
}
return (Bitmap) clazz.getMethod(getFrameAtTime).invoke(instance);
}
} catch (IllegalArgumentException ex) {
// Assume this is a corrupt video file
} catch (RuntimeException ex) {
// Assume this is a corrupt video file.
} catch (InstantiationException e) {
Log.e(TAG, createVideoThumbnail, e);
} catch (InvocationTargetException e) {
Log.e(TAG, createVideoThumbnail, e);
} catch (ClassNotFoundException e) {
Log.e(TAG, createVideoThumbnail, e);
} catch (NoSuchMethodException e) {
Log.e(TAG, createVideoThumbnail, e);
} catch (IllegalAccessException e) {
Log.e(TAG, createVideoThumbnail, e);
} finally {
try {
if (instance != null) {
clazz.getMethod(release).invoke(instance);
}
} catch (Exception ignored) {
}
}
return null;
}

⑤ android apk怎么通过metadata拿数据

apk是安装程序 一般你先你要先安装apk后缀的游戏 那些gameloft的游戏一般打开后要下载一些数据的 就是通过wifi 估计是种保护手段吧 下载的数据大的得500多M 而且下载的很慢 经常不成功 所以就有一些成功的人把他们下载的数据包拿出来分享 这样我们安装玩游戏后 把相应的数据吧复制过去 这样就省了 下载数据包的过程了

⑥ 【Android音视频】MediaMetadataRetriever使用

MediaMetadataRetriever是Android原生提供的获取音视频文件信息的一个类,我们可以通过这个类的相关方法获取一些基本信息,如视频时长、宽高、帧率、方向、某一帧的图片等。

我们可以通过MediaMetadataRetriever的extractMetadata(int keyCode)的方法获取一些视频的基本信息,以下列出一些常用的:

可以通过getFrameAtTime(long timeUs)获取某一时刻附近的帧图片;API>=28,可以准确获取帧图片,相关方法getFrameAtIndex(...);获取帧图可以应用在 视频封面图 视频裁剪的缩略图 等。

MediaMetadataRetriever还是比较常用的,以上只是简略的列出了MediaMetadataRetriever的一些用法,具体可自行查阅源文件。

⑦ Android 怎么获取 umeng 的 渠道信息

Andriod版本APP获取umeng的渠道信息,可以让技术人员在程序中嵌入渠道编码,具体步骤如下:

  1. 进入友盟网站,注册帐号,绑定友盟应用统计;

  2. 下载友盟SDK文件,由技术开发人员嵌入到APP程序代码中,具体操作方法可以参考友盟网站的嵌入指南;

  3. 根据安卓版本不同的发布渠道,定义好channel ID;

  4. 修改代码中与channel相关的代码,比如将<meta-data android:value="Channel ID" android:name="UMENG_CHANNEL"/>中的Channel ID替换为您应用的推广渠道名称,channel id自定义。

  5. 对应每个渠道生成一一对应的APK安装包;

  6. 将标记好Channel ID的渠道安装包,在对应的渠道发布;

  7. 定时登录友盟后台查看渠道数据。

⑧ Android中怎么逐帧读取视频文件

MediaMetadataRetriever media = new MediaMetadataRetriever();
media.setDataSource(”视频的绝对地址“);
Bitmap bitmap = media.getFrameAtTime();
image = (ImageView)this.findViewById(R.id.imageView1);
image.setImageBitmap(bitmap);

这个是获取第一祯的代码,可以参考下

阅读全文

与android获取metadata相关的资料

热点内容
加好友服务器繁忙是怎么回事 浏览:377
怎么解绑app的支付宝账号 浏览:911
ip地址服务器不可用怎么解决方法 浏览:183
为什么软件需要服务器 浏览:63
redis操作命令大全 浏览:597
python字符串重复索引 浏览:961
为什么香信新版本连接不上服务器 浏览:50
元旦程序员打羽毛球 浏览:614
otc焊接机器人离线编程教学 浏览:412
51单片机的ea引脚有何用途 浏览:207
centos查看用户命令 浏览:840
程序员脸胖 浏览:744
hdfs在主目录下创建文件夹 浏览:800
股票选股器源码公式如何弄 浏览:31
服务器如何使用在微信上 浏览:328
app登不了是怎么回事 浏览:254
dd命令u盘 浏览:570
单片机生日快乐程序 浏览:893
安卓手机连车载的叫什么 浏览:223
怎么让自己的手机键盘变得好看app 浏览:53