小编Vee*_*eru的帖子

Android whatsapp就像通话通知一样

我正在开发一个voip应用程序.有一个后台服务显示来电通知,当手机未锁定且应用处于后台状态时,该通知按预期工作(显示来电对话框).

如何生成带有交互式按钮的对话框,如whatsapp来电通知; 即使手机被锁定了?

我可以抬头看看这个或文件吗?

我可以为来电发送一个inapp通知,但这似乎不足以达到目的.我需要一个完整的打击对话框界面,它有一个按钮或类似的按钮,然后打开应用程序.

我使用Quickblox作为voip服务提供商.

提前致谢

我已经尝试按下按钮解锁手机

这是我从后台服务打开对话框的代码.

viewToShowOnLockedScreen = View.inflate(getApplicationContext(), R.layout.activity_background_call, null);
        viewToShowOnLockedScreen.setTag(TAG);

        int top = getApplicationContext().getResources().getDisplayMetrics().heightPixels / 2;

        final WindowManager.LayoutParams mLayoutParams = new WindowManager.LayoutParams(
                ViewGroup.LayoutParams.WRAP_CONTENT, Utils.dpToPx(300), 0, 0,
                WindowManager.LayoutParams.TYPE_SYSTEM_ERROR,
                WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
                        | WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
                        | WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
                        | WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON ,
                PixelFormat.RGBA_8888);
viewToShowOnLockedScreen.setVisibility(View.VISIBLE);
        Animation mAnimation = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.abc_slide_in_top);
        viewToShowOnLockedScreen.startAnimation(mAnimation);
        mWindowManager.addView(viewToShowOnLockedScreen, mLayoutParams);
        mWindowManager.updateViewLayout(viewToShowOnLockedScreen, mLayoutParams);
Run Code Online (Sandbox Code Playgroud)

这是在按下按钮时解锁设备的代码.虽然这看起来像解锁手机,但屏幕已开启,但手机仍处于锁定状态.主页按钮不起作用.

KeyguardManager km = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
        final KeyguardManager.KeyguardLock kl = km .newKeyguardLock("MyKeyguardLock");
        kl.disableKeyguard();

    PowerManager pm = (PowerManager) getSystemService(POWER_SERVICE);
    PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK
            | PowerManager.ACQUIRE_CAUSES_WAKEUP
            | PowerManager.ON_AFTER_RELEASE, "MyWakeLock");
    wakeLock.acquire();
Run Code Online (Sandbox Code Playgroud)

android android-service android-notifications

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

在没有导航控制器的情况下导航到另一个视图控制器

如你所想,我仍然是一个新手,让我的脑袋围绕iphone开发.我只是尝试按需加载基本视图,我无法开始工作

我有一个应用程序,有2个视图控制器,每个视图控制器连接一个不同的nib文件.我想手动切换视图; 没有涉及导航控制.

如何手动将第二个视图推送到第一个视图? self.navigationController pushViewController因为没有导航控制器所以不能工作.如何在第一个视图的顶部推动第二个视图并销毁第一个视图; 和反之亦然?我在第一个视图的按钮操作中完成了这个操作:

SecondView *sv=[[SecondView alloc] initWithNibName:@"SecondView" bundle:nil];
[self.navigationController pushViewController:sv animated:YES];
Run Code Online (Sandbox Code Playgroud)

显然,它没有用.

window addSubView也没有工作,因为第一个视图控制器是根视图控制器(不确定我说的是正确的).换句话说,当我运行应用程序时,第一个视图就是我看到的一个按钮,它应该加载第二个视图.

我花了几个小时寻找一个简单的例子,我找不到任何一个.

有什么建议?

iphone views

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

本地化代码不起作用

我正在开发一个Android应用程序,并实现本地化.

因此我在单独的文件夹中创建strings.xml,例如values,values-ja,values-es.

但是,eclipse会为我的values文件夹抛出错误.

价值观 - 美国不适用于西班牙美国的价值观 - fr-CA不在法国加拿大工作

我指的是http://download1.parallels.com/SiteBuilder/Windows/docs/3.2/en_US/sitebulder-3.2-win-sdk-localization-pack-creation-guide/30801.htm的本地化代码

其他本地化,例如values-hk,values-tw,values-uk似乎很好.

有人能指出我正确的方向吗?我怎样才能为西班牙语美国和西班牙,法国加拿大和法国提供单独的字符串.

谢谢

android localization

3
推荐指数
1
解决办法
4679
查看次数

当2个线程写入同一个对象时会发生什么?

嗨,我想知道如果2个线程同时写入一个对象会发生什么?不确定这应该是线程,我有一个视图的多个副本,每个副本访问和写入nsuserdefault对象.如果视图的两个或多个副本写入同一对象会发生什么?有某种锁定机制吗?

谢谢

iphone objective-c

2
推荐指数
1
解决办法
967
查看次数

苹果手机; 只有在视图出现后才能执行操作..ViewWillAppear?

嗨,我遇到了一些与此有关的混乱; 我想在视图出现后才执行某些操作,可能在收集数据时显示活动指示.我已经在viewWillAppear中编写了我的代码,但它似乎是在视图出现在屏幕上之前触发的.我已经用一些NSLog语句对此进行了双重检查,并且我在viewWillAppear中添加了2秒的睡眠,NSLog语句被触发,并且视图仅在延迟2秒后出现 - 我预计,一旦视图执行了2秒延迟进入屏幕?

难道我做错了什么?我甚至尝试过viewDidAppear,同样的事情.有什么建议?

谢谢

编辑:我想清楚地说明我在做什么

1. i have a parent view, which has a scroll view - and a subview
2. In the parent view, i create multiple instances of the subview and add them to the scrollview, creating scrollable views, which work.
3. Each view is passed an argument and depending on the argument the view contents change - works as expected.
4. I would like to show the subview and once its on the screen, do …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uiview

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

Restkit无法读取有效的json?

我刚开始使用restkit for ios.我有一个非常简单的json响应

{"result":[{"userid":"5964","name":"你的名字"}}}

这是一个有效的json(针对jsonlint测试)

但是,当我尝试将它与RKClient一起使用时,它不会将其视为json.这是我的代码

-(void) request:(RKRequest *)request didLoadResponse:(RKResponse *)response{

    if([request isGET]){
        if([response isJSON]){
            NSLog(@"JSON Response from Server %@", [response bodyAsString] );    
        }else{
            NSLog(@"Non JSON Response from Server %@", [response bodyAsString] );    
        }
    }

}
Run Code Online (Sandbox Code Playgroud)

它总是记录"非JSON Reponse ...."但json完全有效.当我使用RKObjectMapping时会发生同样的事情; 错误将是"无法找到MIME类型text/xml的解析器.

任何帮助都非常感谢.

谢谢

json ios restkit

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

iphone xcode; mutableCopy仍然是不可变的?

关于这个问题我到处都看了.我要做的就是创建一个nsuser默认对象,然后向它添加一个可变数组并尝试修改nsuserdefaults对象.

//Created a sample array
NSMutableArray *xml=[[NSMutableArray alloc] init];
[xml addObject:@"x"];
[xml addObject:@"x"];
[xml addObject:@"x"];
[xml addObject:@"x"];
[xml addObject:@"x"];
//assigned to defaults object which is created previously with a mutableCopy
[defaults  setObject:[xml mutableCopy] forKey:@"userLocationsDetailedXML"]; 
//Tried to modify the defaults object - which at this point should be mutable
[[defaults objectForKey:@"userLocationsDetailedXML" ] replaceObjectAtIndex:1 withObject:@"y"] ;
Run Code Online (Sandbox Code Playgroud)

添加也没有[defaults synchronize]帮助.

但令人惊讶的是,默认对象仍然是不可变的.它是__NSCFArray,而不是__NSCFArrayM如预期的任何建议?

编辑:控制台输出类:__ NSCFArray => 因为我创建了一个可变副本,所以它不应该是_ NSCFArrayM吗?[ _NSCFArray replaceObjectAtIndex:withObject:]:mutating方法发送到不可变对象'

iphone xcode nsmutablearray

0
推荐指数
1
解决办法
1281
查看次数