Ⅰ java和IOS區別是什麼
安卓和ios要比java先進很多。java是一個編程語言,手機支持java是指的支持用java語言寫成的程序,算不上智能系統。安卓和ios最大的區別就是品牌范圍。安卓是開源系統,因此很多御此叢廠商用,用戶多,應用程序數量也在增長,已經超過了ios,這個系統最大的好處就是不用花錢買應用,都是免費的,但是系統與程序兼容性不好,因為各個廠商的手機配置不一樣,性能不一樣,程序編寫技術員很難做到讓每個手機都能匹配合適,因此,如果要用安卓的手機,就選大品牌的或者是銷量領先的,以保證兼容問題。
Ⅱ IOS如何調用Java服務
IOS調用java服務的方法如下:
NSString *nstrWyKPIUrl =[[NSString alloc]initWithFormat:
@"%@?citys=%@&startTime=%@&endTime=%@
&indexNames=%@",WYKPIURL,city,startTime,endTime,zbz];
//citys,startTime,endTime,indexNames Servlet傳遞參數,
WYKPIURL為字元串「http://ip:port/webservice/xxx.do
Servlet訪問路徑。
NSString *encodedURL = [nstrWyKPIUrl :
NSUTF8StringEncoding];
NSLog(@"encodedURL is %@",encodedURL);
NSXMLParser *parser = [[NSXMLParser alloc]
initWithContentsOfURL:[NSURL URLWithString:encodedURL ]];
//NSXMLParser XML解析器
[parser setShouldProcessNamespaces:NO];
[parser :NO];
[parser :NO];
parser.delegate = self;
[parser parse];
[parser release];
Ⅲ 做移動應用APP,一套java後台可否搞定android和ios
完全可以,做一套通用的介面。介面形式使用基於http的post或者get,用json或xml封裝數據。
大部分公司都是這么用的
加密解密上可能ios上會有點小問題,但網路上都有解決方案。
Ⅳ Java伺服器端如何接收IOS遠程推送傳遞來的devicetoken
您好,(1)下載前面建立的cer文件和provisioning文件,雙擊,導入到xcode中,在build setting中code signing一欄里選擇這兩個文件的名稱,這樣就可以將支持push的app部署到真機中。
(2)處理推送消息
客戶端對推送消息的處理分兩種情況:
一. 在App沒有運行的情況下,系統收到推送消息,用戶點擊推送消息,啟動App。此時,不會執行前面提到的 didReceiveRemoteNotification函數,而是在App的applicationDidFinishLaunching函數中處理推送,通過以下代碼可以獲取推送消息中的數據: NSDictionary *userInfo =[launchOptionsobjectForKey:];
二 . 當APP處於前台時,系統收到推送消息,此時系統不會彈出消息提示,會直接觸發application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo函數,推送數據在userInfo字典中。
當App處於後台時,如果系統收到推送消息,當用戶點擊推送消息時,會執行application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo函數,
此時AppDelegate中函數執行的順序為:
application:didReceiveRemoteNotification
applicationDidBecomeActiveI
Ⅳ Java靜態代理和iOS代理模式這兩個概念的理解上的疑惑
java靜態代理模式,舉例給你,看下如何理解:
public class Ts {
public static void main(String[] args) throws Exception {
// 通過中介公司生產一批衣服
ClothingProct cp = new ProxCompany( new LiNingCompany());
cp.proctClothing();
}
}
/**
* 定義生產一批衣服功能的介面
*
*/
interface ClothingProct {
void proctClothing(); // 有生產一批衣服的功能
}
/**
*
* 代理類:中介公司
*
*/
class ProxCompany implements ClothingProct {
private ClothingProct cp ; // 中介公司不會生產衣服,需要找一家真正能生產衣服的公司
ProxCompany(ClothingProct cp) {
super ();
this . cp = cp;
}
@Override
public void proctClothing() {
System. out .println( "收取1塊錢的中介費" );
cp .proctClothing();
}
}
/**
*
* 李寧公司是生產服裝的目標類
*
*/
class LiNingCompany implements ClothingProct {
@Override
public void proctClothing() {
System. out .println( "生產一批衣服。。。。" );
}
}
上面程序的做法,使用的模式是靜態代理模式
靜態代理模式在現實編程中的弊端:
它的特徵是代理類和目標對象的類都是在編譯期間確定下來的,不利於程序上的擴展,上面示例中,如果客戶還想找一個「生產一批鞋子」的工廠,那麼還需要新增加一個代理類和一個目標類。如果客戶還需要很多其他的服務,就必須一一的添加代理類和目標類。那就需要寫很多的代理類和目標類
代理模式到底做了什麼?
我眼中的代理模式只有兩個關注點:協議和代理者
協議定義了一組方法,由某一個類負責實現。
代理者作為某個類的一個屬性,通常是另一個類的實例對象,可以負責完成原來這個類不方便或者無法完成的任務。
首先談一談代理者,在腦中重新回想一下代理模式的實現過程。在頁面B中定義一個代理對象的時候,好像和定義一個普通的property非常類似(除了 weak和id《delegate》>)。這也正是我對代理的概括:代理本來就是一個屬性而已,並沒有非常神秘。
當然,代理者並不只是一個類普通的屬性,否則我只需要重寫一下B的初始化方法即可達到同樣的效果:
self.BVC = [[BViewController alloc]initWithDelegate:self];
然後在BViewController.m中定義一個AViewController *AVC並在初始化方法中賦值即可。
注意到代理者在定義的時候,格式往往是這樣的:
id <SomeDelegate> delegate;
所以我對代理的優勢的理解是:
代理的核心優勢在於解耦
與直接聲明一個屬於某個固定的類的代理者相比,聲明為id的代理者具備兩個明星的優勢。
允許多個不同的類成為本類的代理。試想一下在本文例子中,如果頁面B可以跳轉回N個頁面,如果還是通過聲明一個普通對象的方式,那怎麼辦?
允許代理者的類還不固定。試想一下,UITableView也有delegate,它根本不知道那個類會成為它的代理者。
再看一看協議。協議更加簡單了。協議只是定義了一組方法。在代理模式中,完全可以不用在頁面B中定義一個協議,然後A再去遵循這個協議。直接調用A的方法即可。
個人認為協議的優點在於以下幾點:
可以利用Xcode的檢查機制。對於定義為@required的方法,如果實現了協議而沒有實現這個方法,編譯器將會有警告。這樣可以防止因為疏忽,忘記實現某個代碼的情況,而由於OC的運行時特性,這樣的錯誤往往在運行階段才會導致程序崩潰。
有利於代碼的封裝。如果一個類,實現了某個協議,那麼這個協議中的方法不必在.h中被聲明,就可以被定義協議的類調用。這樣可以減少一個類暴露給外部的方法。
有利於程序的結構化與層次化。一個協議往往是解決問題的某個方法,對於一個其他的不過卻類似的問題,我們只用再次實現協議即可,避免了自己再次構思一組方法。協議的繼承機制使得這一有點更加強大。
說了怎麼多,總結起來只有一句:代理模式並不神秘,只是一個經過了優化的小技巧(讓某個類持有另一個類的指針)。代理和協議也只是讓程序耦合度更低,結構感更強而已。
Ⅵ IOS的應用程序是用JAVA寫的么
IOS的應用程序不是用JAVA寫的,是通過AJAX寫的。
在2007年蘋果全球開發者大會上,蘋果宣布iPhone和iPod Touch將會通螞閉過Safari互聯網瀏覽器支持某些第三方應用程序, 這些應用程序被稱為Web應用程序,它們能通過AJAX互聯網技術編寫出來。
iPhone和iPod Touch使用基於ARM架構的中央處理器,而不是蘋果的Mac計算機使用的x86處理器。因此,Mac OS X 上的應用程序不能直接復制到iOS上運行。他們需要針對iOS的ARM重新編寫。
許多重要的技術和 Ajax 開發模式可以從現有的知識中獲取。例如,在一個發送請求到服務端的應用中,必須包含請求順序、優消培先級、超時響應、錯誤處悶橋裂理及回調,其中許多元素已經在Web 服務中包含了。同時,隨著技術的成熟還會有許多地方需要改進,特別是UI部分的易用性。
Ajax 開發與傳統的 B/S開發有很大的不同。這些不同引入了新的編程問題,最大的問題在於易用性。由於 Ajax 依賴瀏覽器的 JavaScript 和XML,瀏覽器的兼容性和支持的標准也變得和 JavaScript 的運行時性能一樣重要了。這些問題中的大部分來源於瀏覽器、伺服器和技術的組合,因此必須理解如何才能最好的使用這些技術。
Ⅶ 為什麼蘋果不支持java
ios不支持java由jobs的態度可以看出:
2007年,喬布斯在接受《紐約時報》記者John Markoff的采訪時說:" Java不值得內建,不再有人使用它,它是沉重的枷鎖"
但是這可能在未來發生變化,java正在逐漸逼近ios:
Oracle最近推出名為「JEP 178」的提案,目的是讓Java語言更快地與iOS系統接軌。Java之父James Gosling表示願意在iOS方面賭一把,他說,新的提案將遵守蘋果公司的服務條款。
Ⅷ java程序如何運行於iOS
運行安卓程序有一天還有可能,windows幾乎不可能,因為安卓程序是在安卓的虛擬機里運行的,類java,所以哪一天開發正開發出了ios平台的虛擬機你就可以直接運行安卓的應用了。但是windows可是和ios同一級的系統,所以幾乎不可能。