我开发了一个使用我自己的应用程序custom keyboard(好吧,看起来像键盘的视图,无论如何都像键盘一样).我还没弄明白的一件事是如何default soft keyboard 'click'在按下按钮时播放声音.有没有简单的方法来做到这一点?
我想keyboard click用手机附带的声音而不是提供我自己的声音.由于不同的手机可能有不同的键盘咔嗒声,我想保持我的应用程序一致.最后,我想反映用户在全局键盘设置中选择的相同设置(播放/不播放声音,振动/不振动等).
我希望每当用户使用我的广播接收器启动任何应用程序时捕获时间.广播接收机是否有可能捕捉到这样的事件?如果是的话,是否有任何可以做到这一点的倾向?
我正在尝试学习如何在Android上使用WiFi(例如,自动连接到网络,启动新连接等).
任何人都可以建议过去帮助过他们的好网站或书籍吗?
我有一个Android服务试图绑定到服务器套接字端口24.因为它是特权端口,它失败了绑定异常.我想知道我需要做些什么来使这个工作.我看到这个论坛有几次被问过,但没有解决方案.
此服务在Android上运行的设备上运行.我们为设备构建了android平台.我们拥有所需的一切控制权.
在我的应用程序中,我正在从网上下载图像.有时我在堆栈跟踪中收到以下错误,然后应用程序崩溃."过程已经死亡"是什么意思?怎么办呢?
ERROR
09-06 11:03:46.127 I/ActivityManager( 98): Process com.ibkr.elgifto (pid 7684) has died.
09-06 11:03:46.157 I/WindowManager( 98): WIN DEATH: Window{44b0e778 com.ibkr.elgifto/com.ibkr.elgifto.ElgiftoSplash paused=false}
09-06 11:03:46.167 I/WindowManager( 98): WIN DEATH: Window{44b4e400 com.ibkr.elgifto/com.ibkr.elgifto.Ehome paused=false}
09-06 11:03:46.207 I/ActivityManager( 98): Start proc com.ibkr.elgifto for activity com.ibkr.elgifto/.ElgiftoSplash: pid=8011 uid=10060 gids={3003, 1015}
09-06 11:03:46.487 I/UsageStats( 98): Unexpected resume of com.ibkr.elgifto while already resumed in com.ibkr.elgifto
09-06 11:04:16.687 W/InputManagerService( 98): Got RemoteException sending 'screen on/off' notification to pid 7684 uid 10060
Run Code Online (Sandbox Code Playgroud) 我使用了installLocation,可以确定是否可以移动应用程序.但是,当我们想知道某个应用程序是否已移至SD卡时,我无法弄清楚会发生什么.
该ApplicationInfo属性FLAG_EXTERNAL_STORAGE仅告知您应用程序是否已安装到SD,而不是已移至.我正在生成一个可以移动到SD卡的应用程序列表.所以我生成的第一个列表是使用installLocation清单.从这个列表中我可以过滤出已经移动到SD卡的应用程序.
我有这个动画,一种闪烁的动画,这样当点击按钮时,矩形"闪烁".我已经为动画编写了代码,只是想知道是否有更好的方法来实现这个动画.有什么建议?
代码如下:
<Window.Resources>
<Storyboard x:Key="OnClick1">
<ObjectAnimationUsingKeyFrames Duration="0:0:10" Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="rectangle">
<DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Collapsed}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.1" Value="{x:Static Visibility.Visible}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.2" Value="{x:Static Visibility.Collapsed}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.3" Value="{x:Static Visibility.Visible}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.4" Value="{x:Static Visibility.Collapsed}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.5" Value="{x:Static Visibility.Visible}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.6" Value="{x:Static Visibility.Collapsed}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.7" Value="{x:Static Visibility.Visible}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.8" Value="{x:Static Visibility.Collapsed}"/>
<DiscreteObjectKeyFrame KeyTime="0:0:0.9" Value="{x:Static Visibility.Visible}"/>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</Window.Resources>
<Window.Triggers>
<EventTrigger RoutedEvent="ButtonBase.Click" SourceName="button">
<BeginStoryboard Storyboard="{StaticResource OnClick1}"/>
</EventTrigger>
</Window.Triggers>
<Grid x:Name="LayoutRoot">
<Rectangle x:Name="rectangle" Fill="#FFF4F4F5" HorizontalAlignment="Left" Height="35" Margin="129,166,0,0" Stroke="Black" VerticalAlignment="Top" Width="73"/>
<Button x:Name="button" Content="Button" Margin="272,158,263,0" Height="37" VerticalAlignment="Top"/>
</Grid>
Run Code Online (Sandbox Code Playgroud) 我最感兴趣的是对Android的答案,虽然很高兴知道答案是否适用于网站,iOS等.我可以在Google Analytics中匿名化IP(使用setAnonymizeIp())并仍然跟踪唯一身份访问者吗?我了解Google Analytics会为网站使用Cookie,因此我认为它可能(甚至可能是自动的).
我正在编写包含两个元素的简单应用程序 - 服务和活动.活动仅用于启动和停止服务.服务用于PhoneStateListener获取有关当前CellID,LAC和RSSI(信号强度)的信息并将其记录到文件中.
电话没有睡觉时一切正常.我注意到在关闭屏幕和几分钟不活动之后我PhoneStateListener不再被调用了.我尝试将PARTIAL_WAKE_LOCK(以及其他类型的锁)添加到我的服务中,但我想这会导致严重的电池耗尽,不应该以这种方式使用.另一方面,它并没有真正帮助我.我的另一个尝试是使用Timer并PhoneStateListener在指定的时间间隔内注销/注册我.出乎意料的是,看起来这种方式有助于刷新CellId和LAC(所以我猜这是onCellLocationChanged()从我的听众那里调用的),但信号强度仍未更新.
我没有尝试使用BroadcastReciever,但经过一些深入研究主题和阅读线索后,我不认为这对我有用.
总结一下,我的问题是:为什么PhoneStateListener手机睡眠时不调用方法?有没有办法(如强制电话唤醒或使用不同的机制)有效地克服这种行为?
我正在使用下面的代码来遍历我的列表,如果List Items可见,它工作正常.
如果List是可滚动的,那么使用此代码不会访问非可见项.如何遍历所有可见+不可见项目的列表项.
for(int i=0;i<list.getCount;i++)
{
View v = list.getChildAt(i);
TextView tv= (TextView) v.findViewById(R.id.item);
Log.d("","ListItem :"+tv.getText());
}
Run Code Online (Sandbox Code Playgroud)