首次将iOS应用程序提交到应用程序商店后,是否可以更新文件?
我们有一个稳定版本的新应用程序可以提交,但想知道我们是否可以发布具有新功能的更新,即使在初次提交几天后应用程序正在审核中.或者我们是否必须先等待应用程序获得批准才能提交更新?
作为闲置好奇心的练习,请考虑以下简单的日志记录类:
internal static class Logging
{
private static object threadlock;
static Logging()
{
threadlock = new object();
}
internal static void WriteLog(string message)
{
try
{
lock (threadlock)
{
File.AppendAllText(@"C:\logfile.log", message);
}
}
catch
{
...handle logging errors...
}
}
}
Run Code Online (Sandbox Code Playgroud)
是否lock需要File.AppendAllText(...)通过自己的实现来保持本身的线程安全?
搜索有关这方面的信息会产生许多相互矛盾的信息,有些人说是,有些人说不.MSDN什么也没说.
我正在使用存储库中最新的可用GCC构建.我决定使用它,因为一些额外的C++ 0x功能.然而现在我坚持使用什么假设工作 - 我想通过r值添加新的元素来映射.简化代码,演示了问题:
#include <tr1/unordered_map>
class X
{
public:
X (void) { /* ... */ };
X (const X& x) = delete;
X (X&& x) { /* ... */ };
};
int main (void)
{
std::tr1::unordered_map<int, X> map;
// using std::tr1::unordered_map<int, X>::value_type didn't help too
std::pair<int, X> value (1, X ());
map.insert (std::move (value));
}
Run Code Online (Sandbox Code Playgroud)
请注意,当X使用某些原始类型替换类时,如int代码编译并且工作正常.
在我的生产中,对应于X的代码类也没有复制构造函数.
错误消息(像所有与模板相关的错误)冗长且不可读,我不确定将它放在这里是否是个好主意.如果您想要错误消息,请通知我,因此我将更新此问题.消息的最后部分很有趣:
(...)
/usr/include/c++/trunk/ext/new_allocator.h:106:9: error: use of deleted function ‘constexpr std::pair<_T1, _T2>::pair(const std::pair<_T1, _T2>&) [with _T1 = const int, …Run Code Online (Sandbox Code Playgroud) 初学Android开发者在这里.
我正在尝试创建一个应用程序,它将读取存储在设备上的SMS消息,然后向用户提供有关其习惯的统计信息(例如他们经常发送消息的人,常用词等).
但据我所知,似乎没有办法做到这一点.我在论坛上四处看看,大多数人都在谈论访问收件箱,在那里你可以找到用户没有读过的邮件.那么默认应用程序和第三方(例如Handcent)如何显示相同的文本?他们不保留自己的数据库,因为Handcent将在全新安装时显示所有文本.
tl; dr:如何在Android设备上阅读SMS消息,特别是之前读过的消息.
我在asp.net mvc 3中有以下自定义html助手
public static string RegisterJS(this HtmlHelper helper, ScriptLibrary scriptLib)
{
return "<script type=\"text/javascript\"></script>\r\n";
}
Run Code Online (Sandbox Code Playgroud)
问题是结果是像这样得到html编码(我必须添加空格才能正确显示结果:
<script type="text/javascript"></script>
Run Code Online (Sandbox Code Playgroud)
这对我来说显然没什么帮助..我读过的任何内容都没有说明这一点......关于如何才能得到真实结果的任何想法?
我知道当你有多个可滚动视图时setScrollsToTop会感到困惑,但是有什么方法可以解决这个问题吗?你能指定哪个视图滚动到顶部,从而澄清它的属性?
例如,我在视图中有myScrollView和myTableView
如何设置它,以便只有myTableView在点击状态栏时滚动到顶部?
或者,当点击状态栏时是否有通知(或者我也可以订阅)?
在此先感谢,我希望这是有道理的!
在单元测试中,我经常使用返回DateTimeon或about的方法now().有没有办法说actual日期时间是在DateTime的几秒钟内actual?
我正在使用TouchJSON来解析JSON Rails API的输出,但是遇到了困难.总体目标是遍历响应,解析JSON,Round为每个JSON对象创建一个实例,并将这些Round对象粘贴到NSArray中,以便我可以将其加载到UITableView.因此,如果有一种比我即将展示的更直接的方式(目前不工作,顺便说一下),请告诉我.
Rails API返回一个类似于以下内容的集合:
[
{
"round": { "course_title": "Title A", "result": "+8" }
},
{
"round": { "course_title": "Title B", "result": "+4" }
},
...
]
Run Code Online (Sandbox Code Playgroud)
我也在使用ASIHTTPRequest,我可以使用以下方法成功获得响应:
NSString *responseString = [request responseString];
Run Code Online (Sandbox Code Playgroud)
但从那里,我似乎无法到达任何地方.这里或多或少是TouchJSON的建议:
NSString *jsonString = [request responseString]; // [{"round":{...}}, ..., {"round:{...}}]
NSData *jsonData = [jsonString dataUsingEncoding:NSUTF32BigEndianStringEncoding];
NSDictionary *dictionary = [[CJSONDeserializer deserializer] deserializeAsDictionary:jsonData error:nil];
// then I do this...
NSLog(@"JSON: %@", dictionary); // JSON: null
Run Code Online (Sandbox Code Playgroud)
我想从那里我可以循环遍历字典并使用我的Round类创建对象映射.但也许这完全是错误的做法.
我的想法是从Rails返回的JSON是一个JSON对象数组,所以也许这就是为什么JSON解析器不能将它识别为有效的JSON?由此,我有两个问题:
1)TouchJSON是否能够接受我的API返回的JSON对象数组?
2)是否可以将responseString强制转换为NSArray,以便循环遍历每个"round"并以这种方式解析JSON?如果我从响应字符串中删除第一个和最后一个字符(即"["和"]"),JSON解析器将只捕获集合中的第一个"圆".
3)我是否正确地处理了整个过程? …
我正在使用一个暴露IQueryable<T>这样的通用存储库:
public IQueryable<T> AllEntities
{
get
{
return session.Query<T>();
}
}
Run Code Online (Sandbox Code Playgroud)
我可以像这样查询:
var results =
(from e in repository.AllEntities
where e.SomeProperty == "some value"
select e).ToList();
Run Code Online (Sandbox Code Playgroud)
但是,如果T有父母和祖父母实体并且我想急切地加载它们,我必须这样做:
var results =
(from e in repository.AllEntities
where e.SomeProperty == "some value"
select e)
.Fetch(x => x.Parent)
.ThenFetch(x => x.Grandparent)
.ToList();
Run Code Online (Sandbox Code Playgroud)
这工作,但.Fetch并.ThenFetch都Linq2Nhibernate特定扩展方法,这是造成两个问题:
我必须using NHibernate.Linq;在我的文件顶部包含一个声明.但是,在我正在进行此查询时,它应该是与实现无关的.
当我尝试对此进行单元测试时,.Fetch和我的模拟存储库提供的.ThenFetch方法相比,和方法失败IQueryable<T>了.
如何将这些内容包装在我的IRepository<T>界面内或某些通用扩展方法中?
更新:
到目前为止,我所提出的是将其添加到我的存储库界面:
IQueryable<T> EagerLoadParent<U>(IQueryable<T> query,
Expression<Func<T, U>> parentExpression);
IQueryable<T> …Run Code Online (Sandbox Code Playgroud) 好的.我已经设置了一小组样本表.我只是举个例子,因为这是我能够传达问题的最佳方式.
证书表:
WorkerId Name Version
----------- -------------------------------- -----------
1 Construction 1
1 Construction 2
1 Demolition 1
1 Fusion 1
5 Fusion 1
4 Demolition 1
4 Demolition 2
Run Code Online (Sandbox Code Playgroud)
CertDesc表(版本,名称形式主键):
Name Version Description
-------------------------------- ----------- -----------------------------------------------------------------------------------------
Construction 1 Basic Construction -- Required for all construction workers.
Construction 2 Full Construction -- Required for all construction managers.
Demolition 1 Demolition -- Explosives -- Required for demolition managers.
Fusion 1 Fusion System Control -- Includes catastrophic super-criticality recovery.
Demolition 2 Large Scale …Run Code Online (Sandbox Code Playgroud) ios ×2
.net-2.0 ×1
android ×1
app-store ×1
c# ×1
c++ ×1
c++11 ×1
file-io ×1
html-encode ×1
iphone ×1
java ×1
json ×1
objective-c ×1
repository ×1
sms ×1
sql ×1
sql-server ×1
tr1 ×1
uiscrollview ×1
uitableview ×1
unit-testing ×1