我已经构建了一个Web应用程序,可以让您从浏览器上传照片.在iOS 6中使用此功能时,即使上传照片时,照片也会以横向方式拍摄.我应该做一些服务器端检查以正确的方式获取图像或是否有某种iOS特定属性/ JavaScript我可以应用于上传表单来解决这个问题?
更新
根据要求,这是我写的代码.先决条件是我使用PHP和WideImage库(这是一个更大的脚本的片段,因此如果你愿意,你可以使用不同的图像操作).
// Load Image Into Wide Image
$image=WideImage::load(IMG_UPLOAD_DIR.$result['name']);
$exif=exif_read_data(IMG_UPLOAD_DIR.$result['name']);
$orientation=$exif['Orientation'];
$result['orientation']=$orientation;
// Use Wide Image To Resize Images
$full=$image->resize(IMG_FULL_H,IMG_FULL_H);
$thumb=$image->resize(IMG_THUMB_W,IMG_THUMB_H);
switch($orientation){
case 2:
$full->mirror()->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->mirror()->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 3:
$full->rotate(-180)->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(-180)->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 4:
$full->rotate(180)->mirror()->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(180)->mirror()->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 5:
$full->rotate(90)->mirror()->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(90)->mirror()->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 6:
$full->rotate(90)->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(90)->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 7:
$full->rotate(-90)->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(-90)->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
case 8:
$full->rotate(-90)->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->rotate(-90)->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break;
default:
$full->saveToFile(IMG_UPLOAD_DIR.$result['name'], 90);
$thumb->saveToFile(IMG_UPLOAD_DIR.$thumbName, 90);
break; …Run Code Online (Sandbox Code Playgroud) 我正在构建一个React Native UI组件,该组件将使用Google Maps iOS SDK在React应用程序中呈现地图.这是作为静态Cocoa Touch Framework构建的,因此我可以在不同的项目中使用它.
到目前为止,这个框架并没有做太多,我只是试图让它在我尝试做任何有用的事情之前进行编译.我Podfile在Google Maps SDK中加载了一个,我运行了pod install命令:
# Uncomment this line to define a global platform for your project
platform :ios, '8.1'
# Uncomment this line if you're using Swift
# use_frameworks!
target 'GoogleMapView' do
source 'https://github.com/CocoaPods/Specs.git'
pod 'GoogleMaps'
end
Run Code Online (Sandbox Code Playgroud)
我有GoogleMapView.h和GoogleMapView.m文件将在这个模块中做繁重的工作.现在他们并没有做太多的事情:
@import GoogleMaps;
@interface GoogleMapView: GMSMapView
@end
Run Code Online (Sandbox Code Playgroud)
-
#import "GoogleMapView.h"
@implementation GoogleMapView {
GMSMapView *mapView_;
}
- (void)viewDidLoad {
// Create a GMSCameraPosition that tells the map …Run Code Online (Sandbox Code Playgroud) 有没有办法检测浏览器是否支持我正在构建的移动网站的HTML5 Media Capture API?我似乎只能找到检测getUserMedia()支持的解决方案.
我希望能够为移动用户提供以下两种方案之一:
在Laravel 5.3中,我试图捕获上传文件的文件大小是否大于upload_max_filesize.上传字段不是必需的.
我尝试过这种方法,但它不起作用
public function checkFile($field)
{
if (request()->hasFile($field)){ // check if field is present
$file = request()->file($field);
if (!$file->isValid()){ // now check if it's valid
return back()->with('error', $file->getErrorMessage());
}
}
}
Run Code Online (Sandbox Code Playgroud)
我不能使用只是if (!$file->isValid())因为文件字段是可选的,我得到一个Call to a member function isValid() on nullif字段是空的.
所以我必须检查字段是否存在使用if (request()->hasFile($field)),但这不适用于大文件,因为dd(request()->hasFile('picture'))返回false.
当然,我可以依赖默认的Laravel Validator消息,但是我得到一个The picture failed to upload.不给用户任何线索的假人.
我在使用 PHPUnit 的 Laravel 项目上设置了一个测试套件。通常,指示测试是否通过的点显示在同一行上,但是在这个项目中,每个点都用新行分隔:
我搜索了所有测试,看看是否有东西回显 an\n或 aPHP_EOL但看不到任何东西,我尝试了不同版本的 PHPUnit,并且尝试使用全新的测试套件重新开始。这些尝试都没有解决问题!该测试套件的配置phpunit.xml也与其他项目相同。
谁能建议我还能做些什么来解决这个问题?
在开发 React Native 原生 UI 组件时,RCTViewManager期望您定义一个view返回UIView. 这是我目前设置的一个基本示例,这只是在屏幕上呈现一个小的灰色方块:
@implementation RNThingComponent
- (void)drawRect:(CGRect)rect
{
[[UIColor grayColor] setFill];
CGContextFillRect(UIGraphicsGetCurrentContext(), rect);
}
@end
@implementation RNThingtManager
RCT_EXPORT_MODULE()
- (UIView *)view
{
RNThingtComponent * view;
view = [[RNThingtComponent alloc] init];
return view;
}
@end
Run Code Online (Sandbox Code Playgroud)
我已经构建了很多这样的本机组件,但是我现在正在开发一个组件,它希望我设置 aUIViewController以呈现它的视图。
是否可以将它包装UIViewController在 a 中,UIView以便我可以将视图返回给 React Native,或者我必须以某种方式UIViewController使用它?
我有一个表,其中包含MSSQL数据库中一系列事件的数据:
ID Name Date Location Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1 Seminar Name 1 2013-08-08 A Location Name 16
2 Another Event Name 2013-07-30 Another Location 18
3 Event Title 2013-08-21 Head Office 94
4 Another Title 2013-08-30 London Office 18
5 Seminar Name 2 2013-08-27 Town Hall 19
6 Title 2013-08-20 Somewhere Else 196
7 Fake Seminar For Testing 2013-08-25 Fake Location 196
Run Code Online (Sandbox Code Playgroud)
希望您可以看到此表包含许多由我们的应用程序中的多个用户拥有的事件.我试图找出是否有一个查询,我可以用来为每个用户选择最近发生的事件.我认为显示我想要的最简单的方法是显示我正在寻找的理想结果表(基于今天的日期):
ID Name Date Location Owner
--- --------------------------------------------------------- ----------- -------------------------------- -----------
1 Seminar Name 1 …Run Code Online (Sandbox Code Playgroud) 我注意到一些 iPhone 应用程序已经开始允许您使用密码管理器登录。Slack 就是一个例子:
看起来有一个链接会触发 Safari 中共享工具栏的部分版本,让您可以访问您最喜欢的密码管理器的小部件。这就是到目前为止我所能弄清楚的。
我的问题是,他们如何将此功能添加到他们的应用程序中?我主要使用 React Native 开发东西,但如果它需要自定义组件那么这不是问题。
查看APP API,您似乎可以确定用户是否订阅了播放列表.但是,我的应用程序要求用户能够从播放列表中订阅或取消订阅.
这有可能使用Javascript App API吗?
使用Redux时的一个常见惯例是将操作存储在自己的文件中,const如下所示:
export const USER_AUTH_ATTEMPT = 'USER_AUTH_ATTEMPT';
export const USER_AUTH_CHECK = 'USER_AUTH_CHECK';
export const USER_AUTH_FAIL = 'USER_AUTH_FAIL';
export const USER_AUTH_SUCCESS = 'USER_AUTH_SUCCESS';
export const USER_AUTH_LOGOUT = 'USER_AUTH_LOGOUT';
Run Code Online (Sandbox Code Playgroud)
动作名称的值通常是a string.使用像这样的约定会有什么好处吗?:
export const USER_AUTH_ATTEMPT = 0;
export const USER_AUTH_CHECK = 1;
export const USER_AUTH_FAIL = 2;
export const USER_AUTH_SUCCESS = 3;
export const USER_AUTH_LOGOUT = 4;
Run Code Online (Sandbox Code Playgroud)
操作的值将存储为整数,这可能会减小文件大小.这样做会有任何负面影响吗?
我正在一个简单的iframe上嵌入YouTube视频,该网站将在移动设备和桌面设备上进行查看.我用来嵌入视频的代码是这样的:
<iframe src="https://www.youtube.com/v/VIDEO_ID"></iframe>
我的印象是,如果Flash不可用,将提供HTML5播放器,但是当我在移动设备上调试此视频时,视频将在Flash中提供并且无法正常工作.
我使用的是错误的网址,还是需要做一些额外的事情才能正确嵌入视频?我注意到你也可以使用JavaScript进行iframe嵌入.
ios ×3
react-native ×3
api ×2
html5 ×2
javascript ×2
laravel ×2
objective-c ×2
php ×2
upload ×2
capture ×1
cocoapods ×1
distinct ×1
ecmascript-6 ×1
embed ×1
flash ×1
forms ×1
google-maps ×1
image ×1
laravel-5 ×1
media ×1
mobile ×1
passwords ×1
phpunit ×1
playlist ×1
react-redux ×1
reactjs ×1
redux ×1
safari ×1
select ×1
spotify ×1
sql ×1
sql-server ×1
testing ×1
uiview ×1
xcode ×1
youtube ×1