我正在编译SDK 10(2.3.3):
android:minSdkVersion="10"
android:targetSdkVersion="16"
Run Code Online (Sandbox Code Playgroud)
我正在测试两款索尼爱立信智能手机.其中一个有Android 2.3.7,另一个有4.0.1.
我listenUsingInsecureRfcommWithServiceRecord用来在蓝牙上打开一个新的服务器套接字并听取连接.
如果成功接受连接,那么一切正常.我甚至可以尝试取消服务器套接字,但这似乎并没有打扰刚刚创建的连接套接字.
但是当我想在线路bluetoothServerSocket.close();被执行后接受任何连接之前取消服务器套接字时,整个活动就会关闭并且进程终止.而且这不是我能处理的常规例外.
实际上即使logcat本身也退出!! 我必须再次快速执行它以获取您可以在下面看到的错误:
Zygote D Process 25471 terminated by signal (11)
295 InputDispatcher W channel '2c2e20a8 com.pligor.test/activities.MainActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x8
295 InputDispatcher E channel '2c2e20a8 com.pligor.test/activities.MainActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
295 dalvikvm D GC_FOR_ALLOC freed 1299K, 21% free 13252K/16583K, paused 93ms
295 InputDispatcher W Attempted to unregister already unregistered input …Run Code Online (Sandbox Code Playgroud) 我必须制作一个用户在屏幕上移动的应用程序,就像我们的android主屏幕一样.
有一个图像列表,我们可以在水平滚动条中滚动图像.
用户无法更改图像的位置,就像在水平屏幕上排列的一些缩略图一样
这就像iPhone应用程序开发中的分页控件.
我试图找到这样做的方法,但我对android很新,我想知道实现上述目标的最佳方法吗?
我听说过画廊控制,但我不确定它是否适合我的目的.
此外,如果你能给出你建议的答案的链接..这将是很好的,好像有一个新的控制器参与,我将能够更好地理解它,因为我仍然是一个更新鲜.先感谢您.
编辑:对于那些不熟悉iPhone分页视图的人,这是一个视频示例.
我正在尝试创建一个EditText自动大写和自动更正实现.我已经手动想出如何添加InputFilters以允许自动大写,虽然这仅在键入第一个字母后才有效,而且我没有运气自动校正(我试图创建一个使用的InputFilter AutoText,但我不是确定这一切是如何工作的).理想情况下,我可以使用EditText.setInputType(...)来处理所有内容,但到目前为止这还没有奏效.有没有办法实现这个目标?我失败的尝试如下所示(我只是得到正常输入).
EditText mEditText = new EditText(this);
int inputType = InputType.TYPE_CLASS_TEXT;
if (auto_capitalize) {
inputType = mEditText.getInputType() | InputType.TYPE_TEXT_FLAG_CAP_CHARACTERS;
}
if (auto_correct) {
inputType = mEditText.getInputType() | InputType.TYPE_TEXT_FLAG_AUTO_CORRECT;
}
mEditText.setInputType(inputType);
Run Code Online (Sandbox Code Playgroud)
请注意,我只对EditText在代码中创建此代码的解决方案感兴趣- 而不是通过XML.
编辑
我找到了描述TextKeyListener的声音新文档,但是在尝试使用它之后:
mEditText.setKeyListener(new TextKeyListener(TextKeyListener.Capitalize.CHARACTERS, true));
Run Code Online (Sandbox Code Playgroud)
并且使用@ farble1670的使用思路setRawInputType,以免影响KeyListeners,文本仍然没有变化.
我对Android开发相对较新,我想知道是否可以将VideoView屏蔽成形状.这是我到目前为止:


我的视频和布局XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#0088ff"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".VideoPlayerActivity" >
<FrameLayout
android:layout_width="250dp"
android:layout_height="250dp"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:background="@drawable/circular_mask"
android:foreground="@drawable/circular_mask" >
<VideoView
android:id="@+id/videoView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fitsSystemWindows="false"
android:focusable="false"
android:focusableInTouchMode="false"
android:scrollbarAlwaysDrawVerticalTrack="false" />
<Space
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
面膜形状xml:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:padding="20dp"
android:shape="oval" >
<solid android:color="#FFFFFFFF" />
<corners android:radius="10dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)
主要java:
package com.example.webmvideo;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.annotation.TargetApi;
import android.app.Activity;
import android.view.Menu;
import android.widget.MediaController;
import android.widget.VideoView;
import android.util.Log;
import android.media.MediaPlayer;
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public class MainActivity extends Activity …Run Code Online (Sandbox Code Playgroud) 我正在使用一个MotionEventAndroid在Android中捕获一个长按.然后,我需要将坐标转换为画布坐标,我可以从中生成自定义地图坐标(而不是Google地图).SurfaceViewGestureListenerMotionEvent
从我所读到的,我采取了给定MotionEvent e,e.getX()并e.getY()得到像素坐标.如何将这些坐标转换为SurfaceView画布坐标?
这是我GestureListener的聆听长时间点击:
/**
* Overrides touch gestures not handled by the default touch listener
*/
private class GestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
public void onLongPress(MotionEvent e) {
Point p = new Point();
p.x = (int) e.getX();
p.y = (int) e.getY();
//TODO translate p to canvas coordinates
}
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
编辑: 这是否与屏幕尺寸/分辨率/深度和画布'Rect对象有关?
我试图得到给定的默认/首选应用程序Intent.例如,当用户安装第二个Web浏览器,然后尝试打开URL时,他或她将获得如下对话框:

如果用户随后选择" 默认使用此操作"选项,则在按下URL时将不再打开该对话框.
我正在开发一个应该知道这个默认或首选 app/action的应用程序.我该怎么做呢?我目前正在使用下面的代码,但getPreferredPackage不会返回任何内容:
Intent i = (new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.google.com"));
PackageManager pm = context.getPackageManager();
final List<ResolveInfo> list = pm.queryIntentActivities(i, 0);
IntentFilter ifilter = new IntentFilter(i.getAction());
if (i.getCategories() != null) {
for(String category : i.getCategories()) {
ifilter.addCategory(category);
}
}
List<IntentFilter> filters = new ArrayList<IntentFilter>();
filters.add(ifilter);
List<ComponentName> preferredActivities = new ArrayList<ComponentName>();
pm.getPreferredActivities(filters, preferredActivities, null);
for (ComponentName activity : preferredActivities) {
for (ResolveInfo rinfo : list) {
if (rinfo.activityInfo.applicationInfo.packageName.equals(activity.getPackageName())) {
try {
final PackageInfo …Run Code Online (Sandbox Code Playgroud) 我刚安装Xcode 4.6(我有Xcode 4.5.1).我刚刚打开一个现有的项目并得到了这样的信息:
工作副本"path/to/my project"需要比Xcode支持的更新版本的Subversion.
我目前正在使用Cornerstone for svn,并了解我可能会忽略此消息 - 但由于我想要了解最新信息,我需要做些什么来解决此问题?

虽然我对使用Objective-C进行开发很熟悉,但在错误解释方面,我仍然认为自己有点像n00b.我正致力于其他人也在努力的工作申请.我相信我们可能有不同版本的Xcode,一个开发人员有一台PC(其他人和我有一台MacBook).我正在使用Xcode 4.5.1.
问题
我得到以下Apple Mach-O链接器错误:
ld:截断的胖文件.对于体系结构i386 clang,从68到2783300的切片是文件末尾,长度为135:错误:链接器命令失败,退出代码为1(使用-v查看调用)
完整错误如下(路径重命名):
Ld build/Debug-iphonesimulator/MyApp.app/MyApp普通i386 cd/Users/me/Documents/MyApp/trunk setenv IPHONEOS_DEPLOYMENT_TARGET 5.1 setenv PATH"/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/ USR /斌:/Applications/Xcode.app/Contents/Developer/usr/bin:在/ usr/bin中:/ bin中:/ usr/sbin目录:/ sbin目录:在/ usr/local/bin目录:在/ usr/X11/bin中:/ opt/local/bin:/ usr/local/git/bin"/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -L/Users/me/Documents/MyApp/trunk/build/Debug-iphonesimulator -F/Users/me/Documents/MyApp/trunk/build/Debug-iphonesimulator -F/Users/me/Documents/MyApp/trunk -filelist /Users/me/Documents/MyApp/trunk/build/MyApp.build/Debug-iphonesimulator/MyApp.build/Objects-normal/i386/MyApp .LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -lsqlite3.0 -v -fobjc-arc -fobjc-link-runtime -Xlinker - no_implicit_dylibs -mios-simulator-version-min = 5.1 -framework MobileCoreServices -weak_framework Accounts -weak_framework AdSupport -weak_framework Social -framework CoreBluetooth -framework MediaPlayer -framework QuartzCore -framework UIKit -framework Foundation -framework CoreGraphics -framework FacebookSDK -o/Users/me /Documents/MyApp/trunk/build/Debug-iphonesimulator/MyApp.app/MyApp
Apple clang 4.1版(标签/ …
我有在Android上捕获视频剪辑的代码:
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
intent.putExtra("android.intent.extra.durationLimit", 30000);
intent.putExtra("EXTRA_VIDEO_QUALITY", 0);
startActivityForResult(intent, ActivityRequests.REQUEST_TAKE_VIDEO);
Run Code Online (Sandbox Code Playgroud)
此代码适用于API 2.2,但持续时间限制不适用于API 2.1(Galaxy S).设定这个时间是否有一些常数或参数,或者是否有比我正在使用的方法更好的方法?
我问,因为我找到了另一个适用于Galaxy S(被叫Vibrant)的应用程序,可以在很短的时间内录制视频.
我正在构思一个Android应用程序,它将数据从一个设备发送到另一个设备(如图片消息),但由于我没有服务器,我正在研究其他消息传递方式.Google Cloud Messaging(GCM)似乎是一个不错的选择,因为它是针对Android制作的,并且可以免费使用,但它仍然需要服务器才能使用.有没有办法绕过这个要求 - 比如在应用程序本身上运行GCM服务器?或者在Android上有更好的无服务器消息传递方法吗?