Tag: android

Android意图过滤器:将应用与文件扩展名关联

我有一个自定义的文件类型/扩展名,我想要关联我的应用程序。 据我所知,数据元素是为了这个目的,但我不能得到它的工作。 http://developer.android.com/guide/topics/manifest/data-element.html根据文档和大量的论坛帖子,它应该像这样工作: <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:mimeType="application/pdf" /> </intent-filter> 那么,这是行不通的。 我做错了什么? 我只是想声明自己的文件类型。

从相机拍摄照片,无需预览

我正在编写一个刚开机后启动的Android 1.5应用程序。 这是一个Service ,应该没有预览的照片。 这个应用程序将记录某些地区的光密度。 我能拍照,但照片是黑色的。 经过很长时间的研究,我发现了一个关于它的bug。 如果您不生成预览,则由于Android相机需要预览才能设置曝光和对焦,因此图像将为黑色。 我创建了一个SurfaceView和监听器,但是onSurfaceCreated()事件永远不会被触发。 我猜的原因是,表面不是在视觉上创建。 我也看到一些使用MediaStore.CAPTURE_OR_SOMETHING静态调用摄像头的例子,它会拍摄一张照片,并用两行代码保存在所需的文件夹中,但是也不会拍摄照片。 我需要使用IPC和bindService()来调用这个函数吗? 还是有另一种方法来实现这一目标?

OnItemCLickListener不能在listview中工作

Activity课程代码: conversationList = (ListView)findViewById(android.R.id.list); ConversationArrayAdapter conversationArrayAdapter=new ConversationArrayAdapter(this, R.layout.conversation_list_item_format_left, conversationDetails); conversationList.setAdapter(conversationArrayAdapter); conversationList.setOnItemClickListener(new AdapterView.OnItemClickListener(){ @Override public void onItemClick(AdapterView<?> arg0, View arg1, int position, long arg3) { Log.d("test","clicked"); } }); Adapter类中的getView函数: if (v == null) { LayoutInflater vi = (LayoutInflater)ctx.getSystemService(Context.LAYOUT_INFLATER_SERVICE); if(leftSideMessageNumber.equals(m.getTo())) { v = vi.inflate(R.layout.conversation_list_item_format_left, null); } else { v = vi.inflate(R.layout.conversation_list_item_format_right, null); } } 在膨胀时使用两个xml是否有问题?

检测Android设备是否具有Internet连接

我需要告诉我的设备是否有Internet连接。 我发现了很多答案: private boolean isNetworkAvailable() { ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); return activeNetworkInfo != null; } (从检测Android上是否有可用的Internet连接 ) 但是,这是不正确的,例如,如果我连接到无法访问Internet的无线网络 ,此方法将返回true … 有办法告诉设备是否有Internet连接,而不是只有连接什么东西?

如何在Android中拨打电话并在通话结束后回到我的活动?

我正在启动一个打电话的活动,但是当我按下“结束通话”按钮时,它不会回到我的活动中。 你能告诉我怎样才能启动一个呼叫活动回来给我当“结束通话”按钮被按下? 这就是我打电话的方式: String url = "tel:3334444"; Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(url));

如何查看Android设备的GPS是否启用

在启用Android Cupcake(1.5)的设备上,如何检查并激活GPS?

对话引发getApplication()作为上下文,“无法添加窗口 – 标记null不适用于应用程序”

我的活动正在尝试创建一个需要上下文作为参数的AlertDialog。 如果使用: AlertDialog.Builder builder = new AlertDialog.Builder(this); 然而,我不愿意使用“this”作为上下文,因为即使在像屏幕旋转这样简单的事情中,Activity被破坏并被重新创建时,由于内存泄漏的可能性。 从Android开发者博客上的相关文章 : 有两种简单的方法可以避免上下文相关的内存泄漏。 最明显的就是避免脱离自己范围之外的背景。 上面的例子显示了一个静态引用的情况,但是内部类和它们对外部类的隐式引用可能同样危险。 第二个解决方案是使用应用程序上下文。 只要您的应用程序处于活动状态,并且不依赖于活动的生命周期,此上下文就会生效。 如果您打算保留需要上下文的长寿命对象,请记住应用程序对象。 你可以通过调用Context.getApplicationContext()或者Activity.getApplication()来获得它。 但是对于AlertDialog() getApplicationContext()或getApplication()都不能作为Context使用,因为它引发异常: “无法添加窗口 – 标记null不适用于应用程序” 每个参考: 1,2,3等 那么,这是否真的被认为是一个“错误”,因为我们正式建议使用Activity.getApplication() ,但它不起到广告作用? 吉姆

如何在Android中添加日历事件?

我只是在加快Android的速度,今天在一个项目会议上有人说,Android没有本机日历应用程序,所以用户只需使用他们喜欢的任何日历应用程序。 这是真的,如果是这样,我怎么编程添加一个事件到用户的日历? 他们都有共同的API吗? 对于它的价值,我们可能是针对Android 2.x.

在Android中存储私人API密钥的最佳做法

我正在开发一个应用程序,并使用Dropbox和Google Drive等多个第三方API和SDK。 这些库需要API密钥。 私人的和公共的。 目前我有这样的东西: public class DropboxService { private final static String APP_KEY = "jk433g34hg3"; private final static String APP_SECRET = "987dwdqwdqw90"; private final static AccessType ACCESS_TYPE = AccessType.DROPBOX; // SOME MORE CODE HERE } 应用程序密钥应该保密 – 但是当发布应用程序时,他们可以被一些人扭转。 我想知道什么是最好的加密,混淆或什么使这个安全。 我想过使用ProGuard,但是为整个项目设置ProGuard需要花费几个星期的时间。 这就是为什么我只想使用ProGuard来存储私钥和其他敏感数据的重要类。 这是好的还是有其他的方法吗? 你怎么看?

如何在Android中读取彩信数据?

我想读取MMS数据,我已经看到mmssms.db中存储mms条目的部分表; 我正在使用游标,我想知道适当的URI ; 我正在使用“content:// mms-sms /对话”和图像的“地址”(发送到),“文本”或“主题”和“数据”列名称的列名称。 我已经看到了mmssms.db的模式和他们的部分表的列。