zoukankan      html  css  js  c++  java
  • SDK接入注意点

    1、 新建的android项目,要把MainActivity.java里生成的东西全部删去,最好只留个onCreate入口方法,不然会产生什么“hello world”,会把自己写的View内的东西覆盖掉,不懂android的朋友最好这样做

    2、因为项目需要使用Unity提供的接口,所以需要将接口classes.jar引入至当前工程但中。在java android工程的libs文件夹里面引入的class包,此包一般在unity的安装目录下,目录大概为:UnityEditorDataPlaybackEnginesandroidplayer eleaseinclasses.jar,在导入unity工程中的时候就不需要了,这只是为了引入此类UnityPlayerActivity

    3、导入unity工程只需要assetslibsres三个文件夹和AndroidManifest.xml文件即可(放入Plugins/Android此目录下),另外要把用批处理文件打包生成的jar包也要放入libs,另外如果第三方的东西是个Library的话,那么也需要把第三方下的assets、libs、res里的文件拷贝到我们新建的对应的assets、libs、res文件夹下去,另外有可能Library里面的文件会和我们新建的工程里面的文件相同,只是版本不一样罢了,例如android-support-v4.jar,所以我们必须删除一个,留下一个最新的即可

    4、批处理打包的bat命令:

    cd G:\_zwhandroidWorkspace4399SDKSDKProjectinclasses            //Android工程下的Classes目录的位置
    jar -cvf MainActivity2.jar *                                                                  //生成的包名,随便什么名字
    start "" "G:\_zwhandroidWorkspace4399SDKSDKProjectinclasses"  //生成的包的位置

    5、发布 没找到方法(notfindFunc)

    原因:用批处理打包的位置出错

    解决方案:更换正确的位置即可!

    6、发布好的程序闪退:一般是自己sdk那边代码写错了造成了,自己认真检查即可!

    7、

    Dfile.encoding=UTF8 -jar  问题解决:把libs下的class.jar文件删除,再拷贝到unity之中去

    8、

    创建Activity时报这个错,原因和为毛创建Android工程时报的错大概是一样的,如下,

     就是在新建android程序的时候,Minimum最低的SDK版本要为API14Android 4.0,不然创建的工程会报错,此处的错误解决方法如下:

         

    9、android项目出现红色大感叹号的问题解决方法

    先右键刷新工程看看,不行就按下面的来查看问题

    【问题原因】:工程中classpath中指向的包路径错误
    【解决办法】:右键项目 → 属性 →

    然后上面有几个选项卡找到 Libraries中 出现红色叉号的包为路径错误的包。到classpath中修改相应包的当前路径,也就是你SDK的路径。然后回到eclipse中F5刷新工程

    比如我的就是:BuildPath —> Configure Build Paht…中 选择然后 edit 修改为E:AndroidDevandroid-sdksplatformsandroid-10android.jar

    如果还有错误 那还有android sdk 版本的选择 要注意

    你用myeclipse新建 web工程, 在工程目录下会生成一个 .classpath 配置文件, 
    里面是你工程里面引用的jar的配置。这个.classpath 对你的web工程没有什么影响 
    其实是给 myeclipse 识别的。 你说的这种情况是因为 .classpath 文件里面 
    配置引用了某个jar,但是实际上你的 lib 里面并没有这个jar 所以才会有红色的提示。 
    你不用拿.classpath文件和你的jar一个个去找, 你现在打开MyEclipse 
    右键单击你的web工程,找到 Build Path > Configure Build Paht... 
    > 然后上面有几个选项卡找到 Libraries。  这里看到的就是你工程里面引用的 
    所有的 jar , 看看是不是在某个jar图标上有个很小的黄色的感叹号? 
    如果有的话就没错了, 先选中这个jar, 点击右边的 Remove  > 点击OK 
    等待几秒, 现在web工程上面的红色XX是不是没有了,哈哈。 
    解释一下: 黄色的感叹号的jar,表示.classpath配置文件引用了jar, 
    但是实际上lib里面没有这个jar。

    10、老版本apk无法覆盖新版本,换用一个安装器就可以了

    11、安装一个apk,手机桌面出现两个游戏图标:

    在AndroidManifest文件中找到intent-filter → android.intent.action.MAIN和这个重复的,留下类似com.noumena.android.pps.LogoActivity下的MAIN,删除另一个

    12、解决打包里面没有x86的问题

    从unity4.6版本开始,unity已经对Android系统支持x86平台的编译构建了,同时也支持了通用二进制 (通用二进制作为默认的编译选项)。

    大家都知道,目前市面上主流的Android设备主要是armeabi,armeabiv7a和x86平台,对于独立CPU平台的支持有助于程序在该平台的运算和优化。下面简单介绍一下如何配置。

    1.打开unity项目

    2.单击unity菜单栏的File->build settings
    3.点击"player setting",在inspector视图下的Other Settings框内,即可找到Device Filter,选择x86,则最终构建出来x86平台的APK包,unity android配置和之前版本完全一样,这里就不再赘述了。
    如此,我们就完成了unity for android x86平台的配置了,如果想同时支持x86和armeabi平台,在device filter 中选择(FAT  AR Mv7+X86)即可。
    13、通过连接打开app
    在info.plist里添加 URL types 属性,如下图:
    URL identifier不设也没关系,貌似只要设一个URL Schemes就可以了!
    这样就可以了,那么你在浏览器里面输入  cszd://  就可以打开此应用了,当然了后面也可以带你传入的参数都是可以的,例如cszd://name=zwh&age=18,只要开头是cszd://就可以了
    如果想在此应用了获取此url,可以在UnityAppController.mm文件里获取
    - (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation
    {    
        NSString *str = [url absoluteString];
        printf_console(" address is = %s ",[str UTF8String]);
        
        NSMutableArray* keys    = [NSMutableArray arrayWithCapacity:3];
        NSMutableArray* values    = [NSMutableArray arrayWithCapacity:3];
    
        #define ADD_ITEM(item)    do{ if(item) {[keys addObject:@#item]; [values addObject:item];} }while(0)
    
        ADD_ITEM(url);
        ADD_ITEM(sourceApplication);
        ADD_ITEM(annotation);
    
        #undef ADD_ITEM
    
        NSDictionary* notifData = [NSDictionary dictionaryWithObjects:values forKeys:keys];
        AppController_SendNotificationWithArg(kUnityOnOpenURL, notifData);
        return [PluginHandler application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
    }

    14、设置启动主页

     

     15、String types not allowed (at 'configChanges' with value错误
      用Unity发布apk包的时候,会出现这个错误,是在用了Unity2017.2.0f3这个版本之后,才出现这个问题的,以前版本都没有出现过此类问题,搜索了下,只要在SDK Manager中安装了API 25就可以了,试了下,果然可以
    16、Failed to load the JNI shared library "F:JDKazin..jreinclientjvm.dll".
      出现这问题的原因是Eclipse和JDK位数不一致造成的,两者必须同时为32位或者64位。  
     
     
     
  • 相关阅读:
    [Swift通天遁地]四、网络和线程-(13)创建一个Socket客户端
    [Swift通天遁地]四、网络和线程-(12)使用ReachabilitySwift实现对网络状态的检测
    [Swift通天遁地]四、网络和线程-(11)将服务器返回的JSON映射为实例对象
    [Swift]LeetCode972.相等的有理数 | Equal Rational Numbers
    [Swift]LeetCode971.翻转二叉树以匹配先序遍历 | Flip Binary Tree To Match Preorder Traversal
    [Swift]LeetCode969.煎饼排序 | Pancake Sorting
    [Swift]LeetCode970.强整数 | Powerful Integers
    [SQL]LeetCode262.行程和用户 | Trips and Users
    [Swift]LeetCode261.图验证树 $ Graph Valid Tree
    [Swift]LeetCode260. 只出现一次的数字 III | Single Number III
  • 原文地址:https://www.cnblogs.com/MrZivChu/p/sdkjieru.html
Copyright © 2011-2022 走看看