小编kna*_*ode的帖子

TelephonyManager.getLine1Number()失败了吗?

我想获得Android设备的电话号码.我用这个代码:

TelephonyManager tm = (TelephonyManager)this.getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE); 
String phoneNumber=  tm.getLine1Number();
Run Code Online (Sandbox Code Playgroud)

在我的手机上(HTC Wildfire),我无法获得电话号码 - 我得到的只是空字符串.如果我在emulatur上运行代码,通常会显示电话号码.

如果我转到设置=>关于电话=>电话身份 - >电话号码,电话号码是"未知".

问题出在哪儿?我的SIM卡有问题吗?

android phone-number

30
推荐指数
3
解决办法
3万
查看次数

immutable.js从map/hash获取密钥

我想从以下不可变映射中检索keys():

var map = Immutable.fromJS({"firstKey": null, "secondKey": null });
console.log(JSON.stringify(map.keys()));
Run Code Online (Sandbox Code Playgroud)

我期待输出:

["firstKey", "secondKey"]
Run Code Online (Sandbox Code Playgroud)

然而,这输出:

{"_type":0,"_stack":{"node":{"ownerID":{},"entries":[["firstKey",null],["secondKey",null]]},"index":0}}
Run Code Online (Sandbox Code Playgroud)

怎么做得好?

JSFiddle链接:https://jsfiddle.net/o04btr3j/57/

immutable.js

21
推荐指数
2
解决办法
2万
查看次数

如何在Xcode 4.5中制作.ipa文件?

自从我将xCode升级到4.5后,我无法找到将我的iOS应用程序保存为.ipa文件的选项,我希望通过Testflight分发该文件.有什么建议?

以下是存档选项的屏幕截图:

存档选项

xcode ios testflight

11
推荐指数
1
解决办法
1万
查看次数

如何在cocos2d,iOS中正确分配和释放box2d对象

我想知道在iOS的cocos2d中分配和释放box2d对象(b2World和b2Body)的最佳方法是什么?

分配

@property (nonatomic, assign) b2World * world;
@property (nonatomic, assign) b2Body * body;
Run Code Online (Sandbox Code Playgroud)

取消分配

-(void)dealloc {
      delete _world;
      _world = nil;
      _body = nil;
Run Code Online (Sandbox Code Playgroud)

有人可以解释为什么我不能使用保留和释放b2World和b2Body,为什么我们在dealloc方法中使用delete _world?为什么我们不删除正文对象呢?(删除_body不起作用).设置指向nil的指针时:我应该使用nil还是NULL?

c++ memory-management objective-c box2d-iphone ios

6
推荐指数
1
解决办法
1338
查看次数

从string动态调用类的静态方法

我有两个字符串:

NSString * className = "MyClass";
NSString * methodName = "doSomething";
Run Code Online (Sandbox Code Playgroud)

MyClass类定义和静态方法doSomething也存在.

如何从两个字符串动态触发[MyClass doSomething]?

objective-c

6
推荐指数
1
解决办法
6317
查看次数

如何在rails/sass中重用(扩展)bootstrap css类

我在core.scss文件中@import"boostrap",它还导入其他scss文件(例如:_modals.css).

在modals.css中我想扩展一些引导类:

.modal-container {
  @extend .row;
}
Run Code Online (Sandbox Code Playgroud)

并且扩展不能按预期工作:

警告在....../_ modals.css.scss的第42行:".do"未能@extend".row".找不到选择器".row".这将是Sass未来版本中的错误.如果扩展应该能够失败,请使用"@extend .row!optional".

  • 我使其工作的唯一方法是在_modals.scss中再次@import"bootstrap",但这实际上包括此文件中的整个bootsrap ...

    另一个解决方案是移动所有在core.css文件中扩展css的定义 - 在这种情况下 - css的结构要少得多......

我该怎么做呢?

sass twitter-bootstrap

5
推荐指数
1
解决办法
2917
查看次数

带有Turbolinks的Googletagmanager

有人可以解释我们如何将Googletagmanager与Turbolinks正确集成吗?

在正常页面上,我们只是在开始标记后立即复制/粘贴此代码。

  <!-- Google Tag Manager -->
  <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-******"
  height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); //f.parentNode.insertBefore(j,f);
  })(window,document,'script','dataLayer','GTM-******');</script>
  <!-- End Google Tag Manager -->
Run Code Online (Sandbox Code Playgroud)

如果我在Turbolinks支持的页面中复制此代码,则可以看到只有一个网络请求(首次加载页面时)

ruby-on-rails turbolinks

5
推荐指数
1
解决办法
3367
查看次数

如何在 Sinatra 中读取标题?

在 Rails 中,我可以读取标题

request.headers['HTTP_CF_CONNECTING_IP']
Run Code Online (Sandbox Code Playgroud)

我怎样才能在 Sinatra 中做到这一点?

ruby sinatra

5
推荐指数
1
解决办法
2222
查看次数

Rails 6和delivery_later不会影响ActionMailer :: Base.deliveries

升级到Rails 6之后,我注意到默认邮件发送器的.deliver_later工作方式与Rails 5中的不同。

组态:

config.active_job.queue_adapter = :inline
Run Code Online (Sandbox Code Playgroud)

运行时Mailer.register_email(...).deliver_later-不会存储任何内容ActionMailer::Base.deliveries。如果我运行,此数组将被填充perform_enqueued_jobs-好像queue_adapter = :inline无法按我期望的方式工作。

如果我跑步,Mailer.send(...).deliver_nowActionMailer::Base.deliveries具有适当的价值。

知道为什么会这样以及如何解决吗?

delayed-job ruby-on-rails-6

5
推荐指数
1
解决办法
121
查看次数

条纹块框架原点

我有自定义条纹形式,所以我使用标准 javascript 文件:

<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
Run Code Online (Sandbox Code Playgroud)

我尝试通过以下方式获取令牌:

<script>
  Stripe.setPublishableKey('xxx'); 
  Stripe.card.createToken({
      number: '4242 4242 4242 4242',
      cvc: '100',
      exp: '10/2018'
    },
    function (response) {
      console.log(response);
    }
  );
</script>
Run Code Online (Sandbox Code Playgroud)

代码非常简单,但我在浏览器中收到异常:

(index):3 Uncaught SecurityError: 
Blocked a frame with origin "https://localhost:3000" 
from accessing a frame with origin "https://js.stripe.com". 
Protocols, domains, and ports must match.
Run Code Online (Sandbox Code Playgroud)

知道我做错了什么吗?

stripe-payments

4
推荐指数
1
解决办法
5273
查看次数