Android在发送短信时未触发传递意图.我在HTC EVO 4G的Android 2.2上测试了这个.
这是当前的代码.我看到"短信已发送意图".在日志中,但不是"收到短信的意图".
// Constants
String SENT_ACTION = "SMS_SENT_ACTION";
String DELIVERED_ACTION = "SMS_DELIVERED_ACTION";
String CELL_NUMBER = "0000000000";
String MESSAGE = "Hello World!";
// SMS sent pending intent
PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0,
new Intent(SENT_ACTION), 0);
// SMS delivered pending intent
PendingIntent deliveredIntent = PendingIntent.getBroadcast(this, 0,
new Intent(DELIVERED_ACTION), 0);
// SMS sent receiver
registerReceiver(new BroadcastReceiver(){
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "SMS sent intent received.");
}
}, new IntentFilter(SENT_ACTION));
// SMS delivered receiver
registerReceiver(new BroadcastReceiver(){
@Override …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个函数,使用遗传算法递归地播放所有可能的井字游戏,然后返回(胜利,损失,关系)元组.但是,当调用时,下面的函数总是溢出堆栈:
scoreOne :: UnscoredPlayer -> [String] -> ScoredPlayer
scoreOne player boards = ScoredPlayer (token player) (chromosome player) (evaluateG $! testPlayer player boards)
...
let results = map (\x->scoreOne x boards) players
print (maximum results)
Run Code Online (Sandbox Code Playgroud)
哪里players是染色体列表.只有1名玩家不会发生溢出,但有两次发生.
编辑:如果以下列方式调用该函数,它不会溢出堆栈.
let results = map (\player -> evaluateG (testPlayer player boards)) players
print (maximum results)
Run Code Online (Sandbox Code Playgroud)
但是,以下方式会溢出堆栈.
let results = map (\player -> ScoredPlayer (token player) (chromosome player) (evaluateG $! testPlayer player boards)) players
Run Code Online (Sandbox Code Playgroud)
作为参考,ScoredPlayer定义为(字符串是玩家令牌,[Int]是染色体,Float是得分):
data ScoredPlayer = ScoredPlayer String …Run Code Online (Sandbox Code Playgroud) 我有我的主应用程序布局,但后来我的网站的/ account部分与应用程序布局markupwise具有完全相同的布局,除了/ account页面在布局的内容区域中添加了侧边栏.
我不想公然复制应用程序布局并创建几乎冗余的"帐户"布局,而是扩展应用程序布局,在内容区域添加侧边栏.
所以我的应用程序布局中有这样的东西:
<html>
<body>
<div id="content">
<%= yield %>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
而且我要
<html>
<body>
<div id="content">
<div id="sidebar"></div>
<%= yield %>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
有没有办法在不复制代码的情况下实现这一目标?
刚刚开始使用Lucene.Net.我使用标准分析器索引100,000行,运行一些测试查询,并注意到如果原始术语是单数,则多个查询不会返回结果.据我所知,雪球分析仪增加了支持,这听起来不错.但是,我想知道是否有超过标准的雪球锣有任何缺点?我是否会因为它而失去任何东西?还有其他分析仪要考虑吗?
我尝试播放R.raw的声音.在一个线程/ Runnable内但我不能让它工作.
new Runnable(){
public void run() {
//this is giving me a NullPointerException, because getBaseContext is null
MediaPlayer mp = MediaPlayer.create( getBaseContext(), R.raw.soundfile);
while (true) {
if (something)
play something
}
}
如何在run方法中获得真正的Context?无论我尝试什么,它都是null.或者有更好的方法吗?
multithreading android media-player android-context runnable
假设我有以下代码:
Sub TestRangeLoop()
Dim rng As Range
Set rng = Range("A1:A6")
''//Insert code to loop through rng here
End Sub
Run Code Online (Sandbox Code Playgroud)
我希望能够Range为每个指定的单元格迭代一组对象rng.从概念上讲,我想这样做:
For Each rngCell As Range in rng
''//Do something with rngCell
Next
Run Code Online (Sandbox Code Playgroud)
我知道我可以通过手动解析rng.Address和构建Range对象来解决这个问题,但我希望有一种更直接的方法,不涉及字符串解析.
我正在使用Visual Studio 2010中的Visual C#项目并在类视图中浏览各种类型.根据此文档,类视图设置菜单中应该有一个"显示派生类型"选项,类似于"显示基本类型"选项.但是,它似乎缺失了.
我没有设法找到任何错误报告或对此问题的引用,所以我想知道我是否只是在这里遗漏了一些东西.
也许它在优化后对编译器无关紧要,但在C/C++中,我看到大多数人以下列形式制作for循环:
for (i = 0; i < arr.length; i++)
Run Code Online (Sandbox Code Playgroud)
使用post fix ++完成递增的地方.我得到了两种形式之间的区别.i ++返回i的当前值,但是在安静时将i加1.++我首先向i添加1,并返回新值(比我多1).
我认为i ++需要更多的工作,因为除了下一个值之外还需要存储先前的值:Push*(&i)to stack(或load to register); 增量*(&i).Versus ++ i:增量*(&i); 然后根据需要使用*(&i).
(我认为"递增*(&i)"操作可能涉及寄存器加载,具体取决于CPU设计.在这种情况下,i ++需要另一个寄存器或堆栈推送.)
无论如何,在什么时候,以及为什么,i ++变得更时尚?
我倾向于相信azheglov:这是一个教育学的东西,因为我们大多数人在Window或*nix系统上进行C/C++,编译器质量很高,没有人受伤.
如果您使用的是低质量编译器或解释环境,则可能需要对此敏感.当然,如果你正在进行高级C++或设备驱动程序或嵌入式工作,希望你已经足够经验丰富,这根本不是什么大问题.(狗是否具有佛性?谁真的需要知道?)
删除EF实体的所有集合项的正确方法是什么?在下面的代码中,DocumentItems是文档的相关文档项的集合.此代码在Clear()上进行,但在SaveChanges()上失败,因为相关项通过FK连接到其文档,FK是必需的.所以我猜他们在Clear()之后没有外键的情况下仍然悬浮在空中.
我是否通过在每个项目上调用Remove()的集合上的foreach循环来解决这个问题,还是有另一种方法?
// remove existing document items to prepare for refreshing them
existing.DocumentItems.Clear();
// adds new Document Items
PrepareInvoice(existing, collection);
_repository.SaveChanges();
Run Code Online (Sandbox Code Playgroud)