小编Dur*_*n.H的帖子

如何以编程方式精确地找到PPI

我试图找出iOS中的PPI(Pixils Per Inch).

我找不到任何直接的方法来查询这个,就像我们对显示大小一样

UIScreen.mainScreen().bounds
Run Code Online (Sandbox Code Playgroud)

有一种方法可以通过将尺度与iPhone(163)或iPad(132)的标准通用PPI相乘来实现,但这并不准确.

如果公式是正确的那么PPIiPhone 6 plus是489,但在现实的PPI为401这里是参考

现在似乎硬编码是要走的路.

但我想使用公式以编程方式进行.

ppi screen-resolution ios uiscreen swift

11
推荐指数
2
解决办法
5502
查看次数

ETag和If-None-Match HTTP标头不起作用

我的网络服务器中有一个文件,我每次访问它时都会将其下载到我的应用程序,因为它可能会更改文件内容但是如果它被更改我想下载那个时间只有这样才能保存带宽而且幸运的是那是什么此ETagIf-None-Match 标头字段用于.

  • 当我第一次发出请求时,我从HTTP响应头中检索ETag

第一次请求文件

  • 在随后的下载该文件的请求中,我附加了If-None-Match头域Etag值,这样如果没有变化那么我会得到HTTP响应状态码304,否则如果有的话我会得到200更改文件.

    第二次请求相同的文件

注意:

当我在Chrome 中使用高级REST客户端应用程序尝试上述步骤时,它应该可以正常工作但是当我在iOS中尝试时,我总是得到响应代码200,但它应该给我304后续请求.

这是我使用的示例代码

var request1 =  NSMutableURLRequest(URL:NSURL(string: "http://10.12.1.101/Etag/ringtone1.mp3")!)
let Etagvalue="\"36170-52c1cc36d9b40\""
var session1 = NSURLSession.sharedSession()
request1.HTTPMethod = "GET"
var err: NSError?
request1.addValue(Etagvalue, forHTTPHeaderField: "If-None-Match")

var task = session1.dataTaskWithRequest(request1, completionHandler: {data, response, error -> Void in
       print("response: \(response)")

})
Run Code Online (Sandbox Code Playgroud)

这是回复

响应:可选({URL:http : //10.12.1.101/Etag/ringtone1.mp3 } {状态代码:200,headers {"Accept-Ranges"= bytes; Connection ="Keep-Alive";"Content-Length" = 221552;"Content-Type"="audio/mpeg"; Date ="Wed,2016年2月24日14:57:53 GMT"; Etag ="\"36170-52c1cc36d9b40 \"";"Keep-Alive"=" timeout = 5,max = 100";"Last-Modified"="Fri,2016年2月19日10:15:33 GMT"; …

etag ios nsurlsession if-none-match swift

10
推荐指数
1
解决办法
2998
查看次数

无法从解析云更新我的收藏?

我在解析云代码时面临一个问题.以下是我在gamescore表中更新分数和更改日期.但它没有用.虽然我在我的网络代码中做同样的事情,但它工作正常.我在这里做错了吗?

'use strict';
var GameScore = Parse.Object.extend('GameScore');
Parse.Cloud.define('editScore', function(req, res) {
  var query = new Parse.Query(GameScore);
  query.get(req.params.objectId, {
    success: function(gameScore) {
      gameScore.set('score', req.params.score);
      gameScore.set('date', req.params.date);
      gameScore.save(null);
      gameScore.fetch(myCallback);
    },
    error: function(err) {
      return res.error(err);
    }
  });
});
Run Code Online (Sandbox Code Playgroud)

如果是这样,请帮助我,以便我可以使它工作.

javascript parse-platform parse-cloud-code

9
推荐指数
1
解决办法
566
查看次数

如何使用终端在 OS X 中解锁系统钥匙串

我在系统钥匙串中有私钥和证书,我想使用CodeSign访问它,因此需要将其解锁。

如果我尝试使用以下脚本解锁登录钥匙串,那么没问题

security unlock-keychain -p password login.keychain
Run Code Online (Sandbox Code Playgroud)

但是,如果我对 system.keychain 使用相同的语法,那么我会收到此错误安全性:SecKeychainUnlock 您输入的用户名或密码不正确。

security unlock-keychain -p password /Library/Keychains/System.keychain
Run Code Online (Sandbox Code Playgroud)

由此我可以看到,无法在语法中输入用户名。

我的目的是要解锁的钥匙串,而代码签名的身材,让喜欢“我不会得到及时喜欢below.In代码签名事件的詹金斯我会得到错误的情况下,用户交互不允许

我知道可以通过访问钥匙串中的所有应用程序来解决这个问题,但我打算通过脚本本身来解决这个问题。

代码符号警报

任何帮助表示赞赏!

shell keychain codesign ios jenkins

9
推荐指数
0
解决办法
9199
查看次数

分别使用ANTLR Parser和Lexer

我使用ANTLR版本4来创建编译器.第一阶段是Lexer部分.我创建了"CompilerLexer.g4"文件并在其中推出了lexer规则.它工作正常.

CompilerLexer.g4:


lexer grammar CompilerLexer;

INT         :   'int'   ;   //1
FLOAT       :   'float' ;   //2
BEGIN       :   'begin' ;   //3
END         :   'end'   ;   //4
To          :   'to'    ;   //5
NEXT        :   'next'  ;   //6
REAL        :   'real'  ;   //7
BOOLEAN     :   'bool'  ;   //8
.
.
.
NOTEQUAL    :   '!='    ;   //46
AND         :   '&&'    ;   //47
OR          :   '||'    ;   //48
POW         :   '^'     ;   //49
ID          : [a-zA-Z]+ ;   //50




WS
:   ' ' -> channel(HIDDEN)  //50 …
Run Code Online (Sandbox Code Playgroud)

c# grammar lexer antlr4

8
推荐指数
1
解决办法
5293
查看次数

如何在不使用外部主机的情况下以编程方式查找设备的外部IP地址?

当我读取设备的IP地址时,我总是得到本地IP地址.

我使用以下代码片段来做到这一点.

public String getIpAddress() {
   try {
         for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) {
                NetworkInterface intf = en.nextElement();
             for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) {
                    InetAddress inetAddress = enumIpAddr.nextElement();
                    if (!inetAddress.isLoopbackAddress()) {
                        String ip = Formatter.formatIpAddress(inetAddress.hashCode());
                        Log.d("VPNConnected",ip);
                        return ip;
                    }
                }
            }

        } catch (Exception ex) {
            Log.d("exception", ex.toString());
        }
        return "EMPTY";
    }
Run Code Online (Sandbox Code Playgroud)

但我需要在不使用任何外部主机或web apis(如http://jsonip.com)的情况下读取外部IP地址

java android traceroute nat-traversal android-networking

8
推荐指数
1
解决办法
4742
查看次数

如何在重新注册时更改pjsip注册帐户?

我正在使用iOS的pjsip,我已经配置了pjsip并且能够注册并重新注册特定的时间间隔,但是有一种情况我想在重新注册时更改pjsip帐户的详细信息,但是我没有在谷歌上找到任何可以指导如何改变它的东西.

如果有人对此有所了解,请指导我如何pjsua_acc_config在重新注册时更改详细信息,我会在重新注册时收到方法调用.

static void on_reg_state2(pjsua_acc_id acc_id, pjsua_reg_info *info) {
    PJ_LOG(3,(__FILE__, "%s: Account %d Reason %.*s Status %d code %d CurrentOp %d",
              __FUNCTION__, acc_id, info->cbparam->reason.slen, info->cbparam->reason.ptr,
              info->cbparam->status,info->cbparam->code, info->cbparam->regc));
}
Run Code Online (Sandbox Code Playgroud)

voip sip objective-c pjsip ios

7
推荐指数
1
解决办法
1788
查看次数

xcodebuild没有编译项目,除非使用Xcode打开至少一次cocoapods集成项目

我有一个可可豆荚的项目.

这是我用来构建项目的命令.

/ usr/bin/xcodebuild -scheme Jenkins -workspace /Users/Shared/Jenkins/Documents/Jenkins/Jenkins2/Jenkins.xcworkspace -configuration Release clean build CONFIGURATION_BUILD_DIR =/Users/Shared/Jenkins/Documents/JenkinsTestNuu/app'CODE_SIGN_IDENTITY = iPhone分布:XXXX yay(3G5FKTZJ2K)'PRODUCT_BUNDLE_IDENTIFIER = com.XXXX.two PROVISIONING_PROFILE = 6e6506e9-8233-4886-9084-ce21e8f8bbae

上面的脚本只有在Xcode可以关闭之后至少使用Xcode打开一次才能正常工作.

如果项目尚未打开,那么如果我运行脚本,则轮子在下面旋转而没有任何进展,例如在下图中

问题

如果它打开一次而不是下面的纺车,将显示如下

===清洁目标XWebView OF PROJECT Pods with CONFIGURATION Release ===

检查依赖项

Clean.Remove clean /Users/Shared/Jenkins/Documents/JenkinsTestNuu/app/XWebView.framework.dSYM builtin-rm -rf /Users/Shared/Jenkins/Documents/JenkinsTestNuu/app/XWebView.framework.dSYM

Clean.Remove clean /Users/Shared/Jenkins/Library/Developer/Xcode/DerivedData/appanme-bqjwbjcqisegldeaonpytprisnig/Build/Intermediates/Pods.build/Release-iphoneos/XWebView.build builtin-rm -rf/Users/Shared/Jenkins /图书馆/开发商/ Xcode中/ DerivedData/appanme-bqjwbjcqisegldeaonpytprisnig /编译/中间体/ Pods.build /释放-的iPhoneOS/XWebView.build

Clean.Remove clean /Users/Shared/Jenkins/Documents/JenkinsTestNuu/app/XWebView.framework builtin-rm -rf /Users/Shared/Jenkins/Documents/JenkinsTestNuu/app/XWebView.framework

===清洁目标配置释放的项目吊舱的吊舱===

检查依赖关系等...

在任何非cocoapods项目中都没有观察到这个问题.

那么原因是什么以及如何解决它?

shell xcode xcodebuild ios jenkins

7
推荐指数
2
解决办法
1595
查看次数

WkWebView 实例化中的内存泄漏

我有一个包含 wkwebview 的 Viewcontroller 当我从导航控制器弹出它时出现内存泄漏

在此处输入图片说明

堆栈跟踪导致 WkWebview 实例化

在此处输入图片说明

我也没有使用任何代表。

我真的很想知道是什么导致了这个以及如何解决这个问题

memory-leaks uinavigationcontroller ios swift wkwebview

7
推荐指数
1
解决办法
1249
查看次数

崩溃在AccountStore.Create().保存(e.Account,");

在Xamarin.Forms示例ToDoAwsAuth中

https://developer.xamarin.com/guides/xamarin-forms/web-services/authentication/oauth/

成功登录后,在aOnAuthenticationCompleted事件中,应用程序在尝试保存到Xamarin.Auth时崩溃

AccountStore.Create ().Save (e.Account, "ToDoList");
Run Code Online (Sandbox Code Playgroud)

错误说不能对钥匙串说

期待着寻求帮助.

xamarin.ios xamarin

7
推荐指数
2
解决办法
3093
查看次数