我正在创建一些自定义的remoteViews,为了将自定义视图和布局绘制到与通知面板一样宽的位图,我需要它的确切宽度.
由于每个供应商都会更改通知面板的宽度,并且在大多数情况下会根据方向进行更改,因此很难找到常规模式.
有没有办法得到它的宽度?
粉红色部分是纯粹的remoteViews,底部是imageview,我将自定义视图绘制到它,因为我没有父宽度,所有子视图都会崩溃.
android android-custom-view android-notifications remoteview
我想用oauth2客户端凭证授权规范来保护我的休息api,就像我们在Android的谷歌服务中看到的那样,如Drive和Maps api.
在谷歌服务中,我们的应用程序签名的密钥库SHA1密钥是客户端ID,我们将此SHA1密钥存储在谷歌开发者控制台中,然后用于授权和验证来自我们应用程序的请求.
那么如何以编程方式获取密钥库的sha1?
我已经下载了新的Android Studio 2.0并开始构建我的项目,但它会输出如下错误:
Observed package id 'system-images;android-19;default;x86' in inconsistent location 'C:\Android\sdk\system-images\android-19\x86' (Expected 'C:\Android\sdk\system-images\android-19\default\x86')
Run Code Online (Sandbox Code Playgroud) 使用file.renameTo(file)它们重命名图像后,它们在图库中变灰并变得不可用。我尝试了各种 Intent 来重新扫描图像,最后没有希望,一些旧版本的工作有些根本不起作用,所以我正在尝试更新MediaStore,但不知道如何正确地做到这一点。
这是我的一些代码
这是我早期的方法之一
MediaScannerConnection.scanFile(mContext,
filesPath , null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
Log.i("ExternalStorage", "Scanned " + path + ":");
Log.i("ExternalStorage", "-> uri=" + uri);
}
});
Run Code Online (Sandbox Code Playgroud)
另一个
private void scanMedia(File file) {
Uri uri = Uri.fromFile(file);
Intent scanFileIntent = new Intent(
Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, uri);
mContext.sendBroadcast(scanFileIntent);
}
Run Code Online (Sandbox Code Playgroud)
这项工作适用于 19 岁之前,但不适用于 kitkat
mContext.sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
Uri.parse("file://" + Environment.getExternalStorageDirectory())));
Run Code Online (Sandbox Code Playgroud)
这是 MediaStore 之一
int row = mContext.getContentResolver()
.update(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
valuesNewFilePath,
MediaStore.MediaColumns.DATA + "='" + oldFilePath + …Run Code Online (Sandbox Code Playgroud)