我正在使用android.media.MediaPlayer
对象在我的应用程序中播放音频文件.一切正常,但是当正在播放歌曲时打电话时,应用程序不会暂停媒体播放器,您可以在通话期间听到该歌曲.请告诉我如何通过电话暂停媒体播放器,并在通话结束后再次恢复播放器.
我想写实现对象的数组Parcelable到地块使用 writeParcelableArray.
我正在尝试编写的对象(正如您所期望的那样)被定义为:
public class Arrival implements Parcelable {
/* All the right stuff in here... this class compiles and acts fine. */
}
Run Code Online (Sandbox Code Playgroud)
而我正试图将它们写成一个"包裹":
@Override
public void writeToParcel(Parcel dest, int flags) {
Arrival[] a;
/* some stuff to populate "a" */
dest.writeParcelableArray(a, 0);
}
Run Code Online (Sandbox Code Playgroud)
当Eclipse尝试编译时,我收到错误:
绑定不匹配:Parcel类型的泛型方法writeParcelableArray(T [],int)不适用于参数(Arrival [],int).推断类型Arrival不是有界参数<T extends Parcelable>的有效替代
我完全不明白这个错误信息.Parcelable
是一个接口(不是类)所以你不能扩展它.有人有主意吗?
UPDATE:把当我有基本相同的问题ArrayList
的Parcelable
s转换为Intent
:
Intent i = new Intent();
i.putParcelableArrayListExtra("locations", (ArrayList<Location>) locations);
Run Code Online (Sandbox Code Playgroud)
收益率:
方法putParcelableArrayListExtra(String,ArrayList <?extends Parcelable>)方法不适用于参数(String,ArrayList <Location>) …
我想要一个能够正确拉伸/缩放9个补丁图像的Javascript库.知道一个吗?
如果可能的话,我还想要一种更改默认值的方法。
根据查询和索引文档,您可以有效地进行查询(据我所知):
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
Query q = pm.newQuery(App.class);
q.setOrdering("name desc");
try {
results = (ArrayList<App>) q.execute();
} finally {
q.closeAll();
}
} finally {
pm.close();
}
Run Code Online (Sandbox Code Playgroud)
但是,我收到以下错误results = (ArrayList<App>) q.execute();
:
java.lang.ClassCastException: org.datanucleus.store.appengine.query.StreamingQueryResult cannot be cast to java.util.ArrayList
at com.killerrobots.AppSite.MainServlet.getApplications(MainServlet.java:66)
at com.killerrobots.AppSite.MainServlet.doGet(MainServlet.java:26)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
at com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:54)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:306)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:313) …
Run Code Online (Sandbox Code Playgroud) 我现在在几个不同的应用程序中遇到了这个问题,我似乎无法找到解决方案.
如果,在onCreate()中Activity
,我启动了一个使用对话框主题的活动,它不会在屏幕上绘制任何内容......整个屏幕保持黑色.所有的观点都在那里(例如,我可以点击EditText
应该在哪里,它会给我键盘),它们只是不可见.
有人有主意吗?
愚蠢的简单例子,为了好玩:
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startActivityForResult(new Intent(this, CredentialsInputActivity.class), 1);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
// do some crap with the result, doesn't really matter what
}
}
Run Code Online (Sandbox Code Playgroud)
CredentialsInputActivity
是非常直接的...只是扩展Activity
并@android:style/Theme.Dialog
在清单文件中设置主题.
我有一个加密的文本,我需要解密.它是用AES-256-CBC加密的.我有加密的文本,密钥和iv.然而,无论我尝试什么,我似乎无法让它工作.
互联网已经建议mcrypt的Rijndael密码能够做到这一点,所以这就是我现在所拥有的:
function decrypt_data($data, $iv, $key) {
$cypher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
// initialize encryption handle
if (mcrypt_generic_init($cypher, $key, $iv) != -1) {
// decrypt
$decrypted = mdecrypt_generic($cypher, $data);
// clean up
mcrypt_generic_deinit($cypher);
mcrypt_module_close($cypher);
return $decrypted;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
现在,我得到2个警告,输出是胡言乱语:
Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Key size too large; supplied length: 64, max: 32 in /var/www/includes/function.decrypt_data.php on line 8
Warning: mcrypt_generic_init() [function.mcrypt-generic-init]: Iv size incorrect; supplied length: 32, needed: 16 in /var/www/includes/function.decrypt_data.php on line 8
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.
如何在MapView
给定坐标上绘制线条?
AFAIK,在iPhone上是可能的.
请指教.
提前致谢.
在模拟器中,我似乎无法写入附加的SDCard.以下代码总是吐出"无法写入根"的日志消息,而不是"无法读取根"的消息.
File routesRoot = Environment.getExternalStorageDirectory();
if (!routesRoot.canWrite())
Log.v(getClass().getSimpleName(), "can't write root");
if (!routesRoot.canRead())
Log.v(getClass().getSimpleName(), "can't read root");
Run Code Online (Sandbox Code Playgroud)
想法?
我正在尝试编写一个可以作为JAR文件共享的库.这个库将包含一个Activity,我想在JAR中包含该布局.由于似乎不可能在JAR中包含资源文件,并且我不希望最终用户必须自己包含这些文件,我认为将XML作为字符串包含然后手动膨胀将是一个很好的黑客攻击它.有谁知道这是否可能?还有其他想法吗?