我刚刚完成了这个(非常好的)教程:https://parse.com/tutorials/ios-push-notifications
,只留下一个问题.我可以在我的应用程序中向一个特定设备发送推送消息(可能带有device token
?)而不是每个设备?我不一定需要知道现在如何,一个简单的"是的,那可能是解析"或"不,你不能使用解析"就足够了!
干杯
是否有可能只接受我们来自我的申请的请求?比方说,我有一个名为'Best App'的iOS应用程序,它使用Django作为其后端.我怎样才能使得只有来自Best App的请求被接受而其他一切被拒绝?
我在考虑检查请求中的'HTTP_USER_AGENT'键,如果HTTP_USER_AGENT是'Best App',我将允许请求通过.但我最近发现,任何人都可以从Chrome等应用程序修改其USER_AGENT,并请求访问我们的资源.
有没有其他方法可以限制我的特定应用程序访问?我想通过提供白名单访问权限向其他开发人员开放我的后端服务.但是现在,我想继续访问我们的后端私有.
非常感谢您对此事的建议和见解.
我使用sha1来保护我的密码.我在register.php中以这种方式存储了密码
// secure password
$salt = openssl_random_pseudo_bytes(20);
$secured_password = sha1($password . $salt);
//Send it to mysql table
$result = $access->registerUser($username, $secured_password, $salt, $email, $fullname);
Run Code Online (Sandbox Code Playgroud)
这一切都很好.
问题在这里:
在我的login.php中
$password = htmlentities($_POST["password"]);
$secure_password = $user["password"];
$salt = $user["salt"];
// 4.2 Check if entered passwords match with password from database
if ($secure_password == sha1($password . $salt)) {
//do something
} else {
//do something
}
Run Code Online (Sandbox Code Playgroud)
我总是得到密码不匹配.我哪里错了?
我听说iOS 11只支持64位应用程序.
但我不太明白,因为我的iPhone 5没有64位CPU,那么它将如何工作?
如果iPhone5无法运行64位应用程序,并且Apple表示他们将在2018年1月开始拒绝在应用程序商店中使用新的32位应用程序,那么如何在2018年之后继续为我的iPhone 5用户维护我的应用程序?
我遇到了accelometer的问题.
如果设备平躺,我得到(0,0,-1),这显然是不对的.当我旋转手机时,这个-1会移动到其他轴,具体取决于手机的位置.
到目前为止,我的代码非常简单:
override func viewDidAppear(_ animated: Bool) {
motionManager.accelerometerUpdateInterval = 0.1
motionManager.startAccelerometerUpdates(to: OperationQueue.current!){(data,error)
in
if let myData = data {
print(Double(myData.acceleration.y) )
}
Run Code Online (Sandbox Code Playgroud) 我正在开发MAC OS应用程序,它具有代表您创建文件的功能.第一个用户选择用于存储文件的文件夹(在应用程序启动时一次),然后用户可以使用苹果脚本选择要在所选文件夹上创建的文件的类型和名称(在应用程序启动时选择的文件夹).我可以创建文件,当我temporary-exception
在权利文件中添加以下但它无法应用苹果审核团队但在沙盒中工作.
准则2.4.5(i) - 绩效我们已确定为此应用程序请求的一个或多个临时权利例外不合适且不会被授予:
com.apple.security.temporary-exception.files.home-relative-path.read-write
/FolderName/
Run Code Online (Sandbox Code Playgroud)
我发现 :
启用App Sandbox - 允许应用编写可执行文件.
和
启用用户选择的文件访问 - Xcode在目标编辑器的"摘要"选项卡中提供了一个弹出菜单,其中包含对用户明确选择的文件和文件夹进行只读或读/写访问的选项.当您启用用户选择的文件访问权限时,您可以以编程方式访问用户使用NSOpenPanel
对象打开的文件和文件夹,以及用户使用对象保存的文件NSSavePanel
.
使用以下代码创建文件:
let str = "Super long string here"
let filename = getDocumentsDirectory().appendingPathComponent("/xyz/output.txt")
do {
try str.write(to: filename, atomically: true, encoding: String.Encoding.utf8)
} catch {
// failed to write file – bad permissions, bad filename, missing permissions, or more likely it can't be converted to the encoding
}
Run Code Online (Sandbox Code Playgroud)
还尝试com.apple.security.files.user-selected.read-write
在NSOpenPanel对象中添加授权文件:
<key>com.apple.security.files.user-selected.read-write</key>
<true/>
Run Code Online (Sandbox Code Playgroud)
有没有办法通过苹果审查小组批准Mac App对用户选择的文件夹具有读写权限?
我还是Xcode的新手,所以请耐心等待我.无论如何,我在尝试在UILabel中显示数组的全部内容时遇到了一些麻烦.我只需使用代码即可显示它
wordList.text = [NSString stringWithFormat:@"List of Words:\n %@", listA];
Run Code Online (Sandbox Code Playgroud)
然而,在运行时,标签最终显示括号和单独的行上的单词,以及单词周围的引号,以及每个单词之间的行中的结束引号和逗号.例:
List of Words:
(
"apple
",
"banana
",
"etc.
Run Code Online (Sandbox Code Playgroud)
虽然我确实希望单词以自己的行显示,但我不希望括号和右引号和逗号显示在单独的行中.我也希望一起删除括号,引号和逗号,但如果我不能,我不会介意太多.
任何人都可以解释为什么它被显示为这样,并帮助我在UILabel中自己正确显示数组中的每个单词?
我有一个 iOS 应用程序,它使用 CBPeripheralManager 来实现一个外围设备。我用以下命令开始广告:
[self.peripheralManager startAdvertising:@{CBAdvertisementDataLocalNameKey : @"MY_DEVICE_NAME"}];
Run Code Online (Sandbox Code Playgroud)
根据 Apple 文档,https : //developer.apple.com/library/ios/documentation/CoreBluetooth/Reference/CBPeripheralManager_Class/index.html#//apple_ref/occ/instm/CBPeripheralManager/startAdvertising:
外围管理器对象仅支持两个键:CBAdvertisementDataLocalNameKey 和 CBAdvertisementDataServiceUUIDsKey
我的问题是我希望可以在 iOS 设置的“设置”->“蓝牙”区域中发现此外围设备。目前只能通过应用程序和 CBCentralManager scanForPeripheralsWithServices API 调用发现它。我是否需要添加数据服务才能通过 iOS 设置发现它?
我们可以在应用程序背景中检测信标(iOS和Android).我看到Eddystone信标有iOS背景的问题.怎么解决这个?
我写了一个扩展,搜索Collection
某个类型的对象.
extension Collection {
/// Finds and returns the first element matching the specified type or nil.
func findType<T>(_ type: T.Type) -> Iterator.Element? {
if let index = (index { (element: Iterator.Element) in
String(describing: type(of: element)) == String(describing: type) }) {
return self[index]
}
return nil
}
}
Run Code Online (Sandbox Code Playgroud)
现在在Xcode 9/Swift 4中,该代码段type(of: element))
带有错误下划线
非标称类型'T'不支持显式初始化
错误很奇怪,因为我没有初始化一个对象.
这个答案/sf/answers/3228039321/表明它可能是一个类型问题 - 在Swift 4中String(描述:)初始化器是否发生了变化?